domingo, 29 de marzo de 2009
glassfish y jetty
¿cómo instalar el plugin para eclipse?
instalar el servidor jetty
seguir el mismo procedimiento de instalacion de plugin
incluir librerias de cliente
cambio de configuracion de plugin de jetty para que arranque en otro puerto
<plugin>
<groupId>org.mortbay.jetty</groupId>
<artifactId>maven-jetty-plugin</artifactId>
<version>6.0.1</version>
<configuration>
<scanIntervalSeconds>1</scanIntervalSeconds>
<connectors>
<connector implementation="org.mortbay.jetty.nio.SelectChannelConnector">
<port>9090</port>
<maxIdleTime>60000</maxIdleTime>
</connector>
</connectors>
</configuration>
</plugin>
miércoles, 25 de marzo de 2009
jsf
- secuencia de pantallas de registro simulando regla de negocio
- arrancar JPA(Hibernate) con modelo de Usuario
- crear un EJB que conecte con JPA y realice busquedas
- inyectar ej EJB remoto en la aplicación JSF
Proyecto jsf1
intro a jsf
jsf api y doc
Crear nuevo proyecto jsf con maven y eclipse...
new maven project
no create a simple project (no skip archetype selection)
catalog internal
filter: jsf
softeu-archetype-jsf
descargas: http://code.google.com/p/cursoj2ee/downloads/list
org.hibernate.Session o javax.persistence.EntityManager
Contextualización de Hibernate ORM en un servidor servlets
EntityBeans->Cap 08
EntityManager-> 09
Java Persistence API, más conocida por su sigla JPA, es la API de persistencia desarrollada para la plataforma Java EE e incluida en el estándar EJB3. Esta API busca unificar la manera en que funcionan las utilidades que proveen un mapeo objeto-relacional. El objetivo que persigue el diseño de esta API es no perder las ventajas de la orientación a objetos al interactuar con una base de datos, como sí pasaba con EJB2, y permitir usar objetos regulares (conocidos como POJOs).
lunes, 23 de marzo de 2009
Acceso a Base de Datos. Hibernate
Productora, Disco, Cancion, Grupo Musica, Musico, Pedido, Cliente
Problemas a resolver por un ORM
- Lazy-loading http://www.hibernate.org/hib_docs/v3/reference/en-US/html/mapping.html
- colecciones (O-M, M-O, M-M) http://www.hibernate.org/hib_docs/v3/reference/en-US/html/associations.html
- Herencia http://www.hibernate.org/hib_docs/v3/reference/en-US/html/inheritance.html
Arranque (y configuración) de Hibernate
Propiedades De Hibernate (Session y SessionFactory)
Opciones para mapeo de clases persistentes con hibernate:
- XMLs http://www.hibernate.org/hib_docs/v3/reference/en-US/html/mapping.html http://groups.google.com/group/eticom-master-java/web/hibernate-sin-anotaciones
- Anotaciones: http://www.hibernate.org/hib_docs/annotations/reference/en/html/ http://groups.google.com/group/eticom-master-java/web/hibernate-basico
Lenguajes disponibles de consultas con hibernate:
- HQL - Hibernate Query Language (JPQL) http://www.hibernate.org/hib_docs/v3/reference/en-US/html/queryhql.html
- Hibernate Criteria Query http://www.hibernate.org/hib_docs/v3/reference/en-US/html/querycriteria.html
- codigo en repo: http://groups.google.com/group/eticom-master-java/web/hibernate---consultas-con-hql---hibernate-query-language
Mejorar rendimiento:
- implementando (y configurando ) caches de primer nivel y de segundo nivel http://www.hibernate.org/hib_docs/v3/reference/en-US/html/performance-cache.html
- configurando lazy loading http://www.hibernate.org/hib_docs/v3/reference/en-US/html/performance.html#performance-fetching
Documentacion:
martes, 10 de marzo de 2009
mirrors de maven
<mirror>
<id>ibiblio.org</id>
<name>ibiblio Mirror of http://repo1.maven.org/maven2/</name>
<url>http://mirrors.ibiblio.org/pub/mirrors/maven2</url>
<mirrorOf>central</mirrorOf>
</mirror>
<mirror>
<id>jboss-repository-mirror</id>
<name>jboss-repository</name>
<url>http://repository.jboss.org/maven2</url>
</mirror>
<mirror>
<id>rodcoffin</id>
<name>rodcoffin</name>
<url>http://maven.rodcoffin.com/repo</url>
</mirror>
<mirror>
<id>struts</id>
<name>struts</name>
<url>http://people.apache.org/repo/m2-snapshot-repository</url>
</mirror>
lunes, 9 de marzo de 2009
Struts2 y SpringFramework
Demostración de la factoria de objetos que representa Spring, y la inyección de dependencias indicada en el applicationContext.xml
En Struts2 se utiliza Spring para inicializar la factoria de sessiones y la session e inyectarla en la acción correspondiente...
http://code.google.com/p/cursoj2ee/source/detail?r=184
... y todavia quedaria abrir y cerrar las transacciones... (lo hará spring también)
en repo: struts2 y spring-di
viernes, 6 de marzo de 2009
Mockito: Test de caja blanca - de comunicación entre objetos
copiar /serverad/mockito en C:\Documents and Settings\javaape\.m2\repository\org
incluir la dependencia en nuestro pom.xml de mockito-all
mirar los ejemplos de test de acciones de struts en repo
http://code.google.com/p/cursoj2ee/source/detail?r=179
Mockito 1.7
http://code.google.com/p/mockito/
<groupId>org.mockito</groupId>
<artifactId>mockito-core</artifactId>
<version>1.7</version>
<groupId>org.mockito</groupId>
<artifactId>mockito-all</artifactId>
<version>1.7</version>
*** IMPORTS STATICS
ANT - Automatizacion de tareas en el desarrollo
http://ant.apache.org/manual/tasksoverview.html
http://groups.google.com/group/eticom-master-java/web/ant
http://www.chuidiang.com/java/herramientas/ant.php
Ejercicios:
- realizar con ant una estructura de directorios tipica de una aplicacion web en java
- desplegar una aplicación web java a nuestro servidor tomcat realizando las siguientes tareas: compilar, empaquetar, desplegar
jueves, 5 de marzo de 2009
RUBY y RUBYONRAILS
RUBY (un lenguaje entre php y java)
http://www.ruby-lang.org/es/
Prueba a programar con ruby utilizando tu navegador.... http://tryruby.hobix.com/
RUBYONRAILS para desarrollo WEB
http://www.rubyonrails.org.es/
Struts2 Introduccion
- cd workspace
- mvn archetype:create -DgroupId=es.cea -DartifactId=struts2 -DarchetypeGroupId=org.apache.struts -DarchetypeArtifactId=struts2-archetype-starter -DarchetypeVersion=2.0.5-SNAPSHOT -DremoteRepositories=http://people.apache.org/repo/m2-snapshot-repository
- cd struts2
- mvn eclipse:eclipse
- para arrancar la aplicacion en un servidor podemos utilizar jetty o tomcat: mvn jetty:run ó mvn tomcat:run
- http://localhost:8080/struts2
En Eclipse:
- abrimos el proyecto en eclipse
- mavenizamos el proyecto
- comparamos las vistas de navigator y proyect explorer en perspectiva java ee
Cambios struts2 respecto a struts1
- la peticion struts antes era .do y ahora pasa a ser .action
integrando con hibernate http://www.zabada.com/tutorials/spring-and-hibernate-integration.php
miércoles, 4 de marzo de 2009
Plugin en Struts, Sitemesh
definidos en struts-config.xml, implementan org.apache.struts.action.PlugIn y sus correspondientes métodos
ejemplo plugin de hibernate!!
UTILIZAR EL PATRON DECORATOR (casualmente con Struts):decoración y layout para páginas web con sitemesh de com.opensymphony
instalación: maven dependencia, web.xml filter
mockito! o ¿cómo testear la comunicación entre objetos?
Strutus: editar entidades y utilizar selects
y después configurar eclipse> maven > dowload artifacts y podremos navegar por el codigo java de nuestras dependencias!
Con el ejemplo de editar libro en el cual hay que seleccionar uno de los autores existentes...
http://code.google.com/p/cursoj2ee/source/detail?r=171
Linkografía:
Para la info del select
lunes, 2 de marzo de 2009
Struts un Framework de Componentes MVC, patron decorador y plugins
- arranque de Struts: lectura de struts-config.xml, servlet de struts como controlador frontal
- documento xml struts-config.xml, DTD y struts version
- scope de actionsforms (request-session)
- acceso al request y al response desde execute...
- inyeccion de dependencias
COMPONENTES DE STRUTS !!! PARA VISTA, MODELO y CONTROLADOR
http://struts.apache.org/1.2.x/userGuide/
Ejemplo de utilizacion de etiqueta de iteracion de struts para iterar colecciones
<logic:iterate collection="${requestScope.libros}" id="libro" >
Next element is ${libro.titulo}
</logic:iterate>
Proyecto a desarrollar
EN REPO:
- struts-avanzado (aplicación librería)
EN REPO:
- libreria-model
- libreria-dao
- libreria-dao-hibernate-xml