I'm trying to use inheritance for Struts forms using @struts:form tag.
I've got two entity beans: CatalogItem and Product. CatalogItem is a
base class which Product extends:
/**
* @ejb:bean type="CMP" ....
*
* @struts:form name="Full"
* include-all="true"
*/
public abstract class CatalogItemEJB implements EntityBean {
...
}
/**
* @ejb:bean type="CMP" ....
*
* @struts:form name="Full"
* include-all="true"
* extends="test.CatalogItemFullForm"
*/
public abstract class ProductEJB extends CatalogItemEJB
implements EntityBean {
...
}
As result I get two Struts form implementations:
public class CatalogItemFullForm extends ActionForm
implements Serializable {
...
public CatalogItemData getData() {
...
}
}
public class ProductFullForm extends CatalogItemFullForm
implements Serializable {
...
public ProductData getData() {
...
}
}
ProductFullForm doesn't compile since Java doesn't allow different
return type for overloaded methods. It would be very nice if
@sturts:form would notice this and use base class's method signature and
override the implementation:
public class ProductFullForm extends CatalogItemFullForm
implements Serializable {
...
public CatalogItemData getData() {
...
}
}
--
Joni
[EMAIL PROTECTED]
http://www.shiftcontrol.com
_______________________________________________
Xdoclet-user mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/xdoclet-user