2012-01-16 6 views
0

J'ai un jboss et un tomcat installés dans la même machine (avec jboss 6 ayant le port 8080 et tomcat 7 ayant le port 8090) et j'essaye d'utiliser la recherche JNDI de tomcat pour obtenir les recherches d'ejb dans JBoss. J'ai vérifié mes beans EJB en utilisant la console jmx pour m'assurer qu'ils sont disponibles. Je les ai noté pour être @Remote et dans la console JMX ces EJBs sont avilable comme aaaServiceRemote/à distance bbbServiceRemote/à distance etctomcat JNDI allumant des EJB distants

Je mon tomcat, j'ai mis ma guerre d'application qui consiste un localisateur de service et lorsque l'application démarre le localisateur de service essaie de trouver les EJB et échoue. J'ai mis les fichiers jar jnp-client et jboss-all-client copiés de jboss/client dans le dossier tomcat/lib J'ai placé un fichier jndi.properties dans le répertoire webapp de tomcat, composé des entrées suivantes.

java.naming.factory.initial=org.jnp.interfaces.NamingContextFactory 
java.naming.provider.url=localhost:1099 
java.naming.factory.url.pkgs=org.jboss.naming:org.jnp.interfaces 

il semble que tomcat essaie de trouver les EJBs dans son contexte JNDI pas le contexte JNDI jboss à distance.

toute aide sur comment cette télécommande peut être activé s'il vous plaît.

Répondre

1

Il semble que votre fichier jndi.properties ne soit pas lu correctement. Avez-vous essayé de voir si ces propriétés sont passées à l'objet InitialContext lorsque vous créez une première recherche JNDI?

Qu'est-ce que le débogage révèle?

+0

Merci pour la réponse Mark Le code de localisation de service échoue dans (T) ctx.lookup ("aaaServiceBean/remote"); lors du débogage dans tomcat J'ai effectué des recherches jndi à l'intérieur de jboss où j'ai utilisé les paramètres jndi.properties mentionnés ci-dessus. mais je pense que puisque nous appelons un jboss distant du tomcat, jndi.properties devrait aussi être changé. quelque chose comme 'code' env.put (Context.PROVIDER_URL, " corbaloc: iiop: [email protected]: 2809/NameService "); ' – Sanath

+0

il jette recueil HSC une NamingException, (javax.naming.NameNotFoundException) – Sanath

+0

J'ai essayé d'utiliser le code sans jndi.properties où j'initialisés Propriétés et crée le contexte et avons obtenu une erreur « GRAVES: WSSERVLET11: Échec de parse runtime descriptor: java.lang.ClassCastException: javax.naming.Reference ne peut pas être casté en com.MyBean ' – Sanath