我有一个gui (swing)客户端应用程序,我希望它同时连接到不同的javaee (gf4)。
坦率地说,我是javaee世界的新手,所以如果我错了,请纠正我。
据我所知,InitialContext是通过工厂为每个环境初始化的,最重要的是它被初始化一次,并作为客户端运行一次又一次地使用(工厂保存它)。这就是为什么第一个初始上下文被创建得如此之久,而下一次它被快速创建的原因。我在读了这之后就明白了。
问题一。如果我是对的,是否可以重新初始化某个上下文以重新初始化它?
问题二,。每当我们想要查找ejb时,创建初始化上下文是正常的做法吗?我是说
InitialContext ctx = new InitialContext(Test.getContextEnv(0));问题三,。当我们通过ProgrammaticLogin()登录以获得对ejb的访问时,如何匹配特定初始化上下文的ProgrammaticLogin()?我的意思是,如果我们有两个java ee服务器,我们如何用不同的登录/传递连接到每个服务器。
编辑:问题三在这里得到回答- 如何同时远程连接多个Glassfish 4+实例?
发布于 2014-05-26 22:46:51
问题一。如果我是对的,是否可以重新初始化某个上下文以重新初始化它?
一种更简单的方法就是创建一个具有不同环境属性的新InitialContext实例。
第二个问题。每当我们想要查找ejb时,创建初始化上下文是正常的做法吗?
没有必要,您可以使用同一个实例查找绑定到同一个上下文的ejb引用。请记住,InitialContext实例是不同步的,因此,如果多个线程同时使用同一个实例,这将是一个问题。
问题三。当我们通过ProgrammaticLogin()登录以获得对ejb的访问时,如何匹配特定初始化上下文的ProgrammaticLogin()?我的意思是,如果我们有两个java ee服务器,我们如何用不同的登录/传递连接到每个服务器。
我不确定我是否正确地理解了这个问题,但是如果您有几个InitialContext实例,每个实例都是用不同的环境属性初始化的,您可以编程地决定哪个InitialContext (因此,哪个服务器)是执行登录操作的合适实例。
https://stackoverflow.com/questions/23856207
复制相似问题