[jboss-user] [EJB 3.0] - javax.ejb.EJBAccessException: Authentication failure with no

EricChile do-not-reply at jboss.com
Tue Nov 28 17:47:00 EST 2006


I am trying to build a simple webapp / EJB 3.0 project. But running into some difficulty. 

After getting the session context bean, while trying to run a procedure that returns rows from a the DB, I get 

javax.ejb.EJBAccessException: Authentication failure 

Anyone know why? I don't even have @Security set.

webkidsFacadeLocal.java

  | package org.usiis.model;
  | 
  | import java.util.List;
  | 
  | import javax.ejb.Local;
  | 
  | 
  | @Local
  | public interface webkidsFacadeLocal {
  |     Object mergeEntity(Object entity);
  | 
  |     Object persistEntity(Object entity);
  | 
  |     List<Users> queryUsersFindAll();
  | 
  |     void removeUsers(Users users);
  | 
  |     List<UsersGlobal> queryUsersGlobalFindAll();
  | 
  |     void removeUsersGlobal(UsersGlobal usersGlobal);
  | 
  |     List<Providers> queryProvidersFindAll();
  | 
  |     void removeProviders(Providers providers);
  | 
  |     List<ProviderUsers> queryProviderUsersFindAll();
  | 
  |     void removeProviderUsers(ProviderUsers providerUsers);
  | 
  |     List<ProviderUserContactInfo> queryProviderUserContactInfoFindAll();
  | 
  |     void removeProviderUserContactInfo(ProviderUserContactInfo providerUserContactInfo);
  | 
  |     List<ProviderUserFuncs> queryProviderUserFuncsFindAll();
  | 
  |     void removeProviderUserFuncs(ProviderUserFuncs providerUserFuncs);
  | 
  |     List<ProviderUserRoles> queryProviderUserRolesFindAll();
  | 
  |     void removeProviderUserRoles(ProviderUserRoles providerUserRoles);
  | 
  |     List<ProviderUserServices> queryProviderUserServicesFindAll();
  | 
  |     void removeProviderUserServices(ProviderUserServices providerUserServices);
  | 
  |     List<Users> queryUsersFindAll(Object username, Object password, 
  |                                   Object providerId);
  | }
  | 


webkidsFacadeBean

  | 
  | package org.usiis.model;
  | 
  | import java.util.List;
  | 
  | import javax.ejb.Stateless;
  | 
  | import javax.persistence.EntityManager;
  | import javax.persistence.PersistenceContext;
  | 
  | @Stateless(name="webkidsFacade")
  | public class webkidsFacadeBean implements webkidsFacade, webkidsFacadeLocal {
  |     @PersistenceContext(unitName="usiisUsts")
  |     private EntityManager em;
  | 
  |     public webkidsFacadeBean() {
  |     }
  | 
  |     public Object mergeEntity(Object entity) {
  |         return em.merge(entity);
  |     }
  | 
  |     public Object persistEntity(Object entity) {
  |         em.persist(entity);
  |         return entity;
  |     }
  | 
  |     /** <code>select o from Users o</code> */
  |     public List<Users> queryUsersFindAll() {
  |         return em.createNamedQuery("Users.findAll").getResultList();
  |     }
  | 
  |     public void removeUsers(Users users) {
  |         users = em.find(Users.class, users.getUserId());
  |         em.remove(users);
  |     }
  | 
  |     /** <code>select o from UsersGlobal o</code> */
  |     public List<UsersGlobal> queryUsersGlobalFindAll() {
  |         return em.createNamedQuery("UsersGlobal.findAll").getResultList();
  |     }
  | 
  |     public void removeUsersGlobal(UsersGlobal usersGlobal) {
  |         usersGlobal = em.find(UsersGlobal.class, usersGlobal.getUsersGlobalId());
  |         em.remove(usersGlobal);
  |     }
  | 
  |     /** <code>select o from Providers o</code> */
  |     public List<Providers> queryProvidersFindAll() {
  |         return em.createNamedQuery("Providers.findAll").getResultList();
  |     }
  | 
  |     public void removeProviders(Providers providers) {
  |         providers = em.find(Providers.class, providers.getProviderId());
  |         em.remove(providers);
  |     }
  | 
  |     /** <code>select o from ProviderUsers o</code> */
  |     public List<ProviderUsers> queryProviderUsersFindAll() {
  |         return em.createNamedQuery("ProviderUsers.findAll").getResultList();
  |     }
  | 
  |     public void removeProviderUsers(ProviderUsers providerUsers) {
  |         providerUsers = em.find(ProviderUsers.class, providerUsers.getProviderUserId());
  |         em.remove(providerUsers);
  |     }
  | 
  |     /** <code>select o from ProviderUserContactInfo o</code> */
  |     public List<ProviderUserContactInfo> queryProviderUserContactInfoFindAll() {
  |         return em.createNamedQuery("ProviderUserContactInfo.findAll").getResultList();
  |     }
  | 
  |     public void removeProviderUserContactInfo(ProviderUserContactInfo providerUserContactInfo) {
  |         providerUserContactInfo = em.find(ProviderUserContactInfo.class, providerUserContactInfo.getContactInfoId());
  |         em.remove(providerUserContactInfo);
  |     }
  | 
  |     /** <code>select o from ProviderUserFuncs o</code> */
  |     public List<ProviderUserFuncs> queryProviderUserFuncsFindAll() {
  |         return em.createNamedQuery("ProviderUserFuncs.findAll").getResultList();
  |     }
  | 
  |     public void removeProviderUserFuncs(ProviderUserFuncs providerUserFuncs) {
  |         providerUserFuncs = em.find(ProviderUserFuncs.class, providerUserFuncs.getUserFuncId());
  |         em.remove(providerUserFuncs);
  |     }
  | 
  |     /** <code>select o from ProviderUserRoles o</code> */
  |     public List<ProviderUserRoles> queryProviderUserRolesFindAll() {
  |         return em.createNamedQuery("ProviderUserRoles.findAll").getResultList();
  |     }
  | 
  |     public void removeProviderUserRoles(ProviderUserRoles providerUserRoles) {
  |         providerUserRoles = em.find(ProviderUserRoles.class, providerUserRoles.getUserRoleId());
  |         em.remove(providerUserRoles);
  |     }
  | 
  |     /** <code>select o from ProviderUserServices o</code> */
  |     public List<ProviderUserServices> queryProviderUserServicesFindAll() {
  |         return em.createNamedQuery("ProviderUserServices.findAll").getResultList();
  |     }
  | 
  |     public void removeProviderUserServices(ProviderUserServices providerUserServices) {
  |         providerUserServices = em.find(ProviderUserServices.class, providerUserServices.getUserServicesId());
  |         em.remove(providerUserServices);
  |     }
  | 
  |     /** <code>select o from Users o where o.username = :username and o.password = :password and o.providerUsersList.providers.providerId = :providerId</code> */
  |     public List<Users> queryUsersFindAll(Object username, Object password, Object providerId) {return em.createNamedQuery("Users.findAll").setParameter("username", username).setParameter("password", password).setParameter("providerId", providerId).getResultList();
  |     }
  | }
  | 
  | 


