You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-dev@axis.apache.org by "Renjith C (JIRA)" <ji...@apache.org> on 2008/06/25 20:42:46 UTC

[jira] Created: (AXIS2-3872) MTOM Issues

MTOM Issues
-----------

                 Key: AXIS2-3872
                 URL: https://issues.apache.org/jira/browse/AXIS2-3872
             Project: Axis 2.0 (Axis2)
          Issue Type: Bug
    Affects Versions: 1.4
         Environment: Tomcat 5.5 on Windows XP Pro SP2
            Reporter: Renjith C


1) 
When axis2.xml property,
<parameter name="enableMTOM">true</parameter> is set to true, even though the caching is enabled the file is not getting saved on to the disk.

2)
Exception thrown when a 470M file is send over using MTOM.

[ERROR] Java heap space
java.lang.OutOfMemoryError: Java heap space
	at java.util.Arrays.copyOf(Unknown Source)
	at java.lang.AbstractStringBuilder.expandCapacity(Unknown Source)
	at java.lang.AbstractStringBuilder.append(Unknown Source)
	at java.lang.StringBuffer.append(Unknown Source)
	at org.apache.axiom.om.util.Base64.encode(Base64.java:250)
	at org.apache.axiom.om.util.TextHelper.toString(TextHelper.java:33)
	at org.apache.axiom.om.impl.llom.OMTextImpl.getText(OMTextImpl.java:269)
	at org.apache.axiom.om.impl.llom.OMTextImpl.writeOutput(OMTextImpl.java:255)
	at org.apache.axiom.om.impl.llom.OMTextImpl.internalSerializeLocal(OMTextImpl.java:433)
	at org.apache.axiom.om.impl.llom.OMTextImpl.internalSerializeAndConsume(OMTextImpl.java:408)
	at org.apache.axiom.om.impl.llom.OMElementImpl.internalSerialize(OMElementImpl.java:918)
	at org.apache.axiom.om.impl.llom.OMElementImpl.internalSerializeAndConsume(OMElementImpl.java:947)
	at org.apache.axiom.om.impl.llom.OMElementImpl.internalSerialize(OMElementImpl.java:918)
	at org.apache.axiom.om.impl.llom.OMElementImpl.internalSerializeAndConsume(OMElementImpl.java:947)
	at org.apache.axiom.soap.impl.llom.SOAPEnvelopeImpl.serializeInternally(SOAPEnvelopeImpl.java:240)
	at org.apache.axiom.soap.impl.llom.SOAPEnvelopeImpl.internalSerialize(SOAPEnvelopeImpl.java:228)
	at org.apache.axiom.om.impl.llom.OMElementImpl.internalSerializeAndConsume(OMElementImpl.java:947)
	at org.apache.axiom.om.impl.llom.OMNodeImpl.serializeAndConsume(OMNodeImpl.java:471)
	at org.apache.axis2.transport.http.SOAPMessageFormatter.writeTo(SOAPMessageFormatter.java:79)
	at org.apache.axis2.transport.http.CommonsHTTPTransportSender.sendUsingOutputStream(CommonsHTTPTransportSender.java:330)
	at org.apache.axis2.transport.http.CommonsHTTPTransportSender.invoke(CommonsHTTPTransportSender.java:213)
	at org.apache.axis2.engine.AxisEngine.send(AxisEngine.java:448)
	at org.apache.axis2.receivers.AbstractInOutSyncMessageReceiver.invokeBusinessLogic(AbstractInOutSyncMessageReceiver.java:45)
	at org.apache.axis2.receivers.AbstractMessageReceiver.receive(AbstractMessageReceiver.java:100)
	at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:176)
	at org.apache.axis2.transport.http.HTTPTransportUtils.processHTTPPostRequest(HTTPTransportUtils.java:275)
	at org.apache.axis2.transport.http.AxisServlet.doPost(AxisServlet.java:131)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:710)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:269)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)


-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: axis-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-dev-help@ws.apache.org


[jira] Commented: (AXIS2-3872) MTOM Issues

Posted by "Nikolaus Krismer (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/AXIS2-3872?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12627958#action_12627958 ] 

Nikolaus Krismer commented on AXIS2-3872:
-----------------------------------------

I can confirm on this!

For me this issue is also relevant if SwA is used (not only MTOM).
It also happens for much smaller files (around 10MB) if the JVM heap space is not that big
(10MB do not work when starting Tomcat 5.5 in Eclipse WTP without any JVM memory size arguments)

Same code works without any problems when using Axis 1.3...

> MTOM Issues
> -----------
>
>                 Key: AXIS2-3872
>                 URL: https://issues.apache.org/jira/browse/AXIS2-3872
>             Project: Axis 2.0 (Axis2)
>          Issue Type: Bug
>    Affects Versions: 1.4
>         Environment: Tomcat 5.5 on Windows XP Pro SP2
>            Reporter: Renjith C
>            Assignee: Thilina Gunarathne
>
> 1) 
> When axis2.xml property,
> <parameter name="enableMTOM">true</parameter> is set to true, even though the caching is enabled the file is not getting saved on to the disk.
> 2)
> Exception thrown when a 470M file is send over using MTOM.
> [ERROR] Java heap space
> java.lang.OutOfMemoryError: Java heap space
> 	at java.util.Arrays.copyOf(Unknown Source)
> 	at java.lang.AbstractStringBuilder.expandCapacity(Unknown Source)
> 	at java.lang.AbstractStringBuilder.append(Unknown Source)
> 	at java.lang.StringBuffer.append(Unknown Source)
> 	at org.apache.axiom.om.util.Base64.encode(Base64.java:250)
> 	at org.apache.axiom.om.util.TextHelper.toString(TextHelper.java:33)
> 	at org.apache.axiom.om.impl.llom.OMTextImpl.getText(OMTextImpl.java:269)
> 	at org.apache.axiom.om.impl.llom.OMTextImpl.writeOutput(OMTextImpl.java:255)
> 	at org.apache.axiom.om.impl.llom.OMTextImpl.internalSerializeLocal(OMTextImpl.java:433)
> 	at org.apache.axiom.om.impl.llom.OMTextImpl.internalSerializeAndConsume(OMTextImpl.java:408)
> 	at org.apache.axiom.om.impl.llom.OMElementImpl.internalSerialize(OMElementImpl.java:918)
> 	at org.apache.axiom.om.impl.llom.OMElementImpl.internalSerializeAndConsume(OMElementImpl.java:947)
> 	at org.apache.axiom.om.impl.llom.OMElementImpl.internalSerialize(OMElementImpl.java:918)
> 	at org.apache.axiom.om.impl.llom.OMElementImpl.internalSerializeAndConsume(OMElementImpl.java:947)
> 	at org.apache.axiom.soap.impl.llom.SOAPEnvelopeImpl.serializeInternally(SOAPEnvelopeImpl.java:240)
> 	at org.apache.axiom.soap.impl.llom.SOAPEnvelopeImpl.internalSerialize(SOAPEnvelopeImpl.java:228)
> 	at org.apache.axiom.om.impl.llom.OMElementImpl.internalSerializeAndConsume(OMElementImpl.java:947)
> 	at org.apache.axiom.om.impl.llom.OMNodeImpl.serializeAndConsume(OMNodeImpl.java:471)
> 	at org.apache.axis2.transport.http.SOAPMessageFormatter.writeTo(SOAPMessageFormatter.java:79)
> 	at org.apache.axis2.transport.http.CommonsHTTPTransportSender.sendUsingOutputStream(CommonsHTTPTransportSender.java:330)
> 	at org.apache.axis2.transport.http.CommonsHTTPTransportSender.invoke(CommonsHTTPTransportSender.java:213)
> 	at org.apache.axis2.engine.AxisEngine.send(AxisEngine.java:448)
> 	at org.apache.axis2.receivers.AbstractInOutSyncMessageReceiver.invokeBusinessLogic(AbstractInOutSyncMessageReceiver.java:45)
> 	at org.apache.axis2.receivers.AbstractMessageReceiver.receive(AbstractMessageReceiver.java:100)
> 	at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:176)
> 	at org.apache.axis2.transport.http.HTTPTransportUtils.processHTTPPostRequest(HTTPTransportUtils.java:275)
> 	at org.apache.axis2.transport.http.AxisServlet.doPost(AxisServlet.java:131)
> 	at javax.servlet.http.HttpServlet.service(HttpServlet.java:710)
> 	at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
> 	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:269)
> 	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
> 	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: axis-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-dev-help@ws.apache.org


