java - 带有 rest-plugin : Map JSON value to ENUM 的 Struts2

标签 java json rest struts2

我将 Struts2 与 rest-plugin 一起使用来构建 RESTful 网络服务。从 Java 对象序列化到 JSON 是一件轻而易举的事——所有的东西都正确而漂亮地映射。接收 JSON 并尝试将其映射到 Java 对象是一个完全不同的问题。

我遇到了两个问题:

1) 无法将 JSON 数组转换为列表。通过使用 String[] 来“解决”它。

2) 有一个 ENUM 是这样的 JSON:

{"feature":{"id":2,"enabled":true,"description":"one click transactions feature","type":"ONECLICK_OPTIN_TRANSACTIONS"},"countries":["SG"],"clientId":10}

“type”:“ONECLICK_OPTIN_TRANSACTIONS”应该映射到 Java 对象中的一个 ENUM,当然,Struts2 barfs 代替。

有人成功过吗?

作为引用,这是异常的相关部分:

Method public java.lang.String org.apache.commons.lang.exception.NestableRuntimeException.getMessage(int) threw an exception when invoked on net.sf.ezmorph.MorphException: com.foo.bar.entity.FeatureType

谢谢, 肖恩

最佳答案

不,JSON 中没有枚举这样的东西。当然也有解决办法,比如使用 hash table。但根据技术考虑总是好的。

关于java - 带有 rest-plugin : Map JSON value to ENUM 的 Struts2,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12852744/

相关文章:

java - 检测方法执行链中的任何方法是否使用特定注释进行注释

json - 在 Flutter 中本地写入和读取 JSON 文件不包括引号

json - Parse.com 说 "invalid character '\'' 正在寻找值的开始”

rest - 通过 restful api 访问文件的权限被拒绝

web-services - SSL 的非透明代理缓存

java - 如何在查询前解析正斜杠

java - 使用还是不使用DTO?

java - SinglyLinkedList 中头之后的下一个节点出现 NullPointerException

iphone - JSONKit + 利登布罗克 VS. RestKit?(使用 CoreData)

java - 如何从eclipse中的java Restful服务连接到sqlserver数据库