我在尝试在 java 中创建 WS 客户端时遇到问题。
我使用的库是apache-cxf 2.12。这是一个旧版本,但我希望将 Web 服务添加到已经运行并使用 Spring 2.5.6 的 JBoss 应用程序中,所以这个org.apache.cxf版本使用相同的 spring 版本。
但问题是(我知道很通用,与 maven、netbeans 和 apache-cxf 有关)
当我从 netbeans 执行我的客户项目(maven proyect)时,它工作得有点好。当我尝试使用脚本(bot windows an linux)运行此类时,它给了我这个错误:
“调用失败,出现以下情况:org.apache.cxf.ws.policy.PolicyException:无法满足任何策略替代方案。”
Java版本是一样的,我把所有的依赖jar复制到lib dir然后添加到%classpath%
那么,当我使用 maven org.codehaus.mojo:exec-maven-plugin:1.2.1:exec执行我的示例程序时,它可以工作,而当我使用 srcipt 运行它时它不会有什么不同?(我已经检查了所有依赖项,java 版本,...)
我猜它必须与 JAX-WS o JCE (Java Cryptography Architecture) 初始化有关。
¿ 有没有办法在运行 java.exe 时查看 %classpath maven 正在创建什么?
有效的 Maven 脚本:
JAVA_HOME=D:\\LOCAL\\Java\\jdk1.5.0_15
D:\\LOCAL\\apache-maven-2.0.9\\bin\\mvn.bat
-Dexec.classpathScope=runtime
-DskipTests=true
"-Dexec.args=-Djavax.net.debug=all -classpath %classpath es.webservice.aaTest TESTFILE"
-Dexec.executable=D:\\LOCAL\\Java\\jdk1.5.0_15\\bin\\java.exe
-Dmaven.repo.local=D:\\bsrepo\\.m2 process-classes
org.codehaus.mojo:exec-maven-plugin:1.2:exec
谢谢