Skip to content

Instantly share code, notes, and snippets.

@dagvadorj
Created December 23, 2012 09:19
Show Gist options
  • Save dagvadorj/4362705 to your computer and use it in GitHub Desktop.
Save dagvadorj/4362705 to your computer and use it in GitHub Desktop.
A backing bean sending mailing request to a JMS queue
package org.ubdynamics.testapp.web.backing;
import java.io.Serializable;
import java.util.ArrayList;
import java.util.List;
import javax.annotation.PostConstruct;
import javax.annotation.Resource;
import javax.ejb.EJB;
import javax.faces.bean.ManagedBean;
import javax.faces.bean.ViewScoped;
import javax.jms.JMSException;
import javax.jms.ObjectMessage;
import javax.jms.Queue;
import javax.jms.QueueConnection;
import javax.jms.QueueConnectionFactory;
import javax.jms.QueueSender;
import javax.jms.QueueSession;
import javax.jms.Session;
import org.ubdynamics.testapp.ejb.type.MailRequest;
@ManagedBean(name = "emailingBacking")
@ViewScoped
public class EmailingBacking implements Serializable {
private static final long serialVersionUID = 1L;
@EJB
private GeneralService generalService;
@Resource(mappedName = "jms/TestQ")
private Queue queue;
@Resource(mappedName = "jms/TestCF")
private QueueConnectionFactory queueConnectionFactory;
@PostConstruct
public void init() {
}
public void sendEmails() {
QueueConnection queueConnection;
QueueSession queueSession;
try {
queueConnection = queueConnectionFactory.createQueueConnection();
queueConnection.start();
queueSession = queueConnection.createQueueSession(false,
Session.AUTO_ACKNOWLEDGE);
} catch (JMSException e) {
System.out.println(e);
return;
}
MailRequest mailRequest = ...;
try {
QueueSender sender = queueSession.createSender(queue);
ObjectMessage msg = queueSession
.createObjectMessage(payrollMailingRequest);
sender.send(msg);
} catch (JMSException e) {
System.out.println(e);
continue;
}
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment