以下のようなSOAPメッセージレスポンスの処理方法は?ここSOAPレスポンス本体にノードがないプレーンテキストがあります
<S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/" xmlns:new="http://foo/bar"> <S:Header/> <S:Body>OK</S:Body> </S:Envelope>
WSDLの私の定義は以下のとおりです。
<wsdl:operation name="MyRequest">
<wsdl:input message="tns:MyRequest" name="MyRequest">
</wsdl:input>
<wsdl:output message="tns:MyRequestResponse" name="MyRequestResponse">
</wsdl:output>
</wsdl:operation>
<xs:element name="MyRequestResponse" type="xs:string"/>
サービス:
@WebMethod(operationName = "MyRequest")
@WebResult(name = "MyRequestResponse", targetNamespace = "http://foo/bar", partName = "parameters")
@SOAPBinding(parameterStyle = SOAPBinding.ParameterStyle.BARE)
public String MyRequest(
@WebParam(name = "MyRequest", targetNamespace = "http://foo/bar", partName = "parameters")
MyRequest parameters);
私はインターセプターを使用してノードと応答 'OK' をラップしようとしました。しかし、JAXB/WSDLレイヤー自体で処理することで、よりクリーンな方法があるのだろうかと思います。
OKレスポンスを生成または使用しようとしていますか? – approxiblue
私はMule ESBからそれを消費しようとしています。 – HanuAthena
このSOAP応答は、あなたのWSDLによると**無効です**。 次のようなものを持っている必要があります <新しい:MyRequestResponseののxmlns:新しい= "のhttp:// fooの/バー"> OK新しい:MyRequestResponse> \t あなたが実際にこの応答を生成するために、JAX-WS実装を使用しましたか? –
cdan