Large message payload in SOA-P 5.3 results in NegativeArraySizeException in org.apache.commons.codec.binary.Base64.encodeBase64
Issue
We are getting this exception when we send a large (>200Mb) message to two subsequent actions:
ERROR [org.jboss.soa.esb.client.ServiceInvoker] (pool-58-thread-1) Unexpected throwable during attempted message delivery using Courier for EPR [JMSEpr [ ... ]].
java.lang.NegativeArraySizeException
at org.apache.commons.codec.binary.Base64.encodeBase64(Base64.java:258)
at org.apache.commons.codec.binary.Base64.encodeBase64(Base64.java:178)
at org.jboss.internal.soa.esb.util.Encoding.encodeBytes(Encoding.java:43)
at org.jboss.internal.soa.esb.util.Encoding.encodeObject(Encoding.java:62)
at org.jboss.internal.soa.esb.message.format.xml.marshal.SerializedMarshalUnmarshalPlugin.marshal(SerializedMarshalUnmarshalPlugin.java:83)
at org.jboss.internal.soa.esb.message.format.xml.marshal.MarshalUnmarshalManager.marshal(MarshalUnmarshalManager.java:145)
at org.jboss.internal.soa.esb.message.format.xml.BodyImpl.writeChildContent(BodyImpl.java:146)
at org.jboss.internal.soa.esb.util.stax.ElementContent.writeContent(ElementContent.java:41)
at org.jboss.internal.soa.esb.util.stax.StreamHelper.writeElement(StreamHelper.java:125)
at org.jboss.internal.soa.esb.message.format.xml.MessageImpl.writeChildContent(MessageImpl.java:236)
at org.jboss.internal.soa.esb.util.stax.ElementContent.writeContent(ElementContent.java:41)
at org.jboss.soa.esb.util.Util.serialize(Util.java:188)
at org.jboss.internal.soa.esb.couriers.JmsCourier.internalDeliver(JmsCourier.java:224)
at org.jboss.internal.soa.esb.couriers.JmsCourier.deliver(JmsCourier.java:187)
at org.jboss.internal.soa.esb.couriers.TwoWayCourierImpl.deliver(TwoWayCourierImpl.java:189)
at org.jboss.soa.esb.client.ServiceInvoker$EPRInvoker.attemptDelivery(ServiceInvoker.java:702)
at org.jboss.soa.esb.client.ServiceInvoker$EPRInvoker.access$200(ServiceInvoker.java:604)
at org.jboss.soa.esb.client.ServiceInvoker.post(ServiceInvoker.java:392)
at org.jboss.soa.esb.client.ServiceInvoker.deliverAsync(ServiceInvoker.java:265)
Environment
- JBoss Enterprise SOA Platform
- 5.3
Subscriber exclusive content
A Red Hat subscription provides unlimited access to our knowledgebase, tools, and much more.