First set classpath.
a) BonusCalculator.java
package bonus;
import java.rmi.RemoteException;
import javax.ejb.EJBObject;
public interface BonusCalculator extends EJBObject{
public double calculateBonus(int basic,double multiplier ) throws RemoteException;
}
b) BonusCalculatorHome.java
package bonus;
import java.rmi.RemoteException;
import javax.ejb.CreateException;
import javax.ejb.EJBHome;
public interface BonusCalculatorHome extends EJBHome{
public BonusCalculator create()throws RemoteException,CreateException;
}
c) BonusCalculatorBean.java
package bonus;
import javax.ejb.*;
public class BonusCalculatorBean implements SessionBean{
public double calculateBonus(int basic,double multiplier ){
double calculatedBonus=basic*multiplier;
return calculatedBonus;
}
public void ejbCreate(){}
public void setSessionContext(SessionContext ctx){}
public void ejbActivate(){}
public void ejbPassivate(){}
public void ejbRemove(){}
}
d) client1.java
package bonus;
import java.rmi.*;
import javax.rmi.*;
import javax.ejb.*;
import javax.naming.*;
public class client1 {
public static void main(String arg[])throws RemoteException{
try
{
Context initial =new InitialContext();
Context myEnv = (Context) initial.lookup("java:comp/env");
Object objRef = myEnv.lookup("ejb/bonus1");
BonusCalculatorHome home = (BonusCalculatorHome)PortableRemoteObject.narrow(objRef,BonusCalculatorHome.class);
BonusCalculator bean=home.create();
System.out.println("Bonus = "+bean.calculateBonus(10000,0.10));
}
catch(Exception e){}
}
}
-----------------------------------------------o/p
bonus>appclient -client s2client.jar
*********************************************************
a) Start\Programs\Sun Microsystems\Application Server PE\Start Default Server
b) http://localhost:6060 <------Apppserver c) Start\Programs\Sun Microsystems\Application Server PE\Deploytool d) File -- new -- Application. Application file name Application display name e) File -- new -- EnterPrise Bean. Create New JAR Module in Application JAR Display Name Edit Contents f) File -- new -- Application Client. Create New AppClient Module in Application Appclient Display Name. Edit Contents Next <--- Main Class Callback Handler Class EJB Ref's <---- Add <---- Coded Name ----> from client program
EJB Typr
Interfaces
Home interfaces
Local/Remote interfaces
JNDI Name
g) Tools --- Deploy.
*********************************************************
2) Entity Bean.
a) BonusCalculator.java
package bonus;
import java.rmi.RemoteException;
import javax.ejb.EJBObject;
public interface BonusCalculator extends EJBObject{
public void addAmount(double amount ) throws RemoteException;
public double displayAmount() throws RemoteException;
}
b) BonusCalculatorHome.java
package bonus;
import java.rmi.RemoteException;
import javax.ejb.CreateException;
import javax.ejb.EJBHome;
public interface BonusCalculatorHome extends EJBHome{
public BonusCalculator create()throws RemoteException,CreateException;
}
c) BonusCalculatorBean.java
package bonus;
import java.rmi.RemoteException;
import javax.ejb.CreateException;
import javax.ejb.SessionBean;
import javax.ejb.SessionContext;
import javax.ejb.*;
public class BonusCalculatorBean implements SessionBean{
double amount;
public void ejbCreate() throws CreateException{
this.amount = 2000.0;
}
public void setSessionContext(SessionContext ctx){}
public void ejbActivate(){}
public void ejbPassivate(){}
public void ejbRemove(){}
public void addAmount(double amount ){
this.amount+=amount;
}
public double displayAmount(){
return amount;
}
}
d) client1.java
package bonus;
import java.rmi.*;
import javax.rmi.*;
import javax.ejb.*;
import javax.naming.*;
public class client1 {
public static void main(String arg[])throws RemoteException{
try
{
Context initial =new InitialContext();
System.out.println("1");
Context myEnv = (Context) initial.lookup("java:comp/env");
System.out.println("2");
Object objRef = myEnv.lookup("ejb/bonus2");
System.out.println("3");
BonusCalculatorHome home = (BonusCalculatorHome)PortableRemoteObject.narrow(objRef,BonusCalculatorHome.class);
System.out.println("4");
BonusCalculator bean=home.create();
System.out.println("5");
double d = bean.displayAmount();
System.out.println("6");
System.out.println("Current Amount = "+d);
System.out.println("Adding amount");
bean.addAmount(1500.00);
System.out.println("Amount after Addition = "+bean.displayAmount());
}
catch(Exception e){}
}
}
-----------------------------------------------o/p
bonus>appclient -client a1client.jar
------------------------------------
*********************************************************
No comments:
Post a Comment