[JBoss Seam] - Re: pagination control (10.3) missing transaction
by baz
Hope this will be enough. If not please ask again. My runtime environment is configured as described in chapter 19.5
configuration:
<core:hibernate-session-factory name="hibernateSessionFactory"/>
|
| <core:managed-hibernate-session name="bazDatabase"
| session-factory-jndi-name="java:/bazDatabaseFactory"
| auto-create="true"/>
|
| <core:microcontainer installed="true"/>
|
| <security:identity authenticate-method="#{authorizationBean.authenticate}"/>
| <drools:rule-base name="securityRules">
| <drools:rule-files><value>security-rules.drl</value></drools:rule-files>
| </drools:rule-base>
|
| <!-- Setup application components -->
| <factory name="myUser" value="#{myUserHome.instance}"/>
| <framework:hibernate-entity-home name="myUserHome"
| entity-class="de.bafz.lims.model.User"
| session="#{bazDatabase}"/>
|
| <framework:hibernate-entity-query name="myUserList"
| ejbql="from User"
| max-results="5"
| order="login"
| session="#{bazDatabase}" />
|
|
xhtml page :
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
| <html xmlns="http://www.w3.org/1999/xhtml"
| xmlns:ui="http://java.sun.com/jsf/facelets"
| xmlns:h="http://java.sun.com/jsf/html"
| xmlns:f="http://java.sun.com/jsf/core"
| xmlns:t="http://myfaces.apache.org/tomahawk"
| xmlns:jdt="http://www.jenia.org/jsf/dataTools"
| xmlns:s="http://jboss.com/products/seam/taglib">
|
| <f:loadBundle basename="lims" var="bundle" />
| <body>
| <ui:composition template="/includes/LimsPage.xhtml">
| <ui:define name="title">
| <h:outputText value="list user" />
| </ui:define>
| <ui:define name="body">
| <h:form>
|
| <h:outputText value="No person exists"
| rendered="#{empty myUserList.resultList}" />
| <h:dataTable id="myUserList" var="myUser"
| value="#{myUserList.resultList}" border="1"
| rendered="#{not empty myUserList.resultList}">
| <h:column>
| <f:facet name="header">
| <h:outputText value="#{bundle['User.login']}" />
| </f:facet>
| <s:link id="person" value="#{myUser.login}"
| view="/managePages/addUser.xhtml">
| <f:param name="myUserId" value="#{myUser.login}" />
| </s:link>
| </h:column>
|
| <h:column>
| <f:facet name="header">
| <h:outputText value="#{bundle['User.firstName']}" />
| </f:facet>
| #{myUser.firstName}
| </h:column>
| <h:column>
| <f:facet name="header">
| <h:outputText value="#{bundle['User.lastName']}" />
| </f:facet>
| #{myUser.lastName}
| </h:column>
| <h:column>
| <f:facet name="header">
| <h:outputText value="#{bundle['User.institute']}" />
| </f:facet>
| #{myUser.institute}
| </h:column>
|
| </h:dataTable>
| <s:link view="/listUser.xhtml" rendered="#{myUserList.previousExists}" value=" first ">
| <f:param name="firstResult" value="0"/>
| </s:link>
|
| <s:link view="/listUser.xhtml" rendered="#{myUserList.previousExists}" value=" prev ">
| <f:param name="firstResult" value="#{myUserList.previousFirstResult}"/>
| </s:link>
|
| <s:link view="/listUser.xhtml" rendered="#{myUserList.nextExists}" value=" next ">
| <f:param name="firstResult" value="#{myUserList.nextFirstResult}"/>
| </s:link>
| <s:link view="/listUser.xhtml" rendered="#{myUserList.nextExists}" value=" last ">
| <f:param name="firstResult" value="#{myUserList.lastFirstResult}"/>
| </s:link>
|
| <div class="actionButtons">
| <s:button id="newuser" value="#{bundle.NewUser}" view="/managePages/addUser.xhtml" />
| <s:button id="done" value="#{bundle.cancel}" view="/pages/main.xhtml" />
| </div>
|
| </h:form>
| </ui:define>
| </ui:composition>
| </body>
| </html>
|
This is the stacktrace:
15:44:37,406 DEBUG org.jboss.seam.core.Events: Processing event:org.jboss.seam.postSetVariable.myUserList
| 15:44:37,421 DEBUG org.jboss.util.NestedThrowable: org.jboss.util.NestedThrowable.parentTraceEnabled=true
| 15:44:37,421 DEBUG org.jboss.util.NestedThrowable: org.jboss.util.NestedThrowable.nestedTraceEnabled=false
| 15:44:37,421 DEBUG org.jboss.util.NestedThrowable: org.jboss.util.NestedThrowable.detectDuplicateNesting=true
| 15:44:37,421 ERROR org.hibernate.util.JDBCExceptionReporter: Transaction is not active: tx=TransactionImpl:XidImpl[FormatId=257, GlobalId=null:1171291443484/10, BranchQual=null:1171291443484, localId=0:10]; - nested throwable: (javax.resource.ResourceException: Transaction is not active: tx=TransactionImpl:XidImpl[FormatId=257, GlobalId=null:1171291443484/10, BranchQual=null:1171291443484, localId=0:10])
| 12.02.2007 15:44:37 com.sun.facelets.FaceletViewHandler handleRenderException
| SCHWERWIEGEND: Error Rendering View[/listUser.xhtml]
| javax.faces.el.EvaluationException: /listUser.xhtml @66,72 value="#{myUserList.lastFirstResult}": Exception getting value of property lastFirstResult of base of type : org.jboss.seam.framework.HibernateEntityQuery$$EnhancerByCGLIB$$b1c71f88
| at com.sun.facelets.el.LegacyValueBinding.getValue(LegacyValueBinding.java:60)
| at javax.faces.component.UIParameter.getValue(UIParameter.java:68)
| at org.jboss.seam.ui.HtmlLink.getParameterString(HtmlLink.java:208)
| at org.jboss.seam.ui.HtmlLink.encodeBegin(HtmlLink.java:115)
| at com.sun.facelets.tag.jsf.ComponentSupport.encodeRecursive(ComponentSupport.java:242)
| at com.sun.facelets.tag.jsf.ComponentSupport.encodeRecursive(ComponentSupport.java:249)
| at com.sun.facelets.tag.jsf.ComponentSupport.encodeRecursive(ComponentSupport.java:249)
| at com.sun.facelets.FaceletViewHandler.renderView(FaceletViewHandler.java:573)
| at org.apache.myfaces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:384)
| at javax.faces.webapp.FacesServlet.service(FacesServlet.java:138)
| at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
| at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
| at org.jboss.seam.servlet.SeamExceptionFilter.doFilter(SeamExceptionFilter.java:43)
| at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
| at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
| at org.jboss.seam.servlet.SeamRedirectFilter.doFilter(SeamRedirectFilter.java:29)
| at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
| at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
| at org.apache.myfaces.webapp.filter.ExtensionsFilter.doFilter(ExtensionsFilter.java:144)
| at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
| at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
| at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
| at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
| at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
| at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
| at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
| at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
| at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869)
| at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664)
| at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
| at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80)
| at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)
| at java.lang.Thread.run(Unknown Source)
| Caused by: javax.faces.el.EvaluationException: Bean: org.jboss.seam.framework.HibernateEntityQuery$$EnhancerByCGLIB$$b1c71f88, property: lastFirstResult
| at org.apache.myfaces.el.PropertyResolverImpl.getProperty(PropertyResolverImpl.java:442)
| at org.apache.myfaces.el.PropertyResolverImpl.getValue(PropertyResolverImpl.java:82)
| at com.sun.facelets.el.LegacyELContext$LegacyELResolver.getValue(LegacyELContext.java:141)
| at com.sun.el.parser.AstValue.getValue(AstValue.java:96)
| at com.sun.el.ValueExpressionImpl.getValue(ValueExpressionImpl.java:183)
| at com.sun.facelets.el.TagValueExpression.getValue(TagValueExpression.java:71)
| at com.sun.facelets.el.LegacyValueBinding.getValue(LegacyValueBinding.java:56)
| ... 32 more
| Caused by: java.lang.reflect.InvocationTargetException
| at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
| at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
| at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
| at java.lang.reflect.Method.invoke(Unknown Source)
| at org.apache.myfaces.el.PropertyResolverImpl.getProperty(PropertyResolverImpl.java:438)
| ... 38 more
| Caused by: org.hibernate.exception.GenericJDBCException: Cannot open connection
| at org.hibernate.exception.SQLStateConverter.handledNonSpecificException(SQLStateConverter.java:103)
| at org.hibernate.exception.SQLStateConverter.convert(SQLStateConverter.java:91)
| at org.hibernate.exception.JDBCExceptionHelper.convert(JDBCExceptionHelper.java:43)
| at org.hibernate.exception.JDBCExceptionHelper.convert(JDBCExceptionHelper.java:29)
| at org.hibernate.jdbc.ConnectionManager.openConnection(ConnectionManager.java:420)
| at org.hibernate.jdbc.ConnectionManager.getConnection(ConnectionManager.java:144)
| at org.hibernate.jdbc.AbstractBatcher.prepareQueryStatement(AbstractBatcher.java:139)
| at org.hibernate.loader.Loader.prepareQueryStatement(Loader.java:1561)
| at org.hibernate.loader.Loader.doQuery(Loader.java:661)
| at org.hibernate.loader.Loader.doQueryAndInitializeNonLazyCollections(Loader.java:224)
| at org.hibernate.loader.Loader.doList(Loader.java:2145)
| at org.hibernate.loader.Loader.listIgnoreQueryCache(Loader.java:2029)
| at org.hibernate.loader.Loader.list(Loader.java:2024)
| at org.hibernate.loader.hql.QueryLoader.list(QueryLoader.java:392)
| at org.hibernate.hql.ast.QueryTranslatorImpl.list(QueryTranslatorImpl.java:333)
| at org.hibernate.engine.query.HQLQueryPlan.performList(HQLQueryPlan.java:172)
| at org.hibernate.impl.SessionImpl.list(SessionImpl.java:1114)
| at org.hibernate.impl.QueryImpl.list(QueryImpl.java:79)
| at org.hibernate.impl.AbstractQueryImpl.uniqueResult(AbstractQueryImpl.java:756)
| at org.jboss.seam.framework.HibernateEntityQuery.getResultCount(HibernateEntityQuery.java:67)
| at org.jboss.seam.framework.Query.getLastFirstResult(Query.java:110)
| at org.jboss.seam.framework.Query$$FastClassByCGLIB$$6805c8c9.invoke(<generated>)
| at net.sf.cglib.proxy.MethodProxy.invoke(MethodProxy.java:149)
| at org.jboss.seam.intercept.RootInvocationContext.proceed(RootInvocationContext.java:45)
| at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:55)
| at org.jboss.seam.interceptors.OutcomeInterceptor.interceptOutcome(OutcomeInterceptor.java:21)
| at sun.reflect.GeneratedMethodAccessor149.invoke(Unknown Source)
| at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
| at java.lang.reflect.Method.invoke(Unknown Source)
| at org.jboss.seam.util.Reflections.invoke(Reflections.java:18)
| at org.jboss.seam.intercept.Interceptor.aroundInvoke(Interceptor.java:169)
| at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:64)
| at org.jboss.seam.interceptors.RollbackInterceptor.rollbackIfNecessary(RollbackInterceptor.java:29)
| at sun.reflect.GeneratedMethodAccessor148.invoke(Unknown Source)
| at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
| at java.lang.reflect.Method.invoke(Unknown Source)
| at org.jboss.seam.util.Reflections.invoke(Reflections.java:18)
| at org.jboss.seam.intercept.Interceptor.aroundInvoke(Interceptor.java:169)
| at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:64)
| at org.jboss.seam.interceptors.ConversationInterceptor.endOrBeginLongRunningConversation(ConversationInterceptor.java:52)
| at sun.reflect.GeneratedMethodAccessor147.invoke(Unknown Source)
| at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
| at java.lang.reflect.Method.invoke(Unknown Source)
| at org.jboss.seam.util.Reflections.invoke(Reflections.java:18)
| at org.jboss.seam.intercept.Interceptor.aroundInvoke(Interceptor.java:169)
| at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:64)
| at org.jboss.seam.interceptors.TransactionInterceptor$1.work(TransactionInterceptor.java:28)
| at org.jboss.seam.util.Work.workInTransaction(Work.java:37)
| at org.jboss.seam.interceptors.TransactionInterceptor.doInTransactionIfNecessary(TransactionInterceptor.java:23)
| at sun.reflect.GeneratedMethodAccessor151.invoke(Unknown Source)
| at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
| at java.lang.reflect.Method.invoke(Unknown Source)
| at org.jboss.seam.util.Reflections.invoke(Reflections.java:18)
| at org.jboss.seam.intercept.Interceptor.aroundInvoke(Interceptor.java:169)
| at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:64)
| at org.jboss.seam.interceptors.MethodContextInterceptor.aroundInvoke(MethodContextInterceptor.java:27)
| at sun.reflect.GeneratedMethodAccessor146.invoke(Unknown Source)
| at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
| at java.lang.reflect.Method.invoke(Unknown Source)
| at org.jboss.seam.util.Reflections.invoke(Reflections.java:18)
| at org.jboss.seam.intercept.Interceptor.aroundInvoke(Interceptor.java:169)
| at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:64)
| at org.jboss.seam.intercept.RootInterceptor.createSeamInvocationContext(RootInterceptor.java:144)
| at org.jboss.seam.intercept.RootInterceptor.invokeInContexts(RootInterceptor.java:129)
| at org.jboss.seam.intercept.RootInterceptor.invoke(RootInterceptor.java:102)
| at org.jboss.seam.intercept.JavaBeanInterceptor.interceptInvocation(JavaBeanInterceptor.java:145)
| at org.jboss.seam.intercept.JavaBeanInterceptor.intercept(JavaBeanInterceptor.java:80)
| at org.jboss.seam.framework.HibernateEntityQuery$$EnhancerByCGLIB$$b1c71f88.getLastFirstResult(<generated>)
| ... 43 more
| Caused by: org.jboss.util.NestedSQLException: Transaction is not active: tx=TransactionImpl:XidImpl[FormatId=257, GlobalId=null:1171291443484/10, BranchQual=null:1171291443484, localId=0:10]; - nested throwable: (javax.resource.ResourceException: Transaction is not active: tx=TransactionImpl:XidImpl[FormatId=257, GlobalId=null:1171291443484/10, BranchQual=null:1171291443484, localId=0:10])
| at org.jboss.resource.adapter.jdbc.WrapperDataSource.getConnection(WrapperDataSource.java:94)
| at org.hibernate.connection.DatasourceConnectionProvider.getConnection(DatasourceConnectionProvider.java:69)
| at org.hibernate.jdbc.ConnectionManager.openConnection(ConnectionManager.java:417)
| ... 106 more
| Caused by: javax.resource.ResourceException: Transaction is not active: tx=TransactionImpl:XidImpl[FormatId=257, GlobalId=null:1171291443484/10, BranchQual=null:1171291443484, localId=0:10]
| at org.jboss.resource.connectionmanager.TxConnectionManager.getManagedConnection(TxConnectionManager.java:290)
| at org.jboss.resource.connectionmanager.BaseConnectionManager2.allocateConnection(BaseConnectionManager2.java:392)
| at org.jboss.resource.adapter.jdbc.local.LocalTxDataSource$ConnectionManagerDelegate.allocateConnection(LocalTxDataSource.java:78)
| at org.jboss.resource.adapter.jdbc.WrapperDataSource.getConnection(WrapperDataSource.java:88)
| ... 108 more
| 15:44:37,437 DEBUG org.jboss.seam.Component: seam component not found: org
| 15:44:37,437 DEBUG org.jboss.seam.Component: seam component not found: org.jboss
| 15:44:37,437 DEBUG org.jboss.seam.Component: seam component not found: org.jboss.seam
| 15:44:37,437 DEBUG org.jboss.seam.Component: seam component not found: org.jboss.seam.core
| 15:44:37,437 DEBUG org.jboss.seam.Component: seam component not found: entry
| 15:44:37,437 DEBUG org.jboss.seam.Component: seam component not found: entry
| 15:44:37,437 DEBUG org.jboss.seam.Component: seam component not found: entry
| 15:44:37,437 DEBUG org.jboss.seam.Component: seam component not found: entry
| 15:44:37,437 DEBUG org.jboss.seam.Component: seam component not found: org
| 15:44:37,437 DEBUG org.jboss.seam.Component: seam component not found: org.jboss
| 15:44:37,437 DEBUG org.jboss.seam.Component: seam component not found: org.jboss.seam
| 15:44:37,437 DEBUG org.jboss.seam.Component: seam component not found: org.jboss.seam.core
| 15:44:37,437 DEBUG org.jboss.seam.Component: seam component not found: entry
| 15:44:37,437 DEBUG org.jboss.seam.Component: seam component not found: org
| 15:44:37,437 DEBUG org.jboss.seam.Component: seam component not found: org.jboss
| 15:44:37,437 DEBUG org.jboss.seam.Component: seam component not found: org.jboss.seam
| 15:44:37,437 DEBUG org.jboss.seam.Component: seam component not found: org.jboss.seam.core
| 15:44:37,453 DEBUG org.jboss.seam.Component: seam component not found: org
| 15:44:37,453 DEBUG org.jboss.seam.Component: seam component not found: org.jboss
| 15:44:37,453 DEBUG org.jboss.seam.Component: seam component not found: org.jboss.seam
| 15:44:37,453 DEBUG org.jboss.seam.Component: seam component not found: org.jboss.seam.core
| 15:44:37,453 DEBUG org.jboss.seam.Component: seam component not found: bazExperiment
| 15:44:37,468 DEBUG org.jboss.seam.intercept.RootInterceptor: intercepted: myUserList.getResultList
|
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4015068#4015068
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4015068
19Â years, 2Â months
[JBoss Seam] - Re: SeamLoginModule
by koriel
Well I did tried 1.1.6 and it was alot better...now I can login and authenticate but when the flow returns from the authenticate method the value (true) I got this exception ....
| 16:37:00,505 ERROR [SeamExceptionFilter] uncaught exception
| javax.servlet.ServletException: Error calling action method of component with id _id7:_id15
| at javax.faces.webapp.FacesServlet.service(FacesServlet.java:152)
| at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
| at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
| at org.jboss.seam.servlet.SeamRedirectFilter.doFilter(SeamRedirectFilter.java:29)
| at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
| at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
| at org.jboss.seam.servlet.SeamExceptionFilter.doFilter(SeamExceptionFilter.java:43)
| at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
| at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
| at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
| at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
| at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
| at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
| at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
| at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:175)
| at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:432)
| at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:74)
| at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
| at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
| at org.jboss.web.tomcat.tc5.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:156)
| at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
| at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
| at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869)
| at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664)
| at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
| at org.apache.tomcat.util.net.MasterSlaveWorkerThread.run(MasterSlaveWorkerThread.java:112)
| at java.lang.Thread.run(Thread.java:595)
| 16:37:00,552 ERROR [SeamExceptionFilter] exception root cause
| javax.faces.FacesException: Error calling action method of component with id _id7:_id15
| at org.apache.myfaces.application.ActionListenerImpl.processAction(ActionListenerImpl.java:74)
| at javax.faces.component.UICommand.broadcast(UICommand.java:106)
| at javax.faces.component.UIViewRoot._broadcastForPhase(UIViewRoot.java:94)
| at javax.faces.component.UIViewRoot.processApplication(UIViewRoot.java:168)
| at org.apache.myfaces.lifecycle.LifecycleImpl.invokeApplication(LifecycleImpl.java:343)
| at org.apache.myfaces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:86)
| at javax.faces.webapp.FacesServlet.service(FacesServlet.java:137)
| at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
| at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
| at org.jboss.seam.servlet.SeamRedirectFilter.doFilter(SeamRedirectFilter.java:29)
| at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
| at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
| at org.jboss.seam.servlet.SeamExceptionFilter.doFilter(SeamExceptionFilter.java:43)
| at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
| at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
| at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
| at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
| at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
| at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
| at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
| at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:175)
| at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:432)
| at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:74)
| at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
| at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
| at org.jboss.web.tomcat.tc5.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:156)
| at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
| at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
| at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869)
| at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664)
| at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
| at org.apache.tomcat.util.net.MasterSlaveWorkerThread.run(MasterSlaveWorkerThread.java:112)
| at java.lang.Thread.run(Thread.java:595)
| Caused by: javax.faces.el.EvaluationException: /home.xhtml @51,70 action="#{identity.login}": java.lang.IllegalStateException: no security rule base available - please install a RuleBase with the name 'securityRules'
| at com.sun.facelets.el.LegacyMethodBinding.invoke(LegacyMethodBinding.java:73)
| at org.apache.myfaces.application.ActionListenerImpl.processAction(ActionListenerImpl.java:63)
| ... 32 more
| Caused by: java.lang.IllegalStateException: no security rule base available - please install a RuleBase with the name 'securityRules'
| at org.jboss.seam.security.Identity.assertSecurityContextExists(Identity.java:276)
| at org.jboss.seam.security.Identity.populateSecurityContext(Identity.java:245)
| at org.jboss.seam.security.Identity.postAuthenticate(Identity.java:223)
| at org.jboss.seam.security.Identity.authenticate(Identity.java:207)
| at org.jboss.seam.security.Identity.authenticate(Identity.java:199)
| at org.jboss.seam.security.Identity.login(Identity.java:184)
| 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 com.sun.el.parser.AstValue.invoke(AstValue.java:151)
| at com.sun.el.MethodExpressionImpl.invoke(MethodExpressionImpl.java:283)
| at com.sun.facelets.el.TagMethodExpression.invoke(TagMethodExpression.java:68)
| at com.sun.facelets.el.LegacyMethodBinding.invoke(LegacyMethodBinding.java:69)
| ... 33 more
| 16:37:00,942 ERROR [[Faces Servlet]] Servlet.service() for servlet Faces Servlet threw exception
| javax.faces.FacesException: Error calling action method of component with id _id7:_id15
| at org.apache.myfaces.application.ActionListenerImpl.processAction(ActionListenerImpl.java:74)
| at javax.faces.component.UICommand.broadcast(UICommand.java:106)
| at javax.faces.component.UIViewRoot._broadcastForPhase(UIViewRoot.java:94)
| at javax.faces.component.UIViewRoot.processApplication(UIViewRoot.java:168)
| at org.apache.myfaces.lifecycle.LifecycleImpl.invokeApplication(LifecycleImpl.java:343)
| at org.apache.myfaces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:86)
| at javax.faces.webapp.FacesServlet.service(FacesServlet.java:137)
| at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
| at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
| at org.jboss.seam.servlet.SeamRedirectFilter.doFilter(SeamRedirectFilter.java:29)
| at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
| at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
| at org.jboss.seam.servlet.SeamExceptionFilter.doFilter(SeamExceptionFilter.java:43)
| at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
| at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
| at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
| at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
| at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
| at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
| at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
| at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:175)
| at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:432)
| at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:74)
| at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
| at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
| at org.jboss.web.tomcat.tc5.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:156)
| at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
| at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
| at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869)
| at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664)
| at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
| at org.apache.tomcat.util.net.MasterSlaveWorkerThread.run(MasterSlaveWorkerThread.java:112)
| at java.lang.Thread.run(Thread.java:595)
| Caused by: javax.faces.el.EvaluationException: /home.xhtml @51,70 action="#{identity.login}": java.lang.IllegalStateException: no security rule base available - please install a RuleBase with the name 'securityRules'
| at com.sun.facelets.el.LegacyMethodBinding.invoke(LegacyMethodBinding.java:73)
| at org.apache.myfaces.application.ActionListenerImpl.processAction(ActionListenerImpl.java:63)
| ... 32 more
| Caused by: java.lang.IllegalStateException: no security rule base available - please install a RuleBase with the name 'securityRules'
| at org.jboss.seam.security.Identity.assertSecurityContextExists(Identity.java:276)
| at org.jboss.seam.security.Identity.populateSecurityContext(Identity.java:245)
| at org.jboss.seam.security.Identity.postAuthenticate(Identity.java:223)
| at org.jboss.seam.security.Identity.authenticate(Identity.java:207)
| at org.jboss.seam.security.Identity.authenticate(Identity.java:199)
| at org.jboss.seam.security.Identity.login(Identity.java:184)
| 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 com.sun.el.parser.AstValue.invoke(AstValue.java:151)
| at com.sun.el.MethodExpressionImpl.invoke(MethodExpressionImpl.java:283)
| at com.sun.facelets.el.TagMethodExpression.invoke(TagMethodExpression.java:68)
| at com.sun.facelets.el.LegacyMethodBinding.invoke(LegacyMethodBinding.java:69)
| ... 33 more
|
|
And when I call the jsf page for the first time before I run the authenticator.authenticate method I get this exception
| Session event listener threw exception
| java.lang.RuntimeException: exception invoking: compileRuleBase
| at org.jboss.seam.util.Reflections.invokeAndWrap(Reflections.java:112)
| at org.jboss.seam.Component.callComponentMethod(Component.java:1835)
| at org.jboss.seam.Component.callCreateMethod(Component.java:1783)
| at org.jboss.seam.Component.newInstance(Component.java:1772)
| at org.jboss.seam.Component.getInstance(Component.java:1669)
| at org.jboss.seam.Component.getInstance(Component.java:1636)
| at org.jboss.seam.security.Identity.initSecurityContext(Identity.java:109)
| at org.jboss.seam.security.Identity.create(Identity.java:84)
| 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.seam.util.Reflections.invoke(Reflections.java:18)
| at org.jboss.seam.util.Reflections.invokeAndWrap(Reflections.java:102)
| at org.jboss.seam.Component.callComponentMethod(Component.java:1835)
| at org.jboss.seam.Component.callCreateMethod(Component.java:1783)
| at org.jboss.seam.Component.newInstance(Component.java:1772)
| at org.jboss.seam.contexts.Lifecycle.startup(Lifecycle.java:163)
| at org.jboss.seam.contexts.Lifecycle.beginSession(Lifecycle.java:223)
| at org.jboss.seam.servlet.SeamListener.sessionCreated(SeamListener.java:41)
| at org.apache.catalina.session.StandardSession.tellNew(StandardSession.java:384)
| at org.apache.catalina.session.StandardSession.setId(StandardSession.java:356)
| at org.apache.catalina.session.ManagerBase.createSession(ManagerBase.java:824)
| at org.apache.catalina.session.StandardManager.createSession(StandardManager.java:290)
| at org.apache.catalina.connector.Request.doGetSession(Request.java:2223)
| at org.apache.catalina.connector.Request.getSession(Request.java:2024)
| at org.apache.catalina.connector.RequestFacade.getSession(RequestFacade.java:831)
| at org.apache.myfaces.context.servlet.ServletExternalContextImpl.getSession(ServletExternalContextImpl.java:197)
| at org.jboss.seam.contexts.ContextAdaptor.getSession(ContextAdaptor.java:42)
| at org.jboss.seam.contexts.Lifecycle.beginRequest(Lifecycle.java:42)
| at org.jboss.seam.jsf.SeamPhaseListener.beforePhase(SeamPhaseListener.java:53)
| at org.apache.myfaces.lifecycle.PhaseListenerManager.informPhaseListenersBefore(PhaseListenerManager.java:70)
| at org.apache.myfaces.lifecycle.LifecycleImpl.restoreView(LifecycleImpl.java:103)
| at org.apache.myfaces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:66)
| at javax.faces.webapp.FacesServlet.service(FacesServlet.java:137)
| at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
| at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
| at org.jboss.seam.servlet.SeamRedirectFilter.doFilter(SeamRedirectFilter.java:29)
| at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
| at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
| at org.jboss.seam.servlet.SeamExceptionFilter.doFilter(SeamExceptionFilter.java:43)
| at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
| at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
| at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
| at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
| at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
| at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
| at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
| at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:175)
| at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:432)
| at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:74)
| at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
| at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
| at org.jboss.web.tomcat.tc5.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:156)
| at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
| at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
| at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869)
| at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664)
| at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
| at org.apache.tomcat.util.net.MasterSlaveWorkerThread.run(MasterSlaveWorkerThread.java:112)
| at java.lang.Thread.run(Thread.java:595)
| Caused by: java.lang.reflect.InvocationTargetException
| 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.seam.util.Reflections.invoke(Reflections.java:18)
| at org.jboss.seam.util.Reflections.invokeAndWrap(Reflections.java:102)
| ... 60 more
| Caused by: java.lang.NoClassDefFoundError: org/codehaus/janino/IClassLoader
| at java.lang.Class.forName0(Native Method)
| at java.lang.Class.forName(Class.java:164)
| at org.apache.commons.jci.compilers.JavaCompilerFactory.createCompiler(JavaCompilerFactory.java:67)
| at org.drools.compiler.PackageBuilder.loadCompiler(Unknown Source)
| at org.drools.compiler.PackageBuilder.<init>(Unknown Source)
| at org.drools.compiler.PackageBuilder.<init>(Unknown Source)
| at org.jboss.seam.drools.RuleBase.compileRuleBase(RuleBase.java:40)
| ... 66 more
|
|
My components.xml file
| <?xml version="1.0" encoding="UTF-8"?>
| <components xmlns="http://jboss.com/products/seam/components"
| xmlns:core="http://jboss.com/products/seam/core"
| xmlns:security="http://jboss.com/products/seam/security"
| xmlns:drools="http://jboss.com/products/seam/drools"
| xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
| xsi:schemaLocation="http://jboss.com/products/seam/core http://jboss.com/products/seam/core-1.1.xsd
| http://jboss.com/products/seam/components http://jboss.com/products/seam/components-1.1.xsd">
|
| <component name="org.jboss.seam.core.init">
| <property name="jndiPattern">new_uai/#{ejbName}/local</property>
| </component>
|
|
| <!-- 120 second conversation timeout -->
| <core:manager conversation-timeout="120000" />
|
| <!-- <core:jbpm>
| <core:process-definitions>
| <value>ordermanagement1.jpdl.xml</value>
| </core:process-definitions>
| <core:pageflow-definitions>
| <value>checkout.jpdl.xml</value>
| <value>newuser.jpdl.xml</value>
| </core:pageflow-definitions>
| </core:jbpm> -->
|
|
| <security:identity
| authenticate-method="#{authenticator.authenticate}" />
|
|
| <drools:rule-base name="securityRules">
| <drools:rule-files>security.drl</drools:rule-files>
| </drools:rule-base>
|
|
|
| </components>
|
|
and the security.drl is in my jar,war and ear files just in case (putting it in the jar didn't work so I put it everywhere) but it is empty..(I copy paste the example code but it didn't work either)...
any ideas?
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4015067#4015067
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4015067
19Â years, 2Â months
[JBoss Portal] - Re: JBoss Portal LDAP Setup
by dleerob
Okay so the way I ended up working around the security issues when using LDAP is this:
- I downloaded the source so I could build the JBoss Portal myself.
- I DID NOT enable LDAP authenitcation and used the standard setup that comes with JBoss Portal.
- I created all the users I wanted in JBoss Portal the usual way, all with the same password, for example, "mypassword", but made sure that each username corresponded to the user name in my LDAP directory.
- I downloaded the JLdap library from www.openldap.org.
- I put the jar file in the portal lib directory.
- I added the jar file to jboss-portal-2.4.1-src\thirdparty.
- Added the classpath to jboss-portal-2.4.1-src\identity\build.xml.
- I edited jboss-portal-2.4.1-src\identity\src\main\org\jboss\portal\identity\auth\IdentityLoginModule in the JBoss Portal source code and added my own LDAPAuthentication method.
- In IdentityLoginModule, I edited the method validatePassword, and at the top of it, I called my LDAPAuthentication method with the supplied username and password, which then returned true if LDAP authenitcation passed, or false if it failed. If true was returned, I changed the supplied password to "mypassword" in validatePassword method, otherwise I changed it to "incorrect" or some other incorrect string. Now the rest of validatePassword method continues normally, and will login the user locally if they used their correct LDAP password.
- I built the portal source from scratch, and my customized LDAP authentication worked perfectly.
A workaround I know, but it works, and hopefully will help someone else.
When JBoss Portal 2.6 is stable, I will upgrade to that, and all of this will probably fall away.
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4015061#4015061
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4015061
19Â years, 2Â months