【问题标题】:JSON response from Axis2 Web Service来自 Axis2 Web 服务的 JSON 响应
【发布时间】:2013-06-23 14:04:15
【问题描述】:

我正在使用Axis2 开发Web 服务,创建.aar file 并将其部署在WSO2 Application Server. Axis2 服务部署成功并返回如下响应。

<ns:serviceResponse xmlns:ns="http://service.axis.example.com">
    <ns:return>{"status":"SUCCESS"}</ns:return>
</ns:serviceResponse>  

但我期待 JSON 响应。由于 Axis2 支持 JSON 响应,我尝试按照以下教程修改axis2.xml(启用messageBuilder and messageFormatter),但没有成功。
http://axis.apache.org/axis2/java/core/docs/json_support.html
http://www.javacodegeeks.com/2012/02/json-web-service-with-java-and-axis2.html
还有,
我尝试从 UI (Modules Tab -&gt; Add) 部署 wso2dynamic-response-20080916.170559-241.mar 并将上传的文件部署到以下位置 (CARBON_HOME/repository/deployment/server/axis2modules)。
我尝试按照I can't to return json objects using Axis2 中的建议复制wso2dynamic-response-1.5.jar,但仍然得到XML 响应而不是JSON。

请让我知道我做错了什么并指导正确的方向。
提前致谢。

【问题讨论】:

    标签: wso2 axis2


    【解决方案1】:

    在axis2.xml中启用JSON消息格式化程序应该可以工作..无论如何,您的响应内容类型是什么?..应该是application/json

    【讨论】:

    • 我通过附加查询字符串 response=application/json 发送 GET 请求,响应内容类型为 application/xml。我什至通过点击以下 URL 尝试使用 WSO2 服务器中可用的回显服务。 localhost:8280/services/echo/… 我只得到 XML 响应而不是 JSON 响应,如下所示。 7。另外,我有以下问题。我需要放置 wso2dynamic-response-1.5.jar 文件吗?如果是,在哪个文件夹中?谢谢。
    • 如果您的服务使用 JSON 响应进行响应,除了消息格式化程序更改之外,您不需要进行任何其他更改。那是什么“wso2dynamic-response-1.5.jar”?它可能是一个较旧的实现,你不需要它。
    • 我的 Java 类将返回 JSON 字符串,例如 {"status":"SUCCESS"}。我从 Web 服务得到的响应是 service.axis.example.com"><ns:return>{"status":"SUCCESS"}。你可以在 ns 中看到 JSON 字符串:return 元素。另外,我遵循以下 URL(stackoverflow.com/questions/14656147/…),他们建议在其中放置 wso2dynamic-response-1.5.jar 文件(我现在删除了它)。让我知道需要的任何其他配置。
    【解决方案2】:

    会 JSONMessageFormatter.getJSONWriter 帮忙?

    【讨论】:

      猜你喜欢
      • 2011-02-10
      • 1970-01-01
      • 2013-08-08
      • 2017-04-29
      • 2013-01-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多