【发布时间】:2011-04-08 01:59:14
【问题描述】:
我们有一个使用 Netbeans 6.7.1 和 Glassfish v2.1 开发的 Java EE 5 项目。尝试使用带有 Glassfish v3.1 的 Netbeans 6.9.1 打开此项目时,出现许多关于缺少类型的错误。
Java EE 6 是否向后兼容 Java EE 5?
缺少的库通常围绕:
javax.xml.rpc.ServiceException;
javax.xml.rpc.Stub;
org.jvnet.staxex.StreamingDataHandler;
com.sun.xml.ws.fault.SOAPFaultBuilder;
有什么想法吗?
[更新]
似乎并非所有必需的库都自动添加到 Glassfish 3.1 项目的类路径中。主要缺失的 jar 是 glasshfish3/glassfish/modules/ 下的 jaxrpc-api-osgi.jar。如果我手动添加这个罐子,所有的问题都会消失。为什么会这样?为什么不像使用带有 Glassfish 2.1 的 NetBeans 6.7.1 那样自动添加 jar?
[更新]
我设法通过以下方式找到org.jvnet.staxex.StreamingDataHandler; and com.sun.xml.ws.fault.SOAPFaultBuilder;:
- com.sun.xml.internal.org.jvnet.staxex.StreamingDataHandler;
- com.sun.xml.internal.ws.fault.SOAPFaultBuilder;
似乎进行了一些包更改。尽管如此,这并不能解决我的问题,即javax.xml.rpc.Stub; and javax.xml.rpc.ServiceException; 没有正确添加到我的类路径中。我觉得手动添加jar是不对的。
沃夫加普罗
【问题讨论】:
-
JDK 1.6 有完整的web services support,这意味着很多
javax.xml包和SOAP 支持都包含在JDK 本身中。我想这就是导致问题的原因。 -
@CMR - 所以你是说有冲突?
-
我个人在将包含 XML 库的 JDK5 项目移植到 JDK6 时遇到了问题。
-
@CMR - 关于如何纠正的建议?
-
我没有优雅的解决方案。我将从删除所有 xml 库开始。如果编译仍然失败,请尝试将 XML 库添加到 classpath 的末尾,直到您发现问题为止...对不起,我真的没有花足够的时间研究问题的原因。
标签: netbeans jakarta-ee dependencies glassfish