Sending Large Amount of Data in a SOAP Web Service Request

Posted by ewyles on 10-Apr-2012 09:50

I have some applications that need to send a large amount of data in a web service request (note: this is the request, not the reply). The application is making a SOAP call to send the data, and the data may be as much as 15 mb.

We might need to route these messages through a message queue (onramping with sonic connect) but the message size is an issue there.

Any recommendations here? We are looking at possibly compressing the large data and using it as a soap attachment but not sure how this will work with sonic connect. Any other suggestions are welcome.

Thanks

All Replies

Posted by wtam on 12-Apr-2012 14:53

Hi Eric,

You can enable compression in SC.  To do that, you need to edit the spring.xml and add the following feature in the CXF endpoint.

...

  
    
  

Posted by wtam on 12-Apr-2012 15:11

(Hit "send" too soon)

If you make the large data as an attachment (SOAP with Attachment or MTOM), you can avoid the SC to read the entire message into memory by setting the preserveAttachmentInputStream property to true.  You can edit the property in WorkBench Sonic Connect Editior.  Just look for the property looks like: ...preserveAttachmentInputStream.  The downside is you will have to configure/install Data Handlers for the content types of your attachments.  Also, WorkBench's ProcessTracking does not really work well when running in this mode.

Thanks.

This thread is closed