[jboss-user] [Installation, Configuration & Deployment] - Re: javax.resource.spi.SecurityException
nsv
do-not-reply at jboss.com
Mon Dec 4 05:44:44 EST 2006
Below is the java file AlarmAction.java
i have also added the
public class AlarmAction implements Action {
| private static final String JMS_ALARM_CFG = "AlarmMgrRecvQueue.xml";
| private static Category logger = Category.getInstance(AlarmAction.class.getName());
| private static Sender eventSender;
| private static boolean initialized = false;
|
| private HashMap map = null;
|
| public AlarmAction(String cid) {
| map = new HashMap();
| map.put("CID", cid);
| if (!initialized) {
| try {
| init();
| initialized = true;
| }
| catch (Exception e) {
| // ignore - it'll be detected later in act()
| logger.error(Utility.getStackTrace(e));
| }
| }
| }
|
| public void setExpiration(Date d) {
| map.put("TIMESTAMP", d);
| }
|
| public void setUserId(String uid) {
| map.put("USERID", uid);
| }
|
| public void setEventObject(Object o) {
| String key = "EventObject";
| if (o instanceof WFWorkItem) {
| WFWorkItem wfwi = (WFWorkItem)o;
| String id = (new Long(wfwi.getId())).toString();
| WFWorkItemRef wfwir = new WFWorkItemRef(id);
| map.put(key, wfwir);
| }
| else {
| map.put(key, o);
| }
| }
|
| public void addProperty(String key, Object value) {
| if (key != null)
| map.put(key, value);
| }
|
| private synchronized void init() throws Exception {
| logger.debug("In init()...");
| Properties globalProps = Utility.getTLProps(true);
| String tl_dom = globalProps.getProperty("tl_domain");
| eventSender = new Sender();
| if (eventSender.init(tl_dom + "/" + JMS_ALARM_CFG) == false)
| throw new TLException("Could not initialize Sender for: " + JMS_ALARM_CFG);
| eventSender.start();
| }
|
| /**
| *
| * This evaluates every value in the stored HashMap, creates an ObjectMessage of type MSG_ADD_ALARM,
| * and passes it to the AlarmMnager's queue.
| *
| */
| public void act() throws REException {
| try {
| if (!initialized)
| throw new REException("Not initialized.");
|
| if (map.get("TIMESTAMP") == null || map.get("EventObject") == null)
| throw new REException("Properties not set properly");
|
| ObjectMessage omsg = null;
|
| synchronized (eventSender) {
| omsg = eventSender.getObjectMessage();
| omsg.setStringProperty(AlarmManager.MSGTYPE, AlarmManager.MSG_ADD_ALARM);
| omsg.setObject(map);
| eventSender.sendObjectMessage(omsg);
| }
| }
| catch (Exception e) {
| logger.error(Utility.getStackTrace(e));
| throw new REException(e.getMessage());
| }
| }
| }
|
below is the AlarmMgrRecvQueue.xml which is used in the above java file
<!DOCTYPE JMSConfig SYSTEM "JMSConfig.dtd">
|
| <JMSConfig>
| <Destination
| destType="queue"
| providerURL="jnp://localhost:3099"
| connFactoryJNDIName="java:AlarmMgrConnectionFactory"
| destJNDIName="queue/AlarmMgrRecvQueue"
| timeToLive="1000000"
| receiveTimeout="1000"
|
| />
| </JMSConfig>
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=3990930#3990930
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=3990930
More information about the jboss-user
mailing list