|
|
Para utilizar Axis dentro de Tomcat es necesario diseñar un WAR ("Web-Archive") donde residirán las Clases/Métodos que serán ejecutados como "Web-Services" así como Axis; para simplificar la instalación de Axis se asume que se utilizará la configuración "Default" de Tomcat descrita en la Guia de Tomcat .
+-usr/local/tomcat/webapps+--\ | /---------------------------/ | \ +-axis-+ | |-*.jws (Clases/Métodos con Web-Services Nativos) | +-WEB-INF+ | +-web.xml | +-classes--+ | | | +- (Clases/Métodos | para ser Web-Services) +-lib--+ | +-axis-ant.jar / +-axis.jar | +-commons-discovery.jar | Librerías +-commons-logging.jar | de la Distribución +-jaxrpc.jar | Axis +-log4j-1.2.4.jar | /tmp/versión_axis/lib/ +-saaj.jar | +-wsdl4j.jar | \ |
Nótese que la estructura del archivo WAR es colocada bajo un directorio llamado axis
dentro de la instalación básica de Tomcat , esto permitirá el acceso a "Web-Services" bajo el URL: www.servidorprueba.com:8080/axis
.
<?xml version="1.0" encoding="ISO-8859-1"?> <!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/j2ee/dtds/web-app_2.3.dtd"> <web-app> <!-- Definición de Servlets --> <servlet> <servlet-name>AxisServlet</servlet-name> <servlet-class> org.apache.axis.transport.http.AxisServlet </servlet-class> </servlet> <servlet> <servlet-name>AdminServlet</servlet-name> <servlet-class> org.apache.axis.transport.http.AdminServlet </servlet-class> <load-on-startup>100</load-on-startup> </servlet> <!-- Mapeo de Servlets --> <servlet-mapping> <servlet-name>AxisServlet</servlet-name> <url-pattern>*.jws</url-pattern> </servlet-mapping> <servlet-mapping> <servlet-name>AxisServlet</servlet-name> <url-pattern>/services/*</url-pattern> </servlet-mapping> <servlet-mapping> <servlet-name>AxisServlet</servlet-name> <url-pattern>/servlet/AxisServlet</url-pattern> </servlet-mapping> <servlet-mapping> <servlet-name>AdminServlet</servlet-name> <url-pattern>/servlet/AdministracionAxis</url-pattern> </servlet-mapping> </web-app> |
Las primeras declaraciones hasta antes del elemento <web-app>
son comunes a cualquier otro archivo web.xml
.
Seguido del elemento <web-app>
se definen dos Servlets para Axis, el primero de estos llamado AxisServlet
representa la Clase org.apache.axis.transport.http.AxisServlet
la cual representa el elemento principal en requisiciones; el otro Servlet representado por la Clase org.apache.axis.transport.http.AdminServlet
representa un servicio administrativo para Axis, el cual es definido a través del nombre AdminServlet
.
En la siguiente sección son mapeados distintos URL's para ser redireccionados a los distintos Servlets definidos anteriormente:
Los URL's terminados en *.jws
así como todos aquellos URL's definidos bajo el directorio services
y el URL /servlet/AxisServlet
serán atendidos por el Servlet llamado AxisServlet
.
El URL /servlet/AdministracionAxis
será atendido por el Servlet Administrativo AdminServlet
.
Una vez definido este archivo web.xml
es posible iniciar con el proceso de diseño de "Web-Services" a través de Axis; en Axis existen dos posibilidades para definir "Web-Services":
A través de Clases .jws
, lo cual implica un diseño desde "0" (cero).
Y la más importante, permitiendo acceso a Clases ya existentes para que sean accesibles como un "Web-Service".