domingo, 29 de marzo de 2009

JSF un framework orientado a componentes y eventos

glassfish y jetty

otro servidor de aplicaciones: glassfish (de sun)
¿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

Ejercicio Registro de usuario utilizando JSF...
  1. secuencia de pantallas de registro simulando regla de negocio
  2. arrancar JPA(Hibernate) con modelo de Usuario
  3. crear un EJB que conecte con JPA y realice busquedas
  4. 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

Modelo de negocio para implementar en ejemplos...
Productora, Disco, Cancion,
Grupo Musica, Musico, Pedido, Cliente

Problemas a resolver por un ORM


Arranque (y configuración) de Hibernate
Propiedades De Hibernate (Session y SessionFactory)

Opciones para mapeo de clases persistentes con hibernate:

Lenguajes disponibles de consultas con hibernate:

Mejorar rendimiento:

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>

SpringFramework

http://groups.google.com/group/eticom-master-java/web/spring

lunes, 9 de marzo de 2009

Struts2 y SpringFramework

Inyección de dependencias con Spring: proyecto spring-di

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/

mockito-core:

  <groupId>org.mockito</groupId>
<artifactId>mockito-core</artifactId>
<version>1.7</version>

mockito-all:

  <groupId>org.mockito</groupId>
<artifactId>mockito-all</artifactId>
<version>1.7</version>




*** IMPORTS STATICS

ANT - Automatizacion de tareas en el desarrollo

repo: ant-ejemplos

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:
  1. realizar con ant una estructura de directorios tipica de una aplicacion web en java
  2. 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

Para programadores con inquietudes... probar este lenguaje...
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

Creación desde consola de un nuevo proyecto struts2 utilizando el comando maven archetype:create enlace
  • 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

Reflexion

Plugin en Struts, Sitemesh

plugins de struts (¿qué es un plugin en Struts?)
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

MAVEN: source:jar install
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

Struts importante comprender y notar!
  • 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)
Dependencias
EN REPO:
  • libreria-model
  • libreria-dao
  • libreria-dao-hibernate-xml

i18n - Internationalization and localization

Internacionalización en jsp en repo:i18n

wikipedia

sun java internacionalizacion