使用glassfish服务器的JMS客户端

问题描述 投票:1回答:1

您好我正在尝试从我的计算机中的本地客户端连接我的服务器我有一个远程服务器正在运行..当我从Netbeans运行我的代码一切正常...当我从CMD尝试我得到这个错误

来自com.sun.enterprise.naming.impl.SerialContext.getProviderCacheKey(SerialContext.java:354)的com.sun.enterprise.naming.impl.SerialContext.getORB(SerialContext.java:347)中的java.lang.NullPointerException。位于com.sun.enterprise.naming.impl的com.sun.enterprise.naming.impl.SerialContext.getProvider(SerialContext.java:329)中的sun.enterprise.naming.impl.SerialContext.getRemoteProvider(SerialContext.java:384)。 SerialContext.lookup(SerialContext.java:477)位于test4.Test4.main的javax.naming.InitialContext.lookup(未知来源)的com.sun.enterprise.naming.impl.SerialContext.lookup(SerialContext.java:438) Test4.java:45)线程“main”中的异常javax.naming.NamingException:SerialContext中的'jms / connection'查找失败[myEnv = {java.naming.factory.initial = com.sun.enterprise.naming.impl。 SerialInitContextFactory,java.naming.factory.url.pkgs = com.sun.enterprise.naming,java.naming.factory.state = com.sun.corba.ee.impl.presentation.rmi.JNDIStateFactoryImpl} [root异常是javax。 naming.N amingException:无法为SerialContext获取SerialContextProvider [myEnv = {java.naming.factory.initial = com.sun.enterprise.naming.impl.SerialInitContextFactory,java.naming.factory.url.pkgs = com.sun.enterprise.naming, java.naming.factory.state = com.sun.corba.ee.impl.presentation.rmi.JNDIStateFactoryImpl} [root exception is java.lang.NullPointerException]] at com.sun.enterprise.naming.impl.SerialContext.lookup( SerialContext.java:491)位于test4.Test4.main的javax.naming.InitialContext.lookup(Unknown Source)中的com.sun.enterprise.naming.impl.SerialContext.lookup(SerialContext.java:438)(Test4.java: 45)引起:javax.naming.NamingException:无法为SerialContext获取SerialContextProvider [myEnv = {java.naming.factory.initial = com.sun.enterprise.naming.impl.SerialInitContextFactory,java.naming.factory.url.pkgs com的com.sun.enterprise.naming,java.naming.factory.state = com.sun.corba.ee.impl.presentation.rmi.JNDIStateFactoryImpl} [root异常是java.lang.NullPointerException]。 sun.enterprise.naming.impl.SerialContext.getProvider(SerialContext.java:334)at com.sun.enterprise.naming.impl.SerialContext.lookup(SerialContext.java:477)... 3更多引起:java.lang com.sun.enterprise.naming.nmpl.SerialContext.getProviderCacheKey(SerialContext.java:354)的com.sun.enterprise.naming.impl.SerialContext.getORB(SerialContext.java:347)中的.NullPointerException:com.sun.enterprise .naming.impl.SerialContext.getRemoteProvider(SerialContext.java:384)at com.sun.enterprise.naming.impl.SerialContext.getProvider(SerialContext.java:329)... 4更多

public static void main(String[] args) throws NamingException {

    Context initialContext = Test4.getInitialContext();
    ConnectionFactory connectionFactory = (ConnectionFactory)initialContext.lookup("jms/connection");
    System.out.println("yeee:"+connectionFactory.toString());
    JMSContext jMSContext =  connectionFactory.createContext();
    Queue myQueue = (Queue)initialContext.lookup("jms/myQueue");
    JMSProducer jMSProducer = jMSContext.createProducer();
    jMSProducer.send(myQueue, "Hi,Zion");
    System.out.println("work work work wrok wrok");
}



 public static Context getInitialContext() throws NamingException{

    System.setProperty("org.omg.CORBA.ORBInitialHost", "MyIP");
    System.setProperty("org.omg.CORBA.ORBInitialPort", "3800");

    return new InitialContext();
}
java glassfish glassfish-3 glassfish-4.1
1个回答
0
投票

好吧我明白了!!!我应该把所有路径放在安装了glassfish的jar lib中并运行java -cp“c:/ programFiles / glassfish / lib / *”test4.Test4可以关闭主题。

© www.soinside.com 2019 - 2024. All rights reserved.