Java 部署在tomcat 7.0中的websphere 7.0 JAXWS webservice不工作

Java 部署在tomcat 7.0中的websphere 7.0 JAXWS webservice不工作,java,web-services,jakarta-ee,tomcat,tomcat7,Java,Web Services,Jakarta Ee,Tomcat,Tomcat7,朋友们: 我有一个在WebSphere7.0中开发的JAXWS Web服务。它在那里工作。Websphere中的堆栈是Axis2.0 我编写了一个POJOJava类,用@WebService注释进行注释,然后编写了一个wsgen来生成必要的工件并创建了war文件 重要的是web.xml中没有任何servlet,也没有定义监听器。 是否查看从纯拷贝到剪贴板打印 <?xml version="1.0" encoding="UTF-8"?> <web-app xmlns:xsi="h

朋友们:

我有一个在WebSphere7.0中开发的JAXWS Web服务。它在那里工作。Websphere中的堆栈是Axis2.0

我编写了一个POJOJava类,用@WebService注释进行注释,然后编写了一个wsgen来生成必要的工件并创建了war文件

重要的是web.xml中没有任何servlet,也没有定义监听器。 是否查看从纯拷贝到剪贴板打印

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xmlns="http://java.sun.com/xml/ns/javaee" 
         xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"    
         xsi:schemaLocation="http://java.sun.com/xml/ns/javaee 
                             http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
         id="WebApp_ID" version="2.5">
  <display-name>CMSExternalWebServices</display-name>
  <servlet>
    <servlet-name>Log4JControl</servlet-name>
    <servlet-class>it.openutils.log4j.Log4jConfigurationServlet</servlet-class>
  </servlet>
  <servlet-mapping>
    <servlet-name>Log4JControl</servlet-name>
    <url-pattern>/Log4JControl/*</url-pattern>
  </servlet-mapping>
  <welcome-file-list>
    <welcome-file>index.html</welcome-file>
    <welcome-file>index.htm</welcome-file>
    <welcome-file>index.jsp</welcome-file>
    <welcome-file>default.html</welcome-file>
    <welcome-file>default.htm</welcome-file>
    <welcome-file>default.jsp</welcome-file>
  </welcome-file-list>
</web-app>

CMSExternalWebServices
LOG4J控制
it.openutils.log4j.log4jConfiguration servlet
LOG4J控制
/LOG4J控制/*
index.html
index.htm
index.jsp
default.html
default.htm
default.jsp
但是,当我将war文件部署到Tomcat 7.0,然后将axis2 JAR复制到WEB-INF\lib文件夹时

当我重新启动Tomcat时,Web服务不工作

我好奇的是,为什么Websphere7在启动时部署WebService,而web.xml中没有任何实体,但Tomcat拒绝这样做

我错过了什么


-Narahari

WebSphere在启动期间搜索类路径以查找
@WebService
注释,根据JavaEE6规范,在
web.xml
中不必有任何条目


由于Tomcat不完全支持JavaEE6(它“仅”是一个servlet引擎),因此必须定义一个触发器,以使Axis2加载您的web服务。据我所知,您必须在
Web.xml
中定义每个Web服务才能在Tomcat上运行(我可能错过了一些增强)。

取决于您试图如何部署它,但我认为您假设Tomcat像一个完整的JavaEE服务器一样工作,而事实并非如此

如果您使用axis jar并将其作为自己的web应用程序,它应该可以工作(请参阅

我不知道Tomcat会用@WebService注释做任何事情,因为它不是一个完整的JavaEE服务器


另请参阅,这使我相信它可能支持Metro,但它看起来仍在使用Metro。

我想我以前也见过类似的情况(即web服务未列在
web.xml
文件中)。在
WEB-INF
META-INF
中是否还有其他XML文件,称为
ibm某物.XML
或类似文件?从内存中,这就是我在Rational Application Developer中开发并部署到was 7时的信息所在。

谢谢您的回答。部署工件生成是co的一个功能吗ntainer或is是否可以通过其他WS-engine JAR(如axis2或metro aka)进行扩展?如果我将这些JAR放入\lib中,则注释类在部署时是自动进程?-NarahariArtifact生成应该可以工作,只要它们与JAX-WS API兼容。不久前,我使用WebSphere命令行工具和部署在Tomcat上。。。