Struts2 と rest-plugin を使用して、RESTful Web サービスを構築しています。Java オブジェクトから JSON へのシリアル化は簡単で、すべてが正しく美しくマッピングされました。JSON を受け取り、それを Java オブジェクトにマップしようとすることは、まったく別の問題です。
私は2つの問題に遭遇しました:
1) JSON 配列をリストに変換できませんでした。代わりに String[] を使用して「解決」しました。
2) 次のような JSON である ENUM があります。
{"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
ありがとう、ショーン