Folgende Bestandteile einer zustandslosen Session-Bean werden entwickelt:
Das Remote-Interface definiert Methoden, die Clients zur Verfügung gestellt werden.
import
java.rmi.RemoteException;
import
java.lang.ArithmeticException;
import javax.ejb.EJBObject;
public
interface Calculator
extends
EJBObject
{
public int add(int a, int b);
public int sub(int a, int b);
public int mul(int a, int b);
public double div(int a, int b) throws
ArithmeticException;
}
import
javax.ejb.EJBHome;
import javax.ejb.CreateException;
import
java.rmi.RemoteException;
public
interface
CalculatorHome extends EJBHome
{
// erzeugt eine
Bean
public Calculator create()
throws
CreateException,
RemoteException;
}
import javax.ejb.SessionBean;
import javax.ejb.CreateException;
import javax.ejb.SessionContext;
import java.rmi.RemoteException;
public class CalculatorBean implements SessionBean
{
// Die Methoden, die einem
Client zur
// Verfügung gestellt werden
public int
add(int a, int b)
{
return a + b;
}
public int
sub(int a, int b)
{
return a - b;
}
public int
mul(int a, int b)
{
return a * b;
}
public
double div(int a, int b) throws
ArithmeticException
{
return a / b;
}
// notwendige Methoden, die den
Lebenszyklus
// einer Bean betreffen
public void
ejbCreate()
{
System.out.println("ejbCreate()");
}
public void
ejbRemove()
{
System.out.println("ejbRemove()");
}
public void
ejbActivate()
{
System.out.println("ejbActivate()");
}
public void
ejbPassivate()
{
System.out.println("ejbPassivate()");
}
public void
setSessionContext(SessionContext context)
{
System.out.println("setSessionContext()");
}
}