Hello.java //远程接口
import java.rmi.RemoteException;
import javax.ejb.EJBObject;
public interface Hello extends EJBObject
{
public String getHello() throws RemoteException;
}
HelloHome.java //Home接口
import java.rmi.RemoteException;
import javax.ejb.*;
public interface HelloHome extends EJBHome
{
public Hello create() throws RemoteException, CreateException;
}
HelloBean.java //Bean类
import javax.ejb.*;
public class HelloBean implements SessionBean
{
public void ejbCreate() {}
public void ejbRemove() {}
public void ejbActivate() {}
public void ejbPassivate() {}
public void setSessionContext(SessionContext ctx) {}
public String getHello()
{
return new String("Hello, EJB");
}
}
以上三个文件都在Hello目录下,编译后产生三个class文件,在Hello目录下建目录META-INF(注意大小写),在META-INF目录下建ejb-jar.xml和weblogic-ejb-jar.xml两个文件
ejb-jar.xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE ejb-jar PUBLIC "-//Sun Microsystems, Inc.//DTD Enterprise JavaBeans 2.0//EN" "http://java.sun.com/dtd/ejb-jar_2_0.dtd">
<ejb-jar>
<description>
This is Hello EJB example
</description>
<display-name>HelloBean</display-name>
<enterprise-beans>
<session>
<display-name>Hello</display-name>
<ejb-name>Hello</ejb-name>
<home>HelloHome</home>
<remote>Hello</remote>
<ejb-class>HelloBean</ejb-class>
<session-type>Stateless</session-type>
<transaction-type>Container</transaction-type>
</session>
</enterprise-beans>
</ejb-jar>