2012-11-01 27 views
0

我做了一個web服務端點並公開了一種方法,現在我想爲我的方法添加更多參數
所以每次我改變我的方法時,我都必須重新生成我的客戶端。有什麼辦法讓我不必一次又一次地生成我的客戶端。在web服務(jax)中生成客戶端

回答

0

不,沒有辦法。如果更改方法,那麼WSDL文件也會更改。 Web服務通過SOAP在客戶端和服務器之間進行通信。當您部署Web服務應用程序並進行更改時,如果客戶端應該知道是否存在新方法或添加了新參數(如果這些類是從舊版WSDL文件生成的)。根據舊的WSDL,客戶端將發送SOAP請求,如果與接收到的消息相關的WSDL部分發生任何更改,服務器將無法理解從客戶端收到的SOAP消息。

0

您可以設計一個更好的webservice/endpoint,它接受一個獨立的xml文檔作爲參數,以便操作簽名保持不變,即使您添加更多參數。更一般地說,Web服務將它作爲文字方法簽名公開是一種糟糕的形式。