开发者

Exception: Need to specify class name in environment or system property: java.naming.factory.initial [duplicate]

This question already has answers here: 开发者_JAVA技巧 The meaning of NoInitialContextException error (13 answers) Closed 9 years ago.

When i run a JMS related application, i am encountering the following exception 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

We are using Sun Application Server 9.1

Any idea what are we missing?

I already tried adding the following but result still the same

    Properties env = new Properties();
    env.put("java.naming.factory.initial","com.sun.jndi.cosnaming.CNCtxFactory");

    Context ctx = new InitialContext(env);


A very common error can be that you have not added the jboss-client.jar! or alternate jar if using weblogic.


I was facing the same problrm while working with spring & weblogic . I had resolved it by setting two properties

System.getProperties().put("java.naming.factory.initial","weblogic.jndi.WLInitialContextFactory"); System.getProperties().put("java.naming.provider.url", "t3://localhost:80")


In my environment, setting Context.INITIAL_CONTEXT_FACTORY wasn't enough. I also had to set Context.URL_PKG_PREFIXES, explained at http://docs.oracle.com/javase/6/docs/api/javax/naming/Context.html#URL_PKG_PREFIXES.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