Primefaces DataTable und Vererbung

SearchingHelp

Neues Mitglied
Hallo,

ich habe vor kurzem mit JavaEE (in Eclipse) angefangen, einige Tutorials durchgearbeitet. Grade spiele ich etwas mit Primefaces rum und hoffe mal hier jemanden zu finden der mir helfen kann.

Ich verusche eine DataTable mit LazyLoading. Ich bekomme auch eine ordentliche Table mit Sortierung und Suche hin solange ich nur die Felder aus der Klasse Person benutze. Sobald ich allerdings z. B. Felder aus address hinzufügen will muss ich dies über den Umweg einer p:datalist machen. Dann bekomme ich allerdings beim Versuch in diesen Spalten zu suchen (oder nach diesen zu sortieren) immer eine java.lang.NoSuchFieldException.

Kurz zur Struktur

Ich habe eine Klasse Person

Java:
...
public class Person implements Serializable {
	private static final long serialVersionUID = -872968578809570599L;
   
	@Id
    @SequenceGenerator(
            name="person_id_seq",
            sequenceName="person_id_seq",
            allocationSize=1,
            initialValue=1
    )
    @GeneratedValue(
            strategy=GenerationType.SEQUENCE,
            generator="person_id_seq"
    )
	private Long			id;
	
	private char			personType;

	private String			name;
	
	private Long			navision_id;
	
	@OneToMany(cascade={CascadeType.PERSIST},
				mappedBy="person")
	private Set<Address>	address;
...

eine Person Customer

Java:
...
public class Customer extends Person implements Serializable {
	private static final long serialVersionUID = 8837495026181176733L;
	
	@OneToMany(mappedBy="owner")
	private Set<Machine>	machines;
	
	public Set<Machine> getMachines() {
		return machines;
	}
	
	public void setMachine(Set<Machine> machines) {
		this.machines = machines;
	}
}

Ich habe mich beim Einrichten der DataTable an das Beispiel PrimeFaces ShowCase gehalten nur mit dem Unterschied, dass ich die Daten aus einer postgresql-DB hole.

Hat vielleicht jemand einen Tip für mich?

Falls ich was vergessen hab, nur schreien 😉.

Danke
 
Zuletzt bearbeitet von einem Moderator:

Zurück
Oben