[ https://issues.apache.org/jira/browse/AXIS-2778?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
LE BRIS Damien updated AXIS-2778: --------------------------------- Description: Hi, I have an out of memory problem when I try to transform a SOAPEnvelope to String. It's a 200MB File. The memory is define to: -Xmx3300M -Xms3300M JVM: java version "1.5.0_13" Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_13-b05) Java HotSpot(TM) Server VM (build 1.5.0_13-b05, mixed mode) Import (axis): import org.apache.axis.client.Call; import org.apache.axis.client.Service; import org.apache.axis.message.SOAPEnvelope; My code: // Appel du service Service service = new Service(); Call call = (Call) service.createCall(); //FE138 call.setProperty( Call.SOAPACTION_USE_PROPERTY, new Boolean( true ) ); call.setProperty( Call.SOAPACTION_URI_PROPERTY, soapAction); call.setTargetEndpointAddress(new java.net.URL(endpoint)); call.setOperationName("WS-RefTerm-TerminalListService"); // on récupère le fichier xml request passé en argument FileInputStream fluxXml = new FileInputStream(args[1]); SOAPEnvelope req = new SOAPEnvelope(fluxXml); // invocation du webservice SOAPEnvelope ret = call.invoke(req); /** **** ecriture de la reponse dans le fichier de sortie ***** */ /* recuperation du chemin du repertoire de sortie */ // construction du nom du fichier de sortie String repDest = System.getenv("REFTERM_REP_DEST"); File fichierDest = buildOutPutFileName(repDest, "terminalListResponse"); /* creation et ecriture de la reponse */ BufferedWriter reponse = new BufferedWriter(new OutputStreamWriter(new FileOutputStream(fichierDest))); reponse.write("<?xml version=\"1.0\" encoding=\"utf-8\"?>\n"); reponse.write(ret.toString()); Out of Memory when: reponse.write(ret.toString()); StackTrace: Exception in thread "main" java.lang.OutOfMemoryError: Java heap space at java.lang.AbstractStringBuilder.expandCapacity(AbstractStringBuilder.java:99) at java.lang.AbstractStringBuilder.append(AbstractStringBuilder.java:393) at java.lang.StringBuffer.append(StringBuffer.java:225) at java.io.StringWriter.write(StringWriter.java:79) at org.apache.axis.encoding.SerializationContext.endElement(SerializationContext.java:1225) at org.apache.axis.message.SAXOutputter.endElement(SAXOutputter.java:114) at org.apache.axis.message.SAX2EventRecorder.replay(SAX2EventRecorder.java:171) at org.apache.axis.message.MessageElement.output(MessageElement.java:1168) at org.apache.axis.message.SOAPBody.outputImpl(SOAPBody.java:139) at org.apache.axis.message.SOAPEnvelope.outputImpl(SOAPEnvelope.java:478) at org.apache.axis.message.MessageElement.output(MessageElement.java:1208) at org.apache.axis.message.MessageElement.getAsString(MessageElement.java:1111) at org.apache.axis.message.MessageElement.toString(MessageElement.java:1272) at com.bouygtel.newcom.referentiel.terminaux.AcquisitionRefTerminaux.main(AcquisitionRefTerminaux.java:102) If you have an information about this problem, I take it. Thanks. was: Hi, I have an out of memory problem when I try to transform a SOAPEnvelope in a String. It's a 200MB File. The memory is define to: -Xmx3300M -Xms3300M JVM: java version "1.5.0_13" Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_13-b05) Java HotSpot(TM) Server VM (build 1.5.0_13-b05, mixed mode) Import (axis): import org.apache.axis.client.Call; import org.apache.axis.client.Service; import org.apache.axis.message.SOAPEnvelope; My code: // Appel du service Service service = new Service(); Call call = (Call) service.createCall(); //FE138 call.setProperty( Call.SOAPACTION_USE_PROPERTY, new Boolean( true ) ); call.setProperty( Call.SOAPACTION_URI_PROPERTY, soapAction); call.setTargetEndpointAddress(new java.net.URL(endpoint)); call.setOperationName("WS-RefTerm-TerminalListService"); // on récupère le fichier xml request passé en argument FileInputStream fluxXml = new FileInputStream(args[1]); SOAPEnvelope req = new SOAPEnvelope(fluxXml); // invocation du webservice SOAPEnvelope ret = call.invoke(req); /** **** ecriture de la reponse dans le fichier de sortie ***** */ /* recuperation du chemin du repertoire de sortie */ // construction du nom du fichier de sortie String repDest = System.getenv("REFTERM_REP_DEST"); File fichierDest = buildOutPutFileName(repDest, "terminalListResponse"); /* creation et ecriture de la reponse */ BufferedWriter reponse = new BufferedWriter(new OutputStreamWriter(new FileOutputStream(fichierDest))); reponse.write("<?xml version=\"1.0\" encoding=\"utf-8\"?>\n"); reponse.write(ret.toString()); Out of Memory when: reponse.write(ret.toString()); StackTrace: Exception in thread "main" java.lang.OutOfMemoryError: Java heap space at java.lang.AbstractStringBuilder.expandCapacity(AbstractStringBuilder.java:99) at java.lang.AbstractStringBuilder.append(AbstractStringBuilder.java:393) at java.lang.StringBuffer.append(StringBuffer.java:225) at java.io.StringWriter.write(StringWriter.java:79) at org.apache.axis.encoding.SerializationContext.endElement(SerializationContext.java:1225) at org.apache.axis.message.SAXOutputter.endElement(SAXOutputter.java:114) at org.apache.axis.message.SAX2EventRecorder.replay(SAX2EventRecorder.java:171) at org.apache.axis.message.MessageElement.output(MessageElement.java:1168) at org.apache.axis.message.SOAPBody.outputImpl(SOAPBody.java:139) at org.apache.axis.message.SOAPEnvelope.outputImpl(SOAPEnvelope.java:478) at org.apache.axis.message.MessageElement.output(MessageElement.java:1208) at org.apache.axis.message.MessageElement.getAsString(MessageElement.java:1111) at org.apache.axis.message.MessageElement.toString(MessageElement.java:1272) at com.bouygtel.newcom.referentiel.terminaux.AcquisitionRefTerminaux.main(AcquisitionRefTerminaux.java:102) If you have an information about this problem, I take it. Thanks. > Out of Memory - SOAPEnvelope.toString - Client part > --------------------------------------------------- > > Key: AXIS-2778 > URL: https://issues.apache.org/jira/browse/AXIS-2778 > Project: Axis > Issue Type: Bug > Environment: Host: sun4u sparc SUNW,Sun-Fire-V890 > Java version: "1.5.0_13" build b05 > Axis: > Manifest-Version: 1.0 > Ant-Version: Apache Ant 1.6.5 > Created-By: 1.4.2_08-b03 (Sun Microsystems Inc.) > Name: org/apache/axis > Implementation-Title: Apache Axis > Implementation-Version: 1.4 1855 April 22 2006 > Implementation-Vendor: Apache Web Services > Reporter: LE BRIS Damien > Priority: Critical > > Hi, > I have an out of memory problem when I try to transform a SOAPEnvelope to > String. It's a 200MB File. > The memory is define to: -Xmx3300M -Xms3300M > JVM: > java version "1.5.0_13" > Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_13-b05) > Java HotSpot(TM) Server VM (build 1.5.0_13-b05, mixed mode) > Import (axis): > import org.apache.axis.client.Call; > import org.apache.axis.client.Service; > import org.apache.axis.message.SOAPEnvelope; > My code: > // Appel du service > Service service = new Service(); > Call call = (Call) service.createCall(); > > //FE138 > call.setProperty( Call.SOAPACTION_USE_PROPERTY, new Boolean( true ) ); > call.setProperty( Call.SOAPACTION_URI_PROPERTY, soapAction); > > call.setTargetEndpointAddress(new java.net.URL(endpoint)); > call.setOperationName("WS-RefTerm-TerminalListService"); > // on récupère le fichier xml request passé en argument > FileInputStream fluxXml = new FileInputStream(args[1]); > SOAPEnvelope req = new SOAPEnvelope(fluxXml); > // invocation du webservice > SOAPEnvelope ret = call.invoke(req); > /** **** ecriture de la reponse dans le fichier de sortie ***** */ > /* recuperation du chemin du repertoire de sortie */ > // construction du nom du fichier de sortie > String repDest = System.getenv("REFTERM_REP_DEST"); > File fichierDest = buildOutPutFileName(repDest, "terminalListResponse"); > /* creation et ecriture de la reponse */ > BufferedWriter reponse = new BufferedWriter(new OutputStreamWriter(new > FileOutputStream(fichierDest))); > reponse.write("<?xml version=\"1.0\" encoding=\"utf-8\"?>\n"); > reponse.write(ret.toString()); > Out of Memory when: > reponse.write(ret.toString()); > StackTrace: > Exception in thread "main" java.lang.OutOfMemoryError: Java heap space > at > java.lang.AbstractStringBuilder.expandCapacity(AbstractStringBuilder.java:99) > at > java.lang.AbstractStringBuilder.append(AbstractStringBuilder.java:393) > at java.lang.StringBuffer.append(StringBuffer.java:225) > at java.io.StringWriter.write(StringWriter.java:79) > at > org.apache.axis.encoding.SerializationContext.endElement(SerializationContext.java:1225) > at > org.apache.axis.message.SAXOutputter.endElement(SAXOutputter.java:114) > at > org.apache.axis.message.SAX2EventRecorder.replay(SAX2EventRecorder.java:171) > at > org.apache.axis.message.MessageElement.output(MessageElement.java:1168) > at org.apache.axis.message.SOAPBody.outputImpl(SOAPBody.java:139) > at > org.apache.axis.message.SOAPEnvelope.outputImpl(SOAPEnvelope.java:478) > at > org.apache.axis.message.MessageElement.output(MessageElement.java:1208) > at > org.apache.axis.message.MessageElement.getAsString(MessageElement.java:1111) > at > org.apache.axis.message.MessageElement.toString(MessageElement.java:1272) > at > com.bouygtel.newcom.referentiel.terminaux.AcquisitionRefTerminaux.main(AcquisitionRefTerminaux.java:102) > If you have an information about this problem, I take it. > Thanks. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.