[jira] Commented: (AXIS2-3872) MTOM Issues

Posted by "Nikolaus Krismer (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/AXIS2-3872?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12628608#action_12628608 ] 

Nikolaus Krismer commented on AXIS2-3872:
-----------------------------------------

Exception thrown is:

java.lang.OutOfMemoryError: Java heap space
	at java.util.Arrays.copyOf(Arrays.java:2882)
	at java.lang.AbstractStringBuilder.expandCapacity(AbstractStringBuilder.java:100)
	at java.lang.AbstractStringBuilder.append(AbstractStringBuilder.java:487)
	at java.lang.StringBuffer.append(StringBuffer.java:301)
	at org.apache.axiom.om.util.Base64.encode(Base64.java:250)
	at org.apache.axiom.om.util.TextHelper.toString(TextHelper.java:33)
	at org.apache.axiom.om.impl.llom.OMTextImpl.getText(OMTextImpl.java:269)
	at org.apache.axiom.om.impl.llom.OMTextImpl.writeOutput(OMTextImpl.java:255)
	at org.apache.axiom.om.impl.llom.OMTextImpl.internalSerializeLocal(OMTextImpl.java:433)
	at org.apache.axiom.om.impl.llom.OMTextImpl.internalSerializeAndConsume(OMTextImpl.java:408)
	at org.apache.axiom.om.impl.llom.OMElementImpl.internalSerialize(OMElementImpl.java:918)
	at org.apache.axiom.om.impl.llom.OMElementImpl.internalSerializeAndConsume(OMElementImpl.java:947)
	at org.apache.axiom.om.impl.llom.OMElementImpl.internalSerialize(OMElementImpl.java:918)
	at org.apache.axiom.om.impl.llom.OMElementImpl.internalSerializeAndConsume(OMElementImpl.java:947)
	at org.apache.axiom.om.impl.llom.OMElementImpl.internalSerialize(OMElementImpl.java:918)
	at org.apache.axiom.om.impl.llom.OMElementImpl.internalSerializeAndConsume(OMElementImpl.java:947)
	at org.apache.axiom.om.impl.llom.OMElementImpl.internalSerialize(OMElementImpl.java:918)
	at org.apache.axiom.om.impl.llom.OMElementImpl.internalSerializeAndConsume(OMElementImpl.java:947)
	at org.apache.axiom.soap.impl.llom.SOAPEnvelopeImpl.serializeInternally(SOAPEnvelopeImpl.java:240)
	at org.apache.axiom.soap.impl.llom.SOAPEnvelopeImpl.internalSerialize(SOAPEnvelopeImpl.java:228)
	at org.apache.axiom.om.impl.llom.OMElementImpl.internalSerializeAndConsume(OMElementImpl.java:947)
	at org.apache.axiom.om.impl.llom.OMNodeImpl.serializeAndConsume(OMNodeImpl.java:483)
	at org.apache.axis2.transport.http.SOAPMessageFormatter.writeTo(SOAPMessageFormatter.java:72)
	at org.apache.axis2.transport.http.CommonsHTTPTransportSender.sendUsingOutputStream(CommonsHTTPTransportSender.java:330)
	at org.apache.axis2.transport.http.CommonsHTTPTransportSender.invoke(CommonsHTTPTransportSender.java:213)
	at org.apache.axis2.engine.AxisEngine.send(AxisEngine.java:448)
	at org.apache.axis2.receivers.AbstractInOutMessageReceiver.invokeBusinessLogic(AbstractInOutMessageReceiver.java:43)
	at org.apache.axis2.receivers.AbstractMessageReceiver.receive(AbstractMessageReceiver.java:100)
	at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:176)
	at org.apache.axis2.transport.http.HTTPTransportUtils.processHTTPPostRequest(HTTPTransportUtils.java:275)
	at org.apache.axis2.transport.http.AxisServlet.doPost(AxisServlet.java:131)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:709)

File caching is enabled!
This error does occure when sending the file back to the client... when recieving it from the client everything gets cached fine...
Is there a way to also cache files that are send back to the WS client?
I was just wondering about this issue, because everything works with Axis 1.3....

If you need more (specific) information, let me know...