Problem code... 


  |             final Context context = new InitialContext();
  |             webkidsFacadeLocal WebkidsFacade = 
  |                 (webkidsFacadeLocal) context.lookup("WebkidsAdminLite/webkidsFacade/local");
  | 
  |             List provs = WebkidsFacade.queryProvidersFindAll();
  | 


Stack Trace

  | 15:39:20,105 ERROR [STDERR] javax.ejb.EJBAccessException: Authentication failure
  | 
  | 15:39:20,105 ERROR [STDERR]     at org.jboss.ejb3.security.Ejb3AuthenticationInt
  | erceptor.handleGeneralSecurityException(Ejb3AuthenticationInterceptor.java:99)
  | 15:39:20,105 ERROR [STDERR]     at org.jboss.aspects.security.AuthenticationInte
  | rceptor.invoke(AuthenticationInterceptor.java:70)
  | 15:39:20,105 ERROR [STDERR]     at org.jboss.ejb3.security.Ejb3AuthenticationInt
  | erceptor.invoke(Ejb3AuthenticationInterceptor.java:131)
  | 15:39:20,120 ERROR [STDERR]     at org.jboss.aop.joinpoint.MethodInvocation.invo
  | keNext(MethodInvocation.java:101)
  | 15:39:20,120 ERROR [STDERR]     at org.jboss.ejb3.ENCPropagationInterceptor.invo
  | ke(ENCPropagationInterceptor.java:47)
  | 15:39:20,120 ERROR [STDERR]     at org.jboss.aop.joinpoint.MethodInvocation.invo
  | keNext(MethodInvocation.java:101)
  | 15:39:20,120 ERROR [STDERR]     at org.jboss.ejb3.asynchronous.AsynchronousInter
  | ceptor.invoke(AsynchronousInterceptor.java:106)
  | 15:39:20,120 ERROR [STDERR]     at org.jboss.aop.joinpoint.MethodInvocation.invo
  | keNext(MethodInvocation.java:101)
  | 15:39:20,120 ERROR [STDERR]     at org.jboss.ejb3.stateless.StatelessContainer.l
  | ocalInvoke(StatelessContainer.java:211)
  | 15:39:20,120 ERROR [STDERR]     at org.jboss.ejb3.stateless.StatelessLocalProxy.
  | invoke(StatelessLocalProxy.java:79)
  | 15:39:20,120 ERROR [STDERR]     at $Proxy79.queryProvidersFindAll(Unknown Source
  | )
  | 15:39:20,120 ERROR [STDERR]     at org.usiis.view.backing.Login.<init>(Login.jav
  | 

View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=3989506#3989506

Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=3989506



More information about the jboss-user mailing list