I tried to call web service from jboss 5 alpha version ( latest CVS
checkout).It just too hard to call web service from flex. After I
spend couple of hour and i found something.

here is the soap request from SOAP monitor. It is failed version.

----------------------------------------
<?xml version="1.0" encoding="utf-8"?>
   <SOAP-ENV:Envelope
xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/";
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
xmlns:xsd="http://www.w3.org/2001/XMLSchema";>
      <SOAP-ENV:Body xmlns:ns0="http://www.slickbeans.com/MyWebService";>
         <ns0:setMyObj>
            <myObj>
               <ns0:myInt>100</ns0:myInt>
               <ns0:myString>hello</ns0:myString>
               <ns0:myBoolean>true</ns0:myBoolean>
            </myObj>
         </ns0:setMyObj>
      </SOAP-ENV:Body>
   </SOAP-ENV:Envelope>
---------------------------------------------
here is the another soap request from SOAP monitor that worked.

---------------------------------------------
<?xml version="1.0" encoding="utf-8"?>
      <SOAP-ENV:Envelope xmlns:xsd="http://www.w3.org/2001/XMLSchema";
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/";>
         <SOAP-ENV:Body>
            <n:setMyObj
xmlns:n="http://www.slickbeans.com/MyWebService";>  
               <myObj>    
                  <n:myBoolean>true</n:myBoolean>    
                  <n:myInt>100</n:myInt>    
                  <n:myString>hello</n:myString>  
               </myObj>
            </n:setMyObj>
         </SOAP-ENV:Body>
      </SOAP-ENV:Envelope>
--------------------------------------------------

The different between twos is 
xmlns:n="http://www.slickbeans.com/MyWebService  
move to operation (<setMyObj>) to Body(<SOAP-ENV:Body>).

First request (that fail) is how flex encode object into SOAP request.
eg. operation.send(myObj)

Second request (that success) is maually send XML from web service.
eg. 
myObjXML.setNameSpace(..);
..
..
operation.request = myObjXML;
operation.send();

I wanna work with first version that send the Object as SOAP request.

I wanna know what SOAP version Flex is using and what is SOAP verion
my WSDL using. I didnt attach source code because posting already very
long. and source code testing are willing to post in request.

Could someone explain to me why it is not working?

Thanks in advance

Here is the WSDL for the WebService
-----------------------------------
<definitions name='MyWebServiceService'
targetNamespace='http://www.slickbeans.com/MyWebService'
xmlns='http://schemas.xmlsoap.org/wsdl/'
xmlns:soap='http://schemas.xmlsoap.org/wsdl/soap/'
xmlns:tns='http://www.slickbeans.com/MyWebService'
xmlns:xsd='http://www.w3.org/2001/XMLSchema'>

   <types>

      <schema elementFormDefault='qualified'
targetNamespace='http://www.slickbeans.com/MyWebService'
xmlns='http://www.w3.org/2001/XMLSchema'
xmlns:soap11-enc='http://schemas.xmlsoap.org/soap/encoding/'
xmlns:tns='http://www.slickbeans.com/MyWebService'
xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance'>


       <complexType name='MyCol'>


          <sequence>


             <element maxOccurs='unbounded' minOccurs='0'
