1 |
torben |
1271 |
package dk.thoerup.messagedriven; |
2 |
|
|
|
3 |
|
|
import java.io.IOException; |
4 |
|
|
|
5 |
torben |
1273 |
import javax.annotation.Resource; |
6 |
torben |
1271 |
import javax.jms.Connection; |
7 |
|
|
import javax.jms.ConnectionFactory; |
8 |
|
|
import javax.jms.MessageProducer; |
9 |
|
|
import javax.jms.Queue; |
10 |
|
|
import javax.jms.Session; |
11 |
|
|
import javax.jms.TextMessage; |
12 |
|
|
import javax.servlet.ServletException; |
13 |
|
|
import javax.servlet.annotation.WebServlet; |
14 |
|
|
import javax.servlet.http.HttpServlet; |
15 |
|
|
import javax.servlet.http.HttpServletRequest; |
16 |
|
|
import javax.servlet.http.HttpServletResponse; |
17 |
|
|
|
18 |
|
|
|
19 |
|
|
@WebServlet(name = "ProducerServlet", urlPatterns = { "/ProducerServlet" }) |
20 |
|
|
public class ProducerServlet extends HttpServlet { |
21 |
|
|
private static final long serialVersionUID = 1L; |
22 |
|
|
|
23 |
|
|
|
24 |
torben |
1274 |
// resource mapped vars may of course not be static ! |
25 |
torben |
1273 |
@Resource(mappedName = "jms/helloFactory") |
26 |
torben |
1274 |
private ConnectionFactory connectionFactory; |
27 |
torben |
1271 |
|
28 |
torben |
1273 |
@Resource(mappedName = "jms/hello") |
29 |
torben |
1274 |
private Queue queue; |
30 |
torben |
1272 |
|
31 |
torben |
1271 |
|
32 |
torben |
1272 |
@Override |
33 |
|
|
public void init() throws ServletException { |
34 |
torben |
1274 |
/* |
35 |
torben |
1272 |
try { |
36 |
|
|
InitialContext ic = new InitialContext(); |
37 |
torben |
1273 |
if (connectionFactory == null) { |
38 |
|
|
connectionFactory = (ConnectionFactory)ic.lookup("jms/helloFactory"); |
39 |
|
|
System.out.println("@Resource failed for connection factory"); |
40 |
|
|
} |
41 |
|
|
if (queue == null) { |
42 |
|
|
queue = (Queue)ic.lookup("jms/hello"); |
43 |
|
|
System.out.println("@Resource failed for queue"); |
44 |
|
|
} |
45 |
torben |
1272 |
} catch(NamingException ne) { |
46 |
|
|
throw new ServletException(ne); |
47 |
torben |
1274 |
}*/ |
48 |
torben |
1272 |
} |
49 |
torben |
1271 |
|
50 |
|
|
|
51 |
|
|
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { |
52 |
|
|
try { |
53 |
torben |
1272 |
|
54 |
|
|
Connection connection = connectionFactory.createConnection(); |
55 |
torben |
1271 |
|
56 |
|
|
|
57 |
|
|
Session session = connection.createSession(false, Session.AUTO_ACKNOWLEDGE); |
58 |
|
|
MessageProducer producer = session.createProducer(queue); |
59 |
|
|
TextMessage message = session.createTextMessage(); |
60 |
|
|
message.setStringProperty("name", "World!!"); |
61 |
|
|
message.setText("this is the body"); |
62 |
|
|
producer.send(message); |
63 |
|
|
response.getWriter().print("Message sent" ); |
64 |
|
|
} catch (Exception e) { |
65 |
torben |
1273 |
throw new ServletException(e); |
66 |
torben |
1271 |
} |
67 |
|
|
} |
68 |
|
|
|
69 |
|
|
|
70 |
|
|
} |