I am trying to save an ObservableList using JPA using the eclipselink version 2.6 API with derby. JPA requires POJOs to persist. For JavaFX-Properties, I can use this:
@Transient
private StringProperty street = new SimpleStringProperty();
@Access(AccessType.PROPERTY)
public String getStreet() {
return street.get();
}
public void setStreet(final String newStreet) {
street.set(newStreet);
}
Works great! Well, the first assumption is to use it in the same way for an ObservableList. My first attempt was to use a regular list:
@OneToMany(fetch = FetchType.LAZY, cascade = CascadeType.ALL)
private List<Address> adrList;
public List<Address> getAdrList() {
return adrList;
}
public void setAdrList(final List<Address> adrList) {
this.adrList = adrList;
}
It works well! Let me change the list to an ObservableList. According to StringProperty, I would use something like this:
private ObservableList<Address> adrList;
@Access(AccessType.PROPERTY)
@OneToMany(fetch = FetchType.LAZY, cascade = CascadeType.ALL)
public List<Address> getAdrList() {
return adrList;
}
public void setAdrList(final List<Address> adrList) {
this.adrList.setAll(adrList);
}
, . NullPointerException, adrList Null.
: ObervableList JPA? , ObservableList , . , , . - , ?
!:)