Вчера у меня возникла такая же проблема с загрузкой больших файлов. Наконец я смог найти решение для этого. Spring WS имеет настраиваемую фабрику сообщений Axiom под названием org.springframework.ws.soap.axiom.AxiomSoapMessageFactory
, которая может использовать файл вместо памяти при загрузке больших файлов. Единственное изменение в вашей конфигурации - это определение bean-компонента с вашими пользовательскими свойствами.
<bean id="messageFactory" class="org.springframework.ws.soap.axiom.AxiomSoapMessageFactory">
<property name="payloadCaching" value="false" />
<property name="attachmentCaching" value="true" />
<property name="attachmentCacheThreshold" value="1024"/>
</bean>
Когда у вас есть эта конфигурация и классы Axiom, доступные в classpath, Spring-ws автоматически использует временные файлы для добавления больших документов.