name='myObjs' nillable='true' type='tns:MyObj'/>


          </sequence>


       </complexType>


       <complexType name='MyObj'>


          <sequence>


             <element name='myBoolean' type='boolean'/>


             <element name='myInt' type='int'/>


             <element name='myString' nillable='true' type='string'/>


          </sequence>


       </complexType>


    </schema>

   </types>

   <message name='MyWebService_echo'>

      <part name='input' type='xsd:string'/>

   </message>

   <message name='MyWebService_conCatResponse'>

      <part name='result' type='xsd:string'/>

   </message>

   <message name='MyWebService_setLongResponse'>
  </message>

   <message name='MyWebService_setInt'>

      <part name='input' type='xsd:int'/>

   </message>

   <message name='MyWebService_setMyObjsResponse'>

      <part name='result' type='xsd:int'/>

   </message>

   <message name='MyWebService_echoResponse'>

      <part name='result' type='xsd:string'/>

   </message>

   <message name='MyWebService_setMyObjs'>

      <part name='myObjOne' type='tns:MyObj'/>

      <part name='myObjTwo' type='tns:MyObj'/>

   </message>

   <message name='MyWebService_setTwoIntResponse'>
  </message>

   <message name='MyWebService_setTwoInt'>

      <part name='int_1' type='xsd:int'/>

      <part name='int_2' type='xsd:int'/>

   </message>

   <message name='MyWebService_getMyObjResponse'>

      <part name='result' type='tns:MyObj'/>

   </message>

   <message name='MyWebService_getInt'>
  </message>

   <message name='MyWebService_conCatDifType'>

      <part name='str' type='xsd:string'/>

      <part name='iNumber' type='xsd:int'/>

      <part name='long_1' type='xsd:long'/>

   </message>

   <message name='MyWebService_setIntResponse'>
  </message>

   <message name='MyWebService_setLong'>

      <part name='input' type='xsd:long'/>

   </message>

   <message name='MyWebService_getMyCol'>
  </message>

   <message name='MyWebService_getIntResponse'>

      <part name='result' type='xsd:int'/>

   </message>

   <message name='MyWebService_getLong'>
  </message>

   <message name='MyWebService_setMyObj'>

      <part name='myObj' type='tns:MyObj'/>

   </message>

   <message name='MyWebService_setTwoStringResponse'>
  </message>

   <message name='MyWebService_setMyObjResponse'>

      <part name='result' type='xsd:int'/>

   </message>

   <message name='MyWebService_setTwoString'>

      <part name='String_1' type='xsd:string'/>

      <part name='String_2' type='xsd:string'/>

   </message>

   <message name='MyWebService_getMyColResponse'>

      <part name='result' type='tns:MyCol'/>

   </message>

   <message name='MyWebService_conCatDifTypeResponse'>

      <part name='result' type='xsd:string'/>

   </message>

   <message name='MyWebService_conCat'>

      <part name='strOne' type='xsd:string'/>

      <part name='strTwo' type='xsd:string'/>

      <part name='strThree' type='xsd:string'/>

   </message>

   <message name='MyWebService_getMyObj'>
  </message>

   <message name='MyWebService_getLongResponse'>

      <part name='result' type='xsd:long'/>

   </message>

   <portType name='MyWebService'>

      <operation name='conCat' parameterOrder='strOne strTwo strThree'>

         <input message='tns:MyWebService_conCat'/>

         <output message='tns:MyWebService_conCatResponse'/>

      </operation>

      <operation name='conCatDifType' parameterOrder='str iNumber long_1'>

         <input message='tns:MyWebService_conCatDifType'/>

         <output message='tns:MyWebService_conCatDifTypeResponse'/>

      </operation>

      <operation name='echo' parameterOrder='input'>

         <input message='tns:MyWebService_echo'/>

         <output message='tns:MyWebService_echoResponse'/>

      </operation>

      <operation name='getInt'>

         <input message='tns:MyWebService_getInt'/>

         <output message='tns:MyWebService_getIntResponse'/>

      </operation>

      <operation name='getLong'>

         <input message='tns:MyWebService_getLong'/>

         <output message='tns:MyWebService_getLongResponse'/>

      </operation>

      <operation name='getMyCol'>

         <input message='tns:MyWebService_getMyCol'/>

         <output message='tns:MyWebService_getMyColResponse'/>

      </operation>

      <operation name='getMyObj'>

         <input message='tns:MyWebService_getMyObj'/>

         <output message='tns:MyWebService_getMyObjResponse'/>

      </operation>

      <operation name='setInt' parameterOrder='input'>

         <input message='tns:MyWebService_setInt'/>

         <output message='tns:MyWebService_setIntResponse'/>

      </operation>

      <operation name='setLong' parameterOrder='input'>

         <input message='tns:MyWebService_setLong'/>

         <output message='tns:MyWebService_setLongResponse'/>

      </operation>

      <operation name='setMyObj' parameterOrder='myObj'>

         <input message='tns:MyWebService_setMyObj'/>

         <output message='tns:MyWebService_setMyObjResponse'/>

      </operation>

      <operation name='setMyObjs' parameterOrder='myObjOne myObjTwo'>

         <input message='tns:MyWebService_setMyObjs'/>

         <output message='tns:MyWebService_setMyObjsResponse'/>

      </operation>

      <operation name='setTwoInt' parameterOrder='int_1 int_2'>

         <input message='tns:MyWebService_setTwoInt'/>

         <output message='tns:MyWebService_setTwoIntResponse'/>

      </operation>

      <operation name='setTwoString' parameterOrder='String_1 String_2'>

         <input message='tns:MyWebService_setTwoString'/>

         <output message='tns:MyWebService_setTwoStringResponse'/>

      </operation>

   </portType>

   <binding name='MyWebServiceBinding' type='tns:MyWebService'>

      <soap:binding style='rpc'
transport='http://schemas.xmlsoap.org/soap/http'/>

      <operation name='conCat'>

         <soap:operation soapAction=''/>

         <input>

            <soap:body
namespace='http://www.slickbeans.com/MyWebService' use='literal'/>

         </input>

         <output>

            <soap:body
