Anda di halaman 1dari 46

Java Frameworks & APIs: 2011

http://java-all-frameworks.blogspot.com/2011

Compartir

Ms

Siguiente blog

Crear un blog

Acceder

Java Frameworks & APIs

DATOS PERSONALES

MARTES, 20 DE DICIEMBRE DE 2011

Damian Ciocca Ver todo mi perfil

Regular Expression
Un link que nos resultar de gran ayuda:

TUTORIALES

DESIGN PATTERNS (1) ECLIPSE (1) EJB3 (3) EJB3 - SECURITY (1) GWT (5) GWT + SPRING + HIBERNATE + MAVEN (2) HIBERNATE (1) iBATIS (1) JCA (1) JPA (12) JSP (1) JSTL (1) LOG4J (1) MAVEN (2) MDB (1) ORACLE (6) ORACLE PL/SQL (1) REGEX (1) RMI (1) SPRING (5) SVN (1) TDD (1) WEB SERVICE (3)

http://rubular.com/

Publicado por Damian Ciocca en 17:28 Etiquetas: REGEX

0 comentarios

Recomendar esto en Google

MARTES, 6 DE DICIEMBRE DE 2011

Web Services - Apache CXF - Tutorial II


Antes de empezar a ver este tutorial, por favor leer lo siguiente: Web Services - Apache AXIS - Tutorial I Si tiene dudas respecto a Apache CXF, ver: http://cxf.apache.org/docs/index.html http://www.dosideas.com/noticias/java/396-servicios-web-con-apache-cxf.html Otro tutorial til para el desarrollo de WS mediante JAX-WS: http://www.ibm.com/developerworks/webservices/tutorials/ws-jax/index.html http://www.predic8.com/axis2-cxf-jax-ws-comparison.htm 1. Veamos un ejemplo paso a paso de como crear un WS y un cliente para consumirlo con CXF y Eclipse Helios Vamos a descargar las libreras correspondientes a CXF version 2.3.7

TUTORIALES POR FECHA

2011 (43) abril (3) mayo (1) junio (5) julio (6) agosto (16) septiembre (4) octubre (3) noviembre (2) diciembre (3) Web Services - Apache AXIS - Tutorial I Web Services - Apache CXF - Tutorial II Regular Expression 2012 (10)

BUSCAR

Buscar
SEGUIDORES

Luego vamos a agregar estas libreras en las preferencias del eclipse para que luego, cuando generemos el WS mediante el wizzard sepa de donde obtener las librerias de CXF

1 de 46

26/09/12 15:51

Java Frameworks & APIs: 2011

http://java-all-frameworks.blogspot.com/2011

Participar en este sitio


Google Friend Connect

Miembros (14)

Ya eres miembro? Acceder

2 de 46

26/09/12 15:51

Java Frameworks & APIs: 2011

http://java-all-frameworks.blogspot.com/2011

3 de 46

26/09/12 15:51

Java Frameworks & APIs: 2011

http://java-all-frameworks.blogspot.com/2011

Luego, creamos un proyecto web simple (Dynamic Web Project) y creamos la siguiente clase llamada Converter.java

package ws; import javax.jws.WebService;

public class Converter { public float celsiusToFarenheit ( float celsius ) { return (celsius * 9 / 5) + 32; }

public float farenheitToCelsius ( float farenheit ) { return (farenheit - 32) * 5 / 9; } } Una vez creada dicha clase, procedemos a crear el WS sobre esta clase mediante el Wizzard del eclipse. A continuacin mostramos las capturas de pantallas que nos guiaran paso a paso en la construccin de este WS:

4 de 46

26/09/12 15:51

Java Frameworks & APIs: 2011

http://java-all-frameworks.blogspot.com/2011

Aqu tendemos que cambiar de implementacion de WS (Axis por Apache CXF)

5 de 46

26/09/12 15:51

Java Frameworks & APIs: 2011

http://java-all-frameworks.blogspot.com/2011

6 de 46

26/09/12 15:51

