我正在尝试使用Apache CXF将文件附加到SOAP Handler,但它不起作用。
我的例子就在这里。
https://github.com/emag-notes/cxf-soaphandler-demo
在此示例中,我使用SAAJ API附加文件。
但是,SOAP消息响应只是一个SOAP信封,而不是多部分(不是 包括我附上的文件。
我错过了什么吗?此代码适用于Apache Axis2。
尽管我知道使用MTOM是最佳选择,但我现在想使用现有的代码AMAP(我正在从Axis2进行迁移)。
答案 0 :(得分:1)
尽管代码看起来很好,但我相信即使您没有使用MTOM的完整功能,也需要使用MTOM。
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:jaxws="http://cxf.apache.org/jaxws" xmlns:soap="http://cxf.apache.org/bindings/soap"
xsi:schemaLocation=" http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://cxf.apache.org/bindings/soap http://cxf.apache.org/schemas/configuration/soap.xsd http://cxf.apache.org/jaxws http://cxf.apache.org/schemas/jaxws.xsd">
<jaxws:server id="Downloader" serviceClass="cxf.soaphandler.Downloader" address="downloader">
<jaxws:serviceBean>
<bean class="cxf.soaphandler.Downloader">
</bean>
</jaxws:serviceBean>
<jaxws:binding>
<soap:soapBinding mtomEnabled="true" />
</jaxws:binding>
</jaxws:server>
</beans>