[seam-issues] [JBoss JIRA] (SEAMSECURITY-91) cannot delete user/role/group in idmconsole example on glassfish3.1.1

Richard Barabe (JIRA) jira-events at lists.jboss.org
Thu Jan 26 13:23:48 EST 2012


    [ https://issues.jboss.org/browse/SEAMSECURITY-91?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12662258#comment-12662258 ] 

Richard Barabe commented on SEAMSECURITY-91:
--------------------------------------------

Oh ... uh ...  What a shame :P

You are totally right.  An esoteric bunch of circumstances made me think it was working ok when in fact it wasn't working at all.  And I just learned that we didn't have any integrity constraint in database while testing.  So my database would have filled itself with dead relashionship over time.

I'm sorry Thomas, this obvious error took your time.  Thank you :P
                
> cannot delete user/role/group in idmconsole example on glassfish3.1.1
> ---------------------------------------------------------------------
>
>                 Key: SEAMSECURITY-91
>                 URL: https://issues.jboss.org/browse/SEAMSECURITY-91
>             Project: Seam Security
>          Issue Type: Bug
>    Affects Versions: 3.1.0.Beta1, 3.1.0.Final
>         Environment: glassfish3.1.1, seam-security-3.1.0.Beta2
>            Reporter: Tomas Remes
>            Assignee: Shane Bryzak
>         Attachments: idmconsole.log
>
>
> deletion fails:
> Exception [EclipseLink-6089] (Eclipse Persistence Services - 2.3.0.v20110604-r9504): org.eclipse.persistence.exceptions.QueryException
> Exception Description: The expression has not been initialized correctly.  Only a single ExpressionBuilder should be used for a query. 
> For parallel expressions, the query class must be provided to the ExpressionBuilder constructor, and the query's ExpressionBuilder must 
> always be on the left side of the expression. 
> Expression: [
> Base org.jboss.seam.security.examples.idmconsole.model.IdentityObjectRelationship]
> Query: ReadAllQuery(referenceClass=IdentityObjectRelationship )
> 	at org.eclipse.persistence.exceptions.QueryException.noExpressionBuilderFound(QueryException.java:877)
> 	at org.eclipse.persistence.expressions.ExpressionBuilder.getDescriptor(ExpressionBuilder.java:195)
> 	at org.eclipse.persistence.internal.expressions.DataExpression.getMapping(DataExpression.java:214)
> 	at org.eclipse.persistence.internal.expressions.QueryKeyExpression.getMapping(QueryKeyExpression.java:388)
> 	at org.eclipse.persistence.internal.expressions.RelationExpression.isObjectComparison(RelationExpression.java:452)
> 	at org.eclipse.persistence.internal.expressions.RelationExpression.normalize(RelationExpression.java:517)
> 	at org.eclipse.persistence.internal.expressions.SQLSelectStatement.normalize(SQLSelectStatement.java:1300)
> 	at org.eclipse.persistence.internal.queries.ExpressionQueryMechanism.buildNormalSelectStatement(ExpressionQueryMechanism.java:516)
> 	at org.eclipse.persistence.internal.queries.ExpressionQueryMechanism.prepareSelectAllRows(ExpressionQueryMechanism.java:1602)
> 	at org.eclipse.persistence.queries.ReadAllQuery.prepareSelectAllRows(ReadAllQuery.java:705)
> 	at org.eclipse.persistence.queries.ReadAllQuery.prepare(ReadAllQuery.java:642)
> 	at org.eclipse.persistence.queries.DatabaseQuery.checkPrepare(DatabaseQuery.java:598)
> 	at org.eclipse.persistence.queries.ObjectLevelReadQuery.checkPrepare(ObjectLevelReadQuery.java:839)
> 	at org.eclipse.persistence.queries.DatabaseQuery.checkPrepare(DatabaseQuery.java:560)
> 	at org.eclipse.persistence.queries.DatabaseQuery.execute(DatabaseQuery.java:797)
> 	at org.eclipse.persistence.queries.ObjectLevelReadQuery.execute(ObjectLevelReadQuery.java:1056)
> 	at org.eclipse.persistence.queries.ReadAllQuery.execute(ReadAllQuery.java:390)
> 	at org.eclipse.persistence.queries.ObjectLevelReadQuery.executeInUnitOfWork(ObjectLevelReadQuery.java:1144)
> 	at org.eclipse.persistence.internal.sessions.UnitOfWorkImpl.internalExecuteQuery(UnitOfWorkImpl.java:2863)
> 	at org.eclipse.persistence.internal.sessions.AbstractSession.executeQuery(AbstractSession.java:1501)
> 	at org.eclipse.persistence.internal.sessions.AbstractSession.executeQuery(AbstractSession.java:1483)
> 	at org.eclipse.persistence.internal.sessions.AbstractSession.executeQuery(AbstractSession.java:1457)
> 	at org.eclipse.persistence.internal.jpa.EJBQueryImpl.executeReadQuery(EJBQueryImpl.java:485)
> 	at org.eclipse.persistence.internal.jpa.EJBQueryImpl.getResultList(EJBQueryImpl.java:742)
> 	at org.jboss.seam.security.management.picketlink.JpaIdentityStore.removeRelationships(JpaIdentityStore.java:1404)
> 	at org.jboss.seam.security.management.picketlink.JpaIdentityStore.removeIdentityObject(JpaIdentityStore.java:1243)
> 	at org.picketlink.idm.impl.repository.WrapperIdentityStoreRepository.removeIdentityObject(WrapperIdentityStoreRepository.java:158)
> 	at org.picketlink.idm.impl.api.session.managers.PersistenceManagerImpl.removeUser(PersistenceManagerImpl.java:231)
> 	at org.jboss.seam.security.management.action.UserAction.deleteUser(UserAction.java:116)
> 	at org.jboss.seam.security.management.action.org$jboss$weld$bean-WEB-INF$lib$seam-security-3$1$0$Beta2-ManagedBean-org$jboss$seam$security$management$action$UserAction$@javax$enterprise$context$ConversationScoped()@javax$inject$Named(value=)${org$jboss$seam$security$management$action$UserAction$conversation$@javax$inject$Inject()$$org$jboss$seam$security$management$action$UserAction$identitySession$@javax$inject$Inject()$$org$jboss$seam$security$management$action$UserAction$deleteUser$@org$jboss$seam$transaction$Transactional(value=REQUIRED)@org$jboss$seam$transaction$TransactionalInterceptorBinding()$(java$lang$String)$org$jboss$seam$security$management$action$UserAction$save$@org$jboss$seam$transaction$Transactional(value=REQUIRED)@org$jboss$seam$transaction$TransactionalInterceptorBinding()$()$}_$$_WeldClientProxy.deleteUser(org$jboss$weld$bean-WEB-INF$lib$seam-security-3$1$0$Beta2-ManagedBean-org$jboss$seam$security$management$action$UserAction$@javax$enterprise$context$ConversationScoped()@javax$inject$Named(value=)${org$jboss$seam$security$management$action$UserAction$conversation$@javax$inject$Inject()$$org$jboss$seam$security$management$action$UserAction$identitySession$@javax$inject$Inject()$$org$jboss$seam$security$management$action$UserAction$deleteUser$@org$jboss$seam$transaction$Transactional(value=REQUIRED)@org$jboss$seam$transaction$TransactionalInterceptorBinding()$(java$lang$String)$org$jboss$seam$security$management$action$UserAction$save$@org$jboss$seam$transaction$Transactional(value=REQUIRED)@org$jboss$seam$transaction$TransactionalInterceptorBinding()$()$}_$$_WeldClientProxy.java)
> 	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:597)
> 	at javax.el.BeanELResolver.invokeMethod(BeanELResolver.java:737)
> 	at javax.el.BeanELResolver.invoke(BeanELResolver.java:467)
> 	at javax.el.CompositeELResolver.invoke(CompositeELResolver.java:254)
> 	at com.sun.el.parser.AstValue.invoke(AstValue.java:228)
> 	at com.sun.el.MethodExpressionImpl.invoke(MethodExpressionImpl.java:297)
> 	at org.jboss.weld.util.el.ForwardingMethodExpression.invoke(ForwardingMethodExpression.java:43)
> 	at org.jboss.weld.el.WeldMethodExpression.invoke(WeldMethodExpression.java:56)
> 	at com.sun.faces.facelets.el.TagMethodExpression.invoke(TagMethodExpression.java:105)
> 	at javax.faces.component.MethodBindingMethodExpressionAdapter.invoke(MethodBindingMethodExpressionAdapter.java:88)
> 	at com.sun.faces.application.ActionListenerImpl.processAction(ActionListenerImpl.java:102)
> 	at javax.faces.component.UICommand.broadcast(UICommand.java:315)
> 	at javax.faces.component.UIData.broadcast(UIData.java:1093)
> 	at javax.faces.component.UIViewRoot.broadcastEvents(UIViewRoot.java:794)
> 	at javax.faces.component.UIViewRoot.processApplication(UIViewRoot.java:1259)
> 	at com.sun.faces.lifecycle.InvokeApplicationPhase.execute(InvokeApplicationPhase.java:81)
> 	at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:101)
> 	at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:118)
> 	at javax.faces.webapp.FacesServlet.service(FacesServlet.java:593)
> 	at org.apache.catalina.core.StandardWrapper.service(StandardWrapper.java:1539)
> 	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:343)
> 	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:217)
> 	at org.jboss.seam.servlet.exception.CatchExceptionFilter.doFilter(CatchExceptionFilter.java:62)
> 	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:256)
> 	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:217)
> 	at org.jboss.seam.servlet.event.ServletEventBridgeFilter.doFilter(ServletEventBridgeFilter.java:72)
> 	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:256)
> 	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:217)
> 	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:279)
> 	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
> 	at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:655)
> 	at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:595)
> 	at com.sun.enterprise.web.WebPipeline.invoke(WebPipeline.java:98)
> 	at com.sun.enterprise.web.PESessionLockingStandardPipeline.invoke(PESessionLockingStandardPipeline.java:91)
> 	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:162)
> 	at org.apache.catalina.connector.CoyoteAdapter.doService(CoyoteAdapter.java:330)
> 	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:231)
> 	at com.sun.enterprise.v3.services.impl.ContainerMapper.service(ContainerMapper.java:174)
> 	at com.sun.grizzly.http.ProcessorTask.invokeAdapter(ProcessorTask.java:828)
> 	at com.sun.grizzly.http.ProcessorTask.doProcess(ProcessorTask.java:725)
> 	at com.sun.grizzly.http.ProcessorTask.process(ProcessorTask.java:1019)
> 	at com.sun.grizzly.http.DefaultProtocolFilter.execute(DefaultProtocolFilter.java:225)
> 	at com.sun.grizzly.DefaultProtocolChain.executeProtocolFilter(DefaultProtocolChain.java:137)
> 	at com.sun.grizzly.DefaultProtocolChain.execute(DefaultProtocolChain.java:104)
> 	at com.sun.grizzly.DefaultProtocolChain.execute(DefaultProtocolChain.java:90)
> 	at com.sun.grizzly.http.HttpProtocolChain.execute(HttpProtocolChain.java:79)
> 	at com.sun.grizzly.ProtocolChainContextTask.doCall(ProtocolChainContextTask.java:54)
> 	at com.sun.grizzly.SelectionKeyContextTask.call(SelectionKeyContextTask.java:59)
> 	at com.sun.grizzly.ContextTask.run(ContextTask.java:71)
> 	at com.sun.grizzly.util.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:532)
> 	at com.sun.grizzly.util.AbstractThreadPool$Worker.run(AbstractThreadPool.java:513)
> 	at java.lang.Thread.run(Thread.java:662)

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.jboss.org/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

       



More information about the seam-issues mailing list