The following comment has been added to this issue:
Author: Andrew Stevens
Created: Mon, 28 Jul 2003 4:42 PM
Body:
Originally commented by Marcus Brito, but got lost in the server crash...
"The generated <cmp-field> is the correct one. According to the javabeans
specification, if the method name following the "get" or "set" starts with two or more
capital letters, the property name isn't decapitalized. So, getHBasisId() implies a
property named HBasisId. You can read about it here
http://java.sun.com/j2se/1.3/docs/api/java/beans/Introspector.html#decapitalize(java.lang.String)
However, there is obviously a bug in the generated <primkey-field> element. It should
have been left capitalized as well."
---------------------------------------------------------------------
View the issue:
http://opensource.atlassian.com/projects/xdoclet/secure/ViewIssue.jspa?key=XDT-528
Here is an overview of the issue:
---------------------------------------------------------------------
Key: XDT-528
Summary: Wrong cmp-field element generated by ejbdoclet
Type: Bug
Status: Assigned
Priority: Major
Time Spent: Unknown
Remaining: 0 minutes
Project: XDoclet
Components:
EJB Module
Versions:
1.2 Beta 3
Assignee: xdoclet-devel (Use for new issues)
Reporter: Axel Mueller
Created: Tue, 17 Jun 2003 4:32 AM
Updated: Tue, 17 Jun 2003 4:32 AM
Environment: [EMAIL PROTECTED]:~> java -version
java version "1.4.1_01"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.4.1_01-b01)
Java HotSpot(TM) Client VM (build 1.4.1_01-b01, mixed mode)
uname -a
Linux asterix 2.4.18-4GB #2 Wed Jul 17 11:58:23 CEST 2002 i686 unknown
Description:
With some uppercase/lowercase combinations the cmp-field element can be wrong (this
worked well using beta2).
Source code:
* @ejb.bean
* name ="HBasis"
* display-name ="HBasisEJB"
* type ="CMP"
* cmp-version ="2.x"
* view-type ="local"
* local-jndi-name ="ejb/mex/HBasisLocalHome"
* primkey-field ="hBasisId"
[...]
/**
* @ejb.interface-method view-type ="local"
* @ejb.permission role-name ="mexuser"
* @ejb.persistence column-name ="hbasis_id"
*/
abstract public Long getHBasisId();
/**
* @ejb.interface-method view-type ="local"
* @ejb.permission role-name ="mexuser"
*/
abstract public void setHBasisId(Long val);
Generated ejb-jar.xml:
<cmp-field >
<description><![CDATA[]]></description>
<field-name>HBasisId</field-name>
</cmp-field>
The first letter of the field name should be "h" instead of "H".
The corresponding primkey-field element is generated well:
<primkey-field>hBasisId</primkey-field>
Deployment on JBoss 3.0.6 using the incorrect ejb-jar.xml results in:
could not create deployment: file:/apps/jboss-3.0.6/server/mex/tm
p/deploy/server/mex/deploy/mex3-server.ear/19.mex3-server.ear-contents/mex3-server.jar
org.jboss.deployment.DeploymentException: Error in ejb-jar.xml for Entity Bean
HBasis: primkey-field hBasisId is not a cmp-field
---------------------------------------------------------------------
JIRA INFORMATION:
This message is automatically generated by JIRA.
If you think it was sent incorrectly contact one of the administrators:
http://opensource.atlassian.com/projects/xdoclet/secure/Administrators.jspa
If you want more information on JIRA, or have a bug to report see:
http://www.atlassian.com/software/jira
-------------------------------------------------------
This SF.Net email sponsored by: Free pre-built ASP.NET sites including
Data Reports, E-commerce, Portals, and Forums are available now.
Download today and enter to win an XBOX or Visual Studio .NET.
http://aspnet.click-url.com/go/psa00100003ave/direct;at.aspnet_072303_01/01
_______________________________________________
xdoclet-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/xdoclet-devel