d:\openejb-3.0.0-SNAPSHOT\bin\openejb start
Getting Started
The following instructions are written using Eclipse 3.2. We
will refer to the install location of OpenEJB as OPENEJB_HOME
Here are some basic steps you need to perform to get started with OpenEJB 1. Download and install OpenEJB 1. Setup your development environment 1. Write an EJB 1. Write an EJB client 1. Start the server 1. Deploy the EJB 1. Run the client 1. Stop the server
1. Download and Install OpenEJB
Follow theseĀ instructions
2. Setup your development environment
Eclipse
-
Open eclipse and create a new java project. Name it EJBProject
-
Add the following jars to the build path of your project — OPENEJB_HOME/lib/geronimo-ejb_3.0_spec-1.0.jar
-
Now create another project named EJBClient. This is where we will write a test client
-
Add the following jars to the build path of this project — OPENEJB_HOME/lib/openejb-client-3.0.0-SNAPSHOT.jar
-
Add the EJBProject to the classpath of the EJBClient project
3. Start the Server
Open the command prompt and run the following command:
You will get the following message on the console:
D:\openejb-3.0.0-SNAPSHOT>bin\openejb start
Apache OpenEJB 3.0.0-SNAPSHOT build: 20070830-07:53
http://tomee.apache.org/
OpenEJB ready.
[OPENEJB:init]
OpenEJB Remote Server
** Starting Services **
NAME IP PORT
httpejbd 0.0.0.0 4204
admin thread 0.0.0.0 4200
ejbd 0.0.0.0 4201
hsql 0.0.0.0 9001
telnet 0.0.0.0 4202
-------
Ready!
4. Write an EJB
In the EJB project create a new interface named Greeting
package com.myejbs;
import javax.ejb.Remote;
@Remote
public interface Greeting {
public String greet();
}
Now create a new class named GreetingBean which implements the above interface (shown below)
package com.myejbs;
import javax.ejb.Stateless;
@Stateless
public class GreetingBean implements Greeting {
public String greet() {
return "My First Remote Stateless Session Bean";
}
}
5. Deploy the EJB
-
Export the EJBProject as a jar file. Name it greeting.jar and put it in the OPENEJB_HOME/apps directory.
-
Open the command prompt and type in the following command:
d:-3.0.0-SNAPSHOT > bindeploy apps.jar
This should give you the following output:
D:\openejb-3.0.0-SNAPSHOT>bin\openejb deploy apps\greeting.jar
Application deployed successfully at \{0\}
App(id=D:\openejb-3.0.0-SNAPSHOT\apps\greeting.jar)
EjbJar(id=greeting.jar, path=D:\openejb-3.0.0-SNAPSHOT\apps\greeting.jar)
Ejb(ejb-name=GreetingBean, id=GreetingBean)
Jndi(name=GreetingBeanRemote)
\{color:#330000}\{}Notice the Jndi(name=GreetingBeanRemote) information. Keep this handy as this is the JNDI name of the bean which the client will use for lookup\{}{color}
6. Write the Client
In the EJBClient project, create a class named Client (shown below)
package com.myclient;
import com.myejbs.Greeting;
import javax.naming.InitialContext;
import java.util.Properties;
public class Client {
public static void main(String[] args) {
try {
Properties p = new Properties();
p.put("java.naming.factory.initial", "org.openejb.client.RemoteInitialContextFactory");
p.put("java.naming.provider.url", "ejbd://127.0.0.1:4201");
InitialContext ctx = new InitialContext(p);
Greeting greeter = (Greeting) ctx.lookup("GreetingBeanRemote");
String message = greeter.greet();
System.out.println(message);
} catch (Exception e) {
e.printStackTrace();
}
}
}
7. Run the Client
Open Client.java in eclipse and run it as a java application. You should see the following message in the console view:
My First Remote Stateless Session Bean
8. Stop the server
There are two ways to stop the server: 1. You can press Ctrl+c on the command prompt to stop the server 1. On the command prompt type in the following command:
D:\openejb-3.0.0-SNAPSHOT>bin\openejb stop