c#調用java寫的webservice數據丟失有關問題

由於業務比較複雜, 所以接口返回採用了自定義對象數組的形式, 以下是我返回的對象的屬性
          private CsReqWorkPageVo[] qoWo;
private int count;
private String message;
其中 qoWo是自定義類型, 包含以下屬性
           private String qoId;
private String qoSolveTime;
private String bcpInfoCode;
private String qoCreateTIme;
private String infoType;
private String woId;
private String woCreateTime;
private String crankShaft;
private String carCode;
private String carType;
基本上都是基本類型

我用java寫的客戶端調用完全沒有問題,連接超時異常, 數據都能取到
但是合作伙伴方說他只能渠道最外層對象的 count屬性跟message屬性,  qoWo中的屬性全部爲空
我初步認爲是他們那邊反序列化的問題, 現在合作伙伴完全賴在我們服務器這邊又問題, 請問有沒有這種複雜接口經驗的指導指導我, 謝謝了icon_smile.gif



------------------------------------------------------------------------------------------------------------------
問題補充:
開始是在不同的包下面, 後面已經放在跟接口同一個包下了, 有個小問題就是接口跟接口的實現類不是同一個包下的, 請問這個有關係嗎?

------------------------------------------------------------------------------------------------------------------
問題補充:
nju_abc 寫道
引用
開始是在不同的包下面, 後面已經放在跟接口同一個包下了, 有個小問題就是接口跟接口的實現類不是同一個包下的, 請問這個有關係嗎?


將接口和其對應的實現類放在一個包下,試試看。

最好能夠分別在服務端、客戶端抓包看下soap消息,看看有沒有什麼問題。

SOAP報文應該是沒問題的, 因爲我用java客戶端調用是完全沒問題的


------解決方案--------------------------------------------------------
把 CsReqWorkPageVo放到和對應的Service同一個package下試試看。
以前有人解決過類似的問題,你可以看看是不是相同的問題。
[url]
http://www.iteye.com/topic/102854
[/url]
------解決方案--------------------------------------------------------
引用
開始是在不同的包下面, 後面已經放在跟接口同一個包下了, 有個小問題就是接口跟接口的實現類不是同一個包下的, 請問這個有關係嗎?


將接口和其對應的實現類放在一個包下,TimeoutException,試試看。

最好能夠分別在服務端、客戶端抓包看下soap消息,看看有沒有什麼問題。
------解決方案--------------------------------------------------------
java的webservice的wsdl比較符合規範
而c#的webservice比較的微軟化,有時候確實需要處理一些特殊的情況。

我以前弄過個c#調java的webservice。如果用axis或者xfire等生產的客戶端,要對一些地方進行修改,不是直接就拿來用的。你可以看看c#調用的時候報文是什麼,再看看你的服務端給的是什麼。
------解決方案--------------------------------------------------------
可參考:
怎麼用Java調用WebService   http://www.myexception.cn/j2ee/4925.html


相關的主題文章:
發佈了65 篇原創文章 · 獲贊 0 · 訪問量 4萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章