0

我有两个相关的问题:

(1)Tomcat 7/JDK目录下各种Metro文件的“正确”方式是什么?似乎 Metro 提供的自动化过程尚未针对 Tomcat 7 进行更新。

(2) 有没有办法使用 Metro & Netbeans 创建 Web 服务,并将 NetBeans 生成的 .war 文件传输到 Tomcat 7 而无需编辑任何 .xml 文件?

我必须使用 NetBeans 7.x 和 Tomcat 7.x。我可以使用任何版本的 Metro。

这样一个基本的问题似乎在网络上有一个现成的答案,但即使是 NetBeans 网站上的教程似乎也被破坏了。

谢谢!

4

2 回答 2

1

问:将各种 Metro 文件放在 Tomcat 7/JDK 目录中的“正确”方法是什么?似乎 Metro 提供的自动化过程尚未针对 Tomcat 7 进行更新。

你是对的,Tomcat7 的程序还没有更新。无论如何,你可以毫无问题地使用它,它会在 CATALINA_HOME 目录中创建两个目录:

/endorsed(它会放在那里webservices-api.jar

/shared/lib(它会放在那里webservices-extra-api.jar, webservices-extra.jar, webservices-rt.jar并且webservices-tools.jar

问:有没有办法使用 Metro & Netbeans 创建 Web 服务,并将 NetBeans 生成的 .war 文件传输到 Tomcat 7 而不编辑任何 .xml 文件?

通常,您应该编辑 web.xml 和 sun-jaxws.xml。但是,因为您使用的是 Tomcat 7,它是 Servlet 3.0 容器,所以不需要 web.xml,您只需处理 sun-jaxws.xml:

<?xml version="1.0" encoding="UTF-8"?>
<endpoints xmlns="http://java.sun.com/xml/ns/jax-ws/ri/runtime" version="2.0">
<endpoint
      name="SERVICE_NAME"
      implementation="full.qualified.name.of.the.implementation.class"
      url-pattern="/SERVICE_URL"/>
</endpoints>

此外,您必须将 sun-jaxws.xml 放在 WEB-INF 目录中。

也可以看看:

于 2013-01-14T11:50:17.230 回答
0

我不能直接回答你的两个问题,而是可以告诉你我是如何解决这个问题的。

我已经使用这个简单的教程在 tomcat 中安装了 jax-ws 库(没有 Netbeans)。我没有将 jar 复制到 $TOMCAT/lib 目录中,而是将它们复制到 Web 应用程序本身的 WEB-INF/lib 目录中。其余部分与他在教程中描述的几乎相同,并且可以正常工作。

现在回答你的问题:

(1)我不知道应该如何以“正确”的方式完成。但我认为,当它以某种方式起作用时,它就不会那么错。我确信有部署库的最佳实践,但我只是不知道它们。对不起。

(2) 不幸的是,我不使用 Netbeans,所以在这里我也帮不了你。但是,如果您考虑一下,我已经将 jax-ws 参考实现中的所有库复制到了我的 WEB-INF/lib 目录中,并且除了 WEB-INF 目录中的那些之外,我没有触及任何 XML。现在我可以从我的网络应用程序创建一个战争文件,我已经完成了。我认为与 Netbeans 应该没有什么大的区别。

我希望这会有所帮助。

于 2012-06-07T07:38:40.093 回答