SOAPmessage for String[]

classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

SOAPmessage for String[]

本間英明
はじめまして本間といいます。

 AXIS1.4が出力するSOAPメッセージについて質問があります。
 初めての質問です、ルールなど間違っていましたら教えてください。

 【質問】
  String[]を復帰するWebサービスを作成していますが、
  出力されるSOAPメッセージが以下のようになりなります。

<?xml version="1.0" encoding="utf-8"?><soapenv:Envelope
      xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<soapenv:Body>
  <ns1:getProductDataResponse
soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:ns1="http://tempuri.org/">
   <ns1:getProductDataResult soapenc:arrayType="xsd:string[][48]"
xsi:type="soapenc:Array"
       xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/">TEST<ns1:getProductDataResult
xsi:type="xsd:string">
           ・・・48個繰り返す
    </ns1:getProductDataResponse>
</soapenv:Body>
</soapenv:Envelope>

   この出力を以下のような形式に変更したいのですが。
 可能でしょうか、よろしくお願いします。

  <getProductDataResponse xmlns="http://xxx/">
     <getProductDataResult>
       <string>TEST</string>
       <string>・・・</string>
     </getProductDataResult>
   </getProductDataResponse>


 因みにdeploy.wsddは以下のようにしてます。

 <service name="productstring" provider="java:RPC" style="wrapped"
use="encoded">
    <parameter name="className" value="xxxx.webservice.Product"/>
    <parameter name="allowedMethods" value="*"/>
   <parameter name="scope" value="session"/>
       <operation name="getProductData" qname="operNS:getProductData"
                 xmlns:operNS="http://xxxx"
                 returnQName="retNS:getProductDataResult"
                 xmlns:retNS="http://xxxx"
                 returnType="rtns:string[]"
                 xmlns:rtns="http://www.w3.org/2001/XMLSchema" soapAction=""
 >
        <parameter qname="pns:userid" xmlns:pns="http://xxxx"
                   type="tns:String"
xmlns:tns="http://www.w3.org/2001/XMLSchema"/>
      </operation>
 </service>




---------------------------------------------------------------------
To unsubscribe, e-mail: [hidden email]
For additional commands, e-mail: [hidden email]