Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Andrey Paramonov
committed
Nov 28, 2012
0 parents
commit 5d9d3d0
Showing
10 changed files
with
351 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,4 @@ | ||
.idea/ | ||
jms-poc.iml | ||
target/ | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,123 @@ | ||
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" | ||
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> | ||
<modelVersion>4.0.0</modelVersion> | ||
<groupId>com.ndpar</groupId> | ||
<artifactId>jms-poc</artifactId> | ||
<packaging>war</packaging> | ||
<version>1.0-SNAPSHOT</version> | ||
|
||
<properties> | ||
<spring.version>3.1.3.RELEASE</spring.version> | ||
<jetty.version>8.1.5.v20120716</jetty.version> | ||
</properties> | ||
|
||
<dependencies> | ||
<dependency> | ||
<groupId>log4j</groupId> | ||
<artifactId>log4j</artifactId> | ||
<version>1.2.17</version> | ||
<scope>runtime</scope> | ||
</dependency> | ||
<dependency> | ||
<groupId>org.hornetq</groupId> | ||
<artifactId>hornetq-core-client</artifactId> | ||
<version>2.2.7.Final</version> | ||
</dependency> | ||
<dependency> | ||
<groupId>org.hornetq</groupId> | ||
<artifactId>hornetq-jms-client</artifactId> | ||
<version>2.2.7.Final</version> | ||
</dependency> | ||
<dependency> | ||
<groupId>org.apache.activemq</groupId> | ||
<artifactId>activemq-all</artifactId> | ||
<version>5.7.0</version> | ||
</dependency> | ||
<dependency> | ||
<groupId>org.springframework</groupId> | ||
<artifactId>spring-beans</artifactId> | ||
<version>${spring.version}</version> | ||
</dependency> | ||
<dependency> | ||
<groupId>org.springframework</groupId> | ||
<artifactId>spring-context</artifactId> | ||
<version>${spring.version}</version> | ||
</dependency> | ||
<dependency> | ||
<groupId>org.springframework</groupId> | ||
<artifactId>spring-context-support</artifactId> | ||
<version>${spring.version}</version> | ||
</dependency> | ||
<dependency> | ||
<groupId>org.springframework</groupId> | ||
<artifactId>spring-core</artifactId> | ||
<version>${spring.version}</version> | ||
</dependency> | ||
<dependency> | ||
<groupId>org.springframework</groupId> | ||
<artifactId>spring-jms</artifactId> | ||
<version>${spring.version}</version> | ||
</dependency> | ||
<dependency> | ||
<groupId>org.springframework</groupId> | ||
<artifactId>spring-tx</artifactId> | ||
<version>${spring.version}</version> | ||
</dependency> | ||
<dependency> | ||
<groupId>org.springframework</groupId> | ||
<artifactId>spring-web</artifactId> | ||
<version>${spring.version}</version> | ||
</dependency> | ||
<dependency> | ||
<groupId>org.springframework</groupId> | ||
<artifactId>spring-webmvc</artifactId> | ||
<version>${spring.version}</version> | ||
</dependency> | ||
|
||
<dependency> | ||
<groupId>junit</groupId> | ||
<artifactId>junit</artifactId> | ||
<version>4.5</version> | ||
<scope>test</scope> | ||
</dependency> | ||
<dependency> | ||
<groupId>org.springframework</groupId> | ||
<artifactId>spring-test</artifactId> | ||
<version>${spring.version}</version> | ||
<scope>test</scope> | ||
</dependency> | ||
</dependencies> | ||
|
||
<build> | ||
<finalName>jms-poc</finalName> | ||
<plugins> | ||
<plugin> | ||
<groupId>org.mortbay.jetty</groupId> | ||
<artifactId>jetty-maven-plugin</artifactId> | ||
<version>${jetty.version}</version> | ||
<dependencies> | ||
<dependency> | ||
<groupId>org.eclipse.jetty</groupId> | ||
<artifactId>jetty-servlets</artifactId> | ||
<version>${jetty.version}</version> | ||
</dependency> | ||
</dependencies> | ||
<configuration> | ||
<stopPort>9999</stopPort> | ||
<stopKey>stopJetty</stopKey> | ||
<scanIntervalSeconds>10</scanIntervalSeconds> | ||
<useTestClasspath>true</useTestClasspath> | ||
<webApp> | ||
<contextPath>/jms</contextPath> | ||
</webApp> | ||
<connectors> | ||
<connector implementation="org.eclipse.jetty.server.nio.SelectChannelConnector"> | ||
<port>8080</port> | ||
<maxIdleTime>60000</maxIdleTime> | ||
</connector> | ||
</connectors> | ||
</configuration> | ||
</plugin> | ||
</plugins> | ||
</build> | ||
</project> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,11 @@ | ||
package com.ndpar; | ||
|
||
import org.springframework.util.ErrorHandler; | ||
|
||
public class JmsErrorHandler implements ErrorHandler { | ||
|
||
@Override | ||
public void handleError(Throwable t) { | ||
t.printStackTrace(); | ||
} | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,20 @@ | ||
package com.ndpar; | ||
|
||
import javax.jms.JMSException; | ||
import javax.jms.Message; | ||
import javax.jms.MessageListener; | ||
import javax.jms.TextMessage; | ||
|
||
public class JmsQueueListener implements MessageListener { | ||
|
||
public void onMessage(Message message) { | ||
System.out.println(message); | ||
if (message instanceof TextMessage) { | ||
try { | ||
System.out.println(((TextMessage) message).getText()); | ||
} catch (JMSException ex) { | ||
throw new RuntimeException(ex); | ||
} | ||
} | ||
} | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,37 @@ | ||
package com.ndpar; | ||
|
||
import org.springframework.beans.factory.annotation.Autowired; | ||
import org.springframework.jms.core.JmsTemplate; | ||
import org.springframework.jms.core.MessageCreator; | ||
import org.springframework.jmx.export.annotation.ManagedOperation; | ||
import org.springframework.jmx.export.annotation.ManagedOperationParameter; | ||
import org.springframework.jmx.export.annotation.ManagedOperationParameters; | ||
import org.springframework.jmx.export.annotation.ManagedResource; | ||
import org.springframework.stereotype.Service; | ||
|
||
import javax.annotation.Resource; | ||
import javax.jms.JMSException; | ||
import javax.jms.Message; | ||
import javax.jms.Queue; | ||
import javax.jms.Session; | ||
|
||
@Service | ||
@ManagedResource(objectName = "com.ndpar:name=JmsSender") | ||
public class JmsQueueSender { | ||
|
||
@Autowired | ||
private JmsTemplate jmsTemplate; | ||
|
||
@Resource | ||
private Queue testQueue; | ||
|
||
@ManagedOperation(description = "Send text message") | ||
@ManagedOperationParameters({@ManagedOperationParameter(name = "text", description = "message text")}) | ||
public void send(final String text) { | ||
this.jmsTemplate.send(this.testQueue, new MessageCreator() { | ||
public Message createMessage(Session session) throws JMSException { | ||
return session.createTextMessage(text); | ||
} | ||
}); | ||
} | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,52 @@ | ||
<?xml version="1.0" encoding="UTF-8"?> | ||
<beans xmlns="http://www.springframework.org/schema/beans" | ||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" | ||
xmlns:c="http://www.springframework.org/schema/c" | ||
xmlns:context="http://www.springframework.org/schema/context" | ||
xmlns:p="http://www.springframework.org/schema/p" | ||
xmlns:tx="http://www.springframework.org/schema/tx" | ||
xsi:schemaLocation="http://www.springframework.org/schema/beans | ||
http://www.springframework.org/schema/beans/spring-beans-3.1.xsd | ||
http://www.springframework.org/schema/context | ||
http://www.springframework.org/schema/context/spring-context-3.1.xsd | ||
http://www.springframework.org/schema/tx | ||
http://www.springframework.org/schema/tx/spring-tx-3.1.xsd"> | ||
|
||
<context:component-scan base-package="com.ndpar"/> | ||
<context:mbean-export/> | ||
<tx:annotation-driven/> | ||
|
||
<bean id="jmsConnectionFactory" class="org.apache.activemq.spring.ActiveMQConnectionFactory" | ||
p:brokerURL="tcp://localhost:61616"/> | ||
|
||
<bean id="testQueue" class="org.apache.activemq.command.ActiveMQQueue" c:name="queue/Test"/> | ||
|
||
|
||
<bean id="testTemplate" class="org.springframework.jms.core.JmsTemplate" | ||
p:connectionFactory-ref="jmsConnectionFactory" | ||
p:defaultDestination-ref="testQueue" | ||
p:pubSubDomain="false"/> | ||
|
||
|
||
<bean id="jmsContainer" class="org.springframework.jms.listener.SimpleMessageListenerContainer" | ||
p:connectionFactory-ref="jmsConnectionFactory" | ||
p:destination-ref="testQueue" | ||
p:messageListener-ref="jmsQueueListener" | ||
p:pubSubDomain="false" | ||
p:sessionTransacted="true" | ||
p:errorHandler-ref="jmsErrorHandler" | ||
p:concurrency="2-10"/> | ||
|
||
<!--bean id="jmsContainer" class="org.springframework.jms.listener.DefaultMessageListenerContainer" | ||
p:connectionFactory-ref="jmsConnectionFactory" | ||
p:destination-ref="testQueue" | ||
p:messageListener-ref="jmsQueueListener" | ||
p:pubSubDomain="false" | ||
p:sessionTransacted="true" | ||
p:errorHandler-ref="jmsErrorHandler" | ||
p:concurrency="2-10"/--> | ||
|
||
<bean id="jmsQueueListener" class="com.ndpar.JmsQueueListener"/> | ||
|
||
<bean id="jmsErrorHandler" class="com.ndpar.JmsErrorHandler"/> | ||
</beans> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,34 @@ | ||
<?xml version="1.0" encoding="UTF-8"?> | ||
<beans xmlns="http://www.springframework.org/schema/beans" | ||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" | ||
xmlns:context="http://www.springframework.org/schema/context" | ||
xmlns:p="http://www.springframework.org/schema/p" | ||
xmlns:mvc="http://www.springframework.org/schema/mvc" | ||
xsi:schemaLocation="http://www.springframework.org/schema/beans | ||
http://www.springframework.org/schema/beans/spring-beans-3.1.xsd | ||
http://www.springframework.org/schema/context | ||
http://www.springframework.org/schema/context/spring-context-3.1.xsd | ||
http://www.springframework.org/schema/mvc | ||
http://www.springframework.org/schema/mvc/spring-mvc-3.1.xsd"> | ||
|
||
<context:component-scan base-package="com.ndpar"/> | ||
|
||
<mvc:annotation-driven> | ||
<mvc:message-converters register-defaults="true"> | ||
<bean class="org.springframework.http.converter.StringHttpMessageConverter"> | ||
<property name="supportedMediaTypes" value="text/plain;charset=UTF-8"/> | ||
</bean> | ||
</mvc:message-converters> | ||
</mvc:annotation-driven> | ||
|
||
<bean class="org.springframework.web.servlet.view.InternalResourceViewResolver" | ||
p:order="1" p:prefix="/WEB-INF/views/" p:suffix=".jsp"/> | ||
|
||
<!--<bean id="urlMapping" class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping">--> | ||
<!--<property name="mappings">--> | ||
<!--<props>--> | ||
<!--<prop key="/api/*">apiController</prop>--> | ||
<!--</props>--> | ||
<!--</property>--> | ||
<!--</bean>--> | ||
</beans> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,36 @@ | ||
<?xml version="1.0" encoding="UTF-8" ?> | ||
<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd"> | ||
|
||
<log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/"> | ||
|
||
<appender name="ASYNC" class="org.apache.log4j.AsyncAppender"> | ||
<param name="BufferSize" value="500"/> | ||
<appender-ref ref="CONSOLE"/> | ||
<appender-ref ref="FILE"/> | ||
</appender> | ||
|
||
<appender name="CONSOLE" class="org.apache.log4j.ConsoleAppender"> | ||
<param name="Target" value="System.out"/> | ||
<layout class="org.apache.log4j.PatternLayout"> | ||
<param name="ConversionPattern" value="%d{ISO8601} [%t] %-5p %c - %m%n"/> | ||
</layout> | ||
</appender> | ||
|
||
<appender name="FILE" class="org.apache.log4j.DailyRollingFileAppender"> | ||
<param name="File" value="target/logs/jetty.log"/> | ||
<param name="DatePattern" value="'.'yyyy-MM-dd"/> | ||
<param name="Append" value="true"/> | ||
<layout class="org.apache.log4j.EnhancedPatternLayout"> | ||
<param name="ConversionPattern" value="%d{ISO8601} [%t] %-5p %c - %m%n"/> | ||
</layout> | ||
</appender> | ||
|
||
<root> | ||
<priority value="debug"/> | ||
<appender-ref ref="ASYNC"/> | ||
</root> | ||
|
||
<category name="org.apache.activemq.ActiveMQSession"> | ||
<priority value="info"/> | ||
</category> | ||
</log4j:configuration> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,29 @@ | ||
<!DOCTYPE web-app PUBLIC | ||
"-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" | ||
"http://java.sun.com/dtd/web-app_2_3.dtd" > | ||
|
||
<web-app> | ||
<display-name>JMS POC</display-name> | ||
|
||
<context-param> | ||
<param-name>contextConfigLocation</param-name> | ||
<param-value>classpath:ac-main.xml</param-value> | ||
</context-param> | ||
|
||
<listener> | ||
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class> | ||
</listener> | ||
|
||
<servlet> | ||
<servlet-name>Spring-MVC-Servlet</servlet-name> | ||
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> | ||
<init-param> | ||
<param-name>contextConfigLocation</param-name> | ||
<param-value>classpath:ac-spring-mvc.xml</param-value> | ||
</init-param> | ||
</servlet> | ||
<servlet-mapping> | ||
<servlet-name>Spring-MVC-Servlet</servlet-name> | ||
<url-pattern>/api/*</url-pattern> | ||
</servlet-mapping> | ||
</web-app> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,5 @@ | ||
<html> | ||
<body> | ||
<h2>Hello World!</h2> | ||
</body> | ||
</html> |