AFAIK, DD's are correct (with my remark). Do you really have in the
beans abstract accessors for cmr users and roles?

Wednesday, July 31, 2002, 6:47:55 PM, you wrote:


LP> I actually tried that and it didn't work either. 
LP> The only difference is that instead of complaining that it couldn't find
LP> "roles", now it complains that it can't find "users".

LP> Any other ideas?

LP> thanks.
LP> .peter

LP> -----Original Message-----
LP> From: Alex Loubyansky [mailto:[EMAIL PROTECTED]]
LP> Sent: Wednesday, July 31, 2002 1:11 AM
LP> To: Peter Luttrell
LP> Subject: Re: [JBoss-user] JBossCMP Change Column Names in CMR


LP> You need to interchange key-fields for ejb-relationship-role's in
LP> jbosscmp-jdbc.xml.

LP> I.e.
LP> <ejb-relationship-role-name>Role-Belongs-To-User</ejb-relationship-role-name
>>
LP>    <key-fields>
LP>       <key-field>
LP>          <field-name>roles</field-name>
LP>          <column-name>role_name</column-name>
LP>       </key-field>
LP>    </key-fields>
LP> ...

LP> alex

LP> Wednesday, July 31, 2002, 1:45:57 AM, you wrote:

PL>> How do you change the column names for a table generated by a
LP> MANY-to-MANY
PL>> CMR?

PL>> Here's an example of what i've tried:

PL>> ejb-jar.xml:

PL>> <ejb-relation>
PL>>             <ejb-relation-name>User-Roles</ejb-relation-name>
PL>>             <ejb-relationship-role>
PL>>
LP> <ejb-relationship-role-name>User-has-multiple-Roles</ejb-relationship-role-n
ame>>
PL>>                 <multiplicity>Many</multiplicity>
PL>>                 <relationship-role-source>
PL>>                     <ejb-name>Users</ejb-name>
PL>>                 </relationship-role-source>
PL>>                 <cmr-field>
PL>>                     <cmr-field-name>roles</cmr-field-name>
PL>>                     <cmr-field-type>java.util.Set</cmr-field-type>
PL>>                 </cmr-field>
PL>>             </ejb-relationship-role>
PL>>             <ejb-relationship-role>
PL>>
LP> <ejb-relationship-role-name>Role-Belongs-To-User</ejb-relationship-role-name
>>
PL>>                 <multiplicity>Many</multiplicity>
PL>>                 <relationship-role-source>
PL>>                     <ejb-name>Roles</ejb-name>
PL>>                 </relationship-role-source>
PL>>                 <cmr-field>
PL>>                     <cmr-field-name>users</cmr-field-name>
PL>>                     <cmr-field-type>java.util.Set</cmr-field-type>
PL>>                 </cmr-field>
PL>>             </ejb-relationship-role>
PL>>         </ejb-relation>

PL>> My understanding of how to do this is via this entry in
LP> jbosscmp-jdbc.xml:

PL>> <ejb-relation>
PL>>             <ejb-relation-name>User-Roles</ejb-relation-name>
PL>>             <relation-table-mapping>
PL>>                 <table-name>User_Role</table-name>
PL>>             </relation-table-mapping>

PL>>             <ejb-relationship-role>
PL>>
LP> <ejb-relationship-role-name>Role-Belongs-To-User</ejb-relationship-role-name
>>
PL>>                 <key-fields>
PL>>                     <key-field>
PL>>                         <field-name>users</field-name>
PL>>                         <column-name>user_name</column-name>
PL>>                     </key-field>
PL>>                 </key-fields>
PL>>             </ejb-relationship-role>
PL>>             <ejb-relationship-role>
PL>>
LP> <ejb-relationship-role-name>User-has-multiple-Roles</ejb-relationship-role-n
ame>>
PL>>                 <key-fields>
PL>>                     <key-field>
PL>>                         <field-name>roles</field-name>
PL>>                         <column-name>role_name</column-name>
PL>>                     </key-field>
PL>>                 </key-fields>
PL>>             </ejb-relationship-role>
PL>>         </ejb-relation>


