[jboss-user] [JBoss Seam] - Seam security example failure.

elenh do-not-reply at jboss.com
Wed Oct 4 07:24:51 EDT 2006


Hello,

I have downloaded the most recently version of seam from CVS and I am trying to deploy the security example.
I think I have understood what is written in the wiki (SeamAuthenticationGuide), but I continually get the following exception:


  | 13:59:13,109 INFO  [SessionFactoryImpl] closing
  | 13:59:13,109 INFO  [SchemaExport] Running hbm2ddl schema export
  | 13:59:13,109 INFO  [SchemaExport] exporting generated schema to database
  | 13:59:13,109 INFO  [SchemaExport] schema export complete
  | 13:59:13,109 INFO  [EARDeployer] Undeploying J2EE application, destroy step: file:/C:/servers/jboss_4_0_4_GA/server/default/deploy/seam-security.ear
  | 13:59:13,109 INFO  [EARDeployer] Undeployed J2EE application: file:/C:/servers/jboss_4_0_4_GA/server/default/deploy/seam-security.ear
  | 13:59:13,125 INFO  [EARDeployer] Init J2EE application: file:/C:/servers/jboss_4_0_4_GA/server/default/deploy/seam-security.ear
  | 13:59:13,140 ERROR [MetaData] Cannot obtain unauthenticated principal
  | 13:59:13,750 INFO  [Ejb3DescriptorHandler] adding class annotation org.jboss.annotation.internal.DefaultInterceptorMarker to org.jboss.seam.example.security.LoginAction org.jboss.annotation.internal.DefaultInterceptorMarkerImpl at 18339aa
  | 13:59:13,781 INFO  [Ejb3DescriptorHandler] adding class annotation org.jboss.annotation.internal.DefaultInterceptorMarker to org.jboss.seam.example.security.ProtectedAction org.jboss.annotation.internal.DefaultInterceptorMarkerImpl at 9c393d
  | 13:59:13,843 INFO  [Ejb3Deployment] EJB3 deployment time took: 140
  | 13:59:13,890 INFO  [JmxKernelAbstraction] installing MBean: persistence.units:ear=seam-security.ear,jar=seam-security.jar,unitName=securityDatabase with dependencies:
  | 13:59:13,890 INFO  [JmxKernelAbstraction] 	jboss.jca:name=securityDatasource,service=ManagedConnectionFactory
  | 13:59:13,921 INFO  [Ejb3Configuration] found EJB3 Entity bean: org.jboss.seam.example.security.Role
  | 13:59:13,921 INFO  [Ejb3Configuration] found EJB3 Entity bean: org.jboss.seam.example.security.User
  | 13:59:13,921 WARN  [Ejb3Configuration] Persistence provider caller does not implements the EJB3 spec correctly. PersistenceUnitInfo.getNewTempClassLoader() is null.
  | 13:59:13,921 INFO  [Configuration] Reading mappings from resource: META-INF/orm.xml
  | 13:59:13,921 INFO  [Ejb3Configuration] [PersistenceUnit: securityDatabase] no META-INF/orm.xml found
  | 13:59:13,921 INFO  [AnnotationBinder] Binding entity from annotated class: org.jboss.seam.example.security.Role
  | 13:59:13,921 INFO  [EntityBinder] Bind entity org.jboss.seam.example.security.Role on table Role
  | 13:59:13,921 INFO  [AnnotationBinder] Binding entity from annotated class: org.jboss.seam.example.security.User
  | 13:59:13,921 INFO  [EntityBinder] Bind entity org.jboss.seam.example.security.User on table User
  | 13:59:13,937 INFO  [CollectionBinder] Mapping collection: org.jboss.seam.example.security.User.roles -> Role
  | 13:59:14,000 INFO  [ConnectionProviderFactory] Initializing connection provider: org.hibernate.ejb.connection.InjectedDataSourceConnectionProvider
  | 13:59:14,000 INFO  [InjectedDataSourceConnectionProvider] Using provided datasource
  | 13:59:14,000 INFO  [SettingsFactory] RDBMS: HSQL Database Engine, version: 1.8.0
  | 13:59:14,000 INFO  [SettingsFactory] JDBC driver: HSQL Database Engine Driver, version: 1.8.0
  | 13:59:14,000 INFO  [Dialect] Using dialect: org.hibernate.dialect.HSQLDialect
  | 13:59:14,000 INFO  [TransactionFactoryFactory] Transaction strategy: org.hibernate.ejb.transaction.JoinableCMTTransactionFactory
  | 13:59:14,015 INFO  [TransactionManagerLookupFactory] instantiating TransactionManagerLookup: org.hibernate.transaction.JBossTransactionManagerLookup
  | 13:59:14,015 INFO  [TransactionManagerLookupFactory] instantiated TransactionManagerLookup
  | 13:59:14,015 INFO  [SettingsFactory] Automatic flush during beforeCompletion(): disabled
  | 13:59:14,015 INFO  [SettingsFactory] Automatic session close at end of transaction: disabled
  | 13:59:14,015 INFO  [SettingsFactory] JDBC batch size: 15
  | 13:59:14,015 INFO  [SettingsFactory] JDBC batch updates for versioned data: disabled
  | 13:59:14,015 INFO  [SettingsFactory] Scrollable result sets: enabled
  | 13:59:14,015 INFO  [SettingsFactory] JDBC3 getGeneratedKeys(): disabled
  | 13:59:14,015 INFO  [SettingsFactory] Connection release mode: auto
  | 13:59:14,015 INFO  [SettingsFactory] Default batch fetch size: 1
  | 13:59:14,015 INFO  [SettingsFactory] Generate SQL with comments: disabled
  | 13:59:14,015 INFO  [SettingsFactory] Order SQL updates by primary key: disabled
  | 13:59:14,015 INFO  [SettingsFactory] Query translator: org.hibernate.hql.ast.ASTQueryTranslatorFactory
  | 13:59:14,015 INFO  [ASTQueryTranslatorFactory] Using ASTQueryTranslatorFactory
  | 13:59:14,015 INFO  [SettingsFactory] Query language substitutions: {}
  | 13:59:14,015 INFO  [SettingsFactory] Second-level cache: enabled
  | 13:59:14,015 INFO  [SettingsFactory] Query cache: disabled
  | 13:59:14,015 INFO  [SettingsFactory] Cache provider: org.hibernate.cache.HashtableCacheProvider
  | 13:59:14,015 INFO  [SettingsFactory] Optimize cache for minimal puts: disabled
  | 13:59:14,015 INFO  [SettingsFactory] Structured second-level cache entries: disabled
  | 13:59:14,015 INFO  [SettingsFactory] Echoing all SQL to stdout
  | 13:59:14,015 INFO  [SettingsFactory] Statistics: disabled
  | 13:59:14,015 INFO  [SettingsFactory] Deleted entity synthetic identifier rollback: disabled
  | 13:59:14,015 INFO  [SettingsFactory] Default entity-mode: pojo
  | 13:59:14,015 INFO  [SessionFactoryImpl] building session factory
  | 13:59:14,046 INFO  [SessionFactoryObjectFactory] Not binding factory to JNDI, no JNDI name configured
  | 13:59:14,062 INFO  [SchemaExport] Running hbm2ddl schema export
  | 13:59:14,062 INFO  [SchemaExport] exporting generated schema to database
  | 13:59:14,078 INFO  [SchemaExport] Executing import script: /import.sql
  | 13:59:14,078 INFO  [SchemaExport] schema export complete
  | 13:59:14,078 INFO  [NamingHelper] JNDI InitialContext properties:{java.naming.factory.initial=org.jnp.interfaces.NamingContextFactory, java.naming.factory.url.pkgs=org.jboss.naming:org.jnp.interfaces}
  | 13:59:14,125 INFO  [JmxKernelAbstraction] installing MBean: jboss.j2ee:ear=seam-security.ear,jar=seam-security.jar,name=LoginAction,service=EJB3 with dependencies:
  | 13:59:14,421 INFO  [EJBContainer] STARTED EJB: org.jboss.seam.example.security.LoginAction ejbName: LoginAction
  | 13:59:14,453 INFO  [JmxKernelAbstraction] installing MBean: jboss.j2ee:ear=seam-security.ear,jar=seam-security.jar,name=ProtectedAction,service=EJB3 with dependencies:
  | 13:59:14,468 WARN  [ServiceController] Problem starting service jboss.j2ee:ear=seam-security.ear,jar=seam-security.jar,name=ProtectedAction,service=EJB3
  | java.lang.RuntimeException: javax.naming.NameNotFoundException: jaas not bound
  | 	at org.jboss.ejb3.security.AuthenticationInterceptorFactory.createPerClass(AuthenticationInterceptorFactory.java:56)
  | 	at org.jboss.aop.advice.AspectFactoryDelegator.createPerClass(AspectFactoryDelegator.java:107)
  | 	at org.jboss.aop.Advisor.addPerClassAspect(Advisor.java:598)
  | 	at org.jboss.aop.advice.ScopedInterceptorFactory.create(ScopedInterceptorFactory.java:72)
  | 	at org.jboss.aop.Advisor.createInterceptorChain(Advisor.java:646)
  | 	at org.jboss.aop.Advisor.pointcutResolved(Advisor.java:916)
  | 	at org.jboss.aop.Advisor.resolveMethodPointcut(Advisor.java:678)
  | 	at org.jboss.aop.ClassContainer.createInterceptorChains(ClassContainer.java:246)
  | 	at org.jboss.aop.ClassContainer.rebuildInterceptors(ClassContainer.java:113)
  | 	at org.jboss.aop.ClassContainer.initializeClassContainer(ClassContainer.java:56)
  | 	at org.jboss.ejb3.EJBContainer.start(EJBContainer.java:497)
  | 	at org.jboss.ejb3.SessionContainer.start(SessionContainer.java:82)
  | 	at org.jboss.ejb3.stateless.StatelessContainer.start(StatelessContainer.java:80)
  | 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
  | 	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
  | 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
  | 	at java.lang.reflect.Method.invoke(Method.java:585)
  | 	at org.jboss.ejb3.ServiceDelegateWrapper.startService(ServiceDelegateWrapper.java:99)
  | 	at org.jboss.system.ServiceMBeanSupport.jbossInternalStart(ServiceMBeanSupport.java:289)
  | 	at org.jboss.system.ServiceMBeanSupport.jbossInternalLifecycle(ServiceMBeanSupport.java:245)
  | 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
  | 	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
  | 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
  | 	at java.lang.reflect.Method.invoke(Method.java:585)
  | 	at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:155)
  | 	at org.jboss.mx.server.Invocation.dispatch(Invocation.java:94)
  | 	at org.jboss.mx.server.Invocation.invoke(Invocation.java:86)
  | 	at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:264)
  | 	at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:659)
  | 	at org.jboss.system.ServiceController$ServiceProxy.invoke(ServiceController.java:978)
  | 	at $Proxy0.start(Unknown Source)
  | 	at org.jboss.system.ServiceController.start(ServiceController.java:417)
  | 	at sun.reflect.GeneratedMethodAccessor5.invoke(Unknown Source)
  | 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
  | 	at java.lang.reflect.Method.invoke(Method.java:585)
  | 	at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:155)
  | 	at org.jboss.mx.server.Invocation.dispatch(Invocation.java:94)
  | 	at org.jboss.mx.server.Invocation.invoke(Invocation.java:86)
  | 	at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:264)
  | 	at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:659)
  | 	at org.jboss.mx.util.MBeanProxyExt.invoke(MBeanProxyExt.java:210)
  | 	at $Proxy72.start(Unknown Source)
  | 	at org.jboss.ejb3.JmxKernelAbstraction.install(JmxKernelAbstraction.java:82)
  | 	at org.jboss.ejb3.Ejb3Deployment.registerEJBContainer(Ejb3Deployment.java:439)
  | 	at org.jboss.ejb3.Ejb3Deployment.start(Ejb3Deployment.java:486)
  | 	at org.jboss.ejb3.Ejb3Module.startService(Ejb3Module.java:139)
  | 	at org.jboss.system.ServiceMBeanSupport.jbossInternalStart(ServiceMBeanSupport.java:289)
  | 	at org.jboss.system.ServiceMBeanSupport.jbossInternalLifecycle(ServiceMBeanSupport.java:245)
  | 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
  | 	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
  | 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
  | 	at java.lang.reflect.Method.invoke(Method.java:585)
  | 	at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:155)
  | 	at org.jboss.mx.server.Invocation.dispatch(Invocation.java:94)
  | 	at org.jboss.mx.server.Invocation.invoke(Invocation.java:86)
  | 	at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:264)
  | 	at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:659)
  | 	at org.jboss.system.ServiceController$ServiceProxy.invoke(ServiceController.java:978)
  | 	at $Proxy0.start(Unknown Source)
  | 	at org.jboss.system.ServiceController.start(ServiceController.java:417)
  | 	at sun.reflect.GeneratedMethodAccessor5.invoke(Unknown Source)
  | 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
  | 	at java.lang.reflect.Method.invoke(Method.java:585)
  | 	at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:155)
  | 	at org.jboss.mx.server.Invocation.dispatch(Invocation.java:94)
  | 	at org.jboss.mx.server.Invocation.invoke(Invocation.java:86)
  | 	at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:264)
  | 	at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:659)
  | 	at org.jboss.mx.util.MBeanProxyExt.invoke(MBeanProxyExt.java:210)
  | 	at $Proxy36.start(Unknown Source)
  | 	at org.jboss.ejb3.EJB3Deployer.start(EJB3Deployer.java:449)
  | 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
  | 	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
  | 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
  | 	at java.lang.reflect.Method.invoke(Method.java:585)
  | 	at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:155)
  | 	at org.jboss.mx.server.Invocation.dispatch(Invocation.java:94)
  | 	at org.jboss.mx.interceptor.AbstractInterceptor.invoke(AbstractInterceptor.java:133)
  | 	at org.jboss.mx.server.Invocation.invoke(Invocation.java:88)
  | 	at org.jboss.mx.interceptor.ModelMBeanOperationInterceptor.invoke(ModelMBeanOperationInterceptor.java:142)
  | 	at org.jboss.mx.interceptor.DynamicInterceptor.invoke(DynamicInterceptor.java:97)
  | 	at org.jboss.system.InterceptorServiceMBeanSupport.invokeNext(InterceptorServiceMBeanSupport.java:238)
  | 	at org.jboss.ws.server.WebServiceDeployer.start(WebServiceDeployer.java:117)
  | 	at org.jboss.deployment.SubDeployerInterceptorSupport$XMBeanInterceptor.start(SubDeployerInterceptorSupport.java:188)
  | 	at org.jboss.deployment.SubDeployerInterceptor.invoke(SubDeployerInterceptor.java:95)
  | 	at org.jboss.mx.server.Invocation.invoke(Invocation.java:88)
  | 	at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:264)
  | 	at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:659)
  | 	at org.jboss.mx.util.MBeanProxyExt.invoke(MBeanProxyExt.java:210)
  | 	at $Proxy37.start(Unknown Source)
  | 	at org.jboss.deployment.MainDeployer.start(MainDeployer.java:1007)
  | 	at org.jboss.deployment.MainDeployer.start(MainDeployer.java:997)
  | 	at org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:808)
  | 	at org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:771)
  | 	at sun.reflect.GeneratedMethodAccessor12.invoke(Unknown Source)
  | 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
  | 	at java.lang.reflect.Method.invoke(Method.java:585)
  | 	at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:155)
  | 	at org.jboss.mx.server.Invocation.dispatch(Invocation.java:94)
  | 	at org.jboss.mx.interceptor.AbstractInterceptor.invoke(AbstractInterceptor.java:133)
  | 	at org.jboss.mx.server.Invocation.invoke(Invocation.java:88)
  | 	at org.jboss.mx.interceptor.ModelMBeanOperationInterceptor.invoke(ModelMBeanOperationInterceptor.java:142)
  | 	at org.jboss.mx.server.Invocation.invoke(Invocation.java:88)
  | 	at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:264)
  | 	at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:659)
  | 	at org.jboss.mx.util.MBeanProxyExt.invoke(MBeanProxyExt.java:210)
  | 	at $Proxy6.deploy(Unknown Source)
  | 	at org.jboss.deployment.scanner.URLDeploymentScanner.deploy(URLDeploymentScanner.java:421)
  | 	at org.jboss.deployment.scanner.URLDeploymentScanner.scan(URLDeploymentScanner.java:610)
  | 	at org.jboss.deployment.scanner.AbstractDeploymentScanner$ScannerThread.doScan(AbstractDeploymentScanner.java:263)
  | 	at org.jboss.deployment.scanner.AbstractDeploymentScanner$ScannerThread.loop(AbstractDeploymentScanner.java:274)
  | 	at org.jboss.deployment.scanner.AbstractDeploymentScanner$ScannerThread.run(AbstractDeploymentScanner.java:225)
  | Caused by: javax.naming.NameNotFoundException: jaas not bound
  | 	at org.jnp.server.NamingServer.getBinding(NamingServer.java:529)
  | 	at org.jnp.server.NamingServer.getBinding(NamingServer.java:537)
  | 	at org.jnp.server.NamingServer.getObject(NamingServer.java:543)
  | 	at org.jnp.server.NamingServer.lookup(NamingServer.java:267)
  | 	at org.jnp.interfaces.NamingContext.lookup(NamingContext.java:625)
  | 	at org.jnp.interfaces.NamingContext.lookup(NamingContext.java:587)
  | 	at javax.naming.InitialContext.lookup(InitialContext.java:351)
  | 	at org.jboss.ejb3.security.AuthenticationInterceptorFactory.createPerClass(AuthenticationInterceptorFactory.java:51)
  | 	... 111 more
  | 

Also I'm not sure with what I have to write in the seam-security.xml file where the realm has to be defined:


  | <!-- do i need to really specify the realm here?  perhaps only
  |        provide SeamRealm and make it extensible/pluggable into
  |        various target authentication mechanisms, e.g. TOMCAT, JAAS, custom, etc -->
  |   
  |   <realm className="org.jboss.seam.security.realm.JaasRealm">
  |     <!--param name="target">TOMCAT</param-->
  |     <!--param name="target">JAAS</param-->
  |   </realm>
  | 

As there is no file named JaasRealm. I guess that this should define the security domain, but I don't understand how to deal with it.

I'm new to JBoss - seam and even more in JAAS, and I' m really messed up with the configuration needed so as to bind JAAS to a seam application, so any help is welcomed!!!

Thanks,
Elenh.

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

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



More information about the jboss-user mailing list