xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd"
default-lazy-init="false">
- <import resource="classpath:org/argeo/slc/castor/spring.xml" />
-
- <bean id="slcDefault.jms.castorMessageConverter" class="org.argeo.slc.jms.MarshallerMessageConverter">
- <property name="marshaller" ref="slcDefault.castor.marshaller" />
- <property name="unmarshaller" ref="slcDefault.castor.marshaller" />
- </bean>
-
-
- <bean id="slcDefault.jms.amqConnectionFactory" class="org.apache.activemq.ActiveMQConnectionFactory">
- <property name="brokerURL">
- <value>tcp://localhost:61616</value>
- </property>
- </bean>
-
-
- <bean id="slcDefault.jms.connectionFactory"
- class="org.springframework.jms.connection.SingleConnectionFactory">
- <property name="targetConnectionFactory">
- <ref local="slcDefault.jms.amqConnectionFactory" />
+ <import resource="classpath:org/argeo/slc/activemq/spring.xml" />
+
+ <bean id="modulesManager.listenerContainer" parent="slcTemplate.jms.listenerContainer">
+ <property name="destination" ref="slcJms.destination.modulesManager.request" />
+ <property name="messageListener">
+ <bean class="org.argeo.slc.jms.ServiceMessageListenerAdapter">
+ <property name="methodArguments">
+ <map>
+ <entry key="getExecutionModuleDescriptor">
+ <list>
+ <value>name</value>
+ <value>version</value>
+ </list>
+ </entry>
+ </map>
+ </property>
+
+ <property name="delegate" ref="modulesManager" />
+ <property name="defaultResponseDestination" ref="slcJms.destination.modulesManager.response" />
+ <property name="messageConverter" ref="slcDefault.jms.castorMessageConverter" />
+ </bean>
</property>
</bean>
- <bean id="slcDefault.jms.jmsTemplateCastor" class="org.springframework.jms.core.JmsTemplate">
- <property name="connectionFactory" ref="slcDefault.jms.connectionFactory" />
- <property name="messageConverter" ref="slcDefault.jms.castorMessageConverter" />
- </bean>
-
-
- <!-- Templates -->
- <bean id="slcTemplate.jms.listenerContainer"
- class="org.springframework.jms.listener.DefaultMessageListenerContainer"
- abstract="true">
- <property name="connectionFactory" ref="slcDefault.jms.connectionFactory" />
- </bean>
-
- <bean id="slcTemplate.jms.listenerAdapterCastor"
- class="org.springframework.jms.listener.adapter.MessageListenerAdapter"
- abstract="true">
- <property name="messageConverter" ref="slcDefault.jms.castorMessageConverter" />
- </bean>
</beans>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>\r
<beans xmlns="http://www.springframework.org/schema/beans"\r
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:p="http://www.springframework.org/schema/p"\r
- xmlns:aop="http://www.springframework.org/schema/aop" xmlns:context="http://www.springframework.org/schema/context"\r
xsi:schemaLocation="\r
- http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd\r
- http://www.springframework.org/schema/lang http://www.springframework.org/schema/lang/spring-lang-2.5.xsd\r
- http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-2.5.xsd\r
- http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-2.5.xsd">\r
-\r
+ http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd">\r
\r
<bean id="modulesManager" class="org.argeo.slc.execution.ModulesManager">\r
<property name="executionModules" ref="executionModules" />\r
</bean>\r
-\r
- <bean id="modulesManager.listenerContainer" parent="slcTemplate.jms.listenerContainer">\r
- <property name="destinationName" value="modulesManager.request" />\r
- <property name="messageListener">\r
- <bean class="org.argeo.slc.jms.ServiceMessageListenerAdapter">\r
- <property name="methodArguments">\r
- <map>\r
- <entry key="getExecutionModuleDescriptor">\r
- <list>\r
- <value>name</value>\r
- <value>version</value>\r
- </list>\r
- </entry>\r
- </map>\r
- </property>\r
-\r
- <property name="delegate" ref="modulesManager" />\r
- <property name="defaultResponseQueueName" value="modulesManager.response" />\r
- <property name="messageConverter" ref="slcDefault.jms.castorMessageConverter" />\r
- </bean>\r
- </property>\r
- </bean>\r
-\r
</beans>
\ No newline at end of file
*/
public static void main(String[] args) {
ClassPathXmlApplicationContext applicationContext = new ClassPathXmlApplicationContext(
- "conf/jms.xml");
+ "org/argeo/slc/activemq/spring.xml");
try {
ConnectionFactory connectionFactory = (ConnectionFactory) applicationContext
<configuration>
<instructions>
<Export-Package>
- org.argeo.slc.*
+ org.argeo.slc.jms.*,org.argeo.slc.activemq
</Export-Package>
+ <!--
+ <Import-Package>*,
+ org.springframework.beans.factory.xml,
+ org.apache.xbean.spring.context.v2,
+ com.thoughtworks.qdox;resolution:=optional,
+ com.thoughtworks.qdox.model;resolution:=optional,
+ org.apache.tools.ant;resolution:=optional,
+ org.apache.tools.ant.taskdefs;resolution:=optional,
+ org.apache.tools.ant.types;resolution:=optional
+ </Import-Package>
+ <Fragment-Host>com.springsource.org.apache.activemq</Fragment-Host>
+ <Embed-Dependency>com.springsource.org.apache.xbean.spring</Embed-Dependency>
+ -->
</instructions>
</configuration>
</plugin>
-
+ <!--
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-dependency-plugin</artifactId>
+ <executions>
+ <execution>
+ <id>copy-dependencies</id>
+ <phase>process-resources</phase>
+ <goals>
+ <goal>copy-dependencies</goal>
+ </goals>
+ <configuration>
+ <includeArtifactIds>com.springsource.org.apache.xbean.spring</includeArtifactIds>
+ <outputDirectory>${project.build.directory}/classes</outputDirectory>
+ </configuration>
+ </execution>
+ </executions>
+ </plugin>
+ -->
</plugins>
</build>
<dependencies>
<groupId>org.apache.xbean</groupId>
<artifactId>com.springsource.org.apache.xbean.spring</artifactId>
</dependency>
- <!--
- <dependency>
+ <!--
+ <dependency> <groupId>org.apache.activemq</groupId>
+ <artifactId>activemq-pool</artifactId> </dependency> <dependency>
<groupId>org.apache.activemq</groupId>
- <artifactId>activemq-pool</artifactId>
- </dependency>
- <dependency>
- <groupId>org.apache.activemq</groupId>
- <artifactId>activemq-optional</artifactId>
- </dependency>
- -->
+ <artifactId>activemq-optional</artifactId> </dependency>
+ -->
</dependencies>
</project>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
- xmlns:amq="http://activemq.apache.org/schema/core" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd
- http://activemq.apache.org/schema/core http://activemq.apache.org/schema/core/activemq-core-5.2.0.xsd"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:p="http://www.springframework.org/schema/p"
+ xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd"
default-lazy-init="false">
<import resource="classpath:org/argeo/slc/castor/spring.xml" />
<property name="unmarshaller" ref="slcDefault.castor.marshaller" />
</bean>
- <amq:connectionFactory id="slcDefault.jms.amqConnectionFactory"
+ <bean id="slcDefault.jms.amqConnectionFactory" class="org.apache.activemq.ActiveMQConnectionFactory">
+ <property name="brokerURL">
+ <value>tcp://localhost:61616</value>
+ </property>
+ </bean>
+ <!--
+ <amq:connectionFactory id="slcDefault.jms.amqConnectionFactory"
brokerURL="${org.apache.activemq.brokerURL}" />
-
+ -->
<bean id="slcDefault.jms.connectionFactory"
class="org.springframework.jms.connection.SingleConnectionFactory">
<property name="targetConnectionFactory">
<!-- Destinations -->
- <amq:topic id="slcJms.destination.agent.register"
- physicalName="agent.register" />
- <amq:topic id="slcJms.destination.agent.unregister"
- physicalName="agent.unregister" />
- <amq:topic id="slcJms.destination.agent.newExecution"
+ <!--
+ <amq:topic id="slcJms.destination.agent.register"
+ physicalName="agent.register" /> <amq:topic
+ id="slcJms.destination.agent.unregister"
+ physicalName="agent.unregister" /> <amq:topic
+ id="slcJms.destination.agent.newExecution"
physicalName="agent.newExecution" />
+ -->
+ <bean id="slcJms.destination.agent.register" p:physicalName="agent.register"
+ parent="slcJms.amTopic" />
+ <bean id="slcJms.destination.agent.unregister" p:physicalName="agent.unregister"
+ parent="slcJms.amTopic" />
+ <bean id="slcJms.destination.agent.newExecution" p:physicalName="agent.newExecution"
+ parent="slcJms.amTopic" />
- <amq:queue id="slcJms.destination.modulesManager.request"
- physicalName="modulesManager.request" />
- <amq:topic id="slcJms.destination.modulesManager.response"
- physicalName="modulesManager.response" />
+ <bean id="slcJms.destination.modulesManager.request"
+ p:physicalName="modulesManager.request" parent="slcJms.amQueue" />
+ <bean id="slcJms.destination.modulesManager.response"
+ p:physicalName="modulesManager.response" parent="slcJms.amQueue" />
<!-- Templates -->
<bean id="slcTemplate.jms.listenerContainer"
abstract="true">
<property name="messageConverter" ref="slcDefault.jms.castorMessageConverter" />
</bean>
+
+ <bean id="slcJms.amQueue" class="org.apache.activemq.command.ActiveMQQueue"
+ abstract="true" />
+ <bean id="slcJms.amTopic" class="org.apache.activemq.command.ActiveMQTopic"
+ abstract="true" />
+
</beans>
\ No newline at end of file