Your Browser is not longer supported

Please use Google Chrome, Mozilla Firefox or Microsoft Edge to view the page correctly
Loading...

{{viewport.spaceProperty.prod}}

Code samples for inbound communication

This section contains the following code samples:

Example 17 OLTP message-driven bean for dialog communication

package net.fsc.jca.BeanConnect.oltpmdb;
import javax.ejb.EJBException;
import javax.ejb.MessageDrivenBean;
import javax.ejb.MessageDrivenContext;
import java.util.Iterator;
import net.fsc.jca.communication.*;

public class SampleDialogOltpMdbBean
implements MessageDrivenBean, OltpMessageListener {

public void ejbCreate() 
	throws EJBException {
		// @TODO: add code 
    }

public void setMessageDrivenContext(MessageDrivenContext ctx)
	    throws EJBException {
		// @TODO: add code
	}

public void ejbRemove()
		throws EJBException {
		// @TODO: add code
	}

public OltpMessage onMessage(OltpMessage inMsg) {
	String inMsgTxt;
	OltpMessageContext oltpMsgCtx = inMsg.getMessageContext();

	// read request
	try {
	  if (inMsg.countMessageParts() > 0) {
	  OltpMessagePart inMsgPart;
	  Iterator it<OltpMessagePart> = 
                            inMsg.getMessageParts();

	  for ( ; it.hasNext(); ) {
		inMsgPart = it.next();
		inMsgTxt  = inMsgPart.getText();
		// @TODO: process message part
	   }

		// @TODO: process request
	  }
	 }
	 catch (Exception ex) {
		// @TODO: handle exception
	 }

	 // setup reply
	 OltpMessage outMsg = oltpMsgCtx.createMessage();
	 OltpMessagePart outMsgPart = 
                           outMsg.createMessagePart();
	 try {
		outMsgPart.
               setText("Reply from SampleDialogOltpMdbBean");
	 }
	 catch (OltpMessageException ex) {
		// @TODO: add exception handling
	 }
	 outMsg.addMessagePart(outMsgPart);

	 return (outMsg);
   }
}

Example 18 OLTP message-driven bean for asynchronous communication

package net.fsc.jca.BeanConnect.oltpmdb;
import javax.ejb.EJBException;
import javax.ejb.MessageDrivenBean;
import javax.ejb.MessageDrivenContext;
import java.util.Iterator;
import net.fsc.jca.communication.*;

public class SampleAsynOltpMdbBean
implements MessageDrivenBean,AsyncOltpMessageListener {
public void ejbCreate() 
		throws EJBException {
		// @TODO: add code
	}      
     
public void setMessageDrivenContext(MessageDrivenContext ctx) 
		throws EJBException {
		// @TODO: add code
    } 

public void ejbRemove() 
		throws EJBException {
		// @TODO: add code
	}  

public void onMessage(OltpMessage inMsg) {
	String inMsgTxt;
	OltpMessageContext oltpMsgCtx = 
                           inMsg.getMessageContext();

	// read request
	try { 
		if (inMsg.countMessageParts() > 0) {
	      OltpMessagePart inMsgPart;
		  Iterator it<OltpMessagePart> = 
                                 inMsg.getMessageParts(); 

		  for ( ; it.hasNext(); ) {
			inMsgPart = it.next();
			inMsgTxt  = inMsgPart.getText();
			// @TODO: process message part
		  } 

		  // @TODO: process request
		}
	}
	catch (Exception ex) {
		// @TODO: handle exception
	} 

	return;
  }
}

Example 19 OLTP message-driven bean (CCI)

package net.fsc.jca.BeanConnect.oltpmdb; 

import java.util.Iterator; 

import javax.ejb.EJBException;
import javax.ejb.MessageDrivenBean;
import javax.ejb.MessageDrivenContext;
import javax.resource.cci.MessageListener;
import javax.resource.cci.Record; 

import net.fsc.jca.communication.OltpMessage;
import net.fsc.jca.communication.OltpMessageContext;
import net.fsc.jca.communication.OltpMessageException;
import net.fsc.jca.communication.OltpMessagePart;
import net.fsc.jca.communication.cci.BCRecord; 

public class SampleCciOltpMdbBean
implements MessageDrivenBean, MessageListener { 
public Record onMessage(Record record) { 

	String inMsgTxt;
	OltpMessage inMsg = ((BCRecord)record).getOltpMessage();
	OltpMessageContext oltpMsgCtx = inMsg.getMessageContext(); 

	// read request
	try {
	  if (inMsg.countMessageParts() > 0) {
		OltpMessagePart inMsgPart;
		Iterator it<OltpMessagePart> = inMsg.getMessageParts(); 

		 for ( ; it.hasNext(); ) {
			inMsgPart = it.next();
			inMgTxt  = inMsgPart.getText();
			// @TODO: process message part
		  } 

			// @TODO: process request 
		 }
		 catch (Exception ex) {
			// @TODO: handle exception
		 } 

		 // setup reply 

		 OltpMessage outMsg = oltpMsgCtx.createMessage();
		 OltpMessagePart outMsgPart = outMsg.createMessagePart();
		 try {
			outMsgPart.setText("Reply from SampleCciOltpMdbBean");
		 }
		 catch (OltpMessageException ex) {
			// @TODO: add exception handling
		 }
		 outMsg.addMessagePart(outMsgPart); 

		 ((BCRecord)record).setOltpMessage(outMsg);
		 return record;
	}
	/**
	* Method ejbCreate() as required by EJB spec.
	*/ 
	public void ejbCreate() 
				throws EJBException {
		// @TODO: add code
	} 

	/**
	* Method setMessageDrivenContext() as required by interface 
	* javax.ejb.MessageDrivenBean.
	* javax.ejb.MessageDrivenBean#setMessageDrivenContext(
	*MessageDrivenContext ctx)
	*/
	public void setMessageDrivenContext(MessageDrivenContext ctx) 
		throws EJBException {
		// @TODO: add code
	} 

	/**
	* Method ejbRemove() as required by interface 
	* javax.ejb.MessageDrivenBean.
	* 
	* @see javax.ejb.MessageDrivenBean#ejbRemove()
	*/ 
	public void ejbRemove() 
				throws EJBException {
		// @TODO: add code
	}
}