EJB调用 jndi获得session
2013-10-09 16:48
375 查看
要设置JDNI环境属性,可以通过以下几种方法实现:1)在InitialContext构造函数中设置;2)使用系统属性;3)使用资源文件。
方法一:在InitialContext构造函数中传入一个hashtable,代码为:
Hashtableenv=newHashtable();
env.put(Context.INITIAL_CONTEXT_FACTORY,"weblogic.jndi.WLInitialContextFactory");
env.put(Context.PROVIDER_URL,"t3://localhost:7001");
Contextctx=newInitialContext(env);
方法二:在启动Java应用程序的时候通过系统属性提供JNDI环境属性值,比如使用如下命令来设置JNDI环境属性:java-Djava.naming.factory.initial=weblogic.jndi.WLInitialContextFactory-Djava.naming.provider.url=t3://localhost:7001
方法三:使用资源文件使得设置于应用程序完全分离,便于维护。服务提供者和JNDI类库可以自动定位并使用这些资源文件,因此这种方法最灵活。我们可以编辑一个jndi.properties文件,内容为(对于weblogic):
java.naming.factory.initial=weblogic.jndi.WLInitialContextFactoryjava.naming.provider.url=t3://localhost:7001
然后保证其路径包含在环境变量中(比如放在编译后的classes文件夹下)以保证能够被正确定位。这样不用再在构造函数中提供环境属性就可以创建InitialContext对象,例如Contextctx=newInitialContext()。但是对于一些比较敏感的信息比如用户名密码等,则不易包含在这种资源文件中。这种自己编写的资源文件称为应用程序资源文件,另外还有一种资源文件由JNDI服务提供者提供,成为提供者资源文件,在这种资源文件中放置本身服务的特定属性,对于这类资源文件中设置的某个java.naming.factory属性将覆盖其他已经设置的对应的属性。客户机在连接某个JNDI命名服务时,首先如果所有环境属性都使用InitialContext构造函数传递,这些属性就用来初始化语境,其次JNDI环境会添加系统属性,最后添加被包含的资源文件中的环境属性。==================java.naming.factory.initial=org.jnp.interfaces.NamingContextFactory
java.naming.factory.url.pkgs=org.jboss.naming:org.jnp.interfacesweblogic部署ejb位置你保证你写在weblogic-ejb-jar.xml配置文件里的jndiname和你在client中调用的常量JNDI_NAME
方法一:在InitialContext构造函数中传入一个hashtable,代码为:
Hashtableenv=newHashtable();
env.put(Context.INITIAL_CONTEXT_FACTORY,"weblogic.jndi.WLInitialContextFactory");
env.put(Context.PROVIDER_URL,"t3://localhost:7001");
Contextctx=newInitialContext(env);
方法二:在启动Java应用程序的时候通过系统属性提供JNDI环境属性值,比如使用如下命令来设置JNDI环境属性:java-Djava.naming.factory.initial=weblogic.jndi.WLInitialContextFactory-Djava.naming.provider.url=t3://localhost:7001
方法三:使用资源文件使得设置于应用程序完全分离,便于维护。服务提供者和JNDI类库可以自动定位并使用这些资源文件,因此这种方法最灵活。我们可以编辑一个jndi.properties文件,内容为(对于weblogic):
java.naming.factory.initial=weblogic.jndi.WLInitialContextFactoryjava.naming.provider.url=t3://localhost:7001
然后保证其路径包含在环境变量中(比如放在编译后的classes文件夹下)以保证能够被正确定位。这样不用再在构造函数中提供环境属性就可以创建InitialContext对象,例如Contextctx=newInitialContext()。但是对于一些比较敏感的信息比如用户名密码等,则不易包含在这种资源文件中。这种自己编写的资源文件称为应用程序资源文件,另外还有一种资源文件由JNDI服务提供者提供,成为提供者资源文件,在这种资源文件中放置本身服务的特定属性,对于这类资源文件中设置的某个java.naming.factory属性将覆盖其他已经设置的对应的属性。客户机在连接某个JNDI命名服务时,首先如果所有环境属性都使用InitialContext构造函数传递,这些属性就用来初始化语境,其次JNDI环境会添加系统属性,最后添加被包含的资源文件中的环境属性。==================java.naming.factory.initial=org.jnp.interfaces.NamingContextFactory
java.naming.factory.url.pkgs=org.jboss.naming:org.jnp.interfacesweblogic部署ejb位置你保证你写在weblogic-ejb-jar.xml配置文件里的jndiname和你在client中调用的常量JNDI_NAME
相关文章推荐
- 用JNDI查找部署在JBOSS中的EJB对象并调用
- EJB客户端应用通过JNDI调用远程EJB的方法详解
- EJB 3.0 Session Bean JNDI名称的设置和获取(服务器Glass Fish)
- JBOSS 7创建客户端通过JNDI调用 EJB
- 通过JNDI远程调用EJB的资源代码
- flex 中通过 RO 调用一个java写的Bean的时候获得IP地址的方法 .也就是获得session 和 request的方法
- JBoss AS 7.1.1下,从远程客户端使用JNDI调用EJB
- ejb客户端的三种调用方法,以及InitialContext lookup后的jndi对象在服务重启后缓存失效的问题
- JNDI介绍及常用应用服务器的EJB调用
- JNDI介绍及常用应用服务器的EJB调用
- JBOSS AS 7 客户端使用JNDI远程调用EJB Bean (方式之一)
- JBoss7 创建客户端通过JNDI调用EJB
- JNDI介绍及常用应用服务器的EJB调用
- 如何实现JNDI远程调用SessionBean(EJB3)
- 其中获得UserTransaction资源的方式有三种,除了用EJB资源的方式注入以外,还有以下两种方式: (1) JNDI查找 Context context = new InitialContex
- JavaEE(8) - 本地和远程调用的有状态以及无状态Session EJB
- Weblogic 10g: How to find out JNDI name of EJB Session Bean
- flex 中通过 RO 调用一个java写的Bean的时候获得IP地址的方法 .也就是获得session 和 request的方法
- JNDI介绍及常用应用服务器的EJB调用
- EJB3远程调用JNDI不同服务器链接代码