这篇文章简单实现在Java EE7 下实现远程客户端访问Java EE服务器EJB的功能准备工作: JDK9(jdk-8u92)netbeans-8.1Java ee sdk (java_ee_sdk-7u2)全部安装完成netbeans启用Java SE 和 Java EE ...
这篇文章简单实现在Java EE7 下实现远程客户端访问Java EE服务器EJB的功能
准备工作:
- JDK9(jdk-8u92)
- netbeans-8.1
- Java ee sdk (java_ee_sdk-7u2)
- 全部安装完成
- netbeans启用Java SE 和 Java EE相关插件
创建Enterprise Application
private void jButton1MouseClicked(java.awt.event.MouseEvent evt) { try { Date d = new Date(); Hashtable env = new Hashtable(); env.put("org.omg.CORBA.ORBInitialHost", "localhost"); env.put("org.omg.CORBA.ORBInitialPort", "3700"); InitialContext context = new InitialContext(env); Logger.getLogger(LoginJFrame.class.getName()).log(Level.INFO,String.valueOf(new Date().getTime()-d.getTime())); /** * 1."cc.test.ejb.CCSessionBeanRemote" * 2.CCSessionBeanRemote.class.getName() * 3.java:global/CCEnterpriseApplication/CCSessionBean */ CCSessionBeanRemote ccSession = (CCSessionBeanRemote)context.lookup(CCSessionBeanRemote.class.getName()); Logger.getLogger(LoginJFrame.class.getName()).log(Level.INFO,String.valueOf(new Date().getTime()-d.getTime())); this.messageLabel.setText(ccSession.checkConn()); Logger.getLogger(LoginJFrame.class.getName()).log(Level.INFO,String.valueOf(new Date().getTime()-d.getTime())); CCSessionBeanRemote ccSession2 = (CCSessionBeanRemote)context.lookup(CCSessionBeanRemote.class.getName()); Logger.getLogger(LoginJFrame.class.getName()).log(Level.INFO,String.valueOf(new Date().getTime()-d.getTime())); } catch (NamingException ex) { Logger.getLogger(LoginJFrame.class.getName()).log(Level.SEVERE, null, ex); } }
7.添加库,在CCClient项目中库添加CCLibrary项目,添加gf-client.
jar 文件(在 java_ee_sdk-7u2\glassfish4\glassfish\lib\) ,这篇实例客户端和服务器端在同一台机子上。 最后说明下EJB对象名称问题,在GlassFish文档中使用的是第一种,可以正常使用;第二种写法是我个人推荐写法,值和第一种是一样的,在写代码的时候更方便;第三种是Java EE 7Tutorial第32.4Accessing Enterprise Beans介绍使用的方法,在此实例中没有调用成功,使用GlassFish不推荐。
原标题:Java EE 远程客户的访问EJB实现实例(GlassFish)
关键词:JAVA
*特别声明:以上内容来自于网络收集,著作权属原作者所有,如有侵权,请联系我们:
admin#shaoqun.com
(#换成@)。