|
From: <leg...@at...> - 2003-08-12 17:24:01
|
The following comment has been added to this issue:
Author: abe zafar
Created: Tue, 12 Aug 2003 12:17 PM
Body:
Thanks that works. By changing the meta tag
from:
<meta attribute="implements">com.rhi.domain.Person</meta>
to:
<meta inherit="false" attribute="implements">com.rhi.domain.Person</meta>
The interface gets only implemented by the class indicated in the class tag.
I personally think this feature of inherting the meta tag is not very intuitive. I don't think very often one wants all its classes to implement the same interface or pass another meta attribute to all its classes and methods. I think it would be more intuitive if the meta tag is applied to only the tags which it is a direct child of.
---------------------------------------------------------------------
View the issue:
http://opensource.atlassian.com/projects/hibernate/secure/ViewIssue.jspa?key=HB-242
Here is an overview of the issue:
---------------------------------------------------------------------
Key: HB-242
Summary: <meta attribute="implements"> does not behave as expected
Type: Bug
Status: Closed
Priority: Major
Resolution: REJECTED
Project: Hibernate2
Components:
toolset
Versions:
2.0.1
Assignee:
Reporter: abe zafar
Created: Sun, 10 Aug 2003 2:40 AM
Updated: Sun, 10 Aug 2003 6:37 AM
Environment: JDK1.4
Description:
If the tag <meta attribute="implements">com.hp.Printer</meta> is inserted as a child of the class tag it properly adds the implement clause to the class. But if that class also contained a <composite-id> tag which indicated a class then that class would also UNEXPECTEDLY implement the interface "com.hp.Printer".
So in the following example:
<class name="com.hp.ColorPrinter">
<meta attribute="implements">com.hp.Printer</meta>
<composite-id
name="propertyName"
class="com.hp.PrinterId">
<key-property name="propertyName" type="typename" column="column_name"/>
<key-many-to-one name="propertyName class="ClassName" column="column_name"/>
</composite-id>
Both "ColorPrinter" and "PrinterId" end up implementing "com.hp.Printer". ColorPrinter is expected to implement the interface, but PrinterId should not implement the interface.
---------------------------------------------------------------------
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/hibernate/secure/Administrators.jspa
If you want more information on JIRA, or have a bug to report see:
http://www.atlassian.com/software/jira
|