chemistry-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Florian Müller <f...@apache.org>
Subject Re: Streaming capability with WS binding
Date Wed, 23 Oct 2013 17:36:06 GMT
 Hi Uwe,

 The abilities to stream, buffer in memory, buffer on disk, encrypt, and 
 dealing with attachments in general are implementation details of the 
 JAX-WS framework and not covered by the JAX-WS specification.

 OpenCMIS supports streaming if the Sun JAX-WS RI is used. The 
 WSConverter checks for each stream if "read once" is available and use 
 it, if it is available.
 But it is really easy to break. For example, putting a SOAP Handler in 
 front of the service can force the JAX-WS implementation to read the 
 whole content into memory.

 OpenCMIS does not use mimepull directly. It's a dependency of the Sun 
 JAX-WS RI. We can't influence how the Sun JAX-WS RI uses it and when it 
 uses the feature you have mentioned.

 The only way to get full control is to develop our own Web Services 
 stack and I doubt that we will do that.


 - Florian


> Hi,
>
> With Webservice-binding uploaded content gets loaded completely on
> the server (either in memory or on disk, depending on the size, as
> specified in the StreamingAttachment's memoryThreshold).
> This issue has been discussed before in regards to encryption and
> configurability of the threshold.
> But I wonder why content must be buffered at all.
>
> According to https://mimepull.java.net, streaming should be possible 
> if
> - "The parts are accessed in the same order as they appear in the 
> stream"
> - "The parts are accessed only once."
> I believe the read-once condition is complied with by OpenCMIS
> (org.apache.chemistry.opencmis.commons.impl.WSConverter).
>
> So why is streaming not possible with OpenCMIS?
>
> Thanks for a short explanation (or even a solution ;-)
> Uwe


Mime
View raw message