gpt4 book ai didi

java - CXF NullPointerException(无法在 Tomcat 7 上编译 Web 服务 stub )

转载 作者:行者123 更新时间:2023-11-30 08:51:40 25 4
gpt4 key购买 nike

我正在使用 CXF 和 WSDL2JAVA 生成 Web 服务 stub ,在 Eclipse 上一切运行良好,但是当我在 Linux (OpenSuse) 上运行的 Tomcat 7.0 上部署 war 时。
我在 catalina.out 日志文件中收到以下错误 [未编译 java 文件]:

Caused by: java.lang.NullPointerException
at org.apache.cxf.common.util.Compiler.useJava6Compiler(Compiler.java:187)
at org.apache.cxf.common.util.Compiler.compileFiles(Compiler.java:141)
at org.apache.cxf.tools.common.ClassUtils.compile(ClassUtils.java:122)
at org.apache.cxf.tools.wsdlto.WSDLToJavaContainer.processWsdl(WSDLToJavaContainer.java:306)
at org.apache.cxf.tools.wsdlto.WSDLToJavaContainer.execute(WSDLToJavaContainer.java:164)
at org.apache.cxf.tools.wsdlto.WSDLToJavaContainer.execute(WSDLToJavaContainer.java:412)


Eclipse 环境:

  • Eclipse 版本:Indigo
  • JDK 版本:1.7.0_79
  • Tomcat :7
  • cxf 版本:3.0.4

OpenSuse 环境:

  • JDK版本:1.7.0_79
  • Tomcat :7

WSDL2JAVA代码:

WSDLToJava wsdlToJava = new WSDLToJava();
ToolContext context=new ToolContext();
wsdlToJava.setArguments(new String[]{"-d",tempDir,"-p","demopack","-verbose","-compile",wsdlURL});
wsdlToJava.run(context);

最佳答案

wsdl2java 需要一个编译器实例来生成和编译 stub 类文件。因此,我通过将 PATH 变量指向 JDK/bin 目录而不是 JRE/bin 来解决这个问题。

感谢@Tim Biegeleisen 抽出宝贵时间。

关于java - CXF NullPointerException(无法在 Tomcat 7 上编译 Web 服务 stub ),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30450486/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com