質問:別のエンコーディング(文字セットと転送)を軸に使用するにはどうすればよいですか?ここでAXIS2はエンコーディングのために間違ったSOAPメッセージを生成します。どのようにそれを修正するには?
は私のクライアントです:Axis2のは、この愚かなエンコーディング(http://schemas.xmlsoap.org/soap/envelope)を生成WHY
<?xml version="1.0" encoding="http://schemas.xmlsoap.org/soap/envelope/"?>
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
<soapenv:Body>
<WBSREFT xmlns="http://tempuri.org/LICPOCSampleService">
<arg0 xmlns="">blablabla</arg0>
</WBSREFT>
</soapenv:Body>
</soapenv:Envelope>
???:ここ
public Object[] invoke(String xmlRepresentation)
throws CustomApplicationException {
Object[] responseWS = null;
RPCServiceClient serviceClient = new RPCServiceClient();
Options options = serviceClient.getOptions();
options.setAction("WBSREFT");
options.setTo(new EndpointReference("http://localhost:6132"));
QName qName = new QName(XML_SCHEMA, operation);
Object[] args = new Object[] { "blablabla" };
responseWS = serviceClient.invokeBlocking(qName, args, returnTypes);
String responseAsString = (String) responseWS[0];
return responseWS;
}
はしたSOAPEnvelopeが生成される(TCP/IPモニターを使用してキャプチャ)であります私はこの奇妙な出力を気づいた
POST/HTTP/0.9
Content-Type: text/xml;charset=UTF-8
SOAPAction: ""
User-Agent: Jakarta Commons-HttpClient/3.1
Host: 172.17.192.113:6133
Content-Length: 265
<?xml version="1.0" encoding="UTF-8"?>
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
<soapenv:Body>
<WBSREFT xmlns="http://tempuri.org/LICPOCSampleService">
<arg0 xmlns="">to cobol</arg0>
</WBSREFT>
</soapenv:Body>
</soapenv:Envelope>
::私はtcpmonのは、キャプチャ何あるsoapUIを使用してXML要求を送信した場合
POST/HTTP/1.1
Content-Type: text/xml; charset=UTF-8
SOAPAction: "WBSREFT"
User-Agent: Axis2
Host: 172.17.192.113:6133
Transfer-Encoding: chunked
102
<?xml version='1.0' encoding='UTF-8'?>
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
<soapenv:Body>
<WBSREFT xmlns="http://tempuri.org/LICPOCSampleService">
<arg0 xmlns="">to cobol</arg0>
</WBSREFT>
</soapenv:Body>
</soapenv:Envelope>0
:Apacheのtcpmonのを使用して
私はこの要求を撮影してきた102 XMLの途中で0が...何ができますか?
を、私はあなたがすべきだと思います破損したSOAP要求を再現可能に作成する最小限のコードを送信します。 – Tomalak
3つのXMLフラグメントを投稿します。最初のものだけが奇妙な/壊れたエンコーディング属性を持っています。どのように後者の2つを作りましたか? –