Java Frameworks & APIs: 2011

http://java-all-frameworks.blogspot.com/2011

7 de 46

26/09/12 15:51

Java Frameworks & APIs: 2011

http://java-all-frameworks.blogspot.com/2011

8 de 46

26/09/12 15:51

Java Frameworks & APIs: 2011

http://java-all-frameworks.blogspot.com/2011

9 de 46

26/09/12 15:51

Java Frameworks & APIs: 2011

http://java-all-frameworks.blogspot.com/2011

Aqu vemos como nos queda modificado la clase Converter.java con ciertas anotaciones que la convierte en WS:

10 de 46

26/09/12 15:51

Java Frameworks & APIs: 2011

http://java-all-frameworks.blogspot.com/2011

11 de 46

26/09/12 15:51

Java Frameworks & APIs: 2011

http://java-all-frameworks.blogspot.com/2011

12 de 46

26/09/12 15:51

Java Frameworks & APIs: 2011

http://java-all-frameworks.blogspot.com/2011

Testeamos el WS mediante la herramienta que nos proporciona el eclipse:

13 de 46

26/09/12 15:51

Java Frameworks & APIs: 2011

http://java-all-frameworks.blogspot.com/2011

Luego, vemos que tambin nos ha generado un nuevo proyecto cliente (WS_Prueba_CXFCliente) donde tendremos las clases necesarias para poder consumir dicho WS desde cualquier aplicacion y ademas, nos crea un clase de ejemplo que nos permite consumirlo (procedemos a correr dicha clase):

14 de 46

26/09/12 15:51

Java Frameworks & APIs: 2011

http://java-all-frameworks.blogspot.com/2011

Luego de ver el resultado por consola (desde la consola de ejecucion de dicha clase de ejemplo), podemos cambiar de consola y ver la del tomcat del WS que esta deployado y asi ver que nos arroja por dicha consola:

15 de 46

26/09/12 15:51

Java Frameworks & APIs: 2011

http://java-all-frameworks.blogspot.com/2011

Herramienta para el testeo de los WS - SOAPUI Ver: http://www.dosideas.com/wiki/SoapUI

Ejemplos para descargar Presionar aqu para descargar los ejemplos vistos anteriormente

Publicado por Damian Ciocca en 16:53 Etiquetas: WEB SERVICE

0 comentarios

Recomendar esto en Google

VIERNES, 2 DE DICIEMBRE DE 2011

Web Services - Apache AXIS - Tutorial I


JAX-WS 2.0 es la especificacin actual de Java para desarrollar web services mediante anotaciones. JAX-WS forma parte del estndar Java EE, conocido antes como J2EE (el cual incluye varias especificaciones de API, tales como JDBC, RMI, e-mail, JMS, Servicios Web, XML, etc) En la plataforma Java EE, JAX-RPC 2.0 (Java API for XML Based RPC) fue renombrada a JAX-WS 2.0 (Java API for XML Web Services). Este cambio en el nombre demuestra el cambio de estilo de RPC a Documento Ver: http://finallyigotit.blogspot.com/2009/05/jax-rpc-vs-jax-ws.html La interface de un Web Service es especificada por el WSDL. El WSDL es un XML que contiene toda la informacion para que el WS sea localizado y pueda ser accedido. La implementacion de un servicio SOA generalmente es un WS, pero puede no serlo. Por ejemplo, un servicio de mensajera JMS puede ser tranquilamente otra forma de implementar un servicio Todo servidor de aplicaciones compatible con Java EE 5 implementa una API para web service llamada: JAX-WS la cual define el mapeo entre java y el WSDL. El mapeo entre los objetos Java y el WSDL ( que es un XML ) lo delega en el API JAXB 2.0. Existen dos maneras de crear los WS Crear el WSDL y luego, basndonos en el WSDL, creamos el WS (la clase java conocida como endpoint) Crear la clase java (endpoint) y luego generamos su correspondiente WSDL.

