%@ page contentType="text/html;charset=euc-kr"
import="javax.naming.*, java.io.*, javax.jms.*, javax.jms.Queue"%>
<%!
String literal;
boolean persistent;
int priority;
long ttl;
String replyto;
String msgText;
%>
<%
try {
if (request.getMethod().equals("GET")) {
%>
JMS Message Sender
Submit a JMS Message at Queue
<%
} else {
persistent = request.getParameter("persistent").equals("persistent");
priority = Integer.parseInt(request.getParameter("priority"));
ttl = Long.parseLong(request.getParameter("timetolive"));
replyto = request.getParameter("replyto");
msgText = request.getParameter("msgtext");
sendQueueMessage(persistent, priority, ttl, replyto, msgText);
%>
Message Status
Message Status
Message Submitted: <%=msgText %>
<%
return;
}
} catch (Exception e) {
e.printStackTrace();
}
%>
<%!
public void sendQueueMessage(boolean persistent, int priority, long ttl,
String replyto, String topicMessage) throws NamingException, JMSException {
Context ctx = new InitialContext();
QueueConnectionFactory qconFactory;
QueueConnection qcon;
QueueSession qsession;
QueueSender qsender;
Queue queue;
Topic topic;
TextMessage msg;
qconFactory = (QueueConnectionFactory) ctx.lookup("QueueConnectionFactory");
qcon = qconFactory.createQueueConnection();
qsession = qcon.createQueueSession(false, Session.AUTO_ACKNOWLEDGE);
queue = (Queue) ctx.lookup("ExamplesQueue");
qsender = qsession.createSender(queue);
msg = qsession.createTextMessage();
if (replyto.equals("queue")) {
msg.setJMSReplyTo(queue);
}
else if (replyto.equals("topic")) {
topic = (Topic) ctx.lookup("ExamplesTopic");
msg.setJMSReplyTo(topic);
}
msg.setText(topicMessage);
qcon.start();
qsender.send(msg,
persistent ? DeliveryMode.PERSISTENT : DeliveryMode.NON_PERSISTENT,
priority,
ttl);
qsender.close();
qsession.close();
qcon.close();
}
%>