| = Remote Server | |
| :index-group: OpenEJB Standalone Server | |
| :jbake-date: 2018-12-05 | |
| :jbake-type: page | |
| :jbake-status: published | |
| == Accessing EJBs Remotely | |
| When using OpenEJB as a stand-alone server you can connect across a | |
| network and access EJBs from a remote client. The client code for | |
| accessing an EJB's Remote Interface is the same, however to actually | |
| connect across a network to the server, you need to specify different | |
| JNDI parameters. | |
| = Short version | |
| Using OpenEJB's default remote server implementation is pretty straight | |
| forward. You simply need to: | |
| [arabic] | |
| . Deploy your bean. | |
| . Start the server on the IP and Port you want, 25.14.3.92 and 4201 for | |
| example. | |
| . Use that information in your client to create an initial context | |
| . Add the right jars to your client's classpath | |
| So, here it is in short. | |
| Deploy your bean with the Deploy Tool: | |
| [source,java] | |
| ---- | |
| c:\openejb> openejb.bat deploy beans\myBean.jar | |
| ---- | |
| See the link:deploy-tool.html[Deploy Tool] | |
| documentation for more details on deploying beans. | |
| Start the server: | |
| [source,java] | |
| ---- | |
| c:\openejb> openejb.bat start -h 25.14.3.92 -p 4201 | |
| ---- | |
| See the Remote Server command-line guide for more details on starting | |
| the Remote Server. | |
| Create an initial context in your client as such: | |
| [source,java] | |
| ---- | |
| Properties p = new Properties(); | |
| p.put("java.naming.factory.initial", "org.apache.openejb.client.RemoteInitialContextFactory"); | |
| p.put("java.naming.provider.url", "ejbd://25.14.3.92:4201"); | |
| p.put("java.naming.security.principal", "myuser"); | |
| p.put("java.naming.security.credentials", "mypass"); | |
| InitialContext ctx = new InitialContext(p); | |
| ---- | |
| If you don't have any EJBs or clients to run, try the ubiquitous | |
| link:hello-world.html[Hello World] example. Add the following | |
| library to your clients classpath: | |
| * openejb-client-x.x.x.jar | |
| * jakartaee-api-x.x.jar | |
| Both can be found in the lib directory where you installed OpenEJB or in | |
| Maven repositories. |