Another thing that might be an issue is 2 M-N relationships I have.
1 is a:
M (String) -> N (String)

and the other is:
M (Long) -> N (String)

The M (Long) -> N (String) relationship Does not save data due to an Oracle:
Invalid Number Exception:

    /**
         * @ejb.interface-method view-type="local"
     *
     * @ejb.value-object
     *      compose="com.wf.bd.ice.account.BankAccountDto"
     *      compose-name="BankAccountDto"
     *      members="com.wf.bd.ice.account.BankAccountLocal"
     *      members-name="BankAccount"
     *      relation="external"
     *      type="java.util.Collection"
     *
     * @ejb.relation
     *      name="Business-BankAccount"
     *      role-name="Business-has-BankAccounts"
         *      target-ejb="BankAccount"
         *      target-role-name="BankAccount-belongs_to-Business"
         *      target-cascade-delete="yes"
         *
         * @weblogic.relation
         *      join-table-name="T_ICE_BUSINESS_ACCOUNT_REL"
         *
         * @weblogic.target-column-map
         *      foreign-key-column="bankAccountPK"
         *      key-column="applicationId"
     *
     **/
    public abstract Collection getBankAccounts();
    /**
     * @ejb.interface-method view-type="local"
     **/
    public abstract void setBankAccounts( Collection pBankAccounts );

(Yes, applicationId is the PK of Business)

When I save this to the Entities, I get a Oracle: SQL Exception Invalid
Number.







> -----Original Message-----
> From: Harkness, David [mailto:[EMAIL PROTECTED]
> Sent: Friday, June 25, 2004 5:07 PM
> To: [EMAIL PROTECTED]
> Subject: RE: [Xdoclet-user] RE: CMR Issues/Bug? #2
> 
> 
> [EMAIL PROTECTED] wrote:
> > The rest of the Entities get the PK set at creation time
> > like: setProductPK( 
> BusinessCardUtil.generateGUID(pBusinessCardDto) );
> 
> productPK is the name of the CMP attribute on BusinessCard? Just
> double-checking that I understand here.
> 
> > Yes, I create a new CreditApplicatonDto and populate it with
> > just the core data in the CreditApplication. No other
> > objects. I did try it originally by creating the
> > CreditApplication with the original CreditApplicationDto, but
> > have been desperately trying to hack anything in to get 
> this to work.
> 
> What happened before when you sent in the CAppDTO with the 3 sub-DTOs
> hanging off of it? XDoclet should have generated code that created the
> sub-DTOs (in ejbPostCreate I guess). Just curious as it may point to
> what's happening here too.
> 
> > No, all of my relationships are unidirectional. So i only
> > have CMR declarations in the CreditApplicationBean.
> 
> Okay, then are you seeing that in the database the 3 related 
> tables have
> app_id set along the way. Meaning, you setBusinessCard, and it has an
> app_id. Then you setBusinessLine and it gets an app_id *and* the
> business card row loses its app_id. What I'm getting at is from where
> are the appIDs disappearing? Just the database or the DTOs or 
> somewhere
> else? The other thing to make sure of is that the appID is 
> being set and
> then unset. Or is it somehow magically knowing you're adding 
> three items
> to the app and only setting the appID for the last one? Unlikely.
> 
> If this is happening in the database, I recommend you go grab p6spy.
> It's a JDBC driver-wrapper that will log all of the SQL calls your
> appserver is making. This has helped me so very much during my
> development:
> 
>     http://www.p6spy.com/download.html
> 
> The docs are kinda hazy, so from memory here's all you need to do:
> 
> * Put p6spy.jar in your appserver lib/ext
> * Change p6spy.properties to use your driver class name
> * Put p6spy.properties in your appserver directory (in the domain for
> WebLogic)
> * Change the JDBC driver in your ConnectionPool to the p6spy driver
> 
> After that, start your appserver and it creates spy.log with 
> all the SQL
> commands and result sets. Quite handy.
> 
> Anyway, back to the program...
> 
> > I am posting the relationship for 1 product as they are all
> > identical,
> 
> Identical except for the relation name, role name, 
> target-role-name and
> target-ejb (marked == below), right? I suppose if they were the same
> you'd get a deployment (or XDoclet) error.
> 
> > I have checked many times. But, there is no way
> > for me to create a BusinessCard with an AppId. I added it
> > once, and got aCMR error. So I had to let the CMR manage the AppId.
> > 
> >     /**
> >      * @ejb.relation
> > ==   *      name="CreditApplication-BusinessCard"
> > ==   *      role-name="CreditApplication-has-BusinessCard"
> > ==   *      target-ejb="BusinessCard"
> > ==   *
> target-role-name="BusinessCard-belongs_to-CreditApplication"
> >      *      target-cascade-delete="yes"
> >      *
> >      * @weblogic.target-column-map
> >      *      foreign-key-column="applicationId"
> >      *      key-column="applicationId"
> >      */
> 
> If this still doesn't help, you can send me the whole
> CreditApplicationEJB source (if you're wary of posting the whole thing
> to the list) as an attachment. I don't know that I'll spot something,
> but I've always found a second pair of eyes to be useful.
> 
> David Harkness
> Sr. Software Engineer
> Sony Pictures Digital Networks
> (310) 482-4756
> 
> 
> -------------------------------------------------------
> This SF.Net email sponsored by Black Hat Briefings & Training.
> Attend Black Hat Briefings & Training, Las Vegas July 24-29 - 
> digital self defense, top technical experts, no vendor pitches, 
> unmatched networking opportunities. Visit www.blackhat.com
> _______________________________________________
> xdoclet-user mailing list
> [EMAIL PROTECTED]
> https://lists.sourceforge.net/lists/listinfo/xdoclet-user
> 


-------------------------------------------------------
This SF.Net email sponsored by Black Hat Briefings & Training.
Attend Black Hat Briefings & Training, Las Vegas July 24-29 - 
digital self defense, top technical experts, no vendor pitches, 
unmatched networking opportunities. Visit www.blackhat.com
_______________________________________________
xdoclet-user mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/xdoclet-user

Reply via email to