javax.naming.NameNotFoundException

There are no available Samebug tips for this exception. Do you have an idea how to solve this issue? A short tip would help users who saw this issue last week.

  • I am not create a jndi connection from my java program despite specifying all the connection parameters in the jndi.properties and activemq.xml: I have done the configuration of jndi.properties file as follows: java.naming.factory.initial = org.apache.activemq.jndi.ActiveMQInitialContextFactory java.naming.provider.url=tcp://localhost:61616 java.naming.security.principal=system java.naming.security.credentials=manager # use the following property to configure the default connector java.naming.provider.url = vm://localhost #connectionFactoryNames = TopicCF #topic.topic1 = jms.topic1 connectionFactoryNames = QueueCF queue.LoanRequestQ = jms.LoanRequestQ queue.LoanResponseQ = jms.LoanResponseQ Added the following in activemq.xml: <destinations> <! -- topic name="topic1" physicalName="jms.topic1" / --> <queue name="LoanRequestQ" physicalName="jms.LoanRequestQ" /> <queue name="LoanResponseQ" physicalName="jms.LoanResponseQ" /> </destinations> Now, in my Java program, I have the QLender class and I have the following statements: Context ctx = new InitialContext(); ConnectionFactory qCFactory = (ConnectionFactory)ctx.lookup("QueueCF"); I get the following error: javax.naming.NoInitialContextException: Need to specify class name in environment or system property, or as an applet parameter, or in an application resource file: java.naming.factory.initial at javax.naming.spi.NamingManager.getInitialContext(NamingManager.java:662) at javax.naming.InitialContext.getDefaultInitCtx(InitialContext.java:307) at javax.naming.InitialContext.getURLOrDefaultInitCtx(InitialContext.java:344) at javax.naming.InitialContext.lookup(InitialContext.java:411) at ch04.p2p.QLender.<init>(QLender.java:34) at ch04.p2p.QLender.main(QLender.java:134) Further I enhanced the program to make a set environment parameters: Hashtable env = new Hashtable(); env.put(Context.INITIAL_CONTEXT_FACTORY, "org.apache.activemq.jndi.ActiveMQInitialContextFactory"); env.put(Context.PROVIDER_URL, "http://localhost:61616"); env.put(Context.SECURITY_PRINCIPAL, "system"); env.put(Context.SECURITY_CREDENTIALS, "manager"); Context ctx = new InitialContext(env); ConnectionFactory qCFactory = (ConnectionFactory)ctx.lookup("QueueCF"); On compiling I get the following error: javax.naming.NameNotFoundException: QueueCF at org.apache.activemq.jndi.ReadOnlyContext.lookup(ReadOnlyContext.java:235) at javax.naming.InitialContext.lookup(InitialContext.java:411) at ch04.p2p.QLender.<init>(QLender.java:32) at ch04.p2p.QLender.main(QLender.java:132)
    via by Saurabh Thapar,
  • I am not create a jndi connection from my java program despite specifying all the connection parameters in the jndi.properties and activemq.xml: I have done the configuration of jndi.properties file as follows: java.naming.factory.initial = org.apache.activemq.jndi.ActiveMQInitialContextFactory java.naming.provider.url=tcp://localhost:61616 java.naming.security.principal=system java.naming.security.credentials=manager # use the following property to configure the default connector java.naming.provider.url = vm://localhost #connectionFactoryNames = TopicCF #topic.topic1 = jms.topic1 connectionFactoryNames = QueueCF queue.LoanRequestQ = jms.LoanRequestQ queue.LoanResponseQ = jms.LoanResponseQ Added the following in activemq.xml: <destinations> <! -- topic name="topic1" physicalName="jms.topic1" / --> <queue name="LoanRequestQ" physicalName="jms.LoanRequestQ" /> <queue name="LoanResponseQ" physicalName="jms.LoanResponseQ" /> </destinations> Now, in my Java program, I have the QLender class and I have the following statements: Context ctx = new InitialContext(); ConnectionFactory qCFactory = (ConnectionFactory)ctx.lookup("QueueCF"); I get the following error: javax.naming.NoInitialContextException: Need to specify class name in environment or system property, or as an applet parameter, or in an application resource file: java.naming.factory.initial at javax.naming.spi.NamingManager.getInitialContext(NamingManager.java:662) at javax.naming.InitialContext.getDefaultInitCtx(InitialContext.java:307) at javax.naming.InitialContext.getURLOrDefaultInitCtx(InitialContext.java:344) at javax.naming.InitialContext.lookup(InitialContext.java:411) at ch04.p2p.QLender.<init>(QLender.java:34) at ch04.p2p.QLender.main(QLender.java:134) Further I enhanced the program to make a set environment parameters: Hashtable env = new Hashtable(); env.put(Context.INITIAL_CONTEXT_FACTORY, "org.apache.activemq.jndi.ActiveMQInitialContextFactory"); env.put(Context.PROVIDER_URL, "http://localhost:61616"); env.put(Context.SECURITY_PRINCIPAL, "system"); env.put(Context.SECURITY_CREDENTIALS, "manager"); Context ctx = new InitialContext(env); ConnectionFactory qCFactory = (ConnectionFactory)ctx.lookup("QueueCF"); On compiling I get the following error: javax.naming.NameNotFoundException: QueueCF at org.apache.activemq.jndi.ReadOnlyContext.lookup(ReadOnlyContext.java:235) at javax.naming.InitialContext.lookup(InitialContext.java:411) at ch04.p2p.QLender.<init>(QLender.java:32) at ch04.p2p.QLender.main(QLender.java:132)
    via by Saurabh Thapar,
  • JMSAppender - cannot find topic
    via Stack Overflow by Tad
    ,
  • ActiveMQ topic discoverable from JNDI?
    via Stack Overflow by Paul McKenzie
    ,
  • Active MQ, JNDI, Spring error
    via by Unknown author,
  • Please help: about ActiveMQ intigration with Websphere 6.1
    via by derri...@hotmail.com,
    • javax.naming.NameNotFoundException: QueueCF at org.apache.activemq.jndi.ReadOnlyContext.lookup(ReadOnlyContext.java:235) at javax.naming.InitialContext.lookup(InitialContext.java:411) at ch04.p2p.QLender.<init>(QLender.java:32) at ch04.p2p.QLender.main(QLender.java:132)

    Users with the same issue

    Unknown visitor1 times, last one,
    Unknown visitor1 times, last one,