> MTOM Issues
> -----------
>
>                 Key: AXIS2-3872
>                 URL: https://issues.apache.org/jira/browse/AXIS2-3872
>             Project: Axis 2.0 (Axis2)
>          Issue Type: Bug
>    Affects Versions: 1.4
>         Environment: Tomcat 5.5 on Windows XP Pro SP2
>            Reporter: Renjith C
>            Assignee: Thilina Gunarathne
>
> 1) 
> When axis2.xml property,
> <parameter name="enableMTOM">true</parameter> is set to true, even though the caching is enabled the file is not getting saved on to the disk.
> 2)
> Exception thrown when a 470M file is send over using MTOM.
> [ERROR] Java heap space
> java.lang.OutOfMemoryError: Java heap space
> 	at java.util.Arrays.copyOf(Unknown Source)
> 	at java.lang.AbstractStringBuilder.expandCapacity(Unknown Source)
> 	at java.lang.AbstractStringBuilder.append(Unknown Source)
> 	at java.lang.StringBuffer.append(Unknown Source)
> 	at org.apache.axiom.om.util.Base64.encode(Base64.java:250)
> 	at org.apache.axiom.om.util.TextHelper.toString(TextHelper.java:33)
> 	at org.apache.axiom.om.impl.llom.OMTextImpl.getText(OMTextImpl.java:269)
> 	at org.apache.axiom.om.impl.llom.OMTextImpl.writeOutput(OMTextImpl.java:255)
> 	at org.apache.axiom.om.impl.llom.OMTextImpl.internalSerializeLocal(OMTextImpl.java:433)
> 	at org.apache.axiom.om.impl.llom.OMTextImpl.internalSerializeAndConsume(OMTextImpl.java:408)
> 	at org.apache.axiom.om.impl.llom.OMElementImpl.internalSerialize(OMElementImpl.java:918)
> 	at org.apache.axiom.om.impl.llom.OMElementImpl.internalSerializeAndConsume(OMElementImpl.java:947)
> 	at org.apache.axiom.om.impl.llom.OMElementImpl.internalSerialize(OMElementImpl.java:918)
> 	at org.apache.axiom.om.impl.llom.OMElementImpl.internalSerializeAndConsume(OMElementImpl.java:947)
> 	at org.apache.axiom.soap.impl.llom.SOAPEnvelopeImpl.serializeInternally(SOAPEnvelopeImpl.java:240)
> 	at org.apache.axiom.soap.impl.llom.SOAPEnvelopeImpl.internalSerialize(SOAPEnvelopeImpl.java:228)
> 	at org.apache.axiom.om.impl.llom.OMElementImpl.internalSerializeAndConsume(OMElementImpl.java:947)
> 	at org.apache.axiom.om.impl.llom.OMNodeImpl.serializeAndConsume(OMNodeImpl.java:471)
> 	at org.apache.axis2.transport.http.SOAPMessageFormatter.writeTo(SOAPMessageFormatter.java:79)
> 	at org.apache.axis2.transport.http.CommonsHTTPTransportSender.sendUsingOutputStream(CommonsHTTPTransportSender.java:330)
> 	at org.apache.axis2.transport.http.CommonsHTTPTransportSender.invoke(CommonsHTTPTransportSender.java:213)
> 	at org.apache.axis2.engine.AxisEngine.send(AxisEngine.java:448)
> 	at org.apache.axis2.receivers.AbstractInOutSyncMessageReceiver.invokeBusinessLogic(AbstractInOutSyncMessageReceiver.java:45)
> 	at org.apache.axis2.receivers.AbstractMessageReceiver.receive(AbstractMessageReceiver.java:100)
> 	at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:176)
> 	at org.apache.axis2.transport.http.HTTPTransportUtils.processHTTPPostRequest(HTTPTransportUtils.java:275)
> 	at org.apache.axis2.transport.http.AxisServlet.doPost(AxisServlet.java:131)
> 	at javax.servlet.http.HttpServlet.service(HttpServlet.java:710)
> 	at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
> 	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:269)
> 	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
> 	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: axis-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-dev-help@ws.apache.org


[jira] Resolved: (AXIS2-3872) MTOM Issues

Posted by "Andreas Veithen (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/AXIS2-3872?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Andreas Veithen resolved AXIS2-3872.
------------------------------------

       Resolution: Fixed
    Fix Version/s: 1.6

For point 1: if I'm not mistaken, Axis2 only sends out responses as MTOM if the request was MTOM or doingMTOM is set to true in the MessageContext.

For point 2: WSCOMMONS-433 solves the OOM error.

> MTOM Issues
> -----------
>
>                 Key: AXIS2-3872
>                 URL: https://issues.apache.org/jira/browse/AXIS2-3872
>             Project: Axis 2.0 (Axis2)
>          Issue Type: Bug
>    Affects Versions: 1.4
>         Environment: Tomcat 5.5 on Windows XP Pro SP2
>            Reporter: Renjith C
>            Assignee: Andreas Veithen
>             Fix For: 1.6
>
>
> 1) 
> When axis2.xml property,
> <parameter name="enableMTOM">true</parameter> is set to true, even though the caching is enabled the file is not getting saved on to the disk.
> 2)
> Exception thrown when a 470M file is send over using MTOM.
> [ERROR] Java heap space
> java.lang.OutOfMemoryError: Java heap space
> 	at java.util.Arrays.copyOf(Unknown Source)
> 	at java.lang.AbstractStringBuilder.expandCapacity(Unknown Source)
> 	at java.lang.AbstractStringBuilder.append(Unknown Source)
> 	at java.lang.StringBuffer.append(Unknown Source)
> 	at org.apache.axiom.om.util.Base64.encode(Base64.java:250)
> 	at org.apache.axiom.om.util.TextHelper.toString(TextHelper.java:33)
> 	at org.apache.axiom.om.impl.llom.OMTextImpl.getText(OMTextImpl.java:269)
> 	at org.apache.axiom.om.impl.llom.OMTextImpl.writeOutput(OMTextImpl.java:255)
> 	at org.apache.axiom.om.impl.llom.OMTextImpl.internalSerializeLocal(OMTextImpl.java:433)
> 	at org.apache.axiom.om.impl.llom.OMTextImpl.internalSerializeAndConsume(OMTextImpl.java:408)
> 	at org.apache.axiom.om.impl.llom.OMElementImpl.internalSerialize(OMElementImpl.java:918)
> 	at org.apache.axiom.om.impl.llom.OMElementImpl.internalSerializeAndConsume(OMElementImpl.java:947)
> 	at org.apache.axiom.om.impl.llom.OMElementImpl.internalSerialize(OMElementImpl.java:918)
> 	at org.apache.axiom.om.impl.llom.OMElementImpl.internalSerializeAndConsume(OMElementImpl.java:947)
> 	at org.apache.axiom.soap.impl.llom.SOAPEnvelopeImpl.serializeInternally(SOAPEnvelopeImpl.java:240)
> 	at org.apache.axiom.soap.impl.llom.SOAPEnvelopeImpl.internalSerialize(SOAPEnvelopeImpl.java:228)
> 	at org.apache.axiom.om.impl.llom.OMElementImpl.internalSerializeAndConsume(OMElementImpl.java:947)
> 	at org.apache.axiom.om.impl.llom.OMNodeImpl.serializeAndConsume(OMNodeImpl.java:471)
> 	at org.apache.axis2.transport.http.SOAPMessageFormatter.writeTo(SOAPMessageFormatter.java:79)
> 	at org.apache.axis2.transport.http.CommonsHTTPTransportSender.sendUsingOutputStream(CommonsHTTPTransportSender.java:330)
> 	at org.apache.axis2.transport.http.CommonsHTTPTransportSender.invoke(CommonsHTTPTransportSender.java:213)
> 	at org.apache.axis2.engine.AxisEngine.send(AxisEngine.java:448)
> 	at org.apache.axis2.receivers.AbstractInOutSyncMessageReceiver.invokeBusinessLogic(AbstractInOutSyncMessageReceiver.java:45)
> 	at org.apache.axis2.receivers.AbstractMessageReceiver.receive(AbstractMessageReceiver.java:100)
> 	at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:176)
> 	at org.apache.axis2.transport.http.HTTPTransportUtils.processHTTPPostRequest(HTTPTransportUtils.java:275)
> 	at org.apache.axis2.transport.http.AxisServlet.doPost(AxisServlet.java:131)
> 	at javax.servlet.http.HttpServlet.service(HttpServlet.java:710)
> 	at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
> 	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:269)
> 	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
> 	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (AXIS2-3872) MTOM Issues

