Glassfish V3.x 和远程独立客户端

Posted

技术标签:

【中文标题】Glassfish V3.x 和远程独立客户端【英文标题】:Glassfish V3.x and remote standalone client 【发布时间】:2011-05-17 16:55:09 【问题描述】:

作为独立客户端连接到 ActiveMQ 绝对没有问题。您唯一需要做的就是添加 activemq-all-5.4.1.jar 就可以了...

...
prop.put(Context.SECURITY_AUTHENTICATION , "system");
prop.put(Context.SECURITY_CREDENTIALS,"manager");
prop.put(Context.INITIAL_CONTEXT_FACTORY,"org.apache.activemq.jndi.ActiveMQInitialContextFactory");
prop.put(Context.PROVIDER_URL,"tcp://localhost:61616");
prop.put("connectionFactoryNames", "TopicCF");
prop.put("topic.topic1", "topic1");

InitialContext ctx = new InitialContext(prop);
...

现在您想要连接到 Glassfish V3.x,并且似乎不可能获得正确的库和类来进行连接。虽然在 Glassfish V2.x 中仍然有可能,但我还没有成功地为 Glassfish 运行上述代码!

...
Properties properties = new Properties();
properties.put(Context.INITIAL_CONTEXT_FACTORY, "com.sun.appserv.naming.S1ASCtxFactory");
properties.put(Context.PROVIDER_URL, "iiop://localhost:3700");
InitialContext context = new InitialContext(properties)
...

有人对此有答案吗?不,我不想部署企业应用程序客户端只是为了从 Glassfish 队列中读取。这里有类似的主题,但没有任何指南。

感谢任何提示

斯文

【问题讨论】:

另一个线程:***.com/questions/3646302/… 和另一个***.com/questions/2478958/… 你有没有得到这个排序,我遇到了同样的问题.... 【参考方案1】:

你可以去看看我遇到相同问题时找到的解决方案:With which maven dependencies can i create a standalone JMS client for Glassfish ?

【讨论】:

【参考方案2】:

连接到 Glassfish V3 时,无需向 InitialContext 构造函数提供任何属性。您可以简单地使用无参数构造函数。要指定服务器名称和端口,请分别在 JVM 上设置 -Dorg.omg.CORBA.ORBInitialHost-Dorg.omg.CORBA.ORBInitialPort 属性。

至于库,您只需要包含 gf-client.jar 文件即可。它可以在 $GLASSFISH_HOME/lib 中找到。此 jar 文件将自动包含所需的任何其他库。

更多信息,请参阅http://glassfish.java.net/javaee5/ejb/EJB_FAQ.html#StandaloneRemoteEJB。尽管该文档涉及在独立客户端中使用 EJB,但同样的解决方案也适用于使用 JMS。

【讨论】:

【参考方案3】:

这是 glassfish 3 客户端 jar 的完整列表:

auto-depends.jar
deployment-common.jar
glassfish-corba-internal-api.jar    
internal-api.jar
management-api.jar
bean-validator.jar
dol.jar
glassfish-corba-newtimer.jar        
javax.ejb.jar
orb-connector.jar
common-util.jar
ejb-container.jar
glassfish-corba-omgapi.jar      
javax.jms.jar
orb-iiop.jar
config-api.jar
ejb.security.jar
glassfish-corba-orb.jar
javax.resource.jar
security.jar
config-types.jar
glassfish-api.jar
glassfish-corba-orbgeneric.jar      
javax.servlet.jar
ssl-impl.jar
config.jar
glassfish-corba-asm.jar
glassfish-naming.jar
javax.transaction.jar
transaction-internal-api.jar
connectors-internal-api.jar     
glassfish-corba-codegen.jar     
gmbal.jar
jta.jar
container-common.jar
glassfish-corba-csiv2-idl.jar       
hk2-core.jar
kernel.jar

【讨论】:

对不起,您的回复看起来像是自动回复的,这就是我投反对票的原因。 对不起,你不得不对我投反对票,它不是自动化的 - 我花了很长时间才弄清楚 jar 依赖项列表 - 这就是我在几个问题上发布它的原因 - 希望它可能帮助别人,让他们免去我不得不经历的挫败感。

以上是关于Glassfish V3.x 和远程独立客户端的主要内容,如果未能解决你的问题,请参考以下文章

从远程客户端使用 Glassfish JMS

我可以使用哪些 maven 依赖项为 Glassfish 创建独立的 JMS 客户端?

远程 JMS 队列的客户端

Glassfish JMS(平面文件)身份验证

将 Glassfish 与 IIOP 结合使用时的完整协议层次结构是啥

使用glassfish服务器的JMS客户端