EmailSenderServiceBean.java
// license-header java merge-point
//
// Generated by SessionBeanImpl.vsl in andromda-ejb3-cartridge on 08/06/2014 10:56:22.
// Modify as necessary. If deleted it will be regenerated.
//
package org.andromda.demo.ejb3.email;
import javax.jms.JMSException;
import javax.jms.Queue;
import javax.jms.QueueConnection;
import javax.jms.QueueSender;
import javax.jms.QueueSession;
import javax.jms.TextMessage;
/**
* @see EmailSenderServiceBase
*
* Remember to manually configure the local business interface this bean implements if originally you only
* defined the remote business interface. However, this change is automatically reflected in the ejb-jar.xml.
*
* Do not specify the javax.ejb.Stateless annotation
* Instead, the session bean is defined in the ejb-jar.xml descriptor.
*/
// Uncomment to enable webservices for EmailSenderServiceBean
// @javax.jws.WebService(endpointInterface = "org.andromda.demo.ejb3.email.EmailSenderServiceWSInterface", serviceName = "EmailSenderService")
public class EmailSenderServiceBean
extends EmailSenderServiceBase
implements EmailSenderServiceRemote
{
// --------------- Constructors ---------------
/**
* Default constructor extending base class default constructor
*/
public EmailSenderServiceBean()
{
super();
}
// -------- Business Methods Impl --------------
/**
* @see EmailSenderServiceBase#sendEmail(String, String, String, String)
*/
@Override
protected void handleSendEmail(String to, String from, String subject, String message)
throws Exception
{
QueueConnection connection = null;
QueueSession session = null;
QueueSender sender = null;
try
{
connection = queueFactory.createQueueConnection();
session = connection.createQueueSession(false, QueueSession.AUTO_ACKNOWLEDGE);
sender = session.createSender((Queue)emailSender);
TextMessage txtMessage = session.createTextMessage(message);
sender.send(txtMessage);
}
catch (JMSException e)
{
// TODO Auto-generated catch block
e.printStackTrace();
}
finally
{
if (sender != null) {
try
{
sender.close();
}
catch (JMSException e)
{
// TODO Auto-generated catch block
e.printStackTrace();
}
}
if (session != null) {
try
{
session.close();
}
catch (JMSException e)
{
// TODO Auto-generated catch block
e.printStackTrace();
}
}
if (connection != null) {
try
{
connection.close();
}
catch (JMSException e)
{
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
}
// -------- Lifecycle Callback Implementation --------------
}