Posted by "Andreas Veithen (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/AXIS2-3872?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12660797#action_12660797 ] 

Andreas Veithen commented on AXIS2-3872:
----------------------------------------

There are two things here:

1) For some reason (related to the enableSwA/enableMTOM settings) Axiom tries to inline the data (as Base64 encoded text). I'm not sure exactly why this is so. Maybe Thilina may help here.

2) OMTextImpl.writeOutput doesn't do a good job when converting the DataHandler to Base64: it calls OMTextImpl.getText, which means that Axiom will construct a single String from the complete DataHandler content. For large contents this will inevitably lead to out of memory errors. The correct strategy is to do the conversion in chunks. This is an Axiom issue and I can have a look at this.

> MTOM Issues
> -----------
>
>                 Key: AXIS2-3872
>                 URL: https://issues.apache.org/jira/browse/AXIS2-3872
>             Project: Axis 2.0 (Axis2)
>          Issue Type: Bug
>    Affects Versions: 1.4
>         Environment: Tomcat 5.5 on Windows XP Pro SP2
>            Reporter: Renjith C
>            Assignee: Thilina Gunarathne
>
> 1) 
> When axis2.xml property,
> <parameter name="enableMTOM">true</parameter> is set to true, even though the caching is enabled the file is not getting saved on to the disk.
> 2)
> Exception thrown when a 470M file is send over using MTOM.
> [ERROR] Java heap space
> java.lang.OutOfMemoryError: Java heap space
> 	at java.util.Arrays.copyOf(Unknown Source)
> 	at java.lang.AbstractStringBuilder.expandCapacity(Unknown Source)
> 	at java.lang.AbstractStringBuilder.append(Unknown Source)
> 	at java.lang.StringBuffer.append(Unknown Source)
> 	at org.apache.axiom.om.util.Base64.encode(Base64.java:250)
> 	at org.apache.axiom.om.util.TextHelper.toString(TextHelper.java:33)
> 	at org.apache.axiom.om.impl.llom.OMTextImpl.getText(OMTextImpl.java:269)
> 	at org.apache.axiom.om.impl.llom.OMTextImpl.writeOutput(OMTextImpl.java:255)
> 	at org.apache.axiom.om.impl.llom.OMTextImpl.internalSerializeLocal(OMTextImpl.java:433)
> 	at org.apache.axiom.om.impl.llom.OMTextImpl.internalSerializeAndConsume(OMTextImpl.java:408)
> 	at org.apache.axiom.om.impl.llom.OMElementImpl.internalSerialize(OMElementImpl.java:918)
> 	at org.apache.axiom.om.impl.llom.OMElementImpl.internalSerializeAndConsume(OMElementImpl.java:947)
> 	at org.apache.axiom.om.impl.llom.OMElementImpl.internalSerialize(OMElementImpl.java:918)
> 	at org.apache.axiom.om.impl.llom.OMElementImpl.internalSerializeAndConsume(OMElementImpl.java:947)
> 	at org.apache.axiom.soap.impl.llom.SOAPEnvelopeImpl.serializeInternally(SOAPEnvelopeImpl.java:240)
> 	at org.apache.axiom.soap.impl.llom.SOAPEnvelopeImpl.internalSerialize(SOAPEnvelopeImpl.java:228)
> 	at org.apache.axiom.om.impl.llom.OMElementImpl.internalSerializeAndConsume(OMElementImpl.java:947)
> 	at org.apache.axiom.om.impl.llom.OMNodeImpl.serializeAndConsume(OMNodeImpl.java:471)
> 	at org.apache.axis2.transport.http.SOAPMessageFormatter.writeTo(SOAPMessageFormatter.java:79)
> 	at org.apache.axis2.transport.http.CommonsHTTPTransportSender.sendUsingOutputStream(CommonsHTTPTransportSender.java:330)
> 	at org.apache.axis2.transport.http.CommonsHTTPTransportSender.invoke(CommonsHTTPTransportSender.java:213)
> 	at org.apache.axis2.engine.AxisEngine.send(AxisEngine.java:448)
> 	at org.apache.axis2.receivers.AbstractInOutSyncMessageReceiver.invokeBusinessLogic(AbstractInOutSyncMessageReceiver.java:45)
> 	at org.apache.axis2.receivers.AbstractMessageReceiver.receive(AbstractMessageReceiver.java:100)
> 	at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:176)
> 	at org.apache.axis2.transport.http.HTTPTransportUtils.processHTTPPostRequest(HTTPTransportUtils.java:275)
> 	at org.apache.axis2.transport.http.AxisServlet.doPost(AxisServlet.java:131)
> 	at javax.servlet.http.HttpServlet.service(HttpServlet.java:710)
> 	at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
> 	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:269)
> 	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
> 	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Assigned: (AXIS2-3872) MTOM Issues

Posted by "Deepal Jayasinghe (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/AXIS2-3872?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Deepal Jayasinghe reassigned AXIS2-3872:
----------------------------------------

    Assignee: Thilina Gunarathne