namespace='http://www.slickbeans.com/MyWebService' use='literal'/>

         </output>

      </operation>

      <operation name='conCatDifType'>

         <soap:operation soapAction=''/>

         <input>

            <soap:body
namespace='http://www.slickbeans.com/MyWebService' use='literal'/>

         </input>

         <output>

            <soap:body
namespace='http://www.slickbeans.com/MyWebService' use='literal'/>

         </output>

      </operation>

      <operation name='echo'>

         <soap:operation soapAction=''/>

         <input>

            <soap:body
namespace='http://www.slickbeans.com/MyWebService' use='literal'/>

         </input>

         <output>

            <soap:body
namespace='http://www.slickbeans.com/MyWebService' use='literal'/>

         </output>

      </operation>

      <operation name='getInt'>

         <soap:operation soapAction=''/>

         <input>

            <soap:body
namespace='http://www.slickbeans.com/MyWebService' use='literal'/>

         </input>

         <output>

            <soap:body
namespace='http://www.slickbeans.com/MyWebService' use='literal'/>

         </output>

      </operation>

      <operation name='getLong'>

         <soap:operation soapAction=''/>

         <input>

            <soap:body
namespace='http://www.slickbeans.com/MyWebService' use='literal'/>

         </input>

         <output>

            <soap:body
namespace='http://www.slickbeans.com/MyWebService' use='literal'/>

         </output>

      </operation>

      <operation name='getMyCol'>

         <soap:operation soapAction=''/>

         <input>

            <soap:body
namespace='http://www.slickbeans.com/MyWebService' use='literal'/>

         </input>

         <output>

            <soap:body
namespace='http://www.slickbeans.com/MyWebService' use='literal'/>

         </output>

      </operation>

      <operation name='getMyObj'>

         <soap:operation soapAction=''/>

         <input>

            <soap:body
namespace='http://www.slickbeans.com/MyWebService' use='literal'/>

         </input>

         <output>

            <soap:body
namespace='http://www.slickbeans.com/MyWebService' use='literal'/>

         </output>

      </operation>

      <operation name='setInt'>

         <soap:operation soapAction=''/>

         <input>

            <soap:body
namespace='http://www.slickbeans.com/MyWebService' use='literal'/>

         </input>

         <output>

            <soap:body
namespace='http://www.slickbeans.com/MyWebService' use='literal'/>

         </output>

      </operation>

      <operation name='setLong'>

         <soap:operation soapAction=''/>

         <input>

            <soap:body
namespace='http://www.slickbeans.com/MyWebService' use='literal'/>

         </input>

         <output>

            <soap:body
namespace='http://www.slickbeans.com/MyWebService' use='literal'/>

         </output>

      </operation>

      <operation name='setMyObj'>

         <soap:operation soapAction=''/>

         <input>

            <soap:body
namespace='http://www.slickbeans.com/MyWebService' use='literal'/>

         </input>

         <output>

            <soap:body
namespace='http://www.slickbeans.com/MyWebService' use='literal'/>

         </output>

      </operation>

      <operation name='setMyObjs'>

         <soap:operation soapAction=''/>

         <input>

            <soap:body
namespace='http://www.slickbeans.com/MyWebService' use='literal'/>

         </input>

         <output>

            <soap:body
namespace='http://www.slickbeans.com/MyWebService' use='literal'/>

         </output>

      </operation>

      <operation name='setTwoInt'>

         <soap:operation soapAction=''/>

         <input>

            <soap:body
namespace='http://www.slickbeans.com/MyWebService' use='literal'/>

         </input>

         <output>

            <soap:body
namespace='http://www.slickbeans.com/MyWebService' use='literal'/>

         </output>

      </operation>

      <operation name='setTwoString'>

         <soap:operation soapAction=''/>

         <input>

            <soap:body
namespace='http://www.slickbeans.com/MyWebService' use='literal'/>

         </input>

         <output>

            <soap:body
namespace='http://www.slickbeans.com/MyWebService' use='literal'/>

         </output>

      </operation>

   </binding>

   <service name='MyWebServiceService'>

      <port binding='tns:MyWebServiceBinding' name='MyWebServicePort'>

         <soap:address location='http://localhost:8080/EJB3_WS_Test'/>

      </port>

   </service>

</definitions>





--
Flexcoders Mailing List
FAQ: http://groups.yahoo.com/group/flexcoders/files/flexcodersFAQ.txt
Search Archives: http://www.mail-archive.com/flexcoders%40yahoogroups.com 
Yahoo! Groups Links

<*> To visit your group on the web, go to:
    http://groups.yahoo.com/group/flexcoders/

<*> To unsubscribe from this group, send an email to:
    [EMAIL PROTECTED]

<*> Your use of Yahoo! Groups is subject to:
    http://docs.yahoo.com/info/terms/
 


Reply via email to