Hi,
I can see on the wre (using tcpmon) the XOP include in the SOAP body,
however, when I receive it on the server, the data seems to be
inlined. The code I am using on the server is shown below,
public OMElement exchange(OMElement omElement) throws Exception {
try {
System.err.println(omElement);
OMText binaryNode = (OMText)
(omElement.getFirstElement().getFirstElement().getFirstElement()).getFirstOMChild();
//binaryNode.setBinary(true);
DataHandler dataHandler = (DataHandler) binaryNode.getDataHandler();
System.err.println("Data handler received");
InputStream in = dataHandler.getDataSource().getInputStream();
byte[] buffer = new byte[1024];
int read = in.read();
String data = new String(buffer, 0, read);
System.err.println(data);
System.err.println("After receiving data");
OMFactory fac = OMAbstractFactory.getOMFactory();
OMElement resp = fac.createOMElement("achnowledgement", null);
System.err.println(resp);
resp.setText(data + " acknowledged");
return resp;
} catch(Exception ex) {
ex.printStackTrace();
throw ex;
}
}
Kind regards
Meeraj
On 11/3/07, Meeraj Kunnumpurath <[EMAIL PROTECTED]> wrote:
> k, calling setOptimized(false) on OMText is creating the XOP include
> and adding the data to a different mime part rather than inlining in
> the SOAP body,
>
> POST /axis2/exchange HTTP/1.1
> Content-Type: multipart/related;
> boundary=MIMEBoundaryurn_uuid_B45C9BDDD05658F9E61194077083502;
> type="application/xop+xml";
> start="0.urn:uuid:[EMAIL PROTECTED]";
> start-info="text/xml"
> SOAPAction: "urn:anonOutInOp"
> User-Agent: Axis2
> Host: 127.0.0.1:8888
> Content-Length: 832
>
> --MIMEBoundaryurn_uuid_B45C9BDDD05658F9E61194077083502
> Content-Type: application/xop+xml; charset=UTF-8; type="text/xml"
> Content-Transfer-Encoding: binary
> Content-ID: <0.urn:uuid:[EMAIL PROTECTED]>
>
> <?xml version='1.0' encoding='UTF-8'?><soapenv:Envelope
> xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"><soapenv:Body><exchange><data><xop:Include
> href="cid:1.urn:uuid:[EMAIL PROTECTED]"
> xmlns:xop="http://www.w3.org/2004/08/xop/include"
> /></data></exchange></soapenv:Body></soapenv:Envelope>
> --MIMEBoundaryurn_uuid_B45C9BDDD05658F9E61194077083502
> Content-Type: application/octet-stream
> Content-Transfer-Encoding: binary
> Content-ID: <1.urn:uuid:[EMAIL PROTECTED]>
>
> some dump data
>
> --MIMEBoundaryurn_uuid_B45C9BDDD05658F9E61194077083502--
>
> Now I need to figure out how to get the data handler on the server :)
>
> Ta
> Meeraj
>
> On 11/3/07, Meeraj Kunnumpurath <[EMAIL PROTECTED]> wrote:
> > Hi,
> >
> > This is the output from tcpmon, the multipart message is created,
> > however, the data is still inlined in the SOAP body.
> >
> > POST /axis2/exchange HTTP/1.1
> > Content-Type: multipart/related;
> > boundary=MIMEBoundaryurn_uuid_0ABA9A4117F4C627061194076883448;
> > type="application/xop+xml";
> > start="0.urn:uuid:[EMAIL PROTECTED]";
> > start-info="text/xml"
> > SOAPAction: "urn:anonOutInOp"
> > User-Agent: Axis2
> > Host: 127.0.0.1:8888
> > Content-Length: 503
> >
> > --MIMEBoundaryurn_uuid_0ABA9A4117F4C627061194076883448
> > Content-Type: application/xop+xml; charset=UTF-8; type="text/xml"
> > Content-Transfer-Encoding: binary
> > Content-ID: <0.urn:uuid:[EMAIL PROTECTED]>
> >
> > <?xml version='1.0' encoding='UTF-8'?><soapenv:Envelope
> > xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"><soapenv:Body><exchange><data>c29tZSBkdW1wIGRhdGEK</data></exchange></soapenv:Body></soapenv:Envelope>
> > --MIMEBoundaryurn_uuid_0ABA9A4117F4C627061194076883448--
> >
> > Ta
> > Meeraj
> >
> > On 11/3/07, Meeraj Kunnumpurath <[EMAIL PROTECTED]> wrote:
> > > Thanks Thilina. I am just printing the AXIOM message on the server. I was
> > > expecting to see the XOP include inside the SOAP body.
> > >
> > > Many thanks
> > > Meeraj
> > >
> > >
> > >
> > > On 11/3/07, Thilina Gunarathne <[EMAIL PROTECTED]> wrote:
> > > > Hi,
> > > > I could not find any obvious mistakes in your code..
> > > >
> > > > What is the tool you are using to trace the messages.. In case you are
> > > > using SOAPMonitor, it does not show attachments.. Try using TCPMON
> > > > (http://ws.apache.org/commons/tcpmon)..
> > > >
> > > > thanks,
> > > > Thilina
> > > >
> > > > On 11/2/07, Meeraj Kunnumpurath < [EMAIL PROTECTED]> wrote:
> > > > > Hi,
> > > > >
> > > > > I have been looking at wiriting a client using AXIOM for sending
> > > > > binary attachments. The code is shown below,
> > > > >
> > > > > public void testExchange() throws Exception {
> > > > >
> > > > > DataHandler dataHandler = new DataHandler(new FileDataSource("
> > > > > Picture.jpg"));
> > > > >
> > > > > OMFactory fac = OMAbstractFactory.getOMFactory();
> > > > >
> > > > > OMElement request = fac.createOMElement("data", null);
> > > > >
> > > > > OMText binaryData = fac.createOMText(dataHandler, true);
> > > > > binaryData.setOptimize (false);
> > > > >
> > > > > request.addChild(binaryData);
> > > > >
> > > > > OMElement method = fac.createOMElement("exchange", null);
> > > > > method.addChild(request);
> > > > >
> > > > > Options options = new Options();
> > > > > options.setTo(new
> > > > >
> > > EndpointReference("http://localhost:8900/axis2/exchange"));
> > > > >
> > > > > options.setProperty(Constants.Configuration.ENABLE_MTOM
> > > ,
> > > > > Constants.VALUE_TRUE );
> > > > >
> > > > > ServiceClient sender = new ServiceClient();
> > > > > sender.setOptions(options);
> > > > >
> > > > > sender.sendReceive(method);
> > > > >
> > > > > }
> > > > >
> > > > > Unfortunately, the message is being sent to the server inlined without
> > > > > any mime parts. I have tried SWA instead of MTOM, but the same result.
> > > > > Any pointers would be highly appreciated. The message trace for
> > > > > request is shown below,
> > > > >
> > > > > <?xml version='1.0' encoding='utf-8'?>
> > > > > <soapenv:Envelope
> > > > >
> > > > > xmlns:soapenv="
> > > http://schemas.xmlsoap.org/soap/envelope/">
> > > > > <soapenv:Body>
> > > > > <exchange>
> > > > > <data>/9j/4RBZRXhpZgA.....38z/2Q==</data>
> > > > > </exchange>
> > > > > </soapenv:Body>
> > > > > </soapenv:Envelope>
> > > > >
> > > > > Kind regards
> > > > > Meeraj
> > > > >
> > > >
> > > >
> > > > --
> > > > Thilina Gunarathne - http://thilinag.blogspot.com
> > > >
> > > >
> > > ---------------------------------------------------------------------
> > > > To unsubscribe, e-mail:
> > > [EMAIL PROTECTED]
> > > > For additional commands, e-mail: [EMAIL PROTECTED]
> > > >
> > > >
> > >
> > >
> >
>
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]