Bonjour,

J'arrive à faire un lookup d'un EJB remote.
J'arrive à utiliser l'injection avec @EJB pour appeler mes Entity.
MAIS je ne parviens pas à appeler un Ejb StateLess en local !! ?

voila ce que je fais, dites moi si je me trompe:

Code de la classe appelante.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
 
private IAdminBusinessDelegate adminbusinessDelegate;
 
public BusinessDelegate() throws NamingException {
     context = new InitialContext();
     adminbusinessDelegate = (IAdminBusinessDelegate) context.lookup("AdminBusinessDelegate");
}
Code de l'interface Local.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
 
@Local
public interface IAdminBusinessDelegate {
...
}

Code de l'Ejb Stateless
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
 
@Stateless(name = "AdminBusinessDelegate", mappedName = "AdminBusinessDelegate")
@TransactionManagement(TransactionManagementType.CONTAINER)
public class AdminBusinessDelegate implements IAdminBusinessDelegate{
 
@EJB private IObjectManager objectManager;
 
...
}

J'arrive donc à appeler AdminBusinessDelegate en remote si je mets @remote au lieu de @local

mais en local impossible !

j'ai cette exception :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
 
 java.lang.ClassCastException: org.jnp.interfaces.NamingContext cannot be cast to com.antibugz.homm.delagate.IAdminBusinessDelegate
pour info, je suis sur la même JVM.

avez vous une idée ?

merci beaucoup.