> MTOM Issues
> -----------
>
>                 Key: AXIS2-3872
>                 URL: https://issues.apache.org/jira/browse/AXIS2-3872
>             Project: Axis 2.0 (Axis2)
>          Issue Type: Bug
>    Affects Versions: 1.4
>         Environment: Tomcat 5.5 on Windows XP Pro SP2
>            Reporter: Renjith C
>            Assignee: Thilina Gunarathne
>
> 1) 
> When axis2.xml property,
> <parameter name="enableMTOM">true</parameter> is set to true, even though the caching is enabled the file is not getting saved on to the disk.
> 2)
> Exception thrown when a 470M file is send over using MTOM.
> [ERROR] Java heap space
> java.lang.OutOfMemoryError: Java heap space
> 	at java.util.Arrays.copyOf(Unknown Source)
> 	at java.lang.AbstractStringBuilder.expandCapacity(Unknown Source)
> 	at java.lang.AbstractStringBuilder.append(Unknown Source)
> 	at java.lang.StringBuffer.append(Unknown Source)
> 	at org.apache.axiom.om.util.Base64.encode(Base64.java:250)
> 	at org.apache.axiom.om.util.TextHelper.toString(TextHelper.java:33)
> 	at org.apache.axiom.om.impl.llom.OMTextImpl.getText(OMTextImpl.java:269)
> 	at org.apache.axiom.om.impl.llom.OMTextImpl.writeOutput(OMTextImpl.java:255)
> 	at org.apache.axiom.om.impl.llom.OMTextImpl.internalSerializeLocal(OMTextImpl.java:433)
> 	at org.apache.axiom.om.impl.llom.OMTextImpl.internalSerializeAndConsume(OMTextImpl.java:408)
> 	at org.apache.axiom.om.impl.llom.OMElementImpl.internalSerialize(OMElementImpl.java:918)
> 	at org.apache.axiom.om.impl.llom.OMElementImpl.internalSerializeAndConsume(OMElementImpl.java:947)
> 	at org.apache.axiom.om.impl.llom.OMElementImpl.internalSerialize(OMElementImpl.java:918)
> 	at org.apache.axiom.om.impl.llom.OMElementImpl.internalSerializeAndConsume(OMElementImpl.java:947)
> 	at org.apache.axiom.soap.impl.llom.SOAPEnvelopeImpl.serializeInternally(SOAPEnvelopeImpl.java:240)
> 	at org.apache.axiom.soap.impl.llom.SOAPEnvelopeImpl.internalSerialize(SOAPEnvelopeImpl.java:228)
> 	at org.apache.axiom.om.impl.llom.OMElementImpl.internalSerializeAndConsume(OMElementImpl.java:947)
> 	at org.apache.axiom.om.impl.llom.OMNodeImpl.serializeAndConsume(OMNodeImpl.java:471)
> 	at org.apache.axis2.transport.http.SOAPMessageFormatter.writeTo(SOAPMessageFormatter.java:79)
> 	at org.apache.axis2.transport.http.CommonsHTTPTransportSender.sendUsingOutputStream(CommonsHTTPTransportSender.java:330)
> 	at org.apache.axis2.transport.http.CommonsHTTPTransportSender.invoke(CommonsHTTPTransportSender.java:213)
> 	at org.apache.axis2.engine.AxisEngine.send(AxisEngine.java:448)
> 	at org.apache.axis2.receivers.AbstractInOutSyncMessageReceiver.invokeBusinessLogic(AbstractInOutSyncMessageReceiver.java:45)
> 	at org.apache.axis2.receivers.AbstractMessageReceiver.receive(AbstractMessageReceiver.java:100)
> 	at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:176)
> 	at org.apache.axis2.transport.http.HTTPTransportUtils.processHTTPPostRequest(HTTPTransportUtils.java:275)
> 	at org.apache.axis2.transport.http.AxisServlet.doPost(AxisServlet.java:131)
> 	at javax.servlet.http.HttpServlet.service(HttpServlet.java:710)
> 	at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
> 	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:269)
> 	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
> 	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: axis-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-dev-help@ws.apache.org


[jira] Commented: (AXIS2-3872) MTOM Issues

Posted by "Thilina Gunarathne (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/AXIS2-3872?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12628009#action_12628009 ] 

Thilina Gunarathne commented on AXIS2-3872:
-------------------------------------------

For the original isssue (Renjith C),
I can see the following in the stack trace. According the following the error happens because the attachment is getting base64 encoded. We may be able to help you, if you can give us more details about ur service.
Also It looks like you are getting the error, not when receiving the message. But when sending (may be the reply)..  File caching works only for receiving large attachments..

at java.lang.StringBuffer.append(Unknown Source)
at org.apache.axiom.om.util.Base64.encode(Base64.java:250)
at org.apache.axiom.om.util.TextHelper.toString(TextHelper.java:33) 

Nikolaus,
Please confirm whether you get the same exception... If so read my comment above. 
If not please post more details about the error you are getting. Also confirm whether you have file caching enabled..

thanks..

> MTOM Issues
> -----------
>
>                 Key: AXIS2-3872
>                 URL: https://issues.apache.org/jira/browse/AXIS2-3872
>             Project: Axis 2.0 (Axis2)
>          Issue Type: Bug
>    Affects Versions: 1.4
>         Environment: Tomcat 5.5 on Windows XP Pro SP2
>            Reporter: Renjith C
>            Assignee: Thilina Gunarathne
>
> 1) 
> When axis2.xml property,
> <parameter name="enableMTOM">true</parameter> is set to true, even though the caching is enabled the file is not getting saved on to the disk.
> 2)
> Exception thrown when a 470M file is send over using MTOM.
> [ERROR] Java heap space
> java.lang.OutOfMemoryError: Java heap space
> 	at java.util.Arrays.copyOf(Unknown Source)
> 	at java.lang.AbstractStringBuilder.expandCapacity(Unknown Source)
> 	at java.lang.AbstractStringBuilder.append(Unknown Source)
> 	at java.lang.StringBuffer.append(Unknown Source)
> 	at org.apache.axiom.om.util.Base64.encode(Base64.java:250)
> 	at org.apache.axiom.om.util.TextHelper.toString(TextHelper.java:33)
> 	at org.apache.axiom.om.impl.llom.OMTextImpl.getText(OMTextImpl.java:269)
> 	at org.apache.axiom.om.impl.llom.OMTextImpl.writeOutput(OMTextImpl.java:255)
> 	at org.apache.axiom.om.impl.llom.OMTextImpl.internalSerializeLocal(OMTextImpl.java:433)
> 	at org.apache.axiom.om.impl.llom.OMTextImpl.internalSerializeAndConsume(OMTextImpl.java:408)
> 	at org.apache.axiom.om.impl.llom.OMElementImpl.internalSerialize(OMElementImpl.java:918)
> 	at org.apache.axiom.om.impl.llom.OMElementImpl.internalSerializeAndConsume(OMElementImpl.java:947)
> 	at org.apache.axiom.om.impl.llom.OMElementImpl.internalSerialize(OMElementImpl.java:918)
> 	at org.apache.axiom.om.impl.llom.OMElementImpl.internalSerializeAndConsume(OMElementImpl.java:947)
> 	at org.apache.axiom.soap.impl.llom.SOAPEnvelopeImpl.serializeInternally(SOAPEnvelopeImpl.java:240)
> 	at org.apache.axiom.soap.impl.llom.SOAPEnvelopeImpl.internalSerialize(SOAPEnvelopeImpl.java:228)
> 	at org.apache.axiom.om.impl.llom.OMElementImpl.internalSerializeAndConsume(OMElementImpl.java:947)
> 	at org.apache.axiom.om.impl.llom.OMNodeImpl.serializeAndConsume(OMNodeImpl.java:471)
> 	at org.apache.axis2.transport.http.SOAPMessageFormatter.writeTo(SOAPMessageFormatter.java:79)
> 	at org.apache.axis2.transport.http.CommonsHTTPTransportSender.sendUsingOutputStream(CommonsHTTPTransportSender.java:330)
> 	at org.apache.axis2.transport.http.CommonsHTTPTransportSender.invoke(CommonsHTTPTransportSender.java:213)
> 	at org.apache.axis2.engine.AxisEngine.send(AxisEngine.java:448)
> 	at org.apache.axis2.receivers.AbstractInOutSyncMessageReceiver.invokeBusinessLogic(AbstractInOutSyncMessageReceiver.java:45)
> 	at org.apache.axis2.receivers.AbstractMessageReceiver.receive(AbstractMessageReceiver.java:100)
> 	at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:176)
> 	at org.apache.axis2.transport.http.HTTPTransportUtils.processHTTPPostRequest(HTTPTransportUtils.java:275)
> 	at org.apache.axis2.transport.http.AxisServlet.doPost(AxisServlet.java:131)
> 	at javax.servlet.http.HttpServlet.service(HttpServlet.java:710)
> 	at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
> 	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:269)
> 	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
> 	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: axis-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-dev-help@ws.apache.org


