persistence@glassfish.java.net

Re: Problem using ManyToMany relationship

From: Marina Vatkina <Marina.Vatkina_at_Sun.COM>
Date: Wed, 28 Mar 2007 14:45:40 -0700

Can you try if setting FetchType=EAGER on the userCollection makes a difference?

thanks,
-marina

Romanowski, Tim wrote:
> Full stack trace:
>
> Exception [TOPLINK-6094] (Oracle TopLink Essentials - 2.0 (Build b40-rc
> (03/20/2007))): oracle.toplink.essentials.exceptions.QueryException
> Exception Description: The parameter name [username] in the query's
> selection criteria does not match any parameter name defined in the query.
> Query: ReadAllQuery(com.my.persistence.entity.Team)
> at
> oracle.toplink.essentials.exceptions.QueryException.parameterNameMismatch(Qu
> eryException.java:966)
> at
> oracle.toplink.essentials.internal.expressions.ParameterExpression.getValue(
> ParameterExpression.java:215)
> at
> oracle.toplink.essentials.internal.databaseaccess.DatabaseCall.translate(Dat
> abaseCall.java:821)
> at
> oracle.toplink.essentials.internal.queryframework.DatasourceCallQueryMechani
> sm.executeCall(DatasourceCallQueryMechanism.java:212)
> at
> oracle.toplink.essentials.internal.queryframework.DatasourceCallQueryMechani
> sm.executeCall(DatasourceCallQueryMechanism.java:199)
> at
> oracle.toplink.essentials.internal.queryframework.DatasourceCallQueryMechani
> sm.executeSelectCall(DatasourceCallQueryMechanism.java:270)
> at
> oracle.toplink.essentials.internal.queryframework.DatasourceCallQueryMechani
> sm.selectAllRows(DatasourceCallQueryMechanism.java:600)
> at
> oracle.toplink.essentials.internal.queryframework.ExpressionQueryMechanism.s
> electAllRowsFromTable(ExpressionQueryMechanism.java:2240)
> at
> oracle.toplink.essentials.internal.queryframework.ExpressionQueryMechanism.s
> electAllRows(ExpressionQueryMechanism.java:2218)
> at
> oracle.toplink.essentials.queryframework.ReadAllQuery.executeObjectLevelRead
> Query(ReadAllQuery.java:302)
> at
> oracle.toplink.essentials.queryframework.ObjectLevelReadQuery.executeDatabas
> eQuery(ObjectLevelReadQuery.java:709)
> at
> oracle.toplink.essentials.queryframework.DatabaseQuery.execute(DatabaseQuery
> .java:609)
> at
> oracle.toplink.essentials.queryframework.ObjectLevelReadQuery.execute(Object
> LevelReadQuery.java:677)
> at
> oracle.toplink.essentials.internal.sessions.AbstractSession.internalExecuteQ
> uery(AbstractSession.java:1815)
> at
> oracle.toplink.essentials.internal.sessions.AbstractSession.executeQuery(Abs
> tractSession.java:937)
> at
> oracle.toplink.essentials.internal.indirection.QueryBasedValueHolder.instant
> iate(QueryBasedValueHolder.java:86)
> at
> oracle.toplink.essentials.internal.indirection.QueryBasedValueHolder.instant
> iate(QueryBasedValueHolder.java:76)
> at
> oracle.toplink.essentials.internal.indirection.DatabaseValueHolder.getValue(
> DatabaseValueHolder.java:90)
> at
> oracle.toplink.essentials.internal.indirection.UnitOfWorkValueHolder.instant
> iateImpl(UnitOfWorkValueHolder.java:160)
> at
> oracle.toplink.essentials.internal.indirection.UnitOfWorkValueHolder.instant
> iate(UnitOfWorkValueHolder.java:232)
> at
> oracle.toplink.essentials.internal.indirection.DatabaseValueHolder.getValue(
> DatabaseValueHolder.java:90)
> at
> oracle.toplink.essentials.indirection.IndirectList.buildDelegate(IndirectLis
> t.java:193)
> at
> oracle.toplink.essentials.indirection.IndirectList.getDelegate(IndirectList.
> java:315)
> at
> oracle.toplink.essentials.indirection.IndirectList$1.<init>(IndirectList.jav
> a:410)
> at
> oracle.toplink.essentials.indirection.IndirectList.iterator(IndirectList.jav
> a:409)
> at
> com.sun.facelets.tag.jstl.core.ForEachHandler.toIterator(ForEachHandler.java
> :262)
> at
> com.sun.facelets.tag.jstl.core.ForEachHandler.apply(ForEachHandler.java:129)
> at
> com.sun.facelets.tag.CompositeFaceletHandler.apply(CompositeFaceletHandler.j
> ava:47)
> at
> com.sun.facelets.tag.jsf.ComponentHandler.applyNextHandler(ComponentHandler.
> java:314)
> at
> com.sun.facelets.tag.jsf.ComponentHandler.apply(ComponentHandler.java:169)
> at
> com.sun.facelets.tag.CompositeFaceletHandler.apply(CompositeFaceletHandler.j
> ava:47)
> at
> com.sun.facelets.tag.jsf.ComponentHandler.applyNextHandler(ComponentHandler.
> java:314)
> at
> com.sun.facelets.tag.jsf.ComponentHandler.apply(ComponentHandler.java:169)
> at
> com.sun.facelets.tag.CompositeFaceletHandler.apply(CompositeFaceletHandler.j
> ava:47)
> at
> com.sun.facelets.tag.jsf.ComponentHandler.applyNextHandler(ComponentHandler.
> java:314)
> at
> com.sun.facelets.tag.jsf.ComponentHandler.apply(ComponentHandler.java:169)
> at
> com.sun.facelets.tag.jsf.core.ViewHandler.apply(ViewHandler.java:109)
> at
> com.sun.facelets.tag.ui.DefineHandler.apply(DefineHandler.java:58)
> at
> com.sun.facelets.tag.ui.CompositionHandler.apply(CompositionHandler.java:128
> )
> at
> com.sun.facelets.impl.DefaultFaceletContext$TemplateManager.apply(DefaultFac
> eletContext.java:306)
> at
> com.sun.facelets.impl.DefaultFaceletContext.includeDefinition(DefaultFacelet
> Context.java:279)
> at
> com.sun.facelets.tag.ui.InsertHandler.apply(InsertHandler.java:68)
> at
> com.sun.facelets.tag.CompositeFaceletHandler.apply(CompositeFaceletHandler.j
> ava:47)
> at
> com.sun.facelets.tag.jsf.core.ViewHandler.apply(ViewHandler.java:109)
> at
> com.sun.facelets.tag.CompositeFaceletHandler.apply(CompositeFaceletHandler.j
> ava:47)
> at
> com.sun.facelets.compiler.NamespaceHandler.apply(NamespaceHandler.java:49)
> at
> com.sun.facelets.tag.CompositeFaceletHandler.apply(CompositeFaceletHandler.j
> ava:47)
> at
> com.sun.facelets.compiler.EncodingHandler.apply(EncodingHandler.java:25)
> at
> com.sun.facelets.impl.DefaultFacelet.include(DefaultFacelet.java:248)
> at
> com.sun.facelets.impl.DefaultFacelet.include(DefaultFacelet.java:294)
> at
> com.sun.facelets.impl.DefaultFacelet.include(DefaultFacelet.java:273)
> at
> com.sun.facelets.impl.DefaultFaceletContext.includeFacelet(DefaultFaceletCon
> text.java:143)
> at
> com.sun.facelets.tag.ui.CompositionHandler.apply(CompositionHandler.java:113
> )
> at
> com.sun.facelets.compiler.NamespaceHandler.apply(NamespaceHandler.java:49)
> at
> com.sun.facelets.compiler.EncodingHandler.apply(EncodingHandler.java:25)
> at
> com.sun.facelets.impl.DefaultFacelet.apply(DefaultFacelet.java:95)
> at
> com.sun.facelets.FaceletViewHandler.buildView(FaceletViewHandler.java:503)
> at
> com.sun.facelets.FaceletViewHandler.renderView(FaceletViewHandler.java:546)
> at
> org.ajax4jsf.framework.ViewHandlerWrapper.renderView(ViewHandlerWrapper.java
> :108)
> at
> org.ajax4jsf.framework.ajax.AjaxViewHandler.renderView(AjaxViewHandler.java:
> 256)
> at
> com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java
> :106)
> at
> com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:251)
> at
> com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:144)
> at javax.faces.webapp.FacesServlet.service(FacesServlet.java:245)
> at
> org.apache.catalina.core.ApplicationFilterChain.servletService(ApplicationFi
> lterChain.java:398)
> at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Application
> FilterChain.java:304)
> at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterCh
> ain.java:185)
> at
> org.apache.myfaces.webapp.filter.ExtensionsFilter.doFilter(ExtensionsFilter.
> java:100)
> at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Application
> FilterChain.java:217)
> at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterCh
> ain.java:185)
> at
> org.ajax4jsf.framework.ajax.xmlfilter.BaseXMLFilter.doXmlFilter(BaseXMLFilte
> r.java:96)
> at
> org.ajax4jsf.framework.ajax.xmlfilter.BaseFilter.doFilter(BaseFilter.java:22
> 0)
> at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Application
> FilterChain.java:217)
> at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterCh
> ain.java:185)
> at
> org.apache.myfaces.webapp.filter.ExtensionsFilter.doFilter(ExtensionsFilter.
> java:147)
> at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Application
> FilterChain.java:217)
> at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterCh
> ain.java:185)
> at
> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.ja
> va:275)
> at
> org.apache.catalina.core.StandardContextValve.invokeInternal(StandardContext
> Valve.java:255)
> at
> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.ja
> va:188)
> at
> org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:611
> )
> at
> org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:564
> )
> at com.sun.enterprise.web.WebPipeline.invoke(WebPipeline.java:81)
> at
> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:193
> )
> at
> org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:611
> )
> at
> org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:564
> )
> at
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:558)
> at
> org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:1067)
> at
> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java
> :137)
> at
> org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:611
> )
> at
> org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:564
> )
> at
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:558)
> at
> org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:1067)
> at
> org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:255)
> at
> com.sun.enterprise.web.connector.grizzly.DefaultProcessorTask.invokeAdapter(
> DefaultProcessorTask.java:618)
> at
> com.sun.enterprise.web.connector.grizzly.DefaultProcessorTask.doProcess(Defa
> ultProcessorTask.java:549)
> at
> com.sun.enterprise.web.connector.grizzly.DefaultProcessorTask.process(Defaul
> tProcessorTask.java:790)
> at
> com.sun.enterprise.web.connector.grizzly.DefaultReadTask.executeProcessorTas
> k(DefaultReadTask.java:326)
> at
> com.sun.enterprise.web.connector.grizzly.DefaultReadTask.doTask(DefaultReadT
> ask.java:248)
> at
> com.sun.enterprise.web.connector.grizzly.DefaultReadTask.doTask(DefaultReadT
> ask.java:199)
> at
> com.sun.enterprise.web.portunif.PortUnificationPipeline$PUTask.doTask(PortUn
> ificationPipeline.java:347)
> at
> com.sun.enterprise.web.connector.grizzly.TaskBase.run(TaskBase.java:252)
> at
> com.sun.enterprise.web.connector.grizzly.ssl.SSLWorkerThread.run(SSLWorkerTh
> read.java:93)
>
> -----Original Message-----
> From: Marina.Vatkina_at_Sun.COM [mailto:Marina.Vatkina_at_Sun.COM]
> Sent: Wednesday, March 28, 2007 5:28 PM
> To: persistence_at_glassfish.dev.java.net
> Subject: Re: Problem using ManyToMany relationship
>
> Can you post the rest of the stack? There should be something in your code
> that
> triggers it.
>
> thanks,
> -marina
>
> Romanowski, Tim wrote:
>
>>Now we're getting somewhere...you see, I never wrote "ReadAllQuery." In
>>fact, I can't find it anywhere in my project using a fulltext search. I
>>thought it was something Glassfish provided and used internally.
>>
>>That being the case, I set the logging levels for the EJB Container and
>>Persistence to FINEST via the Glassfish Admin Console and reran my app. I
>>didn't get any more useful information. Where is ReadAllQuery coming
>
> from,
>
>>if it's not in my entity, nor in any of my other code (at least that
>>NetBeans search can find)? What else should I try to find this?
>>
>>Here's what I have from FINEST logging:
>>
>>Execute query ReadObjectQuery(com.my.persistence.entity.Users)
>>reconnecting to external connection pool
>>SELECT USERNAME, FIRSTNAME, PASSWORD, LASTNAME, ORGID FROM USERS WHERE
>>(USERNAME = ?)
>> bind => [tromanow]
>>Execute query ReadObjectQuery(com.my.persistence.entity.Org)
>>reconnecting to external connection pool
>>SELECT ORGID, NAME, DESCRIPTION FROM ORG WHERE (ORGID = ?)
>> bind => [10]
>>Register the existing object
>>com.my.persistence.entity.Users[username=tromanow]
>>Register the existing object com.my.persistence.entity.Org[orgid=10]
>>Execute query ReadAllQuery(com.my.persistence.entity.Team)
>>Local Exception Stack:
>>Exception [TOPLINK-6094] (Oracle TopLink Essentials - 2.0 (Build b40-rc
>>(03/20/2007))): oracle.toplink.essentials.exceptions.QueryException
>>Exception Description: The parameter name [username] in the query's
>>selection criteria does not match any parameter name defined in the query.
>>Query: ReadAllQuery(com.my.persistence.entity.Team)
>> at
>>
>
> oracle.toplink.essentials.exceptions.QueryException.parameterNameMismatch(Qu
>
>>eryException.java:966)
>> at
>>
>
> oracle.toplink.essentials.internal.expressions.ParameterExpression.getValue(
>
>>ParameterExpression.java:215)
>> at
>>
>
> oracle.toplink.essentials.internal.databaseaccess.DatabaseCall.translate(Dat
>
>>abaseCall.java:821)
>> at
>>
>
> oracle.toplink.essentials.internal.queryframework.DatasourceCallQueryMechani
>
>>sm.executeCall(DatasourceCallQueryMechanism.java:212)
>> at
>>
>
> oracle.toplink.essentials.internal.queryframework.DatasourceCallQueryMechani
>
>>sm.executeCall(DatasourceCallQueryMechanism.java:199)
>> at
>>
>
> oracle.toplink.essentials.internal.queryframework.DatasourceCallQueryMechani
>
>>sm.executeSelectCall(DatasourceCallQueryMechanism.java:270)
>> at
>>
>
> oracle.toplink.essentials.internal.queryframework.DatasourceCallQueryMechani
>
>>sm.selectAllRows(DatasourceCallQueryMechanism.java:600)
>> at
>>
>
> oracle.toplink.essentials.internal.queryframework.ExpressionQueryMechanism.s
>
>>electAllRowsFromTable(ExpressionQueryMechanism.java:2240)
>> at
>>
>
> oracle.toplink.essentials.internal.queryframework.ExpressionQueryMechanism.s
>
>>electAllRows(ExpressionQueryMechanism.java:2218)
>> at
>>
>
> oracle.toplink.essentials.queryframework.ReadAllQuery.executeObjectLevelRead
>
>>Query(ReadAllQuery.java:302)
>> at
>>
>
> oracle.toplink.essentials.queryframework.ObjectLevelReadQuery.executeDatabas
>
>>eQuery(ObjectLevelReadQuery.java:709)
>> at
>>
>
> oracle.toplink.essentials.queryframework.DatabaseQuery.execute(DatabaseQuery
>
>>.java:609)
>> at
>>
>
> oracle.toplink.essentials.queryframework.ObjectLevelReadQuery.execute(Object
>
>>LevelReadQuery.java:677)
>> at
>>
>
> oracle.toplink.essentials.internal.sessions.AbstractSession.internalExecuteQ
>
>>uery(AbstractSession.java:1815)
>>