2016-07-10 12 views
-5

私はサードパーティのアプリケーションのいずれかが私の要求のための応答を送信するwebserviceを書くために書き込もうとしています。私たちは4種類の応答CreateResponse、GetResponse、SetResponse、DeleteResponseを持っています。要求の実行が失敗した場合、第3のparyはSoapFaultメッセージを送信します。 私のWebサービスでは、この入ってくるにSoapFaultを処理するためにどのように着信SoapFaultメッセージを処理する方法

`import javax.jws.WebService; 
import javax.jws.HandlerChain; 
import javax.jws.WebMethod; 
import javax.xml.ws.BindingType; 
import javax.xml.ws.soap.SOAPBinding; 
@WebService(targetNamespace ="http://schemas.shaik.com/cai3g1.2/") 
@HandlerChain(file = "handler.xml") 
public class MyFirstWebService { 
@WebMethod(operationName = "CreateResponse") 
public void sendRequest() { 
} 
@WebMethod(operationName = "GetResponse") 
public void sendRequest1() { 
} 
@WebMethod(operationName = "SetResponse") 
public void sendRequest2() { 
} 
@WebMethod(operationName = "DeleteResponse") 
public void sendRequest3() { 
} 
@WebMethod(operationName = "Fault") 
public void sendRequest4() { 
} 
@WebMethod(operationName = "Cai3gFault") 
public void sendRequest5() { 
} 
} 

`

+0

あなたは名前空間をパッケージと同じだと考えますか?もちろん、どのWebサービスでも、同時にさまざまなパッケージが用意されています。問題はどこだ? – luk2302

答えて

0

は、はい、それは間違いなく可能です。適切なバインディングとパッケージを定義するだけで、移動するように設定する必要があります。

+0

ビンディングを定義するにはどうすればいいですか?小さな例を提供してください – shaiksha

0

4つの操作が全体サービスのための共通異なる名前空間

名前空間である(べきか)の下の名前空間と5 動作の下で定義されています。コードファーストアプローチを使って作業することで、残りのパッケージとは別のパッケージにメソッドを持たせることができます。

ただし、2つの異なるパッケージに5つのサービス(または2つのサービス、1つの操作で4つのサービス)を公開することができます(またはアノテーションの名前空間を指定することもできます)。

+0

フォールト操作はある名前空間で定義され、残りの4つは1つの名前空間で定義されます – shaiksha

関連する問題