Okay,

This is the SOAP message:

<?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' xmlns:wsrm='http://schemas.xmlsoap.org/ws/2005/02/rm' xmlns:wsa='http://schemas.xmlsoap.org/ws/2004/08/addressing'>
  <soapenv:Body>
<ns1:testWS1 soapenv:encodingStyle='http://schemas.xmlsoap.org/soap/encoding/' xmlns:ns1='TestWebservice'>
          <message xsi:type='xsd:string' xmlns=''>test</message>
      </ns1:testWS1>
  </soapenv:Body>
</soapenv:Envelope>

My code looks like this now and the exception is not thrown anymore, but nevertheless there is no message sent; but an error (12 Mai 2006 11:32:53,329 INFO AxisEngine:527 - Received Error Message with id null):

OMElement payload = getPayload(message);
OMElement omReturn = client.sendReceive(payload);

private OMElement getPayload(String soap) throws FactoryConfigurationError, IOException, XMLStreamException, SAXException, ParserConfigurationException{ ByteArrayInputStream inStr = new ByteArrayInputStream(soap.getBytes());
       SOAPFactory fac =  OMAbstractFactory.getSOAP11Factory();
StAXSOAPModelBuilder builder = OMXMLBuilderFactory.createStAXSOAPModelBuilder(fac,XMLInputFactory.newInstance().createXMLStreamReader(inStr));
       SOAPEnvelope env = builder.getSOAPEnvelope();
       return (OMElement) env.getBody().getFirstOMChild();
}

Maybe my axis2 is misconfigured? When I send a simple message like in the examples this works but in the server I always got that pn the logs:

- I/O exception (java.net.ConnectException) caught when processing request: Connection refused: connect
- Retrying request
- I/O exception (java.net.ConnectException) caught when processing request: Connection refused: connect
- Retrying request
....

I am using Sandesha2-1.0 and Axis2-1.0.

Thanks,

Benjamin
Hi Benajamin,

There is not sendReveive method that takes a SOAP envelope as the parameter. Instead what you should give is the payload of your SOAP envelope. If you want to add headers there is a seperate 'adddHeader' method available.

If you are still getting the error, please send your full client code and the String u use to generate the SOAP envelope, for me to reproduce the error.


Chamikara


On 5/11/06, *Benjamin Schmeling* <[EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]>> wrote:

    Sorry my fault my code looks like this:

    ByteArrayInputStream inStr = new
    ByteArrayInputStream(soap.getBytes());
    SOAPFactory fac =  OMAbstractFactory.getSOAP11Factory();
    StAXSOAPModelBuilder builder =
    OMXMLBuilderFactory.createStAXSOAPModelBuilder
    (fac,XMLInputFactory.newInstance().createXMLStreamReader(inStr));

    SOAPEnvelope env = builder.getSOAPEnvelope();
    OMElement omReturn = client.sendReceive(env);

    But the same error like before...
    > Hi Benajamin,
    >
    > As I gave in my previous code example dont use the line
    > fac.createSOAPEnvelope (parser) to build the SOAP envelope.
    >
    > Use the method 'getSOAPEnvelope' of the StAXSOAPModelBuilder,
    > Here it is again,
    >
    > String soap = "....";
    > ByteArrayInputStream inStr = new
    ByteArrayInputStream(soap.getBytes());
    > SOAPFactory fac =  OMAbstractFactory.getSOAP11Factory();
    > StAXSOAPModelBuilder builder =
    > OMXMLBuilderFactory.createStAXSOAPModelBuilder
    >
    > (fac,XMLInputFactory.newInstance().createXMLStreamReader(inStr));
    > SOAPEnvelope env = builder.getSOAPEnvelope();
    > client.sendReceive(env );
    >
    >
    >
    >
    > Chamikara
    >
    >
    > On 5/11/06, *Benjamin Schmeling* <[EMAIL PROTECTED]
    <mailto:[EMAIL PROTECTED]>
    > <mailto: [EMAIL PROTECTED]
    <mailto:[EMAIL PROTECTED]>>> wrote:
    >
    >     Hi,
    >
    >     String soap = "....";
    >     ByteArrayInputStream inStr = new
    >     ByteArrayInputStream(soap.getBytes());
    >     SOAPFactory fac =   OMAbstractFactory.getSOAP11Factory();
    >     StAXSOAPModelBuilder builder =
    >     OMXMLBuilderFactory.createStAXSOAPModelBuilder
> (fac,XMLInputFactory.newInstance().createXMLStreamReader(inStr));
    >     SOAPEnvelope env = builder.getSOAPEnvelope();
    >     client.sendReceive(fac.createSOAPEnvelope (parser));
    >
    >     the last line throws the following exception:
    >
    >     org.apache.axiom.om.OMException : Root Element can not be
    detached
    >         at
