Ken*_*ncy 5 jsp servlets ejb java-ee ejb-3.0
大家好我是EJB3的新手,我知道如何在一台计算机上的Glassfish服务器上部署Session Bean(无状态或有状态).我的问题是:我如何在计算机A上部署会话bean并在计算机B上部署Servlet或JSP?它意味着计算机A具有会话Bean源,而计算机B具有Servlet或JSP源.如果使用1台计算机,我可以使用@EJB依赖注入查找会话Bean但在另一台计算机上如何才能为客户端代码执行此操作?1台计算机的示例
@EJB
private StatelessRemote remote ;
double Dosomething= remote.Dosomething();
out.println(Dosomething);
Run Code Online (Sandbox Code Playgroud)
使用远程接口创建"客户端jar",在客户端上部署
提供应用服务器客户端jar(在您的方案中不必要)
提供jndi.properties与以下内容(假设的GlassFish到GlassFish通信)类路径:
java.naming.factory.initial=com.sun.enterprise.naming.SerialInitContextFactory
java.naming.factory.url.pkgs=com.sun.enterprise.naming
java.naming.factory.state=com.sun.corba.ee.impl.presentation.rmi.JNDIStateFactoryImpl
org.omg.CORBA.ORBInitialHost=<hostname>
org.omg.CORBA.ORBInitialPort=3700
Run Code Online (Sandbox Code Playgroud)使用批注的mappedName属性@EJB来指定目标远程EJB组件的全局JNDI名称(如果jndi-namesun-ejb-jar.xml中没有设置 - 或者根本没有sun-ejb-jar.xml - 全局jndi-name默认为完全限定的Remote 3.0 Business接口类名称):
@EJB(mappedName="com.acme.app.StatelessRemote")
private StatelessRemote remote;
Run Code Online (Sandbox Code Playgroud)| 归档时间: |
|
| 查看次数: |
1685 次 |
| 最近记录: |