![antelder](/assets/img/avatar_default.png)
git-svn-id: http://svn.us.apache.org/repos/asf/tuscany@1069274 13f79535-47bb-0310-9956-ffa450edef68
131 lines
4.2 KiB
Text
131 lines
4.2 KiB
Text
JMS HelloWorld Sample
|
|
=====================
|
|
This sample demonstrates a simple webapp containing a hello world style client
|
|
and service using the JMS binding for request-response style messaging.
|
|
|
|
The README in the samples directory (the directory three directories above this) provides
|
|
general instructions about building and running samples. Take a look there
|
|
first.
|
|
|
|
As this sample provides a web app there is a manual step where the WAR file
|
|
that contains the sample is copied to your web app container. If you just want
|
|
to give this sample a go deploy the WAR file (target/helloworld-jms.war )
|
|
to you web application server. Alternatevly, the sample pom.xml is configured
|
|
with the Jetty plugin so you can run the it with Jetty by simply doing "mvn jetty:run".
|
|
|
|
Once the web app is deployed use your browser to visit the following URL;
|
|
|
|
http://localhost:8080/helloworld-jms
|
|
|
|
The port and hostname will of course vary depending on your local installation.
|
|
|
|
Configuring the JMS resources
|
|
-----------------------------
|
|
|
|
The sample requires JMS resources be manually configured in the server environment, these are:
|
|
|
|
- a JMS connection factory named "ConnectionFactory"
|
|
- a JMS queue named "HelloWorldService"
|
|
|
|
See the following for how to define these resources depending on the application server being used:
|
|
|
|
Tuscany with embedded ActiveMQ broker
|
|
-------------------------------------
|
|
|
|
|
|
Apache Tomcat
|
|
-------------
|
|
|
|
No configuration is necessary for Tomcat as the sample WAR includes everything pre-configured to run
|
|
an ActiveMQ embedded JMS broker and to configure the JMS resources in JNDI.
|
|
|
|
The JNDI resources are configured in the META-INF/comtext.xml file, for more information on running
|
|
ActiveMQ in Tomcat see: http://activemq.apache.org/tomcat.html
|
|
|
|
|
|
Apache Geronimo
|
|
---------------
|
|
|
|
For Apache Geronimo 2.0.1 (2.0.2 fails to define JMS resources for me)
|
|
|
|
Logon to the Geronimo Server Console (http://localhost:8080/console, uid system, pswd manager)
|
|
|
|
In the Console Navigation on the left under Services click JMS Resources
|
|
|
|
At the bottom of the JMS Resources panel click under Create a new JMS Resource Group click For ActiveMQ
|
|
|
|
In Resource Group Name enter "MyRGN" and click next
|
|
|
|
At JMS Resource Group click Add Connection Factory
|
|
|
|
For JMS Factory Type choose javax.jms.ConnectionFactory and click Next
|
|
|
|
In Connection Factory Name enter "ConnectionFactory" and click Next
|
|
|
|
Click Add destination
|
|
|
|
For JMS Destination Type choose javax.jms.Queue and click Next
|
|
|
|
Enter "HelloWorldService" for both Message Destination Name and PhysicalName and click Next
|
|
|
|
Click Deploy Now
|
|
|
|
Thats it, you're done.
|
|
|
|
|
|
WebSphere
|
|
---------
|
|
|
|
To define the JMS resources in a new WebSphere Application Server 6.1 installation:
|
|
|
|
1) First define a Service integration bus:
|
|
|
|
Logon to the WebSphere Integrated Solutions Console (http://localhost:9060/ibm/console)
|
|
|
|
On the Left hand menu expand Service integration, and click on Buses.
|
|
|
|
In the Buses panel click on New
|
|
|
|
Enter a name for the bus, eg MyBus, and click Next, and then click Finish and Save the changes.
|
|
|
|
In the Buses panel click on MyBus
|
|
|
|
Find the Topology secion and click on Bus members
|
|
|
|
Click on Add, leave the defaults and click Next, Next, Next, Finish, and Save the changes.
|
|
|
|
Restart WebSphere and when back up logon back on to the Integrated Solutions Console
|
|
|
|
2) Now define the JMS rescources
|
|
|
|
On the Left hand menu expand Resources, and JMS and click on Connection Facotories.
|
|
|
|
In the Connection factories panel click New.
|
|
|
|
Leave the Default messaging provider and click OK
|
|
|
|
Enter "ConnectionFactory" in the Name and JNDI name and in the Bus name in the Connection pane choose MyBus and click OK
|
|
|
|
On the Left hand menu in JMS click on Queues
|
|
|
|
In the Queues panel click New, accept the defaults and click OK
|
|
|
|
Enter "HelloWorldService" for the Name and JNDI name and in the Bus name in the Connection pane choose MyBus,
|
|
and then in the Queue name drop down list choose "Create SIB destination"
|
|
|
|
In the Set queue attributes panel enter "HelloWorldService" for the Identifier and click Next, Next, and Finish
|
|
|
|
That should take you back to the Queues panel where you can click OK to create the new JMS queue.
|
|
|
|
Save the changes
|
|
|
|
Restart WebSphere and you're done.
|
|
|
|
|
|
|
|
Others...
|
|
---------
|
|
|
|
|
|
|
|
|