2011-06-02 132 views
0

我需要使用Android应用程序使用Axis2 Web服务。如果Axis2服务有所不同,则使用JDK1.5。使用JSON消耗Axis2 Web服务

我让Axis2给出JSON输出。结果是相对简单,只需修改axis2.xml并添加正确的MessageFormatter和MessageBuilder即可。

立即致电与网址的服务产生了JSON输出,并且我可以通过修改请求URL传递参数:

http://myServer.com/axis2/Services/myService/myOperation? 
    param1=asdf&response=application/json/badgerfish 

不过,我似乎无法使由接受电话实际发送JSON请求。这些请求似乎是格式正确的JSON,但服务拒绝它们。看看Axis2 documentation,如果我使用Axis2存根(步骤2和3),看起来很容易。但是,我不是(我似乎无法让Axis2客户端代码在Android上工作,但这是一个不同的故事)。

如何将JSON请求发送到启用JSON的Axis2服务?

回答

1

你可以做到这一点的唯一方法是通过使用RawXMLInOutMessageReceiver,并且自己解析XML有效载荷。 Axis2 JSON支持非常弱,您不能将其与数据绑定一起使用。

查看来自作者本人的评论。 http://isurues.wordpress.com/2009/10/06/how-to-use-axis2-json/

+0

伟大的发现。我从那以后发现了ksoap2-android,这已经达到了我的目的,但是这更好地解释了为什么尽管提供了JSON响应,Axis2似乎并没有采取任何JSON请求。 – bdares 2011-08-23 00:03:42