Thanks a lot for that explanation.

The streaming feature is a really great thing to have around. Sometime speed is 
not as important as predictable memory consumption.

BR Petter Nordlander


> 8 aug 2015 kl. 17:36 skrev Clebert Suconic <[email protected]>:
> 
> First: I'm glad you are using the Stream large messages feature. very nice!
> 
> 
> The ReadOnly message is because of the JMS Spec and TCK tests... we
> were bound to throw an exception if the message was read-only.. that
> is valid for any JMS Message.. not only large messages.
> 
> 
> Second you could resend a large message, but there is one caveat:
> Large Messages will need to be assembled in the client.
> 
> 
> The following gist shows a little modification I made on the large
> message example (against master since I have done major updates to all
> examples):
> 
> https://gist.github.com/clebertsuconic/d086a80980fea225534f
> 
> 
> 
> The example will pass if I use a small size (such as 2 MB) but it will
> fail with an OME if you set it very large.
> 
> 
> 
> So, I would recommend you receive the message and creating a new
> message before you send it, copying all the properties and a new data
> with the stream you used.
> 
> On Sat, Aug 8, 2015 at 6:08 AM, Petter Nordlander
> <[email protected]> wrote:
>> Hi,
>> 
>> How do I best copy a large message using JMS API?
>> 
>> 
>> I have a JMS listener that just wants to check the message and pass it along 
>> to another queue.
>> 
>> Simply sending the same incoming message is not possible (read only 
>> exception).
>> 
>> 
>> So I figured I need to copy the entire message content (might be GBs of 
>> data) to the new message copy. However, how is that possible without saving 
>> the data to a local temp file?
>> 
>> msg.setObjectProperty("JMS_HQ_SaveStream", output);
>> 
>> and
>> 
>> messageToTransfer.setObjectProperty("JMS_AMQ_InputStream”, input);
>> 
>> both blocks, so I don’t really know if it’s possible to stream from one 
>> large message to a new ”copy”.
>> 
>> How would you guys do such a thing without reading the entire file to a 
>> temporary space in the application?
>> 
>> Best regards
>> Petter Nordlander
> 
> 
> 
> -- 
> Clebert Suconic

Reply via email to