From: <ro...@us...> - 2009-03-03 10:08:54
|
Revision: 39 http://cse-ip.svn.sourceforge.net/cse-ip/?rev=39&view=rev Author: roekens Date: 2009-03-03 10:08:44 +0000 (Tue, 03 Mar 2009) Log Message: ----------- Workaround for the @XmlID tag. The tag requires string attribute, but our ids are long. so ids have to be marked as transient and a getter method must be introduced to convert value. the name of the method is changed to id, so that conversion is transparent for the resulting xml. there don't seem to exist converters in jaxb to do this conveniantly -> still some inheritance issues with jaxb Modified Paths: -------------- cse-ip/trunk/sandbox/cse-ip/sc-cdmm/src/main/java/de/campussource/cse/cdmm/Account.java cse-ip/trunk/sandbox/cse-ip/sc-cdmm/src/main/java/de/campussource/cse/cdmm/Attribute.java cse-ip/trunk/sandbox/cse-ip/sc-cdmm/src/main/java/de/campussource/cse/cdmm/Category.java cse-ip/trunk/sandbox/cse-ip/sc-cdmm/src/main/java/de/campussource/cse/cdmm/Course.java cse-ip/trunk/sandbox/cse-ip/sc-cdmm/src/main/java/de/campussource/cse/cdmm/Entity.java cse-ip/trunk/sandbox/cse-ip/sc-cdmm/src/main/java/de/campussource/cse/cdmm/Group.java cse-ip/trunk/sandbox/cse-ip/sc-cdmm/src/main/java/de/campussource/cse/cdmm/Role.java Modified: cse-ip/trunk/sandbox/cse-ip/sc-cdmm/src/main/java/de/campussource/cse/cdmm/Account.java =================================================================== --- cse-ip/trunk/sandbox/cse-ip/sc-cdmm/src/main/java/de/campussource/cse/cdmm/Account.java 2009-03-02 16:52:25 UTC (rev 38) +++ cse-ip/trunk/sandbox/cse-ip/sc-cdmm/src/main/java/de/campussource/cse/cdmm/Account.java 2009-03-03 10:08:44 UTC (rev 39) @@ -15,6 +15,7 @@ import javax.xml.bind.annotation.XmlElement; import javax.xml.bind.annotation.XmlID; import javax.xml.bind.annotation.XmlIDREF; +import javax.xml.bind.annotation.XmlTransient; import javax.xml.bind.annotation.XmlType; import org.apache.commons.lang.builder.ToStringBuilder; @@ -28,12 +29,14 @@ @Id @GeneratedValue(strategy = GenerationType.AUTO) + @XmlTransient private Long id; - @XmlID - public String getIdAsString(){ - return id.toString(); - } + @XmlID + @XmlElement(name="id") + public String getIdentityString( ) { + return ( id != null ) ? id.toString() : "0"; + } @OneToMany(mappedBy="account") private List<Role> roles; @@ -72,7 +75,7 @@ return new ToStringBuilder(this, ToStringStyle.DEFAULT_STYLE).append(id).toString(); } - @XmlElement + @XmlTransient public Long getId() { return id; } Modified: cse-ip/trunk/sandbox/cse-ip/sc-cdmm/src/main/java/de/campussource/cse/cdmm/Attribute.java =================================================================== --- cse-ip/trunk/sandbox/cse-ip/sc-cdmm/src/main/java/de/campussource/cse/cdmm/Attribute.java 2009-03-02 16:52:25 UTC (rev 38) +++ cse-ip/trunk/sandbox/cse-ip/sc-cdmm/src/main/java/de/campussource/cse/cdmm/Attribute.java 2009-03-03 10:08:44 UTC (rev 39) @@ -10,7 +10,7 @@ import javax.persistence.Table; import javax.xml.bind.annotation.XmlElement; import javax.xml.bind.annotation.XmlID; -import javax.xml.bind.annotation.XmlIDREF; +import javax.xml.bind.annotation.XmlTransient; @Entity @Embeddable @@ -19,12 +19,14 @@ @Id @GeneratedValue(strategy = GenerationType.AUTO) + @XmlTransient private Long id; - @XmlID - public String getIdAsString(){ - return id.toString(); - } + @XmlID + @XmlElement(name="id") + public String getIdentityString( ) { + return ( id != null ) ? id.toString() : "0"; + } private String name; @@ -64,7 +66,7 @@ this.entity = entity; } - + @XmlTransient public Long getId() { return id; } Modified: cse-ip/trunk/sandbox/cse-ip/sc-cdmm/src/main/java/de/campussource/cse/cdmm/Category.java =================================================================== --- cse-ip/trunk/sandbox/cse-ip/sc-cdmm/src/main/java/de/campussource/cse/cdmm/Category.java 2009-03-02 16:52:25 UTC (rev 38) +++ cse-ip/trunk/sandbox/cse-ip/sc-cdmm/src/main/java/de/campussource/cse/cdmm/Category.java 2009-03-03 10:08:44 UTC (rev 39) @@ -14,6 +14,7 @@ import javax.xml.bind.annotation.XmlElement; import javax.xml.bind.annotation.XmlID; import javax.xml.bind.annotation.XmlIDREF; +import javax.xml.bind.annotation.XmlTransient; import javax.xml.bind.annotation.XmlType; import org.apache.commons.lang.builder.ToStringBuilder; @@ -27,12 +28,14 @@ @Id @GeneratedValue(strategy = GenerationType.AUTO) + @XmlTransient private Long id; - @XmlID - public String getIdAsString(){ - return id.toString(); - } + @XmlID + @XmlElement(name="id") + public String getIdentityString( ) { + return ( id != null ) ? id.toString() : "0"; + } @ManyToMany @JoinTable( @@ -76,7 +79,7 @@ return new ToStringBuilder(this, ToStringStyle.DEFAULT_STYLE).append(id).toString(); } - @XmlElement + @XmlTransient public Long getId() { return id; } Modified: cse-ip/trunk/sandbox/cse-ip/sc-cdmm/src/main/java/de/campussource/cse/cdmm/Course.java =================================================================== --- cse-ip/trunk/sandbox/cse-ip/sc-cdmm/src/main/java/de/campussource/cse/cdmm/Course.java 2009-03-02 16:52:25 UTC (rev 38) +++ cse-ip/trunk/sandbox/cse-ip/sc-cdmm/src/main/java/de/campussource/cse/cdmm/Course.java 2009-03-03 10:08:44 UTC (rev 39) @@ -16,6 +16,7 @@ import javax.xml.bind.annotation.XmlElement; import javax.xml.bind.annotation.XmlID; import javax.xml.bind.annotation.XmlIDREF; +import javax.xml.bind.annotation.XmlTransient; import org.apache.commons.lang.builder.ToStringBuilder; import org.apache.commons.lang.builder.ToStringStyle; @@ -27,12 +28,14 @@ @Id @GeneratedValue(strategy = GenerationType.AUTO) + @XmlTransient private Long id; - @XmlID - public String getIdAsString(){ - return id.toString(); - } + @XmlID + @XmlElement(name="id") + public String getIdentityString( ) { + return ( id != null ) ? id.toString() : "0"; + } @OneToMany(mappedBy="course") private List<Account> members; @@ -80,7 +83,7 @@ return new ToStringBuilder(this, ToStringStyle.DEFAULT_STYLE).append(id).toString(); } - @XmlElement + @XmlTransient public Long getId() { return id; } Modified: cse-ip/trunk/sandbox/cse-ip/sc-cdmm/src/main/java/de/campussource/cse/cdmm/Entity.java =================================================================== --- cse-ip/trunk/sandbox/cse-ip/sc-cdmm/src/main/java/de/campussource/cse/cdmm/Entity.java 2009-03-02 16:52:25 UTC (rev 38) +++ cse-ip/trunk/sandbox/cse-ip/sc-cdmm/src/main/java/de/campussource/cse/cdmm/Entity.java 2009-03-03 10:08:44 UTC (rev 39) @@ -8,12 +8,13 @@ import javax.persistence.OneToMany; import javax.xml.bind.annotation.XmlElement; import javax.xml.bind.annotation.XmlID; -import javax.xml.bind.annotation.XmlRootElement; +import javax.xml.bind.annotation.XmlTransient; public class Entity{ @Id @GeneratedValue(strategy = GenerationType.AUTO) + @XmlTransient private Long id; @OneToMany(mappedBy="entity") @@ -34,5 +35,10 @@ public void setId(Long id) { this.id = id; + } + + @XmlTransient + public Long getId() { + return id; }; } \ No newline at end of file Modified: cse-ip/trunk/sandbox/cse-ip/sc-cdmm/src/main/java/de/campussource/cse/cdmm/Group.java =================================================================== --- cse-ip/trunk/sandbox/cse-ip/sc-cdmm/src/main/java/de/campussource/cse/cdmm/Group.java 2009-03-02 16:52:25 UTC (rev 38) +++ cse-ip/trunk/sandbox/cse-ip/sc-cdmm/src/main/java/de/campussource/cse/cdmm/Group.java 2009-03-03 10:08:44 UTC (rev 39) @@ -12,6 +12,7 @@ import javax.xml.bind.annotation.XmlElement; import javax.xml.bind.annotation.XmlID; import javax.xml.bind.annotation.XmlIDREF; +import javax.xml.bind.annotation.XmlTransient; import javax.xml.bind.annotation.XmlType; import org.apache.commons.lang.builder.ToStringBuilder; @@ -26,13 +27,15 @@ @Id @GeneratedValue(strategy = GenerationType.AUTO) private Long id; + + @XmlID + @XmlElement(name="id") + public String getIdentityString( ) { + return ( id != null ) ? id.toString() : "0"; + } - @XmlID - public String getIdAsString(){ - return id.toString(); - } @XmlElement - @XmlIDREF + @XmlIDREF() @ManyToMany(mappedBy="groups") public List<Account> members; @@ -66,7 +69,7 @@ this.members = members; } - @XmlElement + @XmlTransient public Long getId() { return id; } Modified: cse-ip/trunk/sandbox/cse-ip/sc-cdmm/src/main/java/de/campussource/cse/cdmm/Role.java =================================================================== --- cse-ip/trunk/sandbox/cse-ip/sc-cdmm/src/main/java/de/campussource/cse/cdmm/Role.java 2009-03-02 16:52:25 UTC (rev 38) +++ cse-ip/trunk/sandbox/cse-ip/sc-cdmm/src/main/java/de/campussource/cse/cdmm/Role.java 2009-03-03 10:08:44 UTC (rev 39) @@ -12,6 +12,7 @@ import javax.xml.bind.annotation.XmlElement; import javax.xml.bind.annotation.XmlID; import javax.xml.bind.annotation.XmlIDREF; +import javax.xml.bind.annotation.XmlTransient; import org.apache.commons.lang.builder.ToStringBuilder; import org.apache.commons.lang.builder.ToStringStyle; @@ -23,12 +24,14 @@ @Id @GeneratedValue(strategy = GenerationType.AUTO) + @XmlTransient private Long id; - @XmlID - public String getIdAsString(){ - return id.toString(); - } + @XmlID + @XmlElement(name="id") + public String getIdentityString( ) { + return ( id != null ) ? id.toString() : "0"; + } @Column(name="ROLE_TYPE") private RoleType type; @@ -78,7 +81,7 @@ this.type = type; } - @XmlElement + @XmlTransient public Long getId() { return id; } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |