3

我有一个已部署的 Axis2 Web 服务,它使用 SOAP 与客户端通信。现在有一个新要求,即通过发送 JSON 请求和接收 JSON 格式的响应来启用 REST 调用。

按照这个小教程:http ://code.google.com/p/jsonp-support-for-axis2/wiki/OneStopPage

我能够正确配置我的 Axis 2 Web 服务。使用我的浏览器,我使用以下 URL 返回一个 Student 对象:

http://localhost:8181/Axis2Json/services/StudentService/getStudent?response=application/json&value=3

输出 :

{"return":{"@type":"ax21:Student","age":25,"firstName":"Mouhammed","lastName":"Soueidane"}}

问题是返回的 JSON 看起来不像标准的 JSON 表示形式(甚至不是 badgerfish 格式)。例如,如果我想调用一个名为“setStudent”的方法,它接收一个 Student 对象,我真的不知道我需要传递给它的 JSON 字符串。

我尝试了很多东西,其中大部分都导致了铸造异常(java.lang.ClassCastException: java.lang.String cannot be cast to org.codehaus.jettison.json.JSONObject)

有没有人知道如何根据客户端的内容类型允许 Axis 2 Web 服务同时使用 SOAP 和 JSON?

4

0 回答 0