如何从非托管的Java应用程序读取JMS队列?
|
我正在尝试从非托管应用程序(控制台应用程序)读取\“ Sun App Server \”中创建的jms队列中的消息,但出现以下错误:
NoInitialContextException
Cannot instantiate class: javax.jms.TopicConnectionFactory
使用此代码:
Properties env = new Properties( );
env.put(Context.INITIAL_CONTEXT_FACTORY, \"javax.jms.TopicConnectionFactory\");
InitialContext jndi = new InitialContext(env);
并且我引用了包含该类的j2ee.jar库,但是可以肯定的是,该类是一个接口。
我可以从非托管应用程序访问队列吗?
没有找到相关结果
已邀请:
1 个回复
吐兄
您需要牢记的一个方面是j2ee.jar库包含JMS类的通用Java EE接口,但是您还将在类路径中需要一个包含JMS实现具体类的库。 JNDI连接也是如此。本教程提供的简要清单如下: Applicationserver JNDI查找 /lib/appserv-rt.jar /lib/appserv-admin.jar /lib/javaee.jar /lib/j2ee.jar 客户库 /imq/lib/jms.jar /imq/lib/imq.jar /imq/lib/imqutil.jar /lib/install/applications/jmsra/jmsra.jar