2011-06-02 114 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