Update of /cvsroot/xdoclet/xdoclet/modules/ejb/src/xdoclet/modules/ejb/entity
In directory
sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv22508/modules/ejb/src/xdoclet/modules/ejb/entity
Modified Files:
PkTagsHandler.java PersistentTagsHandler.java
Log Message:
don't generate a compound primary key if only one cmp-field is marked with
ejb.primkey-field (XDT-1139)
Index: PkTagsHandler.java
===================================================================
RCS file:
/cvsroot/xdoclet/xdoclet/modules/ejb/src/xdoclet/modules/ejb/entity/PkTagsHandler.java,v
retrieving revision 1.15
retrieving revision 1.16
diff -C2 -r1.15 -r1.16
*** PkTagsHandler.java 29 Apr 2003 19:14:47 -0000 1.15
--- PkTagsHandler.java 9 Apr 2005 16:31:43 -0000 1.16
***************
*** 33,40 ****
{
/**
! * @param clazz The class to look into
! * @return The value of the ejb:bean primkey-field parameter
*/
! public static String getPrimkeyFieldFor(XClass clazz)
{
// the primkey-field may be specified in a super class, so check them
as well
--- 33,41 ----
{
/**
! * @param clazz The class to look into
! * @return The value of the ejb:bean primkey-field
parameter
! * @exception XDocletException
*/
! public static String getPrimkeyFieldFor(XClass clazz) throws
XDocletException
{
// the primkey-field may be specified in a super class, so check them
as well
***************
*** 42,45 ****
--- 43,54 ----
String pkField = clazz.getDoc().getTagAttributeValue("ejb:bean",
"primkey-field", true);
+ if (pkField == null) {
+ // search for a single ejb.pk-field tag
+ String fields = PersistentTagsHandler.fieldList(clazz,
"ejb:pk-field", null, 3, null, true);
+
+ if (fields.length() > 0 && fields.indexOf(",") < 0) {
+ pkField = fields;
+ }
+ }
return pkField;
}
Index: PersistentTagsHandler.java
===================================================================
RCS file:
/cvsroot/xdoclet/xdoclet/modules/ejb/src/xdoclet/modules/ejb/entity/PersistentTagsHandler.java,v
retrieving revision 1.22
retrieving revision 1.23
diff -C2 -r1.22 -r1.23
*** PersistentTagsHandler.java 8 Feb 2005 22:02:05 -0000 1.22
--- PersistentTagsHandler.java 9 Apr 2005 16:31:44 -0000 1.23
***************
*** 134,138 ****
* @param exclTag Fields that don't have all of the tags of
this comma-separated list are used.
* @param type Type of return (0: comma separated list -
1: field=value comma separated list - 2:
! * getter comma sperated list)
* @param clazz Description of Parameter
* @param valueObject
--- 134,138 ----
* @param exclTag Fields that don't have all of the tags of
this comma-separated list are used.
* @param type Type of return (0: comma separated list -
1: field=value comma separated list - 2:
! * getter comma sperated list, 3: comma separated name list)
* @param clazz Description of Parameter
* @param valueObject
***************
*** 198,201 ****
--- 198,207 ----
st.append(method.getName()).append("()");
break;
+ case 3:
+ if (foundFields.size() > 1) {
+ st.append(',');
+ }
+ st.append(name);
+ break;
}
}
-------------------------------------------------------
SF email is sponsored by - The IT Product Guide
Read honest & candid reviews on hundreds of IT Products from real users.
Discover which products truly live up to the hype. Start reading now.
http://ads.osdn.com/?ad_id=6595&alloc_id=14396&op=click
_______________________________________________
xdoclet-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/xdoclet-devel