[ 
http://issues.apache.org/jira/browse/GERONIMO-1079?page=comments#action_12453581
 ] 
            
Rakesh Midha commented on GERONIMO-1079:
----------------------------------------



Looks like this problem is fixed in OpenEJB

If my primary key class is java.lang.Integer
I get failure with following message
     Error: Unable to distribute myphonebook-ejb.jar: Could not deploy
    module

        Invalid primary key class: ejbName=MyPhonebookBean pkClass=class
    java.lang.String


If my primary key class is any other class with non-static field
Error: Unable to distribute myphonebook-ejb.jar: Could not deploy module
caused by EJB [MyPhonebookBean] is misconfigured: could not find CMP
fields for following pk fields: [ABC] [XYZ]

The reason being a 
If primary key class is provided and primary key name is not provided, deployer 
consider it as a compound key. Compound key with no non-static field is invalid 
primary key hence Invalid primary key class in case of java.lang.Integer. In 
other cases where compound key contains non-static field "could not found 
fields for following pk fields" for all the non-static fields. 

I think this is working as required. Please confirm and close this JIRA.

> Better error for missing primkey-field
> --------------------------------------
>
>                 Key: GERONIMO-1079
>                 URL: http://issues.apache.org/jira/browse/GERONIMO-1079
>             Project: Geronimo
>          Issue Type: Bug
>      Security Level: public(Regular issues) 
>          Components: deployment, OpenEJB
>    Affects Versions: 1.0-M5
>            Reporter: Aaron Mulder
>         Assigned To: Rakesh Midha
>            Priority: Critical
>             Fix For: Verification Required
>
>
> I forgot the primkey-field for my CMP entity, and I got this:
>     Error: Unable to distribute LoadMagus.ear: Could not deploy module
>     caused by EJB [TestRunMachine] is misconfigured: could not find CMP
>     fields for following pk fields: [TYPE] [MAX_VALUE] [MIN_VALUE]
> Now, I don't know where it got TYPE, MAX_VALUE, and MIN_VALUE from -- those 
> are not fields on my EJB or the table or anything.  I did have a 
> prim-key-class set to java.lang.Integer, so perhaps it picked up the static 
> fields on java.lang.Integer (if so why?  I wouldn't have thought statics were 
> relevant).  It would be better if the error said "missing primkey-field or 
> prim-key-class does not have properties matching CMP field names" or 
> something like that.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: 
http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to