4-febrero-2012
admin

Transacciones con Spring AOP (Forma declarativa con un fichero xml)

El tratamiendo de las transacciones mediante Spring AOP puede realizarse de varias formas. O bien, de forma programática o bien de forma declarativa (ya sea con anotaciones o con fichero xml):


1/ Si se hace de forma programática, las transacciones, deben controlarse en las distintas clases. Esto puede llegar a resultar bastante engorroso en aplicaciones relativamente grandes.


2/ Si se hace de forma declarativa con anotaciones estaríamos en la misma situación ya que las transacciones se definen dentro de las propias clases como antes, eso sí, de una forma más limpia.


3/ Si se hace de forma declarativa con un fichero xml se puede poner un punto de corte (pointcut) sobre la capa manager que abarque a todas las clases pertenecientes a ella. Y mediante un se pueden definir los tipos de propiedades de las transacciones (propagation, isolation leven, timeout, etc.), que deben ejecutar los métodos de esas clases manager. Para ello basta con seguir algún patrón a la hora de nombrar los nombres métodos y así poder diferenciarlos unos de otros. De esta forma en unas pocas líneas de un fichero xml se tienen tratadas todas las transacciones de la aplicación.




Para usar esta tercera forma nos pide aparte un par de librerías de Aspectj. Obtenidas p.e. de maven, de la siguiente forma:

      
          org.aspectj
          aspectjrt
          1.5.4
      
      
          org.aspectj
          aspectjweaver
          1.5.4
      





Un ejemplo sencillo de uso, con hibernate:

    
    
	
    

    
    
        
     
    
    
    
        
            
            
            
        
    





Nota: Aquí hay bastante más información para consultar http://static.springsource.org/spring/docs/2.5.x/reference/aop.html

3-febrero-2012
admin

Para ver las sesiones abiertas en oracle

SELECT username, status, sid, serial# FROM v$session;

Así, para ver únicamente las sesiones abiertas con el usuario que se está utilizando en la aplicación. Sería:

SELECT * FROM v$session WHERE username LIKE ‘XXXXXXX’;

(Nota: Se deben tener permisos de SYS.)

3-febrero-2012
admin

Cambiar el puerto del JBoss

Para cambiar el puerto bajo el que corre JBoss. Se debe modificar el archivo server.xml.
Concretamente la línea que pone:

 

...




Nota: El archivo server.xml se puede encontrar en el jbosweb. Algo así:
/server/default/deploy/jbossweb.sar/server.xml

2-febrero-2012
admin

Instalar un JBoss

Pasos a seguir para poner a funcionar un JBoss de manera rápida.


Paso 1: Se debe instalar una jdk y añadir la variable de entorno JAVA_HOME.
p.e. si tenemos instalada la jdk en C:\Program Files\Java\jdk1.5.0_22, se añadiría la variable de entorno JAVA_HOME=C:\Program Files\Java\jdk1.5.0_22

Paso 2: Descomprimir en una carpeta del sistema el JBoss y añadir la variable de entorno JBOSS_HOME.
p.e. si descomprimimos el JBoss en la carpeta C:\jboss, se añadiría la variable de entorno JBOSS_HOME=C:\jboss

Paso 3: Ahora se deben añadir esas dos variables de entorno al path. Tal que así:
PATH = %JBOSS_HOME%\bin;%JAVA_HOME%\bin; %PATH%

Paso 4: Para lanzar el servidor de JBoss simplemente se ejecuta el archivo run.bat (está en la carpeta bin del JBoss).

Paso 5: Para probarlo se puede ejecutar el siguiente Hola Mundo:
Paso 5.1: Crear una carpeta llamada HolaMundo y dentro colocar la jsp «hola.jsp». Que contenga por ejemplo:

  <% String mensaje= "Hola, Mundo."; %>
  <%=mensaje %>
  <%=new java.util.Date() %>

Paso 5.2: Dentro de la carpeta HolaMundo crear también la carpeta «WEB-INF» y dentro de ésta un fichero web.xml con el siguiente contenido:


   Hello World

Paso 5.3: Finalmente, para crear el war y desplegarlo en el servidor jboss se crea dentro de la carpeta HolaMundo un fichero deploy.bat con este contenido:

@echo off
"%JAVA_HOME%\bin\jar.exe" -cvf HolaMundo.war *.jsp WEB-INF
copy HolaMundo.war "%JBOSS_HOME%\server\default\deploy"
pause

Paso 5.4: Ejecutar ese deploy.bat y probar en el navegar la siguiente url http://localhost:8080/HolaMundo/hola.jsp»
Si todo ha ido bien, se debe ver un hola mundo.

1-febrero-2012
admin

Test does not support runtime expressions

Programando unas jsp me he encontrado con una serie de ‘warnnings’. Aunque al ejecutarlas bajo un tomcat funcionaban correctamente, en un OAS daban problemas. Los ‘warnnings’ en cuestión eran tal que así:

  • test does not support runtime expressions
  • value does not support runtime expressions
  • items does not support runtime expressions

Esto sucedía porque estaba importando la taglib de JSTL 1.0 en lugar de su versión 1.1.
Utilizaba:

<%@ taglib uri="http://java.sun.com/jstl/core" prefix="c" %>

En lugar de:

<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"  %>

Como se puede ver, las dos URI’s se parecen mucho y es bastante fácil equivocarse.

Páginas:«1...2223242526272829

Categorias

Linkedin