[jira] Issue Comment Edited: (AXIS2-3872) MTOM Issues

Posted by "Nikolaus Krismer (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/AXIS2-3872?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12660783#action_12660783 ] 

niko_k edited comment on AXIS2-3872 at 1/5/09 7:17 AM:
-----------------------------------------------------------------

I worked on that issue last weekend (finally found time again)... and i am still a bit confused.
It has nothing to do with file handling on the server (i do not use a byte[] or something similar there... i use FileDataSource objects to pass them to the DataHandler's constructor)

I also noticed that everything works well when using the following config-part in the server's axis2.xml file:
    <parameter name="enableMTOM">true</parameter>
    <parameter name="enableSwA">false</parameter>

However, as soon as i change the "enableSwA"-property to "true" (so both values are true), the Arrays.copyOf exception occurs.

BTW:
Happens also on my Macbook... so not only WinXP SP2 is affected (server used on mac is even Tomcat 6.0.18, deployed in a Geronimo container v. 2.1.3)

      was (Author: niko_k):
    I worked on that issue last weekend (finally found time again)... and i am still a bit confused.
It has nothing to do with file handling on the server (i do not use a byte[] or something similar there... i use FileDataSource objects to pass them to the DataHandler's constructor)

I also noticed that everything works well when using the following config-part in the server's axis2.xml file:
    <parameter name="enableMTOM">true</parameter>
    <parameter name="enableSwA">false</parameter>

However, as soon as i change the "enableSwA"-property to "true" (so both values are true), the Arrays.copyOf exception occurs.
  
> MTOM Issues
> -----------
>
>                 Key: AXIS2-3872
>                 URL: https://issues.apache.org/jira/browse/AXIS2-3872
>             Project: Axis 2.0 (Axis2)
>          Issue Type: Bug
>    Affects Versions: 1.4
>         Environment: Tomcat 5.5 on Windows XP Pro SP2
>            Reporter: Renjith C
>            Assignee: Thilina Gunarathne
>
> 1) 
> When axis2.xml property,
> <parameter name="enableMTOM">true</parameter> is set to true, even though the caching is enabled the file is not getting saved on to the disk.
> 2)
> Exception thrown when a 470M file is send over using MTOM.
> [ERROR] Java heap space
> java.lang.OutOfMemoryError: Java heap space
> 	at java.util.Arrays.copyOf(Unknown Source)
> 	at java.lang.AbstractStringBuilder.expandCapacity(Unknown Source)
> 	at java.lang.AbstractStringBuilder.append(Unknown Source)
> 	at java.lang.StringBuffer.append(Unknown Source)
> 	at org.apache.axiom.om.util.Base64.encode(Base64.java:250)
> 	at org.apache.axiom.om.util.TextHelper.toString(TextHelper.java:33)
> 	at org.apache.axiom.om.impl.llom.OMTextImpl.getText(OMTextImpl.java:269)
> 	at org.apache.axiom.om.impl.llom.OMTextImpl.writeOutput(OMTextImpl.java:255)
> 	at org.apache.axiom.om.impl.llom.OMTextImpl.internalSerializeLocal(OMTextImpl.java:433)
> 	at org.apache.axiom.om.impl.llom.OMTextImpl.internalSerializeAndConsume(OMTextImpl.java:408)
> 	at org.apache.axiom.om.impl.llom.OMElementImpl.internalSerialize(OMElementImpl.java:918)
> 	at org.apache.axiom.om.impl.llom.OMElementImpl.internalSerializeAndConsume(OMElementImpl.java:947)
> 	at org.apache.axiom.om.impl.llom.OMElementImpl.internalSerialize(OMElementImpl.java:918)
> 	at org.apache.axiom.om.impl.llom.OMElementImpl.internalSerializeAndConsume(OMElementImpl.java:947)
> 	at org.apache.axiom.soap.impl.llom.SOAPEnvelopeImpl.serializeInternally(SOAPEnvelopeImpl.java:240)
> 	at org.apache.axiom.soap.impl.llom.SOAPEnvelopeImpl.internalSerialize(SOAPEnvelopeImpl.java:228)
> 	at org.apache.axiom.om.impl.llom.OMElementImpl.internalSerializeAndConsume(OMElementImpl.java:947)
> 	at org.apache.axiom.om.impl.llom.OMNodeImpl.serializeAndConsume(OMNodeImpl.java:471)
> 	at org.apache.axis2.transport.http.SOAPMessageFormatter.writeTo(SOAPMessageFormatter.java:79)
> 	at org.apache.axis2.transport.http.CommonsHTTPTransportSender.sendUsingOutputStream(CommonsHTTPTransportSender.java:330)
> 	at org.apache.axis2.transport.http.CommonsHTTPTransportSender.invoke(CommonsHTTPTransportSender.java:213)
> 	at org.apache.axis2.engine.AxisEngine.send(AxisEngine.java:448)
> 	at org.apache.axis2.receivers.AbstractInOutSyncMessageReceiver.invokeBusinessLogic(AbstractInOutSyncMessageReceiver.java:45)
> 	at org.apache.axis2.receivers.AbstractMessageReceiver.receive(AbstractMessageReceiver.java:100)
> 	at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:176)
> 	at org.apache.axis2.transport.http.HTTPTransportUtils.processHTTPPostRequest(HTTPTransportUtils.java:275)
> 	at org.apache.axis2.transport.http.AxisServlet.doPost(AxisServlet.java:131)
> 	at javax.servlet.http.HttpServlet.service(HttpServlet.java:710)
> 	at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
> 	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:269)
> 	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
> 	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (AXIS2-3872) MTOM Issues

Posted by "Nikolaus Krismer (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/AXIS2-3872?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12660783#action_12660783 ] 

Nikolaus Krismer commented on AXIS2-3872:
-----------------------------------------