PL>> But the problem is that jboss complains ~ It doesn't seam to be able to
PL>> locate the "users" or "roles" field-name's that i've declared. Here's
LP> the
PL>> summary error:
PL>> [ObjectName: jboss.j2ee:service=EJB,jndiName=myBEAN
PL>>  state: FAILED
PL>>  I Depend On:
PL>>  Depends On Me: org.jboss.deployment.DeploymentException: CMP field for
PL>> key not found: field name=roles, ObjectName:
PL>> jboss.j2ee:service=EJB,jndiName=myBEAN

PL>> with the following exception:

PL>> 17:34:33,434 WARN  [ServiceController] Problem starting service
PL>> jboss.j2ee:service=EJB,jndiName=myBEAN
PL>> org.jboss.deployment.DeploymentException: CMP field for key not found:
PL>> field name=roles
PL>>         at
PL>>
LP> org.jboss.ejb.plugins.cmp.jdbc.metadata.JDBCRelationshipRoleMetaData.loadKey
LP> Fields(JDBCRe
PL>> lationshipRoleMetaData.java:374)
PL>>         at
PL>>
LP> org.jboss.ejb.plugins.cmp.jdbc.metadata.JDBCRelationshipRoleMetaData.init(JD
LP> BCRelationshi
PL>> pRoleMetaData.java:157)
PL>>         at
PL>>
LP> org.jboss.ejb.plugins.cmp.jdbc.metadata.JDBCRelationMetaData.<init>(JDBCRela
LP> tionMetaData.
PL>> java:308)
PL>>         at
PL>>
LP> org.jboss.ejb.plugins.cmp.jdbc.metadata.JDBCApplicationMetaData.<init>(JDBCA
LP> pplicationMet
PL>> aData.java:383)
PL>>         at
PL>>
LP> org.jboss.ejb.plugins.cmp.jdbc.metadata.JDBCXmlFileLoader.load(JDBCXmlFileLo
LP> ader.java:75)

PL>>         at
PL>>
LP> org.jboss.ejb.plugins.cmp.jdbc.JDBCStoreManager.loadJDBCEntityMetaData(JDBCS
LP> toreManager.j
PL>> ava:677)
PL>>         at
PL>>
LP> org.jboss.ejb.plugins.cmp.jdbc.JDBCStoreManager.initStoreManager(JDBCStoreMa
LP> nager.java:38
PL>> 9)
PL>>         at
PL>>
LP> org.jboss.ejb.plugins.cmp.jdbc.JDBCStoreManager.start(JDBCStoreManager.java:
LP> 339)
PL>>         at
PL>>
LP> org.jboss.ejb.plugins.CMPPersistenceManager.start(CMPPersistenceManager.java
LP> :198)
PL>>         at org.jboss.ejb.EntityContainer.start(EntityContainer.java:376)
PL>>         at org.jboss.ejb.Container.invoke(Container.java:793)
PL>>         at
LP> org.jboss.ejb.EntityContainer.invoke(EntityContainer.java:1055)
PL>>         at
PL>> org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:491)
PL>>         at
PL>>
LP> org.jboss.system.ServiceController$ServiceProxy.invoke(ServiceController.jav
LP> a:950)
PL>>         at $Proxy6.start(Unknown Source)
PL>>         at
PL>> org.jboss.system.ServiceController.start(ServiceController.java:384)
PL>>         at sun.reflect.GeneratedMethodAccessor5.invoke(Unknown Source)
PL>>         at
PL>>
LP> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl
LP> .java:25)
PL>>         at java.lang.reflect.Method.invoke(Method.java:324)
PL>>         at
PL>>
LP> org.jboss.mx.capability.ReflectedMBeanDispatcher.invoke(ReflectedMBeanDispat
LP> cher.java:284
PL>> )
PL>>         at
PL>> org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:491)
PL>>         at org.jboss.util.jmx.MBeanProxy.invoke(MBeanProxy.java:174)
PL>>         at $Proxy224.start(Unknown Source)
PL>>         at org.jboss.ejb.EjbModule.startService(EjbModule.java:440)
PL>>         at
PL>> org.jboss.system.ServiceMBeanSupport.start(ServiceMBeanSupport.java:164)
PL>>         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
PL>>         at
PL>>
LP> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39
LP> )
PL>>         at
PL>>
LP> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl
LP> .java:25)
PL>>         at java.lang.reflect.Method.invoke(Method.java:324)
PL>>         at
PL>>
LP> org.jboss.mx.capability.ReflectedMBeanDispatcher.invoke(ReflectedMBeanDispat
LP> cher.java:284
PL>> )
PL>>         at
PL>> org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:491)
PL>>         at
PL>>
LP> org.jboss.system.ServiceController$ServiceProxy.invoke(ServiceController.jav
LP> a:950)
PL>>         at $Proxy6.start(Unknown Source)
PL>>         at
PL>> org.jboss.system.ServiceController.start(ServiceController.java:384)
PL>>         at sun.reflect.GeneratedMethodAccessor5.invoke(Unknown Source)
PL>>         at
PL>>
LP> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl
LP> .java:25)
PL>>         at java.lang.reflect.Method.invoke(Method.java:324)
PL>>         at
PL>>
LP> org.jboss.mx.capability.ReflectedMBeanDispatcher.invoke(ReflectedMBeanDispat
LP> cher.java:284
PL>> )
PL>>         at
PL>> org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:491)
PL>>         at org.jboss.util.jmx.MBeanProxy.invoke(MBeanProxy.java:174)
PL>>         at $Proxy5.start(Unknown Source)
PL>>         at org.jboss.ejb.EJBDeployer.start(EJBDeployer.java:397)
PL>>         at
LP> org.jboss.deployment.MainDeployer.start(MainDeployer.java:786)
PL>>         at
LP> org.jboss.deployment.MainDeployer.start(MainDeployer.java:779)
PL>>         at
LP> org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:615)
PL>>         at
LP> org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:581)
PL>>         at sun.reflect.GeneratedMethodAccessor9.invoke(Unknown Source)
PL>>         at
PL>>
LP> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl
LP> .java:25)
PL>>         at java.lang.reflect.Method.invoke(Method.java:324)
PL>>         at
PL>>
LP> org.jboss.mx.capability.ReflectedMBeanDispatcher.invoke(ReflectedMBeanDispat
LP> cher.java:284
PL>> )
PL>>         at
PL>> org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:491)
PL>>         at org.jboss.util.jmx.MBeanProxy.invoke(MBeanProxy.java:174)
PL>>         at $Proxy4.deploy(Unknown Source)
PL>>         at
PL>>
LP> org.jboss.deployment.scanner.URLDeploymentScanner.deploy(URLDeploymentScanne
LP> r.java:412)
PL>>         at
PL>>
LP> org.jboss.deployment.scanner.URLDeploymentScanner.scan(URLDeploymentScanner.
LP> java:530)
PL>>         at
PL>>
LP> org.jboss.deployment.scanner.AbstractDeploymentScanner$ScannerThread.loop(Ab
LP> stractDeploym
PL>> entScanner.java:202)
PL>>         at
PL>>
LP> org.jboss.deployment.scanner.AbstractDeploymentScanner$ScannerThread.run(Abs
LP> tractDeployme
PL>> ntScanner.java:191)

PL>> With the <ejb-relationship-role> elements commented out of the
PL>> jbosscmp-jdbc.xml, it works fine. It generates a table called USER_ROLE
PL>> with these 2 columns: USERS and ROLES, which my dbas can't seam to
LP> handle.


PL>> Does anyone know how to solve this?

PL>> thanks.
PL>> ..peter




PL>> -------------------------------------------------------
PL>> This sf.net email is sponsored by: Dice - The leading online job board
PL>> for high-tech professionals. Search and apply for tech jobs today!
PL>> http://seeker.dice.com/seeker.epl?rel_code=31
PL>> _______________________________________________
PL>> JBoss-user mailing list
PL>> [EMAIL PROTECTED]
PL>> https://lists.sourceforge.net/lists/listinfo/jboss-user

-- 
Best regards,
 Alex Loubyansky




-------------------------------------------------------
This sf.net email is sponsored by: Dice - The leading online job board
for high-tech professionals. Search and apply for tech jobs today!
http://seeker.dice.com/seeker.epl?rel_code=31
_______________________________________________
JBoss-user mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/jboss-user

Reply via email to