[jboss-user] [JBoss Seam] - Seam-gen generates compile error
sdthomas
do-not-reply at jboss.com
Tue Nov 6 16:58:07 EST 2007
I am attempting to reverse engineer a database with seam-gen/generate-entities. Everything is built correctly. But the isDefined() method in the generated TransectHome class incorrectly applies a Strings.isEmpty() method (the objects are not always Strings). Is this a bug?
Generated Pojo
@Entity
| @Table(name = "transect", schema = "public")
| public class Transect implements java.io.Serializable {
|
| private TransectId id;
|
| public Transect() {
| }
|
| public Transect(TransectId id) {
| this.id = id;
| }
|
| @EmbeddedId
| @AttributeOverrides({
| @AttributeOverride(name = "pkTransect", column = @Column(name = "pk_transect", nullable = false)),
| @AttributeOverride(name = "transectId", column = @Column(name = "transect_id")),
| @AttributeOverride(name = "transectName", column = @Column(name = "transect_name")),
| @AttributeOverride(name = "groupedData", column = @Column(name = "grouped_data")),
| @AttributeOverride(name = "plots", column = @Column(name = "plots"))})
| @NotNull
| public TransectId getId() {
| return this.id;
| }
|
| public void setId(TransectId id) {
| this.id = id;
| }
|
| }
Generated Id Class
@Embeddable
| public class TransectId implements java.io.Serializable {
|
| private int pkTransect;
| private Integer transectId;
| private String transectName;
| private Integer groupedData;
| private String plots;
|
| public TransectId() {
| }
|
| public TransectId(int pkTransect) {
| this.pkTransect = pkTransect;
| }
| public TransectId(int pkTransect, Integer transectId, String transectName,
| Integer groupedData, String plots) {
| this.pkTransect = pkTransect;
| this.transectId = transectId;
| this.transectName = transectName;
| this.groupedData = groupedData;
| this.plots = plots;
| }
|
| @Column(name = "pk_transect", nullable = false)
| @NotNull
| public int getPkTransect() {
| return this.pkTransect;
| }
|
| public void setPkTransect(int pkTransect) {
| this.pkTransect = pkTransect;
| }
|
| @Column(name = "transect_id")
| public Integer getTransectId() {
| return this.transectId;
| }
|
| public void setTransectId(Integer transectId) {
| this.transectId = transectId;
| }
|
| @Column(name = "transect_name")
| public String getTransectName() {
| return this.transectName;
| }
|
| public void setTransectName(String transectName) {
| this.transectName = transectName;
| }
|
| @Column(name = "grouped_data")
| public Integer getGroupedData() {
| return this.groupedData;
| }
|
| public void setGroupedData(Integer groupedData) {
| this.groupedData = groupedData;
| }
|
| @Column(name = "plots")
| public String getPlots() {
| return this.plots;
| }
|
| public void setPlots(String plots) {
| this.plots = plots;
| }
|
| public boolean equals(Object other) {
| if ((this == other))
| return true;
| if ((other == null))
| return false;
| if (!(other instanceof TransectId))
| return false;
| TransectId castOther = (TransectId) other;
|
| return (this.getPkTransect() == castOther.getPkTransect())
| && ((this.getTransectId() == castOther.getTransectId()) || (this
| .getTransectId() != null
| && castOther.getTransectId() != null && this
| .getTransectId().equals(castOther.getTransectId())))
| && ((this.getTransectName() == castOther.getTransectName()) || (this
| .getTransectName() != null
| && castOther.getTransectName() != null && this
| .getTransectName().equals(castOther.getTransectName())))
| && ((this.getGroupedData() == castOther.getGroupedData()) || (this
| .getGroupedData() != null
| && castOther.getGroupedData() != null && this
| .getGroupedData().equals(castOther.getGroupedData())))
| && ((this.getPlots() == castOther.getPlots()) || (this
| .getPlots() != null
| && castOther.getPlots() != null && this.getPlots()
| .equals(castOther.getPlots())));
| }
|
| public int hashCode() {
| int result = 17;
|
| result = 37 * result + this.getPkTransect();
| result = 37
| * result
| + (getTransectId() == null ? 0 : this.getTransectId()
| .hashCode());
| result = 37
| * result
| + (getTransectName() == null ? 0 : this.getTransectName()
| .hashCode());
| result = 37
| * result
| + (getGroupedData() == null ? 0 : this.getGroupedData()
| .hashCode());
| result = 37 * result
| + (getPlots() == null ? 0 : this.getPlots().hashCode());
| return result;
| }
|
| }
Generated Action Class
@Name("transectHome")
| public class TransectHome extends EntityHome<Transect> {
|
| public void setTransectId(TransectId id) {
| setId(id);
| }
|
| public TransectId getTransectId() {
| return (TransectId) getId();
| }
|
| public TransectHome() {
| setTransectId(new TransectId());
| }
|
| @Override
| public boolean isIdDefined() {
| if (getTransectId().getPkTransect() == 0)
| return false;
| if (Strings.isEmpty(getTransectId().getTransectId()))
| return false;
| if (Strings.isEmpty(getTransectId().getTransectName()))
| return false;
| if (Strings.isEmpty(getTransectId().getGroupedData()))
| return false;
| if (Strings.isEmpty(getTransectId().getPlots()))
| return false;
| return true;
| }
|
| @Override
| protected Transect createInstance() {
| Transect transect = new Transect();
| transect.setId(new TransectId());
| return transect;
| }
|
| public void wire() {
| }
|
| public boolean isWired() {
| return true;
| }
|
| public Transect getDefinedInstance() {
| return isIdDefined() ? getInstance() : null;
| }
|
| }
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4102358#4102358
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4102358
More information about the jboss-user
mailing list