[hibernate-issues] [Hibernate-JIRA] Updated: (HHH-3678) Fields marked as @Transient on components that are mapped on @CollecionOfElements are still persistent
Leandro Feres Ribeiro (JIRA)
noreply at atlassian.com
Wed Dec 24 08:16:38 EST 2008
[ http://opensource.atlassian.com/projects/hibernate/browse/HHH-3678?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Leandro Feres Ribeiro updated HHH-3678:
---------------------------------------
Attachment: testCase.zip
There was a problem on the initialy uploaded testCases.
> Fields marked as @Transient on components that are mapped on @CollecionOfElements are still persistent
> ------------------------------------------------------------------------------------------------------
>
> Key: HHH-3678
> URL: http://opensource.atlassian.com/projects/hibernate/browse/HHH-3678
> Project: Hibernate Core
> Issue Type: Bug
> Affects Versions: 3.2.6
> Environment: Hibernate 3.2.6.GA, hibernate-commons-annotations 3.3.0.GA, hibernate-annotations 3.3.0.GA.
> Reporter: Leandro Feres Ribeiro
> Attachments: testCase.zip, testCase.zip
>
>
> The test cases show the bug. I have a Component class, that is an attribute of the CollectionElement class, that is mapped as a @CollectionOfElements on TestEntity. Component has 4 transient attributes (name, description, middleName and lastName), however only middleName and lastName behave as transient. This means that when the @Transient annotation appears on the getter methods, on the Component class, it is not working.
> See the classes below:
> public class Component implements Serializable {
> private Integer id;
> private String name;
> private String description;
> @Transient
> private String middleName;
> private transient String lastName;
> public Integer getId() {
> return id;
> }
> public void setId(Integer id) {
> this.id = id;
> }
> @Transient
> public String getName() {
> return name;
> }
> public void setName(String name) {
> this.name = name;
> }
> @Transient
> public String getDescription() {
> return description;
> }
> public void setDescription(String description) {
> this.description = description;
> }
> public String getMiddleName() {
> return middleName;
> }
> public void setMiddleName(String middleName) {
> this.middleName = middleName;
> }
> public String getLastName() {
> return lastName;
> }
> public void setLastName(String lastName) {
> this.lastName = lastName;
> }
> }
> public class CollectionElement implements Serializable {
> private Component component;
> private Integer number;
> private String property;
> public Component getComponent() {
> return component;
> }
> public void setComponent(Component component) {
> this.component = component;
> }
> public Integer getNumber() {
> return number;
> }
> public void setNumber(Integer number) {
> this.number = number;
> }
> public String getProperty() {
> return property;
> }
> public void setProperty(String property) {
> this.property = property;
> }
> }
> @Entity
> @Table
> public class TestEntity {
> private Integer id;
> private List<CollectionElement> elements = new ArrayList<CollectionElement>();
> @Id
> public Integer getId() {
> return id;
> }
> public void setId(Integer id) {
> this.id = id;
> }
> @CollectionOfElements
> public List<CollectionElement> getElements() {
> return elements;
> }
> public void setElements(List<CollectionElement> elements) {
> this.elements = elements;
> }
> }
--
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
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
More information about the hibernate-issues
mailing list