ThisRelationshipFieldWasGeneratedByTheNameMapper7's
Cannot get around this error.
[27/Oct/2003:07:47:30] FINE ( 2388): model exception:
com.sun.jdo.api.persistence.model.util.ModelValidationException: The field partBin has a mapping which is not the exact inverse of its related field thisRelationshipFieldWasGeneratedByTheNameMapper7's mapping.
Set the related field for both relationship fields to None, unmap one of the fields, then reset the related field.
Is there a "deploy" anywhere's in between this unmapping. I can null out the mapping in the
mapping file, and the ejb-jar, but I still get errors deploying unless I change the source code
for the cmr field.
What it says is not the exact inverse, IS the exact inverse
[27/Oct/2003:07:47:28] INFO ( 2388): CORE3282: stdout: <cmr-field-mapping>
[27/Oct/2003:07:47:28] INFO ( 2388): CORE3282: stdout: <cmr-field-name>thisRelationshipFieldWasGeneratedByTheNameMapper7</cmr-field-name>
[27/Oct/2003:07:47:28] INFO ( 2388): CORE3282: stdout: <column-pair>
[27/Oct/2003:07:47:28] INFO ( 2388): CORE3282: stdout: <column-name>PARTBIN_EEDNC_DBSTORE.TCODE</column-name>
[27/Oct/2003:07:47:28] INFO ( 2388): CORE3282: stdout: <column-name>SOURCESINK_EEDNC_DBSTORE.PARTBINTCODE</column-name>
[27/Oct/2003:07:47:28] INFO ( 2388): CORE3282: stdout: </column-pair>
[27/Oct/2003:07:47:28] INFO ( 2388): CORE3282: stdout: <column-pair>
[27/Oct/2003:07:47:28] INFO ( 2388): CORE3282: stdout: <column-name>PARTBIN_EEDNC_DBSTORE.PROD</column-name>
[27/Oct/2003:07:47:28] INFO ( 2388): CORE3282: stdout: <column-name>SOURCESINK_EEDNC_DBSTORE.PARTBINPROD</column-name>
[27/Oct/2003:07:47:28] INFO ( 2388): CORE3282: stdout: </column-pair>
[27/Oct/2003:07:47:28] INFO ( 2388): CORE3282: stdout: <column-pair>
[27/Oct/2003:07:47:28] INFO ( 2388): CORE3282: stdout: <column-name>PARTBIN_EEDNC_DBSTORE.MEDIA</column-name>
[27/Oct/2003:07:47:28] INFO ( 2388): CORE3282: stdout: <column-name>SOURCESINK_EEDNC_DBSTORE.PARTBINMEDIA</column-name>
[27/Oct/2003:07:47:28] INFO ( 2388): CORE3282: stdout: </column-pair>
[27/Oct/2003:07:47:28] INFO ( 2388): CORE3282: stdout: <column-pair>
[27/Oct/2003:07:47:28] INFO ( 2388): CORE3282: stdout: <column-name>PARTBIN_EEDNC_DBSTORE.FWC</column-name>
[27/Oct/2003:07:47:28] INFO ( 2388): CORE3282: stdout: <column-name>SOURCESINK_EEDNC_DBSTORE.PARTBINFWC</column-name>
[27/Oct/2003:07:47:28] INFO ( 2388): CORE3282: stdout: </column-pair>
[27/Oct/2003:07:47:28] INFO ( 2388): CORE3282: stdout: <column-pair>
[27/Oct/2003:07:47:28] INFO ( 2388): CORE3282: stdout: <column-name>PARTBIN_EEDNC_DBSTORE.PART_NO</column-name>
[27/Oct/2003:07:47:28] INFO ( 2388): CORE3282: stdout: <column-name>SOURCESINK_EEDNC_DBSTORE.PARTBINPART_NO</column-name>
[27/Oct/2003:07:47:28] INFO ( 2388): CORE3282: stdout: </column-pair>
[27/Oct/2003:07:47:28] INFO ( 2388): CORE3282: stdout: </cmr-field-mapping>
And the real crm relationship;
[27/Oct/2003:07:47:28] INFO ( 2388): CORE3282: stdout: <cmr-field-mapping>
[27/Oct/2003:07:47:28] INFO ( 2388): CORE3282: stdout: <cmr-field-name>partBin</cmr-field-name>
[27/Oct/2003:07:47:28] INFO ( 2388): CORE3282: stdout: <column-pair>
[27/Oct/2003:07:47:28] INFO ( 2388): CORE3282: stdout: <column-name>SOURCESINK_EEDNC_DBSTORE.PARTBINPART_NO</column-name>
[27/Oct/2003:07:47:28] INFO ( 2388): CORE3282: stdout: <column-name>PARTBIN_EEDNC_DBSTORE.PART_NO</column-name>
[27/Oct/2003:07:47:28] INFO ( 2388): CORE3282: stdout: </column-pair>
[27/Oct/2003:07:47:28] INFO ( 2388): CORE3282: stdout: <column-pair>
[27/Oct/2003:07:47:28] INFO ( 2388): CORE3282: stdout: <column-name>SOURCESINK_EEDNC_DBSTORE.PARTBINFWC</column-name>
[27/Oct/2003:07:47:28] INFO ( 2388): CORE3282: stdout: <column-name>PARTBIN_EEDNC_DBSTORE.FWC</column-name>
[27/Oct/2003:07:47:28] INFO ( 2388): CORE3282: stdout: </column-pair>
[27/Oct/2003:07:47:28] INFO ( 2388): CORE3282: stdout: <column-pair>
[27/Oct/2003:07:47:28] INFO ( 2388): CORE3282: stdout: <column-name>SOURCESINK_EEDNC_DBSTORE.PARTBINMEDIA</column-name>
[27/Oct/2003:07:47:28] INFO ( 2388): CORE3282: stdout: <column-name>PARTBIN_EEDNC_DBSTORE.MEDIA</column-name>
[27/Oct/2003:07:47:28] INFO ( 2388): CORE3282: stdout: </column-pair>
[27/Oct/2003:07:47:28] INFO ( 2388): CORE3282: stdout: <column-pair>
[27/Oct/2003:07:47:28] INFO ( 2388): CORE3282: stdout: <column-name>SOURCESINK_EEDNC_DBSTORE.PARTBINPROD</column-name>
[27/Oct/2003:07:47:28] INFO ( 2388): CORE3282: stdout: <column-name>PARTBIN_EEDNC_DBSTORE.PROD</column-name>
[27/Oct/2003:07:47:28] INFO ( 2388): CORE3282: stdout: </column-pair>
[27/Oct/2003:07:47:28] INFO ( 2388): CORE3282: stdout: <column-pair>
[27/Oct/2003:07:47:28] INFO ( 2388): CORE3282: stdout: <column-name>SOURCESINK_EEDNC_DBSTORE.PARTBINTCODE</column-name>
[27/Oct/2003:07:47:28] INFO ( 2388): CORE3282: stdout: <column-name>PARTBIN_EEDNC_DBSTORE.TCODE</column-name>
[27/Oct/2003:07:47:28] INFO ( 2388): CORE3282: stdout: </column-pair>
[27/Oct/2003:07:47:28] INFO ( 2388): CORE3282: stdout: </cmr-field-mapping>
Anyhow, I tired of looking at logs for days now. There is apparently no help on this container
mapping.
For now I am going to try adding a cmr field going the other way, converting to a bi directional
relationship in the vanilla j2ee stuff.
Adding a cmr field going back the other way, solved the "thisRelationshipFieldWasGeneratedByTheNameMapper7's" problem, apparently.
Everything deployed and worked, including findbyprimarykey. I just manually added
the same mapping for the new j2ee cmr as the thisRelationshipFieldWasGeneratedByTheNameMapper7's mapping said was bogus
and CRUD works with the 5 field compound primary key.
At least I won't stagnate any longer in "thisRelationshipFieldWasGeneratedByTheNameMapper7's"
hell, and can get on with real work, and stop fighting with the app server. Not cool, as
it required source code changes to add the cmr field to the entity bean. Also, there should
be no relationship going back to the source bean, although I need one to function??? but
only with the compound primary key. A single PK seems to like the thisRelationshipFieldWasGeneratedByTheNameMapper, and deploys and runs fine.
Similar Messages
-
Exists some problem with auto-relationship?
Hi all,
I'm getting the following exception when I make deploy.
[14/May/2003:12:23:28] FINE ( 3132): Field: atributos
[14/May/2003:12:23:28] FINE ( 3132): Field: coluna br.com.inttegra.infra.bean.tabela.ColunaTabelaLocal
[14/May/2003:12:23:28] FINE ( 3132): -Methods: getColuna setColuna
[14/May/2003:12:23:28] FINE ( 3132): ##### PCImplClass Name is br.com.inttegra.infra.bean.tabela.ColunaTabelaEJB_849864039_JDOState
[14/May/2003:12:23:28] FINE ( 3132): ##### PCImplClass Name is br.com.inttegra.infra.bean.tabela.ColunaTabelaEJB_849864039_JDOState
[14/May/2003:12:23:28] FINE ( 3132): manySide: false
[14/May/2003:12:23:28] FINE ( 3132): Field: thisRelationshipFieldWasGeneratedByTheNameMapper67
[14/May/2003:12:23:28] FINE ( 3132): Field: classe br.com.inttegra.infra.bean.classes.ClassesLocal
[14/May/2003:12:23:28] FINE ( 3132): -Methods: getClasse setClasse
[14/May/2003:12:23:28] FINE ( 3132): ##### PCImplClass Name is br.com.inttegra.infra.bean.classes.ClassesEJB_413640801_JDOState
[14/May/2003:12:23:28] FINE ( 3132): ##### PCImplClass Name is br.com.inttegra.infra.bean.classes.ClassesEJB_413640801_JDOState
[14/May/2003:12:23:28] FINE ( 3132): manySide: false
[14/May/2003:12:23:28] FINE ( 3132): Field: thisRelationshipFieldWasGeneratedByTheNameMapper71
[14/May/2003:12:23:28] FINE ( 3132): Finder: ejbFindByPrimaryKey
[14/May/2003:12:23:28] FINE ( 3132): Finder: ejbFindAll
[14/May/2003:12:23:28] FINER ( 3132): EJBQLC compile query
Bean: ParseAtributo
Method: java.util.Collection findAll()
EJBQL: select object(pa) from ParseAtributoEJB pa
[14/May/2003:12:23:28] FINER ( 3132): EJBQLC start syntax analysis
[14/May/2003:12:23:28] FINEST ( 3132): EJBQLC dump tree (AST)
QUERY [61, (0/0), null]
from [5, (1/19), null]
RANGE [62, (0/0), null]
ParseAtributoEJB [46, (1/24), null]
pa [46, (1/41), null]
select [4, (1/1), null]
object [8, (1/8), null]
pa [46, (1/15), null]
WHERE [6, (0/0), null]
TRUE [10, (0/0), null]
[14/May/2003:12:23:28] FINER ( 3132): EJBQLC start semantic analysis
[14/May/2003:12:23:28] FINEST ( 3132): EJBQLC dump tree (typed AST)
QUERY [61, (0/0), null]
from [5, (1/19), null]
RANGE [62, (0/0), null]
ParseAtributoEJB [68, (1/24), ParseAtributo]
pa [67, (1/41), ParseAtributo]
select [4, (1/1), null]
object [8, (1/8), ParseAtributo]
pa [66, (1/15), ParseAtributo]
WHERE [6, (0/0), null]
TRUE [10, (0/0), boolean]
[14/May/2003:12:23:28] FINER ( 3132): EJBQLC start code generation
[14/May/2003:12:23:28] FINE ( 3132): ##### PCImplClass Name is br.com.inttegra.infra.bean.parse.ParseAtributoEJB789766943_JDOState
[14/May/2003:12:23:28] FINE ( 3132): ##### PCImplClass Name is br.com.inttegra.infra.bean.parse.ParseAtributoEJB789766943_JDOState
[14/May/2003:12:23:28] FINER ( 3132): EJBQLC result JDOQLElements(candidateClass: br.com.inttegra.infra.bean.parse.ParseAtributoEJB789766943_JDOState, filter: true, result: this, resultType: br.com.inttegra.infra.bean.parse.ParseAtributoEJB789766943_JDOState, isPCResult: true)
[14/May/2003:12:23:28] FINE ( 3132): Selectors: 0
[14/May/2003:12:23:28] FINE ( 3132): CreateMethod: br.com.inttegra.infra.bean.parse.ParseAtributoEJBcreate
[14/May/2003:12:23:28] FINE ( 3132): ejbCreateMethod: ejbCreate
[14/May/2003:12:23:28] FINE ( 3132): ejbPostCreateMethod: ejbPostCreate
[14/May/2003:12:23:28] FINE ( 3132): Processing method: unsetEntityContext
[14/May/2003:12:23:28] FINE ( 3132): Known method: null
[14/May/2003:12:23:28] FINE ( 3132): Found method: public void br.com.inttegra.infra.bean.parse.ParseAtributoEJB.unsetEntityContext()
[14/May/2003:12:23:28] FINE ( 3132): Processing method: ejbRemove
[14/May/2003:12:23:28] FINE ( 3132): Known method: null
[14/May/2003:12:23:28] FINE ( 3132): Found method: public void br.com.inttegra.infra.bean.parse.ParseAtributoEJB.ejbRemove() throws javax.ejb.RemoveException,javax.ejb.EJBException
[14/May/2003:12:23:28] FINE ( 3132): Processing method: beforeCompletion
[14/May/2003:12:23:28] FINE ( 3132): Known method: null
[14/May/2003:12:23:28] FINE ( 3132): Processing method: ejbLoad
[14/May/2003:12:23:28] FINE ( 3132): Known method: null
[14/May/2003:12:23:28] FINE ( 3132): Found method: public void br.com.inttegra.infra.bean.parse.ParseAtributoEJB.ejbLoad() throws javax.ejb.EJBException,java.rmi.RemoteException
[14/May/2003:12:23:28] FINE ( 3132): Processing method: ejbStore
[14/May/2003:12:23:28] FINE ( 3132): Known method: null
[14/May/2003:12:23:28] FINE ( 3132): Found method: public void br.com.inttegra.infra.bean.parse.ParseAtributoEJB.ejbStore() throws javax.ejb.EJBException,java.rmi.RemoteException
[14/May/2003:12:23:28] FINE ( 3132): Processing method: jdoCleanAllRefs
[14/May/2003:12:23:28] FINE ( 3132): Known method: null
[14/May/2003:12:23:28] FINE ( 3132): Processing method: setEntityContext
[14/May/2003:12:23:28] FINE ( 3132): Known method: null
[14/May/2003:12:23:28] FINE ( 3132): Found method: public void br.com.inttegra.infra.bean.parse.ParseAtributoEJB.setEntityContext(javax.ejb.EntityContext)
[14/May/2003:12:23:28] FINE ( 3132): pkfield: idParseAtributo
[14/May/2003:12:23:28] FINE ( 3132): ##### PCImplClass Name is br.com.inttegra.infra.bean.parse.ParseAtributoEJB789766943_JDOState
[14/May/2003:12:23:28] FINEST ( 3132): TP PCClassGen: generating 'br/com/inttegra/infra/bean/parse/ParseAtributoEJB789766943_JDOState'...
[14/May/2003:12:23:28] FINE ( 3132): ##### PCImplClass Name is br.com.inttegra.infra.bean.parse.ParseEJB_1482881505_JDOState
[14/May/2003:12:23:28] FINE ( 3132): ##### PCImplClass Name is br.com.inttegra.infra.bean.tabela.ColunaTabelaEJB_849864039_JDOState
[14/May/2003:12:23:28] FINE ( 3132): ##### PCImplClass Name is br.com.inttegra.infra.bean.classes.ClassesEJB_413640801_JDOState
[14/May/2003:12:23:28] FINE ( 3132): ##### PCImplClass Name is br.com.inttegra.infra.bean.parse.ParseEJB_1482881505_JDOState
[14/May/2003:12:23:28] FINE ( 3132): ##### PCImplClass Name is br.com.inttegra.infra.bean.tabela.ColunaTabelaEJB_849864039_JDOState
[14/May/2003:12:23:28] FINE ( 3132): ##### PCImplClass Name is br.com.inttegra.infra.bean.classes.ClassesEJB_413640801_JDOState
[14/May/2003:12:23:28] FINEST ( 3132): TP PCClassGen: DONE generating 'br/com/inttegra/infra/bean/parse/ParseAtributoEJB789766943_JDOState'...
[14/May/2003:12:23:28] FINE ( 3132): gen file in /u03/dds/dds/var/opt/SUNWappserver7/domains/domainCronos/ServerNC/generated/ejb/j2ee-modules/NC
[14/May/2003:12:23:28] FINE ( 3132): ##### PCImplClass Name is br.com.inttegra.infra.bean.identificacao.IdentificacaoEJB_1068400097_JDOState
[14/May/2003:12:23:28] FINE ( 3132): ##### PCImplClass Name is br.com.inttegra.infra.bean.resposta.RespostaEJB670563865_JDOState
[14/May/2003:12:23:28] FINE ( 3132): listCmrs identificacoes parse resposta
[14/May/2003:12:23:28] FINE ( 3132): persistentClass br.com.inttegra.infra.bean.identificacao.IdentificacaoEJB
[14/May/2003:12:23:28] SEVERE ( 3132): JDOCodeGenerator: Caught Exception in generating CMP:
javax.ejb.EJBException: CMRFieldInfo not found for field identificacaoPai
at com.sun.enterprise.deployment.PersistenceDescriptor.getCMRFieldInfoByName(PersistenceDescriptor.java:262)
at com.iplanet.ias.persistence.internal.model.ejb.util.NameMapper.getRelatedEjbDescriptor(NameMapper.java:368)
at com.iplanet.ias.persistence.internal.model.ejb.util.NameMapper.getEjbNameForLocalInterface(NameMapper.java:297)
at com.sun.jdo.spi.persistence.support.ejb.model.util.NameMapper.getPersistenceClassForLocalInterface(NameMapper.java:284)
at com.sun.jdo.spi.persistence.support.ejb.model.DeploymentDescriptorModel.getFieldType(DeploymentDescriptorModel.java:503)
at com.sun.jdo.api.persistence.model.util.ModelValidator.shouldBeRelationship(ModelValidator.java:2377)
at com.sun.jdo.api.persistence.model.util.ModelValidator.isLegalRelationship(ModelValidator.java:2384)
at com.sun.jdo.api.persistence.model.util.ModelValidator.getFieldsValidationList(ModelValidator.java:325)
at com.sun.jdo.api.persistence.model.util.ModelValidator.getBasicValidationList(ModelValidator.java:167)
at com.sun.jdo.api.persistence.model.util.ModelValidator.getFullValidationList(ModelValidator.java:183)
at com.sun.jdo.api.persistence.model.util.ModelValidator.fullValidationCheck(ModelValidator.java:131)
at com.sun.jdo.api.persistence.model.Model.validate(Model.java:1592)
at com.iplanet.ias.persistence.internal.ejb.ejbc.JDOCodeGenerator.validate(JDOCodeGenerator.java:189)
at com.iplanet.ias.persistence.internal.ejb.ejbc.JDOCodeGenerator.generate(JDOCodeGenerator.java:225)
at com.iplanet.ias.ejb.codegen.CmpCompiler.compile(CmpCompiler.java:155)
at com.iplanet.ias.ejb.codegen.IASEJBC.ejbc(IASEJBC.java:1029)
at com.iplanet.ias.deployment.backend.EJBCompiler.preDeployModule(EJBCompiler.java:464)
at com.iplanet.ias.deployment.backend.EJBCompiler.compile(EJBCompiler.java:181)
at com.iplanet.ias.deployment.backend.EjbModuleDeployer.runEJBC(EjbModuleDeployer.java:246)
at com.iplanet.ias.deployment.backend.EjbModuleDeployer.deploy(EjbModuleDeployer.java:128)
at com.iplanet.ias.deployment.backend.ModuleDeployer.doRequest(ModuleDeployer.java:77)
at com.iplanet.ias.admin.server.core.mbean.config.ManagedServerInstance.deployEJBJarModuleArchiveOrDirectory(ManagedServerInstance.java:890)
at com.iplanet.ias.admin.server.core.mbean.config.ManagedServerInstance.deployEJBJarModule(ManagedServerInstance.java:841)
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:324)
at com.iplanet.ias.admin.server.core.jmx.Introspector.invokeMethodOn(Introspector.java:188)
at com.iplanet.ias.admin.server.core.jmx.MBeanServerImpl.invoke(MBeanServerImpl.java:137)
at com.iplanet.ias.admin.server.core.jmx.ASMBeanServerImpl.invoke(ASMBeanServerImpl.java:222)
at com.iplanet.ias.admin.server.core.servlet.AdminAPIEntryServlet.callInvoke(AdminAPIEntryServlet.java:217)
at com.iplanet.ias.admin.server.core.servlet.AdminAPIEntryServlet.callMBean(AdminAPIEntryServlet.java:176)
at com.iplanet.ias.admin.server.core.servlet.AdminAPIEntryServlet.doGet(AdminAPIEntryServlet.java:101)
at com.iplanet.ias.admin.server.core.servlet.AdminAPIEntryServlet.doPost(AdminAPIEntryServlet.java:83)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at org.apache.catalina.core.StandardWrapperValve.invokeServletService(StandardWrapperValve.java:720)
at org.apache.catalina.core.StandardWrapperValve.access$000(StandardWrapperValve.java:118)
at org.apache.catalina.core.StandardWrapperValve$1.run(StandardWrapperValve.java:278)
at java.security.AccessController.doPrivileged(Native Method)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:274)
at org.apache.catalina.core.S
[14/May/2003:12:23:28] WARNING ( 3132): DPL5035:Error while running ejbc
com.iplanet.ias.deployment.backend.IASDeploymentException: Fatal Error from EJB Compiler -- -- Error while processing CMP beans.
at com.iplanet.ias.deployment.backend.EJBCompiler.wrapException(EJBCompiler.java:589)
at com.iplanet.ias.deployment.backend.EJBCompiler.compile(EJBCompiler.java:186)
at com.iplanet.ias.deployment.backend.EjbModuleDeployer.runEJBC(EjbModuleDeployer.java:246)
at com.iplanet.ias.deployment.backend.EjbModuleDeployer.deploy(EjbModuleDeployer.java:128)
at com.iplanet.ias.deployment.backend.ModuleDeployer.doRequest(ModuleDeployer.java:77)
at com.iplanet.ias.admin.server.core.mbean.config.ManagedServerInstance.deployEJBJarModuleArchiveOrDirectory(ManagedServerInstance.java:890)
at com.iplanet.ias.admin.server.core.mbean.config.ManagedServerInstance.deployEJBJarModule(ManagedServerInstance.java:841)
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:324)
at com.iplanet.ias.admin.server.core.jmx.Introspector.invokeMethodOn(Introspector.java:188)
at com.iplanet.ias.admin.server.core.jmx.MBeanServerImpl.invoke(MBeanServerImpl.java:137)
at com.iplanet.ias.admin.server.core.jmx.ASMBeanServerImpl.invoke(ASMBeanServerImpl.java:222)
at com.iplanet.ias.admin.server.core.servlet.AdminAPIEntryServlet.callInvoke(AdminAPIEntryServlet.java:217)
at com.iplanet.ias.admin.server.core.servlet.AdminAPIEntryServlet.callMBean(AdminAPIEntryServlet.java:176)
at com.iplanet.ias.admin.server.core.servlet.AdminAPIEntryServlet.doGet(AdminAPIEntryServlet.java:101)
at com.iplanet.ias.admin.server.core.servlet.AdminAPIEntryServlet.doPost(AdminAPIEntryServlet.java:83)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at org.apache.catalina.core.StandardWrapperValve.invokeServletService(StandardWrapperValve.java:720)
at org.apache.catalina.core.StandardWrapperValve.access$000(StandardWrapperValve.java:118)
at org.apache.catalina.core.StandardWrapperValve$1.run(StandardWrapperValve.java:278)
at java.security.AccessController.doPrivileged(Native Method)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:274)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:505)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:212)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:505)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:203)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:505)
at com.iplanet.ias.web.connector.nsapi.NSAPIProcessor.process(NSAPIProcessor.java:157)
at com.iplanet.ias.web.WebContainer.service(WebContainer.java:598)
Caused by: com.iplanet.ias.ejb.codegen.CmpCompilerException: Error while processing CMP beans.
at com.iplanet.ias.ejb.codegen.CmpCompiler.compile(CmpCompiler.java:198)
at com.iplanet.ias.ejb.codegen.IASEJBC.ejbc(IASEJBC.java:1029)
at com.iplanet.ias.deployment.backend.EJBCompiler.preDeployModule(EJBCompiler.java:464)
at com.iplanet.ias.deployment.backend.EJBCompiler.compile(EJBCompiler.java:181)
... 30 more
Caused by: javax.ejb.EJBException: CMRFieldInfo not found for field identificacaoPai
at com.iplanet.ias.persistence.internal.ejb.ejbc.JDOCodeGenerator.generate(JDOCodeGenerator.java:264)
at com.iplanet.ias.ejb.codegen.CmpCompiler.compile(CmpCompiler.java:155)
... 33 more
[14/May/2003:12:23:33] FINE ( 3132): RMI RenewClean-[192.168.200.9:40873,com.iplanet.ias.admin.server.core.channel.LocalRMIClientSocketFactory@6fdca5]: get connection
[14/May/2003:12:23:33] FINE ( 3132): RMI RenewClean-[192.168.200.9:40873,com.iplanet.ias.admin.server.core.channel.LocalRMIClientSocketFactory@6fdca5]: create connection
[14/May/2003:12:23:33] FINER ( 3132): RMI RenewClean-[192.168.200.9:40873,com.iplanet.ias.admin.server.core.channel.LocalRMIClientSocketFactory@6fdca5]: opening socket to [192.168.200.9:40873,com.iplanet.ias.admin.server.core.channel.LocalRMIClientSocketFactory@6fdca5]
[14/May/2003:12:23:33] FINER ( 3132): RMI RenewClean-[192.168.200.9:40873,com.iplanet.ias.admin.server.core.channel.LocalRMIClientSocketFactory@6fdca5]: server suggested 127.0.0.1:62189
[14/May/2003:12:23:33] FINER ( 3132): RMI RenewClean-[192.168.200.9:40873,com.iplanet.ias.admin.server.core.channel.LocalRMIClientSocketFactory@6fdca5]: using 192.168.200.9:0
[14/May/2003:12:23:33] FINER ( 3132): RMI RenewClean-[192.168.200.9:40873,com.iplanet.ias.admin.server.core.channel.LocalRMIClientSocketFactory@6fdca5]: create call context
[14/May/2003:12:23:33] FINER ( 3132): RMI RenewClean-[192.168.200.9:40873,com.iplanet.ias.admin.server.core.channel.LocalRMIClientSocketFactory@6fdca5]: outbound call: [endpoint:[192.168.200.9:40873,com.iplanet.ias.admin.server.core.channel.LocalRMIClientSocketFactory@6fdca5](remote),objID:[0:0:0, 2]] : sun.rmi.transport.DGCImpl_Stub[0:0:0, 2]: java.rmi.dgc.Lease dirty(java.rmi.server.ObjID[], long, java.rmi.dgc.Lease)
[14/May/2003:12:23:33] FINER ( 3132): RMI RenewClean-[192.168.200.9:40873,com.iplanet.ias.admin.server.core.channel.LocalRMIClientSocketFactory@6fdca5]: write remote call header...
[14/May/2003:12:23:33] FINER ( 3132): RMI RenewClean-[192.168.200.9:40873,com.iplanet.ias.admin.server.core.channel.LocalRMIClientSocketFactory@6fdca5]: getting output stream
[14/May/2003:12:23:33] FINER ( 3132): RMI RenewClean-[192.168.200.9:40873,com.iplanet.ias.admin.server.core.channel.LocalRMIClientSocketFactory@6fdca5]: execute call
[14/May/2003:12:23:33] FINER ( 3132): RMI RenewClean-[192.168.200.9:40873,com.iplanet.ias.admin.server.core.channel.LocalRMIClientSocketFactory@6fdca5]: getting input stream
[14/May/2003:12:23:33] FINE ( 3132): RMI RenewClean-[192.168.200.9:40873,com.iplanet.ias.admin.server.core.channel.LocalRMIClientSocketFactory@6fdca5]: name = "java.rmi.dgc.Lease", codebase = ""
[14/May/2003:12:23:33] FINER ( 3132): RMI RenewClean-[192.168.200.9:40873,com.iplanet.ias.admin.server.core.channel.LocalRMIClientSocketFactory@6fdca5]: (thread context class loader: sun.misc.Launcher$AppClassLoader@a56a7c)
[14/May/2003:12:23:33] FINER ( 3132): RMI RenewClean-[192.168.200.9:40873,com.iplanet.ias.admin.server.core.channel.LocalRMIClientSocketFactory@6fdca5]: class "java.rmi.dgc.Lease" found via codebase, defined by null
[14/May/2003:12:23:33] FINE ( 3132): RMI RenewClean-[192.168.200.9:40873,com.iplanet.ias.admin.server.core.channel.LocalRMIClientSocketFactory@6fdca5]: name = "java.rmi.dgc.VMID", codebase = ""
[14/May/2003:12:23:33] FINER ( 3132): RMI RenewClean-[192.168.200.9:40873,com.iplanet.ias.admin.server.core.channel.LocalRMIClientSocketFactory@6fdca5]: (thread context class loader: sun.misc.Launcher$AppClassLoader@a56a7c)
[14/May/2003:12:23:33] FINER ( 3132): RMI RenewClean-[192.168.200.9:40873,com.iplanet.ias.admin.server.core.channel.LocalRMIClientSocketFactory@6fdca5]: class "java.rmi.dgc.VMID" found via codebase, defined by null
[14/May/2003:12:23:33] FINE ( 3132): RMI RenewClean-[192.168.200.9:40873,com.iplanet.ias.admin.server.core.channel.LocalRMIClientSocketFactory@6fdca5]: name = "[B", codebase = ""
[14/May/2003:12:23:33] FINER ( 3132): RMI RenewClean-[192.168.200.9:40873,com.iplanet.ias.admin.server.core.channel.LocalRMIClientSocketFactory@6fdca5]: (thread context class loader: sun.misc.Launcher$AppClassLoader@a56a7c)
[14/May/2003:12:23:33] FINER ( 3132): RMI RenewClean-[192.168.200.9:40873,com.iplanet.ias.admin.server.core.channel.LocalRMIClientSocketFactory@6fdca5]: class "[B" found via codebase, defined by null
[14/May/2003:12:23:33] FINE ( 3132): RMI RenewClean-[192.168.200.9:40873,com.iplanet.ias.admin.server.core.channel.LocalRMIClientSocketFactory@6fdca5]: name = "java.rmi.server.UID", codebase = ""
[14/May/2003:12:23:33] FINER ( 3132): RMI RenewClean-[192.168.200.9:40873,com.iplanet.ias.admin.server.core.channel.LocalRMIClientSocketFactory@6fdca5]: (thread context class loader: sun.misc.Launcher$AppClassLoader@a56a7c)
[14/May/2003:12:23:33] FINER ( 3132): RMI RenewClean-[192.168.200.9:40873,com.iplanet.ias.admin.server.core.channel.LocalRMIClientSocketFactory@6fdca5]: class "java.rmi.server.UID" found via codebase, defined by null
[14/May/2003:12:23:33] FINE ( 3132): RMI RenewClean-[192.168.200.9:40873,com.iplanet.ias.admin.server.core.channel.LocalRMIClientSocketFactory@6fdca5]: free connection (reuse = true)
[14/May/2003:12:23:33] FINE ( 3132): RMI RenewClean-[192.168.200.9:40873,com.iplanet.ias.admin.server.core.channel.LocalRMIClientSocketFactory@6fdca5]: reuse connection
[14/May/2003:12:23:33] FINE ( 3132): RMI RenewClean-[192.168.200.9:40873,com.iplanet.ias.admin.server.core.channel.LocalRMIClientSocketFactory@6fdca5]: create reaper
my ejb-jar:
<ejb-relation>
<ejb-relation-name>Identificacao-Identificacoes</ejb-relation-name>
<ejb-relationship-role>
<ejb-relationship-role-name>Identificacao-has-identificacoes</ejb-relationship-role-name>
<multiplicity>One</multiplicity>
<relationship-role-source>
<ejb-name>Identificacao</ejb-name>
</relationship-role-source>
<cmr-field>
<cmr-field-name>identificacoes</cmr-field-name>
<cmr-field-type>java.util.Collection</cmr-field-type>
</cmr-field>
</ejb-relationship-role>
<ejb-relationship-role>
<ejb-relationship-role-name>identificacoes-owned-by-Identificacao</ejb-relationship-role-name>
<multiplicity>Many</multiplicity>
<relationship-role-source>
<ejb-name>Identificacao</ejb-name>
</relationship-role-source>
<cmr-field>
<cmr-field-name>identificacaoPai</cmr-field-name>
</cmr-field>
</ejb-relationship-role>
</ejb-relation>
my sun-cmp-mappgins
<cmr-field-mapping>
<cmr-field-name>resposta</cmr-field-name>
<column-pair>
<column-name>IDENTIFICACAO.ID_RESPOSTA</column-name>
<column-name>RESPOSTA.ID_RESPOSTA</column-name>
</column-pair>
</cmr-field-mapping>
<cmr-field-mapping>
<cmr-field-name>identificacaoPai</cmr-field-name>
<column-pair>
<column-name>IDENTIFICACAO.ID_IDENTIFICACAO_PAI</column-name>
<column-name>IDENTIFICACAO.ID_IDENTIFICACAO</column-name>
</column-pair>
</cmr-field-mapping>
<cmr-field-mapping>
<cmr-field-name>identificacoes</cmr-field-name>
<column-pair>
<column-name>IDENTIFICACAO.ID_IDENTIFICACAO</column-name>
<column-name>IDENTIFICACAO.ID_IDENTIFICACAO_PAI</column-name>
</column-pair>
</cmr-field-mapping>
<cmr-field-mapping>
<cmr-field-name>parse</cmr-field-name>
<column-pair>
<column-name>IDENTIFICACAO.ID_PARSE</column-name>
<column-name>PARSE.ID_PARSE</column-name>
</column-pair>
</cmr-field-mapping>
somebody already got this exception?This question is identical to the thread=19208 and 19209.
Please do not duplicate the threads.
Regards,
Marina -
JDO & CMP Non-sensical Failures & Errors
I have an ejb-jar project I'm working on creating with the SJAS 8.1 build b41-fcs.
Attempting to deploy gives me the following sensless error.
[exec] JDO72313: The field person must be consistently defined as either a CMP field or a CMR.
[exec] Please check for an inconsistency in your module contents (beans, deployment descriptor, cmp-mapping, ejb-jar).
[exec] JDO74025: JDOCodeGenerator: Caught an Exception validating CMP bean 'PersonBean' in application 'UmcBase' module 'UmcBase': JDO72326: The field thisRelationshipFieldWasGeneratedByTheNameMapper1 has an invalid related field person. Related fields must be set for both relationship fields.
[exec] Make sure the CMR field is set on both sides of the relation.I have checked, double-checked, triple-checked, etc. The definition is consistant.
Further, the relationship is currently mapped as a one-way relationship. It shouldn't be defined on the other side at this point in time.
I decided to try re-mapping the files with deploytool (a "tool" I try to avoid like the plague) and get the following error message from deploy tool:
JDO7704: This error (In DatabaseGenerator, failed to get 'relMappingClass' for 'byte[]') should not occur. Please contact support and file a bug.Oh freakin' great.
Any suggestions? I sorta need this to work.Absolutely.
sun-cmp-mappings.xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sun-cmp-mappings PUBLIC "-//Sun Microsystems, Inc.//DTD Application Server 8.0 OR Mapping//EN" "http://www.sun.com/software/appserver/dtds/sun-cmp-mapping_1_1.dtd">
<sun-cmp-mappings>
<sun-cmp-mapping>
<schema/>
<!-- BeanKeyBean -->
<entity-mapping>
<ejb-name>BeanKeyBean</ejb-name>
<table-name>BeanKey</table-name>
<cmp-field-mapping>
<field-name>beanName</field-name>
<column-name>BeanKey.beanName</column-name>
</cmp-field-mapping>
<cmp-field-mapping>
<field-name>nextId</field-name>
<column-name>BeanKey.nextId</column-name>
</cmp-field-mapping>
</entity-mapping>
<!-- PreferenceDataBean -->
<entity-mapping>
<ejb-name>PreferenceDataBean</ejb-name>
<table-name>PreferenceData</table-name>
<cmp-field-mapping>
<field-name>dataId</field-name>
<column-name>PreferenceData.preferenceDataId</column-name>
</cmp-field-mapping>
<cmp-field-mapping>
<field-name>keyName</field-name>
<column-name>PreferenceData.keyName</column-name>
</cmp-field-mapping>
<cmp-field-mapping>
<field-name>objectValue</field-name>
<column-name>PreferenceData.data</column-name>
</cmp-field-mapping>
<cmr-field-mapping>
<cmr-field-name>node</cmr-field-name>
<column-pair>
<column-name>PreferenceData.preferenceNodeId</column-name>
<column-name>PreferenceNode.preferenceNodeId</column-name>
</column-pair>
<fetched-with>
<none/>
</fetched-with>
</cmr-field-mapping>
</entity-mapping>
<!-- PreferenceNodeBean -->
<entity-mapping>
<ejb-name>PreferenceNodeBean</ejb-name>
<table-name>PreferenceNode</table-name>
<cmp-field-mapping>
<field-name>name</field-name>
<column-name>PreferenceNode.nodeName</column-name>
</cmp-field-mapping>
<cmp-field-mapping>
<field-name>nodeId</field-name>
<column-name>PreferenceNode.preferenceNodeId</column-name>
</cmp-field-mapping>
<cmr-field-mapping>
<cmr-field-name>parentNode</cmr-field-name>
<column-pair>
<column-name>PreferenceNode.parentNodeId</column-name>
<column-name>PreferenceNode.preferenceNodeId</column-name>
</column-pair>
<fetched-with>
<none/>
</fetched-with>
</cmr-field-mapping>
<cmr-field-mapping>
<cmr-field-name>children</cmr-field-name>
<column-pair>
<column-name>PreferenceNode.preferenceNodeId</column-name>
<column-name>PreferenceNode.parentNodeId</column-name>
</column-pair>
<fetched-with>
<none/>
</fetched-with>
</cmr-field-mapping>
<cmr-field-mapping>
<cmr-field-name>data</cmr-field-name>
<column-pair>
<column-name>PreferenceNode.preferenceNodeId</column-name>
<column-name>PreferenceData.preferenceNodeId</column-name>
</column-pair>
<fetched-with>
<none/>
</fetched-with>
</cmr-field-mapping>
</entity-mapping>
<!-- PersonBean -->
<entity-mapping>
<ejb-name>PersonBean</ejb-name>
<table-name>Person</table-name>
<cmp-field-mapping>
<field-name>dateOfBirthDb</field-name>
<column-name>Person.dateOfBirth</column-name>
</cmp-field-mapping>
<cmp-field-mapping>
<field-name>firstNameDb</field-name>
<column-name>Person.firstName</column-name>
</cmp-field-mapping>
<cmp-field-mapping>
<field-name>gender</field-name>
<column-name>Person.gender</column-name>
</cmp-field-mapping>
<cmp-field-mapping>
<field-name>lastNameDb</field-name>
<column-name>Person.lastName</column-name>
</cmp-field-mapping>
<cmp-field-mapping>
<field-name>middleNameDb</field-name>
<column-name>Person.middleName</column-name>
</cmp-field-mapping>
<cmp-field-mapping>
<field-name>personId</field-name>
<column-name>Person.personId</column-name>
</cmp-field-mapping>
<cmp-field-mapping>
<field-name>salutation</field-name>
<column-name>Person.salutation</column-name>
</cmp-field-mapping>
<cmp-field-mapping>
<field-name>suffix</field-name>
<column-name>Person.suffix</column-name>
</cmp-field-mapping>
<cmp-field-mapping>
<field-name>activeDb</field-name>
<column-name>Person.active</column-name>
</cmp-field-mapping>
<cmp-field-mapping>
<field-name>hashKey</field-name>
<column-name>Person.hashKey</column-name>
</cmp-field-mapping>
<cmr-field-mapping>
<cmr-field-name>personUser</cmr-field-name>
<column-pair>
<column-name>Person.personId</column-name>
<column-name>PersonUser.personId</column-name>
</column-pair>
<fetched-with>
<none/>
</fetched-with>
</cmr-field-mapping>
<cmr-field-mapping>
<cmr-field-name>groups</cmr-field-name>
<column-pair>
<column-name>Person.personId</column-name>
<column-name>PersonGroup.personId</column-name>
</column-pair>
<column-pair>
<column-name>PersonGroup.groupId</column-name>
<column-name>Groups.groupId</column-name>
</column-pair>
<fetched-with>
<none/>
</fetched-with>
</cmr-field-mapping>
</entity-mapping>
<!-- PersonUserBean -->
<entity-mapping>
<ejb-name>PersonUserBean</ejb-name>
<table-name>PersonUser</table-name>
<cmp-field-mapping>
<field-name>personId</field-name>
<column-name>PersonUser.personId</column-name>
</cmp-field-mapping>
<cmp-field-mapping>
<field-name>loginName</field-name>
<column-name>PersonUser.loginName</column-name>
</cmp-field-mapping>
<cmp-field-mapping>
<field-name>passwordHash</field-name>
<column-name>PersonUser.passwordHash</column-name>
</cmp-field-mapping>
</entity-mapping>
<!-- GroupBean -->
<entity-mapping>
<ejb-name>GroupBean</ejb-name>
<table-name>Groups</table-name>
<cmp-field-mapping>
<field-name>groupId</field-name>
<column-name>Groups.groupId</column-name>
</cmp-field-mapping>
<cmp-field-mapping>
<field-name>name</field-name>
<column-name>Groups.groupName</column-name>
</cmp-field-mapping>
<cmp-field-mapping>
<field-name>description</field-name>
<column-name>Groups.description</column-name>
</cmp-field-mapping>
<cmr-field-mapping>
<cmr-field-name>groupMembers</cmr-field-name>
<column-pair>
<column-name>Groups.groupId</column-name>
<column-name>PersonGroup.groupId</column-name>
</column-pair>
<column-pair>
<column-name>PersonGroup.personId</column-name>
<column-name>Person.personId</column-name>
</column-pair>
<fetched-with>
<none/>
</fetched-with>
</cmr-field-mapping>
</entity-mapping>
<!-- CountryBean -->
<entity-mapping>
<ejb-name>CountryBean</ejb-name>
<table-name>Country</table-name>
<cmp-field-mapping>
<field-name>countryCode</field-name>
<column-name>Country.code</column-name>
</cmp-field-mapping>
<cmp-field-mapping>
<field-name>name</field-name>
<column-name>Country.name</column-name>
</cmp-field-mapping>
</entity-mapping>
<!-- StateProvinceBean -->
<entity-mapping>
<ejb-name>StateProvinceBean</ejb-name>
<table-name>StateProvince</table-name>
<cmp-field-mapping>
<field-name>stateProvinceCode</field-name>
<column-name>StateProvince.code</column-name>
</cmp-field-mapping>
<cmp-field-mapping>
<field-name>name</field-name>
<column-name>StateProvince.name</column-name>
</cmp-field-mapping>
<cmr-field-mapping>
<cmr-field-name>country</cmr-field-name>
<column-pair>
<column-name>StateProvince.country</column-name>
<column-name>Country.code</column-name>
</column-pair>
<fetched-with>
<none/>
</fetched-with>
</cmr-field-mapping>
</entity-mapping>
<!-- SecurityQuestionBean -->
<entity-mapping>
<ejb-name>SecurityQuestionBean</ejb-name>
<table-name>SecurityQuestion</table-name>
<cmp-field-mapping>
<field-name>securityQuestionId</field-name>
<column-name>SecurityQuestion.securityQuestionId</column-name>
</cmp-field-mapping>
<cmp-field-mapping>
<field-name>type</field-name>
<column-name>SecurityQuestion.type</column-name>
</cmp-field-mapping>
<cmp-field-mapping>
<field-name>answer</field-name>
<column-name>SecurityQuestion.answer</column-name>
</cmp-field-mapping>
<cmr-field-mapping>
<cmr-field-name>person</cmr-field-name>
<column-pair>
<column-name>SecurityQuestion.personId</column-name>
<column-name>Person.personId</column-name>
</column-pair>
<fetched-with>
<none/>
</fetched-with>
</cmr-field-mapping>
</entity-mapping>
</sun-cmp-mapping>
</sun-cmp-mappings>ejb-jar.xml (Entire thing, so you get the full picture)
<?xml version="1.0" encoding="UTF-8"?>
<ejb-jar xmlns="http://java.sun.com/xml/ns/j2ee" version="2.1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/ejb-jar_2_1.xsd">
<display-name>UMCBaseJAR</display-name>
<enterprise-beans>
<!-- BeanKeyBean (Holds nextId values for other CMP Beans) -->
<entity>
<ejb-name>BeanKeyBean</ejb-name>
<local-home>edu.umc.umcBase.bean.ejb.beanKey.BeanKeyLocalHome</local-home>
<local>edu.umc.umcBase.bean.ejb.beanKey.BeanKeyLocal</local>
<ejb-class>edu.umc.umcBase.bean.ejb.beanKey.BeanKeyBean</ejb-class>
<persistence-type>Container</persistence-type>
<prim-key-class>java.lang.String</prim-key-class>
<reentrant>false</reentrant>
<cmp-version>2.x</cmp-version>
<abstract-schema-name>BeanKey</abstract-schema-name>
<cmp-field>
<field-name>beanName</field-name>
</cmp-field>
<cmp-field>
<field-name>nextId</field-name>
</cmp-field>
<primkey-field>beanName</primkey-field>
<resource-ref>
<res-ref-name>jdo/UMCBASE</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
<res-sharing-scope>Shareable</res-sharing-scope>
</resource-ref>
<security-identity>
<use-caller-identity/>
</security-identity>
</entity>
<!-- PreferenceDataBean -->
<entity>
<ejb-name>PreferenceDataBean</ejb-name>
<local-home>edu.umc.umcBase.bean.ejb.preferenceData.PreferenceDataLocalHome</local-home>
<local>edu.umc.umcBase.bean.ejb.preferenceData.PreferenceDataLocal</local>
<ejb-class>edu.umc.umcBase.bean.ejb.preferenceData.PreferenceDataBean</ejb-class>
<persistence-type>Container</persistence-type>
<prim-key-class>java.lang.Integer</prim-key-class>
<reentrant>false</reentrant>
<cmp-version>2.x</cmp-version>
<abstract-schema-name>PreferenceData</abstract-schema-name>
<cmp-field>
<field-name>objectValue</field-name>
</cmp-field>
<cmp-field>
<field-name>keyName</field-name>
</cmp-field>
<cmp-field>
<field-name>dataId</field-name>
</cmp-field>
<primkey-field>dataId</primkey-field>
<resource-ref>
<res-ref-name>jdo/UMCBASE</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
<res-sharing-scope>Shareable</res-sharing-scope>
</resource-ref>
<security-identity>
<use-caller-identity/>
</security-identity>
<query>
<query-method>
<method-name>findDataForNode</method-name>
<method-params>
<method-param>edu.umc.umcBase.bean.ejb.preferenceNode.PreferenceNodeLocal</method-param>
<method-param>java.lang.String</method-param>
</method-params>
</query-method>
<ejb-ql>SELECT DISTINCT OBJECT(d) FROM PreferenceData AS d WHERE d.node = ?1 AND d.keyName = ?2</ejb-ql>
</query>
<query>
<query-method>
<method-name>findDataForNode</method-name>
<method-params>
<method-param>edu.umc.umcBase.bean.ejb.preferenceNode.PreferenceNodeLocal</method-param>
</method-params>
</query-method>
<ejb-ql>SELECT OBJECT(d) FROM PreferenceData AS d WHERE d.node = ?1</ejb-ql>
</query>
</entity>
<!-- PreferenceNodeBean -->
<entity>
<ejb-name>PreferenceNodeBean</ejb-name>
<local-home>edu.umc.umcBase.bean.ejb.preferenceNode.PreferenceNodeLocalHome</local-home>
<local>edu.umc.umcBase.bean.ejb.preferenceNode.PreferenceNodeLocal</local>
<ejb-class>edu.umc.umcBase.bean.ejb.preferenceNode.PreferenceNodeBean</ejb-class>
<persistence-type>Container</persistence-type>
<prim-key-class>java.lang.Integer</prim-key-class>
<reentrant>false</reentrant>
<cmp-version>2.x</cmp-version>
<abstract-schema-name>PreferenceNode</abstract-schema-name>
<cmp-field>
<field-name>nodeId</field-name>
</cmp-field>
<cmp-field>
<field-name>name</field-name>
</cmp-field>
<primkey-field>nodeId</primkey-field>
<resource-ref>
<res-ref-name>jdo/UMCBASE</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
<res-sharing-scope>Shareable</res-sharing-scope>
</resource-ref>
<security-identity>
<use-caller-identity/>
</security-identity>
<query>
<query-method>
<method-name>findRoot</method-name>
<method-params/>
</query-method>
<ejb-ql>SELECT DISTINCT OBJECT(p) FROM PreferenceNode p WHERE p.name = '/'</ejb-ql>
</query>
<query>
<query-method>
<method-name>findByName</method-name>
<method-params>
<method-param>java.lang.String</method-param>
<method-param>edu.umc.umcBase.bean.ejb.preferenceNode.PreferenceNodeLocal</method-param>
</method-params>
</query-method>
<ejb-ql>SELECT DISTINCT OBJECT(p) FROM PreferenceNode AS p WHERE p.name = ?1 AND p.parentNode = ?2</ejb-ql>
</query>
</entity>
<!-- PersonBean -->
<entity>
<ejb-name>PersonBean</ejb-name>
<local-home>edu.umc.umcBase.bean.ejb.person.PersonLocalHome</local-home>
<local>edu.umc.umcBase.bean.ejb.person.PersonLocal</local>
<ejb-class>edu.umc.umcBase.bean.ejb.person.PersonBean</ejb-class>
<persistence-type>Container</persistence-type>
<prim-key-class>java.lang.Integer</prim-key-class>
<reentrant>false</reentrant>
<cmp-version>2.x</cmp-version>
<abstract-schema-name>Person</abstract-schema-name>
<cmp-field>
<field-name>gender</field-name>
</cmp-field>
<cmp-field>
<field-name>dateOfBirthDb</field-name>
</cmp-field>
<cmp-field>
<field-name>suffix</field-name>
</cmp-field>
<cmp-field>
<field-name>salutation</field-name>
</cmp-field>
<cmp-field>
<field-name>middleNameDb</field-name>
</cmp-field>
<cmp-field>
<field-name>personId</field-name>
</cmp-field>
<cmp-field>
<field-name>firstNameDb</field-name>
</cmp-field>
<cmp-field>
<field-name>lastNameDb</field-name>
</cmp-field>
<cmp-field>
<field-name>activeDb</field-name>
</cmp-field>
<cmp-field>
<field-name>hashKey</field-name>
</cmp-field>
<primkey-field>personId</primkey-field>
<resource-ref>
<res-ref-name>jdo/UMCBASE</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
<res-sharing-scope>Shareable</res-sharing-scope>
</resource-ref>
<security-identity>
<use-caller-identity/>
</security-identity>
<query>
<query-method>
<method-name>findAll</method-name>
<method-params/>
</query-method>
<ejb-ql>SELECT OBJECT(p) FROM Person AS p</ejb-ql>
</query>
<query>
<query-method>
<method-name>findByLoginName</method-name>
<method-params>
<method-param>java.lang.String</method-param>
</method-params>
</query-method>
<ejb-ql>SELECT OBJECT(p) FROM Person AS p WHERE p.personUser.loginName = ?1</ejb-ql>
</query>
<query>
<query-method>
<method-name>findByLastName</method-name>
<method-params>
<method-param>java.lang.String</method-param>
</method-params>
</query-method>
<ejb-ql>SELECT OBJECT(p) FROM Person AS p WHERE p.lastNameDb LIKE ?1</ejb-ql>
</query>
<query>
<query-method>
<method-name>findByFirstName</method-name>
<method-params>
<method-param>java.lang.String</method-param>
</method-params>
</query-method>
<ejb-ql>SELECT OBJECT(p) FROM Person AS p WHERE p.firstNameDb LIKE ?1</ejb-ql>
</query>
<query>
<query-method>
<method-name>findByLastFirstName</method-name>
<method-params>
<method-param>java.lang.String</method-param>
<method-param>java.lang.String</method-param>
</method-params>
</query-method>
<ejb-ql>SELECT OBJECT(p) FROM Person AS p WHERE p.lastNameDb LIKE ?1 AND p.firstNameDb LIKE ?2</ejb-ql>
</query>
</entity>
<!-- PersonUserBean -->
<entity>
<ejb-name>PersonUserBean</ejb-name>
<local-home>edu.umc.umcBase.bean.ejb.person.PersonUserLocalHome</local-home>
<local>edu.umc.umcBase.bean.ejb.person.PersonUserLocal</local>
<ejb-class>edu.umc.umcBase.bean.ejb.person.PersonUserBean</ejb-class>
<persistence-type>Container</persistence-type>
<prim-key-class>java.lang.Integer</prim-key-class>
<reentrant>false</reentrant>
<cmp-version>2.x</cmp-version>
<abstract-schema-name>PersonUser</abstract-schema-name>
<cmp-field>
<field-name>loginName</field-name>
</cmp-field>
<cmp-field>
<field-name>passwordHash</field-name>
</cmp-field>
<cmp-field>
<field-name>personId</field-name>
</cmp-field>
<primkey-field>personId</primkey-field>
<resource-ref>
<res-ref-name>jdo/UMCBASE</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
<res-sharing-scope>Shareable</res-sharing-scope>
</resource-ref>
<security-identity>
<use-caller-identity/>
</security-identity>
</entity>
<!-- GroupBean -->
<entity>
<ejb-name>GroupBean</ejb-name>
<local-home>edu.umc.umcBase.bean.ejb.group.GroupLocalHome</local-home>
<local>edu.umc.umcBase.bean.ejb.group.GroupLocal</local>
<ejb-class>edu.umc.umcBase.bean.ejb.group.GroupBean</ejb-class>
<persistence-type>Container</persistence-type>
<prim-key-class>java.lang.Integer</prim-key-class>
<reentrant>false</reentrant>
<cmp-version>2.x</cmp-version>
<abstract-schema-name>Group</abstract-schema-name>
<cmp-field>
<field-name>groupId</field-name>
</cmp-field>
<cmp-field>
<field-name>name</field-name>
</cmp-field>
<cmp-field>
<field-name>description</field-name>
</cmp-field>
<primkey-field>groupId</primkey-field>
<resource-ref>
<res-ref-name>jdo/UMCBASE</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
<res-sharing-scope>Shareable</res-sharing-scope>
</resource-ref>
<security-identity>
<use-caller-identity/>
</security-identity>
<query>
<query-method>
<method-name>findAll</method-name>
<method-params/>
</query-method>
<ejb-ql>SELECT OBJECT(g) FROM Group g</ejb-ql>
</query>
<query>
<query-method>
<method-name>findByName</method-name>
<method-params>
<method-param>java.lang.String</method-param>
</method-params>
</query-method>
<ejb-ql>SELECT OBJECT(g) FROM Group AS g WHERE g.name = ?1</ejb-ql>
</query>
</entity>
<!-- CountryBean -->
<entity>
<ejb-name>CountryBean</ejb-name>
<local-home>edu.umc.umcBase.bean.ejb.country.CountryLocalHome</local-home>
<local>edu.umc.umcBase.bean.ejb.country.CountryLocal</local>
<ejb-class>edu.umc.umcBase.bean.ejb.country.CountryBean</ejb-class>
<persistence-type>Container</persistence-type>
<prim-key-class>java.lang.String</prim-key-class>
<reentrant>false</reentrant>
<cmp-version>2.x</cmp-version>
<abstract-schema-name>Country</abstract-schema-name>
<cmp-field>
<field-name>countryCode</field-name>
</cmp-field>
<cmp-field>
<field-name>name</field-name>
</cmp-field>
<primkey-field>countryCode</primkey-field>
<resource-ref>
<res-ref-name>jdo/UMCBASE</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
<res-sharing-scope>Shareable</res-sharing-scope>
</resource-ref>
<security-identity>
<use-caller-identity/>
</security-identity>
<query>
<query-method>
<method-name>findAll</method-name>
<method-params/>
</query-method>
<ejb-ql>SELECT OBJECT(c) FROM Country AS c</ejb-ql>
</query>
</entity>
<!-- StateProvinceBean -->
<entity>
<ejb-name>StateProvinceBean</ejb-name>
<local-home>edu.umc.umcBase.bean.ejb.stateProvince.StateProvinceLocalHome</local-home>
<local>edu.umc.umcBase.bean.ejb.stateProvince.StateProvinceLocal</local>
<ejb-class>edu.umc.umcBase.bean.ejb.stateProvince.StateProvinceBean</ejb-class>
<persistence-type>Container</persistence-type>
<prim-key-class>java.lang.String</prim-key-class>
<reentrant>false</reentrant>
<cmp-version>2.x</cmp-version>
<abstract-schema-name>StateProvince</abstract-schema-name>
<cmp-field>
<field-name>stateProvinceCode</field-name>
</cmp-field>
<cmp-field>
<field-name>name</field-name>
</cmp-field>
<primkey-field>stateProvinceCode</primkey-field>
<resource-ref>
<res-ref-name>jdo/UMCBASE</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
<res-sharing-scope>Shareable</res-sharing-scope>
</resource-ref>
<security-identity>
<use-caller-identity/>
</security-identity>
<query>
<query-method>
<method-name>findAll</method-name>
<method-params/>
</query-method>
<ejb-ql>SELECT OBJECT(sp) FROM StateProvince AS sp</ejb-ql>
</query>
</entity>
<!-- SecurityQuestionBean -->
<entity>
<ejb-name>SecurityQuestionBean</ejb-name>
<local-home>edu.umc.umcBase.bean.ejb.securityQuestion.SecurityQuestionLocalHome</local-home>
<local>edu.umc.umcBase.bean.ejb.securityQuestion.SecurityQuestionLocal</local>
<ejb-class>edu.umc.umcBase.bean.ejb.securityQuestion.SecurityQuestionBean</ejb-class>
<persistence-type>Container</persistence-type>
<prim-key-class>java.lang.Integer</prim-key-class>
<reentrant>false</reentrant>
<cmp-version>2.x</cmp-version>
<abstract-schema-name>SecurityQuestion</abstract-schema-name>
<cmp-field>
<field-name>securityQuestionId</field-name>
</cmp-field>
<cmp-field>
<field-name>type</field-name>
</cmp-field>
<cmp-field>
<field-name>answer</field-name>
</cmp-field>
<primkey-field>securityQuestionId</primkey-field>
<resource-ref>
<res-ref-name>jdo/UMCBASE</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
<res-sharing-scope>Shareable</res-sharing-scope>
</resource-ref>
<security-identity>
<use-caller-identity/>
</security-identity>
</entity>
</enterprise-beans>
<relationships>
<!-- PreferenceNode - PreferenceNode -->
<ejb-relation>
<ejb-relationship-role>
<multiplicity>One</multiplicity>
<relationship-role-source>
<ejb-name>PreferenceNodeBean</ejb-name>
</relationship-role-source>
<cmr-field>
<cmr-field-name>children</cmr-field-name>
<cmr-field-type>java.util.Collection</cmr-field-type>
</cmr-field>
</ejb-relationship-role>
<ejb-relationship-role>
<multiplicity>Many</multiplicity>
<relationship-role-source>
<ejb-name>PreferenceNodeBean</ejb-name>
</relationship-role-source>
<cmr-field>
<cmr-field-name>parentNode</cmr-field-name>
</cmr-field>
</ejb-relationship-role>
</ejb-relation>
<!-- PreferenceNode - PreferenceData -->
<ejb-relation>
<ejb-relationship-role>
<multiplicity>One</multiplicity>
<relationship-role-source>
<ejb-name>PreferenceNodeBean</ejb-name>
</relationship-role-source>
<cmr-field>
<cmr-field-name>data</cmr-field-name>
<cmr-field-type>java.util.Collection</cmr-field-type>
</cmr-field>
</ejb-relationship-role>
<ejb-relationship-role>
<multiplicity>Many</multiplicity>
<cascade-delete/>
<relationship-role-source>
<ejb-name>PreferenceDataBean</ejb-name>
</relationship-role-source>
<cmr-field>
<cmr-field-name>node</cmr-field-name>
</cmr-field>
</ejb-relationship-role>
</ejb-relation>
<!-- Person - PersonUser -->
<ejb-relation>
<ejb-relationship-role>
<multiplicity>One</multiplicity>
<relationship-role-source>
<ejb-name>PersonBean</ejb-name>
</relationship-role-source>
<cmr-field>
<cmr-field-name>personUser</cmr-field-name>
</cmr-field>
</ejb-relationship-role>
<ejb-relationship-role>
<multiplicity>One</multiplicity>
<cascade-delete/>
<relationship-role-source>
<ejb-name>PersonUserBean</ejb-name>
</relationship-role-source>
</ejb-relationship-role>
</ejb-relation>
<!-- Group - Person -->
<ejb-relation>
<ejb-relationship-role>
<multiplicity>Many</multiplicity>
<relationship-role-source>
<ejb-name>GroupBean</ejb-name>
</relationship-role-source>
<cmr-field>
<cmr-field-name>groupMembers</cmr-field-name>
<cmr-field-type>java.util.Collection</cmr-field-type>
</cmr-field>
</ejb-relationship-role>
<ejb-relationship-role>
<multiplicity>Many</multiplicity>
<relationship-role-source>
<ejb-name>PersonBean</ejb-name>
</relationship-role-source>
<cmr-field>
<cmr-field-name>groups</cmr-field-name>
<cmr-field-type>java.util.Collection</cmr-field-type>
</cmr-field>
</ejb-relationship-role>
</ejb-relation>
<!-- StateProvinceBean - Country -->
<ejb-relation>
<ejb-relationship-role>
<multiplicity>Many</multiplicity>
<cascade-delete/>
<relationship-role-source>
<ejb-name>StateProvinceBean</ejb-name>
</relationship-role-source>
<cmr-field>
<cmr-field-name>country</cmr-field-name>
</cmr-field>
</ejb-relationship-role>
<ejb-relationship-role>
<multiplicity>One</multiplicity>
<relationship-role-source>
<ejb-name>CountryBean</ejb-name>
</relationship-role-source>
</ejb-relationship-role>
</ejb-relation>
<!-- SecurityQuestion - Person -->
<ejb-relation>
<ejb-relationship-role>
<multiplicity>Many</multiplicity>
<cascade-delete/>
<relationship-role-source>
<ejb-name>SecurityQuestionBean</ejb-name>
</relationship-role-source>
<cmr-field>
<cmr-field-name>person</cmr-field-name>
</cmr-field>
</ejb-relationship-role>
<ejb-relationship-role>
<multiplicity>One</multiplicity>
<relationship-role-source>
<ejb-name>PersonBean</ejb-name>
</relationship-role-source>
</ejb-relationship-role>
</ejb-relation>
</relationships>
<!-- Transactions -->
<assembly-descriptor>
<!-- BeanKey -->
<container-transaction>
<method>
<ejb-name>BeanKeyBean</ejb-name>
<method-name>*</method-name>
</method>
<trans-attribute>Required</trans-attribute>
</container-transaction>
<!-- PreferenceDataBean -->
<container-transaction>
<method>
<ejb-name>PreferenceDataBean</ejb-name>
<method-name>*</method-name>
</method>
<trans-attribute>Required</trans-attribute>
</container-transaction>
<!-- PreferenceNodeBean -->
<container-transaction>
<method>
<ejb-name>PreferenceNodeBean</ejb-name>
<method-name>*</method-name>
</method>
<trans-attribute>Required</trans-attribute>
</container-transaction>
<!-- PersonBean -->
<container-transaction>
<method>
<ejb-name>PersonBean</ejb-name>
<method-name>*</method-name>
</method>
<trans-attribute>Required</trans-attribute>
</container-transaction>
<!-- PersonUserBean -->
<container-transaction>
<method>
<ejb-name>PersonUserBean</ejb-name>
<method-name>*</method-name>
</method>
<trans-attribute>Required</trans-attribute>
</container-transaction>
<!-- GroupBean -->
<container-transaction>
<method>
<ejb-name>GroupBean</ejb-name>
<method-name>*</method-name>
</method>
<trans-attribute>Required</trans-attribute>
</container-transaction>
<!-- CountryBean -->
<container-transaction>
<method>
<ejb-name>CountryBean</ejb-name>
<method-name>*</method-name>
</method>
<trans-attribute>Required</trans-attribute>
</container-transaction>
<!-- StateProvinceBean -->
<container-transaction>
<method>
<ejb-name>StateProvinceBean</ejb-name>
<method-name>*</method-name>
</method>
<trans-attribute>Required</trans-attribute>
</container-transaction>
<!-- SecurityQuestionBean -->
<container-transaction>
<method>
<ejb-name>SecurityQuestionBean</ejb-name>
<method-name>*</method-name>
</method>
<trans-attribute>Required</trans-attribute>
</container-transaction>
</assembly-descriptor>
</ejb-jar>Everything deploys perfectly cleanly, passes all verification tests, etc until I try to add SecurityQuestion and relate it to the person. I've tried uni-directional relationships, bi-directional relationships, everything I could think of. I've read the ejb 2.1 spec backwards and forwards trying to figure out if this was something I did or not.
Finally I decided I'm not going to find it... so hopefully someone else's eyeballs will.
Thanks.
Maybe you are looking for
-
I have installed Windows 7 and upgraded to Bootcamp 3.1. I booted back into Mac OS and then I attempted to boot back into Windows where I got the dreaded "Missing OS". Before anyone tells me to hit "option" or "shift" or "command" key to select an OS
-
SAP Netweaver ABAP Development 7.0 and Kaspersky IS 2010
Hi All, Iu2019m trying to figure out how to make KIS 2010 and SAP Netweaver work together but so far I couldnu2019t find a u201Cgoodu201D solution. The only way that I figured out so far, to make it work, is turn off the u201CApplication Controlu201D
-
ANE function parameters display as arg0, arg1, etc. how do I fix this?
I am creating an ANE and all my functions that take parameters show them as arg0, arg1, arg2, etc.. for example: ShowAlert(arg0:String, arg1:String, arg2:String = "Ok", arg3:Array = null) when it should be ShowAlert(title:String, message:String, defa
-
Using the functional methods with workflows
Hi All, I'm passing the plant number to a workflow by triggering an event in a user-exit. The workflow uses a functional method of an ABAP class and retrives the plant details. While binding the functional method back to the workflow, the binding inc
-
Hi there, Currently, I have an a faulty iPhone 5 1GIG. Can I replace with the new one?, I have an a faulty iPhone 5 1GIG. Can I replace with the new one?