I worked on that issue last weekend (finally found time again)... and i am still a bit confused.
It has nothing to do with file handling on the server (i do not use a byte[] or something similar there... i use FileDataSource objects to pass them to the DataHandler's constructor)

I also noticed that everything works well when using the following config-part in the server's axis2.xml file:
    <parameter name="enableMTOM">true</parameter>
    <parameter name="enableSwA">false</parameter>

However, as soon as i change the "enableSwA"-property to "true" (so both values are true), the Arrays.copyOf exception occurs.

> MTOM Issues
> -----------
>
>                 Key: AXIS2-3872
>                 URL: https://issues.apache.org/jira/browse/AXIS2-3872
>             Project: Axis 2.0 (Axis2)
>          Issue Type: Bug
>    Affects Versions: 1.4
>         Environment: Tomcat 5.5 on Windows XP Pro SP2
>            Reporter: Renjith C
>            Assignee: Thilina Gunarathne
>
> 1) 
> When axis2.xml property,
> <parameter name="enableMTOM">true</parameter> is set to true, even though the caching is enabled the file is not getting saved on to the disk.
> 2)
> Exception thrown when a 470M file is send over using MTOM.
> [ERROR] Java heap space
> java.lang.OutOfMemoryError: Java heap space
> 	at java.util.Arrays.copyOf(Unknown Source)
> 	at java.lang.AbstractStringBuilder.expandCapacity(Unknown Source)
> 	at java.lang.AbstractStringBuilder.append(Unknown Source)
> 	at java.lang.StringBuffer.append(Unknown Source)
> 	at org.apache.axiom.om.util.Base64.encode(Base64.java:250)
> 	at org.apache.axiom.om.util.TextHelper.toString(TextHelper.java:33)
> 	at org.apache.axiom.om.impl.llom.OMTextImpl.getText(OMTextImpl.java:269)
> 	at org.apache.axiom.om.impl.llom.OMTextImpl.writeOutput(OMTextImpl.java:255)
> 	at org.apache.axiom.om.impl.llom.OMTextImpl.internalSerializeLocal(OMTextImpl.java:433)
> 	at org.apache.axiom.om.impl.llom.OMTextImpl.internalSerializeAndConsume(OMTextImpl.java:408)
> 	at org.apache.axiom.om.impl.llom.OMElementImpl.internalSerialize(OMElementImpl.java:918)
> 	at org.apache.axiom.om.impl.llom.OMElementImpl.internalSerializeAndConsume(OMElementImpl.java:947)
> 	at org.apache.axiom.om.impl.llom.OMElementImpl.internalSerialize(OMElementImpl.java:918)
> 	at org.apache.axiom.om.impl.llom.OMElementImpl.internalSerializeAndConsume(OMElementImpl.java:947)
> 	at org.apache.axiom.soap.impl.llom.SOAPEnvelopeImpl.serializeInternally(SOAPEnvelopeImpl.java:240)
> 	at org.apache.axiom.soap.impl.llom.SOAPEnvelopeImpl.internalSerialize(SOAPEnvelopeImpl.java:228)
> 	at org.apache.axiom.om.impl.llom.OMElementImpl.internalSerializeAndConsume(OMElementImpl.java:947)
> 	at org.apache.axiom.om.impl.llom.OMNodeImpl.serializeAndConsume(OMNodeImpl.java:471)
> 	at org.apache.axis2.transport.http.SOAPMessageFormatter.writeTo(SOAPMessageFormatter.java:79)
> 	at org.apache.axis2.transport.http.CommonsHTTPTransportSender.sendUsingOutputStream(CommonsHTTPTransportSender.java:330)
> 	at org.apache.axis2.transport.http.CommonsHTTPTransportSender.invoke(CommonsHTTPTransportSender.java:213)
> 	at org.apache.axis2.engine.AxisEngine.send(AxisEngine.java:448)
> 	at org.apache.axis2.receivers.AbstractInOutSyncMessageReceiver.invokeBusinessLogic(AbstractInOutSyncMessageReceiver.java:45)
> 	at org.apache.axis2.receivers.AbstractMessageReceiver.receive(AbstractMessageReceiver.java:100)
> 	at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:176)
> 	at org.apache.axis2.transport.http.HTTPTransportUtils.processHTTPPostRequest(HTTPTransportUtils.java:275)
> 	at org.apache.axis2.transport.http.AxisServlet.doPost(AxisServlet.java:131)
> 	at javax.servlet.http.HttpServlet.service(HttpServlet.java:710)
> 	at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
> 	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:269)
> 	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
> 	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Assigned: (AXIS2-3872) MTOM Issues

Posted by "Andreas Veithen (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/AXIS2-3872?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Andreas Veithen reassigned AXIS2-3872:
--------------------------------------

    Assignee: Andreas Veithen  (was: Thilina Gunarathne)

> MTOM Issues
> -----------
>
>                 Key: AXIS2-3872
>                 URL: https://issues.apache.org/jira/browse/AXIS2-3872
>             Project: Axis 2.0 (Axis2)
>          Issue Type: Bug
>    Affects Versions: 1.4
>         Environment: Tomcat 5.5 on Windows XP Pro SP2
>            Reporter: Renjith C
>            Assignee: Andreas Veithen
>
> 1) 
> When axis2.xml property,
> <parameter name="enableMTOM">true</parameter> is set to true, even though the caching is enabled the file is not getting saved on to the disk.
> 2)
> Exception thrown when a 470M file is send over using MTOM.
> [ERROR] Java heap space
> java.lang.OutOfMemoryError: Java heap space
> 	at java.util.Arrays.copyOf(Unknown Source)
> 	at java.lang.AbstractStringBuilder.expandCapacity(Unknown Source)
> 	at java.lang.AbstractStringBuilder.append(Unknown Source)
> 	at java.lang.StringBuffer.append(Unknown Source)
> 	at org.apache.axiom.om.util.Base64.encode(Base64.java:250)
> 	at org.apache.axiom.om.util.TextHelper.toString(TextHelper.java:33)
> 	at org.apache.axiom.om.impl.llom.OMTextImpl.getText(OMTextImpl.java:269)
> 	at org.apache.axiom.om.impl.llom.OMTextImpl.writeOutput(OMTextImpl.java:255)
> 	at org.apache.axiom.om.impl.llom.OMTextImpl.internalSerializeLocal(OMTextImpl.java:433)
> 	at org.apache.axiom.om.impl.llom.OMTextImpl.internalSerializeAndConsume(OMTextImpl.java:408)
> 	at org.apache.axiom.om.impl.llom.OMElementImpl.internalSerialize(OMElementImpl.java:918)
> 	at org.apache.axiom.om.impl.llom.OMElementImpl.internalSerializeAndConsume(OMElementImpl.java:947)
> 	at org.apache.axiom.om.impl.llom.OMElementImpl.internalSerialize(OMElementImpl.java:918)
> 	at org.apache.axiom.om.impl.llom.OMElementImpl.internalSerializeAndConsume(OMElementImpl.java:947)
> 	at org.apache.axiom.soap.impl.llom.SOAPEnvelopeImpl.serializeInternally(SOAPEnvelopeImpl.java:240)
> 	at org.apache.axiom.soap.impl.llom.SOAPEnvelopeImpl.internalSerialize(SOAPEnvelopeImpl.java:228)
> 	at org.apache.axiom.om.impl.llom.OMElementImpl.internalSerializeAndConsume(OMElementImpl.java:947)
> 	at org.apache.axiom.om.impl.llom.OMNodeImpl.serializeAndConsume(OMNodeImpl.java:471)
> 	at org.apache.axis2.transport.http.SOAPMessageFormatter.writeTo(SOAPMessageFormatter.java:79)
> 	at org.apache.axis2.transport.http.CommonsHTTPTransportSender.sendUsingOutputStream(CommonsHTTPTransportSender.java:330)
> 	at org.apache.axis2.transport.http.CommonsHTTPTransportSender.invoke(CommonsHTTPTransportSender.java:213)
> 	at org.apache.axis2.engine.AxisEngine.send(AxisEngine.java:448)
> 	at org.apache.axis2.receivers.AbstractInOutSyncMessageReceiver.invokeBusinessLogic(AbstractInOutSyncMessageReceiver.java:45)
> 	at org.apache.axis2.receivers.AbstractMessageReceiver.receive(AbstractMessageReceiver.java:100)
> 	at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:176)
> 	at org.apache.axis2.transport.http.HTTPTransportUtils.processHTTPPostRequest(HTTPTransportUtils.java:275)
> 	at org.apache.axis2.transport.http.AxisServlet.doPost(AxisServlet.java:131)
> 	at javax.servlet.http.HttpServlet.service(HttpServlet.java:710)
> 	at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
> 	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:269)
> 	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
> 	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (AXIS2-3872) MTOM Issues

