EJB的調用

EJB調用.htmlphp

EJB的調用

調用 EJB


  1. 配置客戶端上下文屬性
    在應用程序的 classpath 中建立一個「jboss-ejb-client.properties」 文件,咱們能夠把它放在應用程序的 ejbModule 文件夾下,該文件中包含如下屬性:
    remote.connectionprovider.create.options.org.xnio.Options.SSL_ENABLED=false
     remote.connections=default
     remote.connection.default.host=localhost
     remote.connection.default.port = 4447
     remote.connection.default.connect.options.org.xnio.Options.SASL_POLICY_NOANONYMOUS=false
     remote.connection.default.username =YOUR_JBOSS_COSOLE_USERNAME
     remote.connection.default.password =YOUR_JBOSS_COSOLE_PASSWORD
  2. 給 client 添加所需的 JAR 文件來運行客戶端程序
  3. 經過 InitialContext 得到 Context
    private static Context initialContext;
     private static final String PKG_INTERFACES = "org.jboss.ejb.client.naming";
     Properties properties = new Properties();
     properties.put(Context.URL_PKG_PREFIXES, PKG_INTERFACES);
     initialContext = new InitialContext(properties);
  4. 獲得 EJB 的jndiNamecss

    //appName 表示部署的 ear 文件的名稱部分(不包括 '.ear')
     String appName = "";
     //moduleName 表示該EJB jar 文件的名稱部分
     String moduleName = "JPAProject"; 
     /* Jboss 7 容許每一個部署有一個(可選)惟一的名字,若是咱們沒有明確該名字distinctName 爲 "" */
     String distinctName = "";
     //要調用的 EJB 的類名
     String beanName = "ProjectBean";
     //將 ProjectBean 的 remote 接口放在和 Client 中(包名和 EJB 端相同)
     String interfaceName = ProjectBeanRemote.class.getName();
    
     String jndiName = "ejb:" + appName + "/" + moduleName + "/" + 
       distinctName + "/" + beanName + "!" + interfaceName;
  5. 得到 EJB 遠程接口
    ProjectBeanRemote PB = (ProjectBeanRemote) context.lookup(jndiName);
  6. 經過接口 PB 調用方法

generated by haroopadhtml

相關文章
相關標籤/搜索