代码之家  ›  专栏  ›  技术社区  ›  opensas

如何在Tomcat6上手动部署Web服务?

  •  31
  • opensas  · 技术社区  · 15 年前

    我正在学习如何用Java开发SOAP Web服务。

    到目前为止,我一直在遵循这个优秀的教程

    http://web.archive.org/web/20120626005333/http://java.sun.com/developer/technicalArticles/J2SE/jax_ws_2/

    一切都很顺利,我让我的Web服务通过命令行与它的嵌入式服务器一起工作,然后在NetBeans的帮助下,我将它部署到了Tomcat上。

    我想知道在Tomcat上手动部署它的步骤,以便了解它是如何完成的,因为我不喜欢依赖于一个IDE。

    我的意思是,我想知道如何通过命令行和文本编辑器来完成所有的工作。

    我还找到了这个链接,它解释了如何手动将servlet部署到Tomcat,

    http://linux-sxs.org/internet_serving/c292.html

    但是我找不到任何关于如何部署Web服务的文章。

    谢谢。

    5 回复  |  直到 9 年前
        1
  •  39
  •   iCrazybest    11 年前

    如何手动构建JAXWS Web服务并将其部署到Tomcat

    我试图弄清楚如何手动构建和部署用于学习Pourposes的Web服务。

    我从这篇优秀的文章开始

    http://java.sun.com/developer/technicalArticles/J2SE/jax_ws_2/ (新网址: http://www.oracle.com/technetwork/articles/javase/jax-ws-2-141894.html )

    其想法是只使用记事本和命令行来完成整个工作。

    我唯一能实现的方法是使用NetBeans部署Web服务,然后查看在\dist\.war上生成的war文件(它只是一个zip文件,您可以用7zip打开它)。

    我留下这个以防有人感兴趣,并且为了文件的目的…

    如果有人知道更简单的方法,请告诉我!!!!

    测试:

    C:\tomcat6\bin>version
    Server version: Apache Tomcat/6.0.26
    Server built:   March 9 2010 1805
    Server number:  6.0.26.0
    OS Name:        Windows XP
    OS Version:     5.1
    Architecture:   x86
    JVM Version:    1.6.0_18-b07
    JVM Vendor:     Sun Microsystems Inc.
    

    萨卢多斯

    SAS

    1。创建以下目录 c:\java\src\ws

    2。创建以下文件 c:\java\src\ws\Adder.java

    // c:\java\src\ws\Adder.java
    package ws;
    import javax.jws.WebService;
    
    @WebService
    public class Adder {
     public double add( double value1, double value2 ) {
      return value1 + value2;
     }
    }
    

    三。站在 c:\java\src\ execute

    c:\java\src> javac ws\Adder.java
    

    文件 c:\java\src\ws\Adder.class will be generated

    第四章。使用以下文件创建以下目录结构

    c:\tomcat6\webapps\adder_ws
    
    META-INF
      context.xml
    WEB-INF
      classes
        ws
          Adder.class
      lib
        activation.jar
        webservices-api.jar
        webservices-extra.jar
        webservices-extra-api.jar
        webservices-rt.jar
        webservices-tools.jar
      sun-jaxws.xml
      web.xml
    

    5.复制编译文件

    复制 c:\java\src\ws\Adder.class c:\tomcat6\webapps\adder_ws\WEB-INF\classes\ws\Adder.class

    6。C:\tomcat6\webapps\adder_ws\META-INF\context.xml

    <?xml version="1.0" encoding="UTF-8"?>
    <Context antiJARLocking="true" path="/adder_ws"/>
    

    7。C:\tomcat6\webapps\adder_ws\WEB-INF\WEB.xml

    <?xml version="1.0" encoding="UTF-8"?>
    <web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
        <listener>
            <listener-class>com.sun.xml.ws.transport.http.servlet.WSServletContextListener</listener-class>
        </listener>
        <servlet>
            <servlet-name>Adder</servlet-name>
            <servlet-class>com.sun.xml.ws.transport.http.servlet.WSServlet</servlet-class>
            <load-on-startup>1</load-on-startup>
        </servlet>
        <servlet-mapping>
            <servlet-name>Adder</servlet-name>
            <url-pattern>/add</url-pattern>
        </servlet-mapping>
    <!-- not needed
        <session-config>
            <session-timeout>
                30
            </session-timeout>
        </session-config>
        <welcome-file-list>
            <welcome-file>index.jsp</welcome-file>
        </welcome-file-list>
    -->
    </web-app>
    

    8.配置 WEB-INF\sun-jaxws.xml

    文件:c:\tomcat6\webapps\adder_ws\web-inf\sun-jaxws.xml

    <?xml version="1.0" encoding="UTF-8"?>
    <endpoints version="2.0" xmlns="http://java.sun.com/xml/ns/jax-ws/ri/runtime">
      <endpoint implementation="ws.Adder" name="Adder" url-pattern="/add"/>
    </endpoints>
    

    9。拷贝库

    位于c:\tomcat6\webapps\adder_ws\web-inf\lib的文件

    从复制NetBeans文件

    [netbeans dir]\enterprise\modules\ext\metro\*.*
    

    [netbeans dir]\ide\modules\ext\jaxb\activation.jar
    

    10。重新启动APACHE

    关机:c:\tomcat6\bin\shutdown.bat

    启动:c:\tomcat6\bin\startup.bat

    11。试验

    打开Web浏览器并转到 http://localhost:8080/adder_ws/add?wsdl 您还可以使用类似soapui的工具( http://www.soapui.org/ )测试Web服务

    就这样,我想现在我要看看日食是怎么发生的…

        2
  •  4
  •   opensas    15 年前

    这是另一篇有用的文章

    它可以回答我自己的问题

    http://java.dzone.com/articles/jax-ws-deployment-five-minute

        3
  •  4
  •   Vinod Singh    15 年前

    以下文章提供了手动构建和部署JAX-WSWeb服务的分步指南。它使用Ant作为构建工具。

    Building JAX-WS Web service

        4
  •  3
  •   Brian Agnew    15 年前

    我希望可部署的Web服务和servlet是相同的。即,A .war 文件。所以您应该能够以相同的方式部署它。

        5
  •  2
  •   informatik01 Viswanath Lekshmanan    12 年前

    我看到没人提到 JAX-WS Tutorials 来自mkyong.com。

    在“jax-ws tutorial”页面的“jax-ws security in tomcat”部分中,有一个简短的“to the point and with pictures tutorial”,这正是OP想要的:
    Deploy JAX-WS web services on Tomcat

    推荐文章