| = Getting Started |
| :index-group: OpenEJB Standalone Server |
| :jbake-date: 2018-12-05 |
| :jbake-type: page |
| :jbake-status: published |
| |
| == 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 http://cwiki.apache.org/confluence/display/OPENEJB/Quickstart[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: |
| |
| [source,java] |
| ---- |
| d:\openejb-3.0.0-SNAPSHOT\bin\openejb start |
| ---- |
| |
| You will get the following message on the console: |
| |
| [source,java] |
| ---- |
| 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 |
| |
| [source,java] |
| ---- |
| 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) |
| |
| [source,java] |
| ---- |
| 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 |
| |
| [arabic] |
| . 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: |
| |
| [source,java] |
| ---- |
| 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) |
| |
| [source,java] |
| ---- |
| 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: |
| |
| [source,properties] |
| ---- |
| 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: |
| |
| [source,java] |
| ---- |
| D:\openejb-3.0.0-SNAPSHOT>bin\openejb stop |
| ---- |