Ir al contenido principal

Proyecto WS + JPA + MAVEN


Siguiendo con la linea de desarrollo con JEE, crearemos un servicio web dando el enfoque al uso de JPA.


Glosario

WS: en el contexto de este proyecto es JAX-WS (Java API for XML Web Services)
JPA: Java Persistence API.
MAVEN: Herramienta de software para la gestión y construcción de proyectos Java.



Ingredientes

Eclipse Luna
JBoss AS 7.1
JDK 1.7
Apache-Maven
Base de datos para pruebas.
Conexión a Base de datos.
Driver JDBC (ojdbc6.jar)
SoapUI 5



Supuestos

Contar con un modelo de datos y sus elementos correspondientes (Tablas, Registros y Secuencias)



Preparación




1.- Configurar conexión en Eclipse.




2.- Crear un proyecto Maven con arquetipo simple.






Grupo proyecto: taller-jee
Identificador artefacto: proyecto-jpa
Empaquetado: war
Descripción: Proyecto que usa Persistencia en Base de Datos


3.- Configurar charset y versión de JDK. 


  UTF-8



 ${project.artifactId}
 
  
   maven-compiler-plugin
   3.2
   
    1.7
    1.7
   
  
 



4.- Configurar dependencias del Proyecto. 



  
   javax
   javaee-api
   6.0
    
    
 




5.- Configurar DataSource en JBoss. 


-- deben ejecutarse usando el usuario system
CREATE USER psp IDENTIFIED BY psp;
GRANT "RESOURCE" TO psp;
GRANT "CONNECT" TO psp;
GRANT CREATE VIEW TO psp;


--CREACION DE LA TABLA DEL EJERCICIO
CREATE TABLE PSP.TB_VEHICULO_MOTORIZADO(
  
  REGISTRO_ID numeric(16,0),
  PLACA_PATENTE VARCHAR2(200),
  RUT_PROPIETARIO VARCHAR2(200),
  NOMBRE_PROPIETARIO VARCHAR2(200),
  MARCA VARCHAR2(50),
  COLOR VARCHAR2(50),
  MONTO_PAGADO numeric(9),
  FECHA_PAGO TIMESTAMP,
  PRIMARY KEY (REGISTRO_ID)
    
);

--CREACION DE LA SECUENCIA
CREATE SEQUENCE PSP.SQ_VEHICULO_MOTORIZADO;

DATOS PARA DATASOURCE
jndi-name: java:/ControlAcceso
pool-name: ControlAcceso
connection-url: jdbc:oracle:thin:@localhost:1521:XE
driver-class: oracle.jdbc.OracleDriver
driver: ojdbc6.jar
user-name: psp
password: psp

f

6.- Habilitar JPA en el Proyecto. 


ff

7.- Crear clases a partir de las entidades (Tablas del Modelo de Datos). 



ff

8.- Implementar DAOs. 


ff

9.- Implementar Web Service SOAP (down-top). 


ff

10.- Desplegar Web Service. 


ff

11.- Consumir Web Service usando un cliente.


ff

Comentarios

Entradas populares de este blog

Certificación Java 7: Temas I

Oracle Certified Associate, Java SE 7 Programmer Dentro del programa de certificación, por el momento presenta 2 hitos de certificación principales estos son:
Oracle Certified Associate, Java SE 7 ProgrammerOracle Certified Professional, Java SE 7 Programmer este articulo solo detallara el contenido del primer examen para obtener el 1er hito, este examen es el 1Z0-803, pueden obtener más información en lapágina oficial. Java SE 7 Programmer I (1Z0-803)1.- Java Basics
Define the scope of variablesDefine the structure of a Java classCreate executable Java applications with a main methodImport other Java packages to make them accessible in your code
2.- Working With Java Data Types
Declare and initialize variablesDifferentiate between object reference variables and primitive variablesRead or write to object fieldsExplain an object's lifecycleCall methods on objectsManipulate data using the StringBuilder class and its methodsCreate and manipulate strings
3.- Using Operators and Dec…

Creación de Business Service en Oracle Service Bus (DBAdapter)

XmlHttpRequest

Últimamente se ha masificado el movimiento de la web 2.0 (redes sociales, rss, AJAX, etc)
estos avances han sido posible gracias a la explotación de este objeto implementado por el lenguaje javascript, este es la llamada piedra angular de todo lo que se dice ser ajax.

XmlHttpRequest(xhr) nos permite que nuestro navegador se comunique asincronicamente con cualquier lenguaje del lado del servidor(asp, php, servlet,jsp) y obtener respuestas en texto plano o formato XML.
La aplicación de este objeto es generar contenido dinámico si actualizar la página, se generan o se modifican los contenedores(div, spam, p, etc).


el ciclo de vida tipico del objeto es:

crea instancia
prepara un a petición
envia respuesta al servidor
y recibe una respuesta


La creación de la instancia de xhr varia según el navegador existen librerías que facilitan su manejo.

function crearInstancia(){
XMLHttp = false;
if (window.XMLHttpRequest){
return new XMLHttpRequest();
}else if(window.ActiveXObject){
var versiones = [&quo…