|
Gunnar,
Thanks for your prompt feedback
The problem is caused by a class that extends another one and the Comparable interface. The child class again declares implements Comparable<ReferenceData>. The implements Comparable<ReferenceData> was not required in the child class but is this what was causing the error.
– Parent class
/**
-
Reference data base class.
-
@author Robert Nagajek
*/ @MappedSuperclass @NoArgsConstructor @Getter @Setter public abstract class ReferenceData extends Base implements Serializable, Comparable<ReferenceData>, Activatable { @Basic(optional = false) @NotBlank @Size(max = 1000) private String name;
@Lob private byte[] icon;
@Basic(optional = false) private boolean active = true;
public ReferenceData(Long id) { super(id); } @Override public int compareTo(ReferenceData other) { return Nvl.nvl(getName()).compareToIgnoreCase(Nvl.nvl(other.getName())); } } – Child class /** * Sorted reference data base class. * * @author Robert Nagajek <robert@anahata-it.com.au> */ @MappedSuperclass @NoArgsConstructor @Getter @Setter public class SortedReferenceData extends ReferenceData implements Serializable, Comparable<ReferenceData> { @NotNull private Integer sortOrder; public SortedReferenceData(Long id) { super(id); }
@Override public int compareTo(ReferenceData other) { return sortOrder - ((SortedReferenceData)other).sortOrder; }
}
|