我正在编写一个spring webservice服务器,需要将一个大文件从客户端上传到服务器。到目前为止,直到 100MB 都可以,但在那之后它会因内存不足错误而崩溃。
java.lang.OutOfMemoryError:java.lang.AbstractStringBuilder.expandCapacity(AbstractStringBuilder.java:100) 处 java.util.Arrays.copyOf(Arrays.java:2882) 处的 Java 堆空间 java.lang.AbstractStringBuilder.append(AbstractStringBuilder. java:515) 在 java.lang.StringBuilder.append(StringBuilder.java:189) 在 com.sun.xml.bind.v2.runtime.unmarshaller.StAXStreamConnector.handleCharacters(StAXStreamConnector.java:323) 在 com.sun.xml .bind.v2.runtime.unmarshaller.StAXStreamConnector.bridge(StAXStreamConnector.java:187) 在 com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal0(UnmarshallerImpl.java:360)
这是我的配置:
<bean id="marshaller" class="org.springframework.oxm.jaxb.Jaxb2Marshaller">
<property name="contextPath" value="epost.mojito.ws.wsdl" />
<property name="mtomEnabled" value="true"></property>
</bean>
<bean id="messageFactory" class="org.springframework.ws.soap.axiom.AxiomSoapMessageFactory">
<description>A message factory to support SOAP 1.2</description>
<property name="soapVersion">
<util:constant static-field="org.springframework.ws.soap.SoapVersion.SOAP_12" />
</property>
<property name="payloadCaching" value="false" />
<property name="attachmentCaching" value="true" />
<property name="attachmentCacheThreshold" value="1024"/>
<property name="attachmentCacheDir" value="D:/mojito attachment test/cache"/>
</bean>
请帮忙!...谢谢