»óÅÂÀ¯Áö ¼¼¼Ç ºó
¿öÅ©½ºÆäÀ̽º¸¦ C:/ejb ·Î ¼±ÅÃÇϰí ÀÌŬ¸³½º¸¦ ½ÇÇàÇÕ´Ï´Ù.
sum ¶ó´Â »õ·Î¿î ÇÁ·ÎÁ§Æ®¸¦ »ý¼ºÇÕ´Ï´Ù.
sum ÇÁ·ÎÁ§Æ®¿¡ weblogic.jar ¸¦ Add External JARs.. ¹öưÀ» ÀÌ¿ëÇÏ¿© Ãß°¡ÇÕ´Ï´Ù.
1. ¿ø°Ý ÀÎÅÍÆäÀ̽º ÀÛ¼º
Sum.java
package kr.co.hanbitbook.ejb.examples.sum;
import java.rmi.RemoteException;
import javax.ejb.EJBObject;
public interface Sum extends EJBObject {
public void setOp1(int op1) throws RemoteException;
public void setOp2(int op2) throws RemoteException;
public int getSum() throws RemoteException;
}
2. Ȩ ÀÎÅÍÆäÀ̽º ÀÛ¼º
SumHome.java
package kr.co.hanbitbook.ejb.examples.sum;
import java.rmi.RemoteException;
import javax.ejb.CreateException;
import javax.ejb.EJBHome;
public interface SumHome extends EJBHome {
public Sum create(int op1, int op2)
throws RemoteException,CreateException;
}
3. ºó Ŭ·¡½º ÀÛ¼º

SumEJB.java
package kr.co.hanbitbook.ejb.examples.sum;
import java.rmi.RemoteException;
import javax.ejb.EJBException;
import javax.ejb.SessionBean;
import javax.ejb.SessionContext;
public class SumEJB implements SessionBean {
public void ejbActivate() throws EJBException, RemoteException {
// TODO Auto-generated method stub
}
public void ejbPassivate() throws EJBException, RemoteException {
// TODO Auto-generated method stub
}
public void ejbRemove() throws EJBException, RemoteException {
// TODO Auto-generated method stub
}
public void setSessionContext(SessionContext arg0) throws EJBException,
RemoteException {
// TODO Auto-generated method stub
}
}
SumEJB.java
package kr.co.hanbitbook.ejb.examples.sum;
import java.rmi.RemoteException;
import javax.ejb.EJBException;
import javax.ejb.SessionBean;
import javax.ejb.SessionContext;
public class SumEJB implements SessionBean {
private int op1;
private int op2;
public SumEJB() {}
public void ejbCreate(int op1, int op2) {
this.op1 = op1;
this.op2 = op2;
}
public void setOp1(int op1) {
this.op1 = op1;
}
public void setOp2(int op2) {
this.op2 = op2;
}
public int getSum() {
return op1 + op2;
}
public void ejbActivate() throws EJBException, RemoteException {
// TODO Auto-generated method stub
}
public void ejbPassivate() throws EJBException, RemoteException {
// TODO Auto-generated method stub
}
public void ejbRemove() throws EJBException, RemoteException {
// TODO Auto-generated method stub
}
public void setSessionContext(SessionContext arg0) throws EJBException,
RemoteException {
// TODO Auto-generated method stub
}
}
¹èÄ¡ µð½ºÅ©¸³ÅÍ »ý¼º(À¥·ÎÁ÷ ºô´õ ÀÌ¿ë) ¹× ¹èÄ¡
À¥·ÎÁ÷ ºô´õ¸¦ ½ÇÇàÇÑ ÈÄ, Open ¹öưÀ» Ŭ¸¯ÇÏ¿© C:\ejb\sum\bin ¸¦ ¼±ÅÃÇÏ¿© ¹èÄ¡ µð½ºÅ©¸³Å͸¦ ¸¸µé±â ½ÃÀÛÇÕ´Ï´Ù.


Save ¹öưÀ» Ŭ¸¯ÇÕ´Ï´Ù.
File - Archive... ¸¦ ¼±ÅÃÇÏ¿© sum.jar ¶õ À̸§À¸·Î EJB jar ÆÄÀÏÀ» »ý¼ºÇÕ´Ï´Ù.
À¥·ÎÁ÷ Äֿܼ¡¼ sum.jar ÆÄÀÏÀ» ¹èÄ¡ÇÕ´Ï´Ù.
Å×½ºÆ®
¿öÅ© ½ºÆäÀ̽º¸¦ C:\ejb ·Î ÇØ¼ ÀÌŬ¸³½º¸¦ ½ÇÇà ÈÄ, sum_client ¶õ »õ·Î¿î ÇÁ·ÎÁ§Æ®¸¦ »ý¼ºÇÕ´Ï´Ù.
sum_client ÇÁ·ÎÁ§Æ®¿¡ weblogic.jar ¸¦ Add External JARs.. ¹öưÀ» ÀÌ¿ëÇÏ¿© Ãß°¡ÇÕ´Ï´Ù.
sum_client ÇÁ·ÎÁ§Æ®¿¡ sum.jar ¸¦ Add External JARs.. ¹öưÀ» ÀÌ¿ëÇÏ¿© Ãß°¡ÇÕ´Ï´Ù.
¾Æ·¡ ÆÄÀÏÀ» ÀÛ¼ºÇÏ¿© ½ÇÇàÇÕ´Ï´Ù.
SumTestClient.java
package test;
import java.util.Properties;
import javax.naming.Context;
import javax.naming.InitialContext;
import javax.rmi.PortableRemoteObject;
import kr.co.hanbitbook.ejb.examples.sum.*;
public class SumTestClient {
public static void main(String[] args) {
Context ctx = null;
try {
Properties p = new Properties();
p.put(Context.INITIAL_CONTEXT_FACTORY,
"weblogic.jndi.WLInitialContextFactory");
p.put(Context.PROVIDER_URL, "t3://localhost:7001");
ctx = new InitialContext(p);
Object h = ctx.lookup("SumEJB");
SumHome home = (SumHome)PortableRemoteObject.narrow(h, SumHome.class);
Sum sum = home.create(5, 10);
System.out.println("5 + 10 = " + sum.getSum());
sum.setOp1(100);
sum.setOp2(200);
System.out.println("100 + 200 = " + sum.getSum());
} catch (Exception e) {
System.out.println(e.toString());
}
}
}
Âü°í ¹®¼
¾Ë±â½±°Ô Ç®¾î ¾´ À¥·ÎÁ÷°ú EJB 7Àå -ÇѺû¹Ìµð¾î,±è¼º¹Ú Àú-
¿¹Á¦¿¡ ¾²¿´´ø jar,war,ear ÆÄÀÏ (¹èÄ¡½Ã ÀÍ¼Ê¼Ç ¹ß»ýÇÒ ¶§ Âü°í¿ë)
- ´ÙÀ½ : ¼¼¼Ç ºóÀ» ÀÌ¿ëÇÑ °Ô½ÃÆÇ
- ÀÌÀü : ¹«»óÅ ¼¼¼Ç ºó ¿¹Á¦