Existen varias implmementaciones para desarrollar WS en Java (algunas de las mas conocidas son): Axis (http://axis.apache.org/axis/): Soporta JAX-RPC API

16 de 46

26/09/12 15:51

Java Frameworks & APIs: 2011

http://java-all-frameworks.blogspot.com/2011
Axis2 (http://axis.apache.org/axis2/java/core/): Soporta JAX-WS API Apache CFX (http://cxf.apache.org/): Soporta JAX-WS API JBossWS (http://www.jboss.org/jbossws):Soporta JAX-WS API

Como podemos ver, todos estos SOAP engines (implementaciones) menos Axis no estn dentro del estndar JAX-WS. Como para que nos quede un poco mas claro, JAX-WS es para Apache CXF lo que JPA es para Hibernate.

Si no se quiere utilizar ninguna implementacion existente, la JDK trae su propia implementacion para desarrollar WS en Java:

http://chuwiki.chuidiang.org/index.php?title=Ejemplo_sencillo_de_web_service_con_maven_y_jax-ws_metro La JDK trae para publicarlo directamente pero si lo queres tirar a un tomcat (lo cual seria lo mas prolijo y logico), entonces necesitas el sun-wx.xml, el listener, y tirarle las librerias de JAX-WS al tomcat porque no las tiene. http://www.mkyong.com/webservices/jax-ws/deploy-jax-ws-web-services-on-tomcat/ Para publicarlo directamente con java: Endpoint.publish(...) ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------Si quedan dudas, por favor mirar la documentacin original de oracle sobre la JDK 6 que va a aclarar mejor el panorama: WS: http://docs.oracle.com/javaee/6/tutorial/doc/gijti.html JAX-WS: http://docs.oracle.com/javaee/6/tutorial/doc/bnayl.html JAX-RS: http://docs.oracle.com/javaee/6/tutorial/doc/giepu.html ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------1. Veamos un ejemplo paso a paso de como crear un WS con AXIS y Eclipse Helios Antes que nada, vamos a necesitar tener instalado el Eclipse + el plug in de WTP Descargarlo desde: http://eclipse.org/webtools/ws/ En algunas versiones mas nuevas de Eclipse, esto ya viene por dafault. En primer lugar, vamos a crear el WS partiendo de una clase Java (A) y luego vamos a generar el WS partiendo de un WSDL (B) A. Partimos desde un POJO (endpoint) y luego generamos el WSDL Vamos a crear un servidor, para esto utilizaremos el Tomcat 6

Luego, creamos un Dynamic Web Project

17 de 46

26/09/12 15:51

Java Frameworks & APIs: 2011

http://java-all-frameworks.blogspot.com/2011

18 de 46

26/09/12 15:51

Java Frameworks & APIs: 2011

http://java-all-frameworks.blogspot.com/2011

Luego, creamos una clase Java llamada Converter,java con dos metodos

19 de 46

26/09/12 15:51

Java Frameworks & APIs: 2011

http://java-all-frameworks.blogspot.com/2011

Luego, nos paramos sobre esa clase, y procedemos a crear el WS mediante el Wizzard del Eclipse

Aqu es en donde vamos a poder subir y bajar la barra y seleccionar el web server (Tomcat), el API de WS que vamos a utilizar (por defecto AXIS viene con el Eclipse, por lo que no vamos a tener que descargar nada) y el nombre del Web project que queremos que se despliegue en el Tomcat

20 de 46

26/09/12 15:51

Java Frameworks & APIs: 2011

http://java-all-frameworks.blogspot.com/2011

Lanzamos el Tomcat, antes de proceder con la canalizacin de la creacion del WS.

21 de 46

26/09/12 15:51

Java Frameworks & APIs: 2011

http://java-all-frameworks.blogspot.com/2011

22 de 46

26/09/12 15:51

Java Frameworks & APIs: 2011

http://java-all-frameworks.blogspot.com/2011

Listo, ya quedo desplegado el WS en el Tomcat, ahora vamos a proceder a verificar la URL del despliegue. Para esto, vamos al WSDL que nos creo este Wizzard, y vamos a buscar la URL

23 de 46

26/09/12 15:51

Java Frameworks & APIs: 2011

http://java-all-frameworks.blogspot.com/2011

Colocamos dicha URL en el navegador

24 de 46

26/09/12 15:51

Java Frameworks & APIs: 2011

http://java-all-frameworks.blogspot.com/2011

Colocamos la misca URL en el navegador seguida de "?wsdl". Con esto podemos ver el WSDL generado

Por ultimo, para terminar de verificar el WS, podemos testearlo con una herramienta que nos proporciona el eclipse. Nos paramos sobre el WSDL:

25 de 46

26/09/12 15:51

Java Frameworks & APIs: 2011

http://java-all-frameworks.blogspot.com/2011

Esto va a abrir una consola dentro del Eclipse, para testear cada uno de los metodos.

26 de 46

26/09/12 15:51

Java Frameworks & APIs: 2011

http://java-all-frameworks.blogspot.com/2011

27 de 46

26/09/12 15:51

Java Frameworks & APIs: 2011

http://java-all-frameworks.blogspot.com/2011

Ver: http://www.eclipse.org/webtools/jst/components/ws/1.5/tutorials/BottomUpWebService/BottomUpWebService.html

B. Partimos desde el WSDL para luego generar el POJO (endpoint) Obtenemos el WSDL anterior o sino vamos a la URL que listamos a continuacin y nos bajamos el WSDL (sobre este WSDL se explicara paso a paso este procedimiento "Top Down". El anterior (puntoA) se lo conoce como "Bottom Up". Ver: http://www.eclipse.org/webtools/jst/components/ws/1.5/tutorials/TopDownWebService/TopDownWebService.html Creamos una carpeta llamada wsdl y la colocamos dentro de Web Content. Ahi vamos a copiar el WSDL que tengamos (en nuestro caso, vamos a copiar el que nos descargamos de la URL anterior, pero tambien podriamos utilizar el que ya tenemos del Punto A)

28 de 46

26/09/12 15:51

Java Frameworks & APIs: 2011

http://java-all-frameworks.blogspot.com/2011

Luego, procedemos a crear el web service basandonos en el WSDL, para lo cual vamos a File, new, other, Web Service

29 de 46

26/09/12 15:51

Java Frameworks & APIs: 2011

http://java-all-frameworks.blogspot.com/2011

30 de 46

26/09/12 15:51

Java Frameworks & APIs: 2011

http://java-all-frameworks.blogspot.com/2011

31 de 46

26/09/12 15:51

Java Frameworks & APIs: 2011

http://java-all-frameworks.blogspot.com/2011

32 de 46

26/09/12 15:51

Java Frameworks & APIs: 2011

http://java-all-frameworks.blogspot.com/2011

En estos momentos, ya tenemos deployado el WS creado a paritir del WSDL, ahora vamos a proceder a corroborar la URL, para lo cual, vamos al WSDL nuevo que nos creo este Wizzard

33 de 46

26/09/12 15:51

Java Frameworks & APIs: 2011

http://java-all-frameworks.blogspot.com/2011

Agregamos a la URL los siguiente: "?wsdl", y como ya vimos anteriormente, vemos que nos muestra el WSDL.

34 de 46

26/09/12 15:51

Java Frameworks & APIs: 2011

http://java-all-frameworks.blogspot.com/2011

Ahora vamos a testear este WS mediante la herramienta que trae el eclipse, como ya lo hicimos anteriormente.

35 de 46

26/09/12 15:51

Java Frameworks & APIs: 2011

http://java-all-frameworks.blogspot.com/2011

36 de 46

26/09/12 15:51

Java Frameworks & APIs: 2011

http://java-all-frameworks.blogspot.com/2011

2. Veamos un ejemplo paso a paso de como crear un cliente para consumir el WS con ECLIPSE Creamos un proyecto java simple, en donde vamos a tener un test que consumira el WS antes creado. Para poder consumirlo, vamos a tener que tener levantado el tomcat con el WS deployado.

37 de 46

26/09/12 15:51

Java Frameworks & APIs: 2011

http://java-all-frameworks.blogspot.com/2011

En este paso, tenemos que seleccionar el WSDL del proyecto que tiene el WS.

38 de 46

26/09/12 15:51

Java Frameworks & APIs: 2011

http://java-all-frameworks.blogspot.com/2011

39 de 46

26/09/12 15:51

Java Frameworks & APIs: 2011

http://java-all-frameworks.blogspot.com/2011

Luego, presionamos finish y vemos que nos creara 5 clases que son las que vamos a necesitar para conectarnos con el WS como asi tambien las librerias necesarias: Converter,java ConverterProxy,java ConverterService,java

40 de 46

26/09/12 15:51

Java Frameworks & APIs: 2011


ConverterServiceLocator,java ConverterSoapBindingStub,java axis.jar commons-discovery-0.2.jar jaxrpc.jar saaj.jar entre otras...

http://java-all-frameworks.blogspot.com/2011

Luego, creamos una clase de test para consumir el WS dentro de este nuevo proyecto cliente.

41 de 46

26/09/12 15:51

Java Frameworks & APIs: 2011

http://java-all-frameworks.blogspot.com/2011

Una vez que creamos la clase, vamos a agregarle estas lineas de codigo que serviran para consumir el WS e incovar a uno de sus mtodos:
public class ConverterTest {

public static void main(String args []) throws ServiceException, RemoteException, MalformedURLException{

// Localizamos y obtenemos el WS String endpoint = "http://localhost:8080/WS_Prueba/services/Converter";

ConverterServiceLocator loc = new ConverterServiceLocator(); Converter converter = loc.getConverter(new URL(endpoint));

// Invocamos a uno de sus metodos float farenheitToCelsius = converter.farenheitToCelsius(100f); System.out.println("farenheitToCelsius " + farenheitToCelsius);

42 de 46

26/09/12 15:51

Java Frameworks & APIs: 2011

http://java-all-frameworks.blogspot.com/2011

Luego, antes de correr esta clase, vamos a levantar el Tomcat y deployar el proyecto que habiamos creado en los pasos anteriores.

43 de 46

26/09/12 15:51

Java Frameworks & APIs: 2011

http://java-all-frameworks.blogspot.com/2011

Ejecutamos el ConverterTest y vemos por consola lo que nos devuelve la incovacion al metodo del WS

44 de 46

26/09/12 15:51

Java Frameworks & APIs: 2011

http://java-all-frameworks.blogspot.com/2011

Herramienta para el testeo de los WS - SOAPUI Ver: http://www.dosideas.com/wiki/SoapUI

Ejemplos para descargar Presionar aqu para descargar los ejemplos vistos anteriormente

Bibliografia Ver: http://www.eclipse.org/webtools/jst/components/ws/1.5/tutorials/ Ver: http://docs.jboss.org/tools/3.0.0.Beta1/en/ws_ref_guide/html/index.html Ver: http://techno-cratic.blogspot.com/2010/01/creating-jbossws-web-services-with.html Ver: http://www.codeproject.com/KB/java/webservice-for-jboss.aspx Ver: http://www.jboss.org/jbossws/downloads/ Ver: http://www.jboss.org/jbossws

45 de 46

26/09/12 15:51

Java Frameworks & APIs: 2011

http://java-all-frameworks.blogspot.com/2011

Publicado por Damian Ciocca en 12:12 Etiquetas: WEB SERVICE

0 comentarios

Recomendar esto en Google

Entradas ms recientes Suscribirse a: Entradas (Atom)

Pgina principal

Entradas antiguas

Distribuya Software Chile


RESTO Software para Restaurant y ASTOR Software ERP de Empresas www.axoft.cl

Copyright 2011 - Apoya este blog http://jooble-ar.com. Plantilla Simple. Con la tecnologa de Blogger.

46 de 46

26/09/12 15:51

Anda mungkin juga menyukai