Jak ręcznie wdrożyć usługę internetową w Tomcat 6?

Uczę się jak tworzyć SOAP web services w Javie.

Do tej pory śledziłem ten doskonały tutorial

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

Wszystko idzie dobrze, mój serwis internetowy działa z wiersza poleceń z wbudowanym serwerem, a następnie, z pomocą NetBeans wdrożyłem go na Tomcat.

Chciałbym znać kroki, aby ręcznie wdrożyć go na Tomcat, aby dowiedzieć się, jak to się robi i ponieważ nie lubię polegać na IDE.

To znaczy, chciałbym wiedzieć, jak wszystko można zrobić z linii poleceń i edytora tekstu.

Znalazłem również link, który wyjaśnia jak ręcznie wdrożyć servlet do Tomcat,

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

Ale nie mogłem znaleźć żadnego artykułu mówiącego, jak wdrożyć serwis internetowy.

Wielkie dzięki.

Author: informatik01, 2010-03-25

5 answers

Jak ręcznie zbudować i wdrożyć usługę internetową jax-WS do tomcat

Próbowałem dowiedzieć się, jak ręcznie zbudować i wdrożyć usługę internetową do nauki pourposes.

Zacząłem od tego wspaniałego artykułu

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

[[17]]. pomysł polegał na tym, aby całość zrobić używając tylko notatnika i wiersz poleceń.

Jedynym sposobem, który mogłem osiągnąć, było wdrożenie usługi internetowej za pomocą netbeans, a następnie spojrzenie na plik wygenerowany przez wojnę w \dist\.wojna (to tylko plik zip, można go otworzyć za pomocą 7zip)

Zostawiam to na wypadek gdyby ktoś był zainteresowany i dla celów dokumentacyjnych...

Jeśli ktoś zna łatwiejszy sposób proszę dać mi znać!!!

Testowane na:

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.

Saludos

Sas

1. utwórz następujący katalog c:\java\src\ws

2. utwórz następujący plik 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;
 }
}

3. stojąc na c:\java\src\ execute

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

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

4. Utwórz następującą strukturę katalogów z następującymi plikami

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. skopiuj skompilowany plik

Kopia 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. Config WEB-INF\sun-jaxws.xml

Plik : 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. Copy libraries

Pliki na c:\tomcat6\webapps\adder_ws\WEB-INF\lib

Kopiowanie plików netbeans z

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

I

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

10. restart apache

Zamknięcie : c:\tomcat6\bin\shutdown.bat

Startup : c:\tomcat6\bin\startup.bat

11. Test

Otwórz przeglądarkę internetową i przejdź do http://localhost:8080/adder_ws/add?wsdl możesz również użyć narzędzia takiego jak soapui ( http://www.soapui.org/) do testowania serwisu www

To jest to, chyba teraz rzucę okiem na to, jak eclipses to robi...

 39
Author: opensas,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2014-09-20 18:02:58

Oto kolejny przydatny artykuł

To rodzaj odpowiedzi na moje własne pytanie

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

 4
Author: opensas,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2010-04-01 04:31:35

Poniższe artykuły mają przewodnik krok po kroku, aby ręcznie budować i wdrażać usługi internetowe JAX-WS. Używa Ant jako narzędzia do budowania.

Budowa serwisu internetowego JAX-WS

 4
Author: Vinod Singh,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2010-04-13 10:49:39

Spodziewałbym się, że deployable będzie taki sam dla usługi internetowej i servleta. Mianowicie plik .war. Więc powinieneś być w stanie wdrożyć go w ten sam sposób.

 3
Author: Brian Agnew,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2010-03-24 21:32:52

Widzę, że nikt nie wspomniał o JAX-WS tutoriale z Mkyong.com.

W sekcji "JAX-WS Security in Tomcat" na stronie "JAX-WS Tutorial" znajduje się krótki, Do Rzeczy i ze zdjęciami tutorial, właśnie tego chciał OP:
wdrożenie usług internetowych JAX-WS na Tomcat

 2
Author: informatik01,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2013-07-21 22:29:14