Lorsque j'exécute une application liée à JMS, je rencontre l'erreur d'exception suivante.
javax.naming.NoInitialContextException: nécessité de spécifier le nom de la classe dans la propriété d'environnement ou du système, ou en tant que paramètre d'applet, ou dans un fichier de ressources d'application: Java.naming.factory.initial
Nous utilisons Sun Application Server 9.1
Une idée de ce qu'il nous manque?
J'ai déjà essayé d'ajouter ce qui suit mais le résultat reste le même
Properties env = new Properties();
env.put("Java.naming.factory.initial","com.Sun.jndi.cosnaming.CNCtxFactory");
Context ctx = new InitialContext(env);
Une erreur très courante peut être que vous n'avez pas ajouté le fichier jboss-client.jar! ou bocal alternatif si vous utilisez weblogic.
Je faisais face au même problème lorsque je travaillais avec spring & weblogic. Je l'avais résolu en définissant deux propriétés
System.getProperties (). Put ("Java.naming.factory.initial", "weblogic.jndi.WLInitialContextFactory"); System.getProperties (). Put ("Java.naming.provider.url", "t3: // localhost: 80")
Dans mon environnement, configurer Context.INITIAL_CONTEXT_FACTORY
n'était pas suffisant. Je devais également définir Context.URL_PKG_PREFIXES, expliqué à http://docs.Oracle.com/javase/6/docs/api/javax/naming/Context.html#URL_PKG_PREFIXES .