Save JavaFX-ObservableList with JPA

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 // avoid persisting
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 , . , , . - , ?

!:)

+4

Source: https://habr.com/ru/post/1615584/