> org.apache.axiom.soap.impl.llom.SOAPEnvelopeImpl.detach(SOAPEnvelopeImpl.java:155)
    >         at
    >     org.apache.axiom.om.impl.llom.OMNodeImpl.setParent
    >     (OMNodeImpl.java:117)
    >         at
> org.apache.axiom.soap.impl.llom.SOAPElement.setParent(SOAPElement.java:74)
    >         at
    >     org.apache.axiom.om.impl.llom.OMElementImpl.addChild
    (OMElementImpl.java:240)
    >         at
    >     org.apache.axiom.om.impl.llom.OMElementImpl.addChild
    >     (OMElementImpl.java:197)
    >         at
    >     org.apache.axis2.client.ServiceClient.fillSoapEnvelope
    (ServiceClient.java:554)
    >         at
> org.apache.axis2.client.ServiceClient.sendReceiveNonBlocking(ServiceClient.java:467)
    >         at
    >     org.apache.axis2.client.ServiceClient.sendReceive
    (ServiceClient.java:411)
    >         at
> org.apache.axis2.client.ServiceClient.sendReceive(ServiceClient.java:394)
    >
    >     What does this mean?
    >     > Hi Benjamin,
    >     >
    >     > Try following,
    >     >
    >     > String soap = "....";
    >     > ByteArrayInputStream inStr = new
    >     ByteArrayInputStream(soap.getBytes());
    >     > SOAPFactory fac =   OMAbstractFactory.getSOAP11Factory();
    >     > StAXSOAPModelBuilder builder =
    >     >
> OMXMLBuilderFactory.createStAXSOAPModelBuilder(fac,XMLInputFactory.newInstance().createXMLStreamReader(inStr));

    >     > SOAPEnvelope env = builder.getSOAPEnvelope();
    >     >
    >     >
    >     >
    >     > Chamikara
    >     >
    >     >
    >     >
    >     > On 5/10/06, *Benjamin Schmeling* <
    [EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]>
    >     <mailto:[EMAIL PROTECTED]
    <mailto:[EMAIL PROTECTED]>>
    >     > <mailto: [EMAIL PROTECTED]
    <mailto:[EMAIL PROTECTED]>
    >     <mailto:[EMAIL PROTECTED]
    <mailto:[EMAIL PROTECTED]>>>> wrote:
    >     >
    >     >     Hi,
    >     >
    >     >     I want to write a Web Service which sends reliable SOAP
    >     messages with
    >     >     Sandesha2. My input is a SOAP message as String. The
    problem
    >     is that I
    >     >     do not know how to transform this into an OMElement
    that can
    >     be sent
    >     >     with the ServiceClient class.
    >     >
    >     >     I tried something like this but it did not work:
    >     >
    >     >     String soap = "....";
    >     >     ByteArrayInputStream inStr = new
    >     >     ByteArrayInputStream( soap.getBytes());
    >     >     SOAPFactory fac =   OMAbstractFactory.getSOAP11Factory();
    >     >     OMXMLParserWrapper parser =
    >     >     OMXMLBuilderFactory.createStAXSOAPModelBuilder (fac,
    >     >     XMLInputFactory.newInstance
    ().createXMLStreamReader(inStr));
    >     >     client.sendReceive(fac.createSOAPEnvelope (parser));
    >     >
    >     >     How can I get this working?
    >     >
    >     >     Thanks,
    >     >
    >     >     Benjamin
    >     >
    >     >
    >     >
> ---------------------------------------------------------------------
    >     >     To unsubscribe, e-mail:
    >     [EMAIL PROTECTED]
    <mailto:[EMAIL PROTECTED]>
    >     <mailto: [EMAIL PROTECTED]
    <mailto:[EMAIL PROTECTED]>>
    >     >     <mailto: [EMAIL PROTECTED]
    <mailto:[EMAIL PROTECTED]>
    >     <mailto: [EMAIL PROTECTED]
    <mailto:[EMAIL PROTECTED]>>>
    >     >     For additional commands, e-mail:
    >     [EMAIL PROTECTED]
    <mailto:[EMAIL PROTECTED]>
    >     <mailto: [EMAIL PROTECTED]
    <mailto:[EMAIL PROTECTED]>>
    >     >     <mailto:[EMAIL PROTECTED]
    <mailto:[EMAIL PROTECTED]>
    >     <mailto: [EMAIL PROTECTED]
    <mailto:[EMAIL PROTECTED]>>>
    >     >
    >     >
    >
    >
    >






---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to