用于 MTOM 测试的 DataSourceStreamingDataHandler 替代方案
Alternative to DataSourceStreamingDataHandler for MTOM testing
在 JUnit 测试中,我使用 class com.sun.xml.internal.ws.encoding.DataSourceStreamingDataHandler
这很糟糕,因为它是一个内部 class 并且 Maven 拒绝编译我的 JUnit 测试,即使使用 -DskipTests
旗帜。
我的 JUnit 测试是:
@Test
public void test(){
ClassToTest tom = new ClassToTest();
URL url = this.getClass().getResource("/myXMLFile.xml");
File file = new File(url.getPath());
DataSource dataSource = new FileDataSource(file);
DataHandler dataHandler = new DataSourceStreamingDataHandler(dataSource);
MyJAXBObject list = tom.methodToTest(dataHandler);
for( JAXBTransazioneICT t : lista.getListaTransazioniICT() ){
LOG.debug(t.toString());
}
}
这个class有什么好的替代品吗?如果没有,我该如何编译我的 Maven 项目?
我找到的替代方案是 org.apache.axiom.attachments.ConfigurableDataHandler
来自 Axiom API。
maven依赖是:
<dependency>
<groupId>org.apache.ws.commons.axiom</groupId>
<artifactId>axiom-api</artifactId>
<version>1.2.14</version>
</dependency>
在 JUnit 测试中,我使用 class com.sun.xml.internal.ws.encoding.DataSourceStreamingDataHandler
这很糟糕,因为它是一个内部 class 并且 Maven 拒绝编译我的 JUnit 测试,即使使用 -DskipTests
旗帜。
我的 JUnit 测试是:
@Test
public void test(){
ClassToTest tom = new ClassToTest();
URL url = this.getClass().getResource("/myXMLFile.xml");
File file = new File(url.getPath());
DataSource dataSource = new FileDataSource(file);
DataHandler dataHandler = new DataSourceStreamingDataHandler(dataSource);
MyJAXBObject list = tom.methodToTest(dataHandler);
for( JAXBTransazioneICT t : lista.getListaTransazioniICT() ){
LOG.debug(t.toString());
}
}
这个class有什么好的替代品吗?如果没有,我该如何编译我的 Maven 项目?
我找到的替代方案是 org.apache.axiom.attachments.ConfigurableDataHandler
来自 Axiom API。
maven依赖是:
<dependency>
<groupId>org.apache.ws.commons.axiom</groupId>
<artifactId>axiom-api</artifactId>
<version>1.2.14</version>
</dependency>