你的目录下有jms_client.properties 这个文件吗?你是否配置过.

解决方案 »

  1.   

    有这个文件,文件内容如下:
    #comments jms properties filecom.sun.jms.internal.java.naming.provider.url=com.sun.jms.client.transport_preference=IIOP#Possible values are SEVERE,WARNING,INFO, FINE, FINER, FINEST.
    com.sun.jms.default.loglevel=WARNING
    请问我应该作何配置?
      

  2.   

    我不知到你这两步做了没有:
    JMS Factory Creation 例如:
    j2eeadmin –addJmsFactory yourTopicFactory topic
    JMS Destination Creation 例如:
    j2eeadmin –addJmsDestination yourTopicFactory topic
    如果这两步做了。
    配置文件:
    com.sun.jms.internal.java.naming.provider.url=localhost
      

  3.   

    我没有做第一步,因为我程序中查询的是默认的QueueConnectionFactory
       try {
                queueConnectionFactory = (QueueConnectionFactory)
                    jndiContext.lookup("QueueConnectionFactory");
                queue = (Queue) jndiContext.lookup(queueName);
            } catch (NamingException e) {
                System.out.println("JNDI API lookup failed: " + 
                    e.toString());
                System.exit(1);
            }
    ;我做了第二步:j2eeadmin -addJmsDestination MyQueue queue
    而且通过j2eeadmin -listJmsDestination可以查询到。
    同时我也按照如上配置了jms_client.properties,还是不行,没法了,怎么办?
      

  4.   

    第一步你必须做,因为你不将你的队列JNDI名绑定在服务器上,你当然查不到.
    j2eeamdin –addJmsFactory queueName queue
    queue = (Queue) jndiContext.lookup(queueName);
    JNDI名:queueName
    还有:Context jndiContext = new InitialContext();你写了没有,没写就会出你第一次写的那个错。