Diferencia entre revisiones de «Despliegue de Rars con Spring»

De Dos Ideas.
Saltar a: navegación, buscar
(Página creada con 'Desde la versión 2.5 de Spring, es posible desplegar una aplicación en un archivo rar. El despliegue de rars es ideal para aplicaciones que realizan ejecuciones de trabajos (S…')
 
(Ver También)
 
(No se muestran 3 ediciones intermedias de 2 usuarios)
Línea 1: Línea 1:
Desde la versión 2.5 de Spring, es posible desplegar una aplicación en un archivo rar. El despliegue de rars es ideal para aplicaciones que realizan ejecuciones de trabajos (Spring Batch - Quartz), que reciben y manejan mensajes (Spring Integration).
+
Desde la versión 2.5 de [[Spring Framework]], es posible desplegar una aplicación en un archivo rar. El despliegue de rars es ideal para aplicaciones que realizan ejecuciones de trabajos ([[Spring Batch]] - [[Quartz]]), que reciben y manejan mensajes ([[Spring Integration]]).
  
 
El armado de la aplicación es simple, en la raiz del rar hay que poner el jar de nuestra aplicación y todas las librerías necesarias para que la aplicación funcione, agregar los archivo "META-INF/ra.xml" y "META-INF/applicationContext.xml" y listo.
 
El armado de la aplicación es simple, en la raiz del rar hay que poner el jar de nuestra aplicación y todas las librerías necesarias para que la aplicación funcione, agregar los archivo "META-INF/ra.xml" y "META-INF/applicationContext.xml" y listo.
Línea 9: Línea 9:
 
<?xml version="1.0" encoding="UTF-8"?>
 
<?xml version="1.0" encoding="UTF-8"?>
 
  <connector xmlns="http://java.sun.com/xml/ns/j2ee"
 
  <connector xmlns="http://java.sun.com/xml/ns/j2ee"
                xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
                xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/connector_1_5.xsd"
+
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/connector_1_5.xsd"
                version="1.5">
+
version="1.5">
 
   <vendor-name>Spring Framework</vendor-name>
 
   <vendor-name>Spring Framework</vendor-name>
 
   <eis-type>Spring Connector</eis-type>
 
   <eis-type>Spring Connector</eis-type>
 
   <resourceadapter-version>1.0</resourceadapter-version>
 
   <resourceadapter-version>1.0</resourceadapter-version>
 
   <resourceadapter>
 
   <resourceadapter>
       <resourceadapter-class>org.springframework.jca.context.SpringContextResourceAdapter</resourceadapter-class>
+
       <resourceadapter-class>
 +
            org.springframework.jca.context.SpringContextResourceAdapter
 +
      </resourceadapter-class>
 
         <config-property>
 
         <config-property>
 
           <config-property-name>ContextConfigLocation</config-property-name>
 
           <config-property-name>ContextConfigLocation</config-property-name>
Línea 63: Línea 65:
  
 
===HolaMundo.java===
 
===HolaMundo.java===
<code>
+
<code java>
 
public class HolaMundo {
 
public class HolaMundo {
  
Línea 72: Línea 74:
 
}
 
}
 
</code>
 
</code>
 +
 +
==Ver También==
 +
 +
* [http://static.springsource.org/spring/docs/2.5.x/reference/beans.html Documentación de Spring, Capitulo 3:Deploying a Spring ApplicationContext as a J2EE RAR file]

Revisión actual del 19:48 11 dic 2009

Desde la versión 2.5 de Spring Framework, es posible desplegar una aplicación en un archivo rar. El despliegue de rars es ideal para aplicaciones que realizan ejecuciones de trabajos (Spring Batch - Quartz), que reciben y manejan mensajes (Spring Integration).

El armado de la aplicación es simple, en la raiz del rar hay que poner el jar de nuestra aplicación y todas las librerías necesarias para que la aplicación funcione, agregar los archivo "META-INF/ra.xml" y "META-INF/applicationContext.xml" y listo.

Este es un ejemplo de cómo desplegar una aplicación con quartz, que cada 30 segundos imprime un "Hola Mundo" por consola.

ra.xml

<?xml version="1.0" encoding="UTF-8"?>

<connector xmlns="http://java.sun.com/xml/ns/j2ee"

xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/connector_1_5.xsd" version="1.5">

  <vendor-name>Spring Framework</vendor-name>
  <eis-type>Spring Connector</eis-type>
  <resourceadapter-version>1.0</resourceadapter-version>
  <resourceadapter>
     <resourceadapter-class>
            org.springframework.jca.context.SpringContextResourceAdapter
     </resourceadapter-class>
       <config-property>
         <config-property-name>ContextConfigLocation</config-property-name>
         <config-property-type>java.lang.String</config-property-type>
         <config-property-value>META-INF/applicationContext.xml</config-property-value>
       </config-property>
    </resourceadapter>
</connector>

applicationContext.xml

<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN 2.0//EN"

   "http://www.springframework.org/dtd/spring-beans-2.0.dtd">

<beans>

   <bean id="holaMundoObject" class="com.demo.quartz.HolaMundo"/>
   <bean id="Tarea.HolaMundo"
       class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">
       <property name="targetObject" ref="holaMundoObject" />
       <property name="targetMethod" value="holaMundo" />
       <property name="concurrent" value="false" />
   </bean>
   <bean id="simpleTriggerHolaMundo"
       class="org.springframework.scheduling.quartz.SimpleTriggerBean">
       <property name="jobDetail" ref="Tarea.HolaMundo" />
       <property name="startDelay" value="2000" />
       <property name="repeatInterval" value="30000" />
   </bean>
   <bean id="schedulerFactoryBean"
   class="org.springframework.scheduling.quartz.SchedulerFactoryBean">
       <property name="triggers">
           <list>
               <ref bean="simpleTriggerHolaMundo" />
           </list>
       </property>
   </bean>

</beans>

HolaMundo.java

public class HolaMundo {

   public void holaMundo () {
       System.out.println("Hola Mundo");
   }

}

Ver También