Posted by "Thilina Gunarathne (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/AXIS2-3872?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12628637#action_12628637 ] 

Thilina Gunarathne commented on AXIS2-3872:
-------------------------------------------

Hi Nikolaus,
As I said earlier file caching is only for receiving large attachments, When sending DataHandlers take care of not loading the binary data to memory as long as possible. For an example if u create a datahandler using a file, the contents will be directly written to the output stream when MTOM/SwA is used. But if u created a datahandler using a byte[], then the contents are already in memory.. So u r out of luck..

Back to the original issue... Looks like ur binary data is getting sent as inline base64binary, not as an attachment. You can verify this by sending a smaller attachment and then looking at the message using a tool like tcpmon (http://ws.apache.org/commons/tcpmon). In this case the error is unavoidable... U should get the binary data to be sent back as an attachment...



> MTOM Issues
> -----------
>
>                 Key: AXIS2-3872
>                 URL: https://issues.apache.org/jira/browse/AXIS2-3872
>             Project: Axis 2.0 (Axis2)
>          Issue Type: Bug
>    Affects Versions: 1.4
>         Environment: Tomcat 5.5 on Windows XP Pro SP2
>            Reporter: Renjith C
>            Assignee: Thilina Gunarathne
>
> 1) 
> When axis2.xml property,
> <parameter name="enableMTOM">true</parameter> is set to true, even though the caching is enabled the file is not getting saved on to the disk.
> 2)
> Exception thrown when a 470M file is send over using MTOM.
> [ERROR] Java heap space
> java.lang.OutOfMemoryError: Java heap space
> 	at java.util.Arrays.copyOf(Unknown Source)
> 	at java.lang.AbstractStringBuilder.expandCapacity(Unknown Source)
> 	at java.lang.AbstractStringBuilder.append(Unknown Source)
> 	at java.lang.StringBuffer.append(Unknown Source)
> 	at org.apache.axiom.om.util.Base64.encode(Base64.java:250)
> 	at org.apache.axiom.om.util.TextHelper.toString(TextHelper.java:33)
> 	at org.apache.axiom.om.impl.llom.OMTextImpl.getText(OMTextImpl.java:269)
> 	at org.apache.axiom.om.impl.llom.OMTextImpl.writeOutput(OMTextImpl.java:255)
> 	at org.apache.axiom.om.impl.llom.OMTextImpl.internalSerializeLocal(OMTextImpl.java:433)
> 	at org.apache.axiom.om.impl.llom.OMTextImpl.internalSerializeAndConsume(OMTextImpl.java:408)
> 	at org.apache.axiom.om.impl.llom.OMElementImpl.internalSerialize(OMElementImpl.java:918)
> 	at org.apache.axiom.om.impl.llom.OMElementImpl.internalSerializeAndConsume(OMElementImpl.java:947)
> 	at org.apache.axiom.om.impl.llom.OMElementImpl.internalSerialize(OMElementImpl.java:918)
> 	at org.apache.axiom.om.impl.llom.OMElementImpl.internalSerializeAndConsume(OMElementImpl.java:947)
> 	at org.apache.axiom.soap.impl.llom.SOAPEnvelopeImpl.serializeInternally(SOAPEnvelopeImpl.java:240)
> 	at org.apache.axiom.soap.impl.llom.SOAPEnvelopeImpl.internalSerialize(SOAPEnvelopeImpl.java:228)
> 	at org.apache.axiom.om.impl.llom.OMElementImpl.internalSerializeAndConsume(OMElementImpl.java:947)
> 	at org.apache.axiom.om.impl.llom.OMNodeImpl.serializeAndConsume(OMNodeImpl.java:471)
> 	at org.apache.axis2.transport.http.SOAPMessageFormatter.writeTo(SOAPMessageFormatter.java:79)
> 	at org.apache.axis2.transport.http.CommonsHTTPTransportSender.sendUsingOutputStream(CommonsHTTPTransportSender.java:330)
> 	at org.apache.axis2.transport.http.CommonsHTTPTransportSender.invoke(CommonsHTTPTransportSender.java:213)
> 	at org.apache.axis2.engine.AxisEngine.send(AxisEngine.java:448)
> 	at org.apache.axis2.receivers.AbstractInOutSyncMessageReceiver.invokeBusinessLogic(AbstractInOutSyncMessageReceiver.java:45)
> 	at org.apache.axis2.receivers.AbstractMessageReceiver.receive(AbstractMessageReceiver.java:100)
> 	at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:176)
> 	at org.apache.axis2.transport.http.HTTPTransportUtils.processHTTPPostRequest(HTTPTransportUtils.java:275)
> 	at org.apache.axis2.transport.http.AxisServlet.doPost(AxisServlet.java:131)
> 	at javax.servlet.http.HttpServlet.service(HttpServlet.java:710)
> 	at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
> 	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:269)
> 	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
> 	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: axis-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-dev-help@ws.apache.org