2017-03-03 14 views
3

SEI WebMethodのアクション属性値はWSDL OperationのSoapActionと一致しますが、 Javaコードからサービスメソッドを呼び出す続き警告:WSDL操作の入力アクションと関連するWebメソッドの@Actionが一致せず、要求のディスパッチに問題が発生する

com.sun.xml.internal.ws.model.JavaMethodImpl freeze 
WARNING: Input Action on WSDL operation inquirePayees and @Action on its associated Web Method inquirePayees did not match and will cause problems in dispatching the requests 

WSDLフラグメント

<s0:portType name="billPayeeServicePortType"> 
    <s0:operation name="inquirePayees"> 
     <s0:input message="s1:custPayee50InqRequest" s2:Action="http://services.abc.com/billPayee50Service/Services/billPayeeService/#CustPayee50InqRequest"/> 
     <s0:output message="s1:custPayee50InqResponse" s2:Action="http://services.abc.com/billPayee50Service/Services/billPayeeService/#CustPayee50InqResponse"/> 
    </s0:operation> 
    </s0:portType> 
    <s0:binding name="billPayeeServiceSOAP" type="s1:billPayeeServicePortType"> 
    <s3:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>  
    <s0:operation name="inquirePayees"> 
     <s3:operation soapAction="http://services.abc.com/InquirePayeeService/Services/InquirePayeeService/#CustPayeeInqRequest" style="document"/> 
     <s0:input> 
     <s3:body parts="custPayee50InqRequest" use="literal"/> 
     </s0:input> 
     <s0:output> 
     <s3:body parts="custPayee50InqResponse" use="literal"/> 
     </s0:output> 
    </s0:operation>  
    </s0:binding> 

ですし、私は、クライアント(wsimportのによって生成された)SEIをしました。

/** 
* This class was generated by the JAX-WS RI. 
* JAX-WS RI 2.1.7-b01- 
* Generated source version: 2.1 
* 
*/ 
@WebService(name = "billPayeeServicePortType", targetNamespace = "http://emf.abc.com/emb/ws") 
@SOAPBinding(parameterStyle = SOAPBinding.ParameterStyle.BARE) 
public interface BillPayeeServicePortType { 
@WebMethod(action = "http://services.abc.com/InquirePayeeService/Services/InquirePayeeService/#CustPayeeInqRequest") 
@WebResult(name = "CustPayee50InqResponse", targetNamespace = "http://emf.abc.com/emb/ws", partName = "custPayee50InqResponse") 
public CustPayee50InqResponseType inquirePayees(
    @WebParam(name = "CustPayee50InqRequest", targetNamespace = "http://emf.abc.com/emb/ws", partName = "custPayee50InqRequest") 
    CustPayee50InqRequestType custPayee50InqRequest); 
} 

何が問題なのでしょうか、なぜこの警告が表示されるのですか?この警告を抑制する方法はありますか?

入力要素のアクションがinquirePayees操作のsoapActionと一致しないため、上記のWSDLの入出力要素でAction属性を削除しようとしました。それはうまくいかなかった。

ご協力いただきありがとうございます。

答えて

0

wsimportのバージョンとパラメータは何ですか?

/** 
    * This class was generated by the JAX-WS RI. 
    * JAX-WS RI 2.2.9-b14002 
    * Generated source version: 2.2 
    * 
    */ 

あなたのWebサービスメソッドで

@Action(input = "http://emf.abc.com/emb/ws/BillPayeeServicePortType/custPayee50InqRequest") 

または類似した何かを試してみてください。 Oracle documentation

関連する問題