【问题标题】:Struts2 with rest-plugin: Map JSON value to ENUM带有 rest-plugin 的 Struts2:将 JSON 值映射到 ENUM
【发布时间】:2012-10-02 21:30:02
【问题描述】:

我正在使用带有 rest-plugin 的 Struts2 来构建 RESTful Web 服务。从 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

谢谢, 肖恩

【问题讨论】:

  • 有什么异常?发布完整的堆栈跟踪。

标签: java json rest struts2


【解决方案1】:

不,JSON 中没有枚举之类的东西。当然,有一些解决方法,比如使用hash table,但根据技术进行思考总是好的。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-09-30
    • 1970-01-01
    • 1970-01-01
    • 2021-07-06
    • 2020-01-24
    • 2017-03-04
    • 2013-03-29
    • 2023-03-23
    相关资源
    最近更新 更多