Как упорядочить список списков в JAXBJAVA

Программисты JAVA общаются здесь
Ответить
Anonymous
 Как упорядочить список списков в JAXB

Сообщение Anonymous »

У меня есть защищенный атрибут ObservableList selectableMatrix;, который на самом деле является ObservableList, который является моделью для tableView JavaFX, где пользователь может выбирать определенные клетки. Я хотел бы упорядочить/отменить маршалирование этой selectableMatrix с помощью JAXB, но я не могу найти пример того, как аннотировать список списков или как реализовать соответствующий адаптер. Наивный способ

Код: Выделить всё

@XmlElement(name = "selectableMatrix")
public ObservableList getSelectableMatrix() {

return selectableMatrix;
}
приводит к исключению IllegalAnnotationsException, поскольку java.util.List — это интерфейс, а JAXB не может обрабатывать интерфейсы.
Что мне нужно сделать ?
РЕДАКТИРОВАТЬ
Я попробовал, как предложил Скотт ниже, ObservableList. Я получил

Код: Выделить всё

 org.glassfish.jaxb.runtime.v2.runtime.IllegalAnnotationsException: 1 counts of IllegalAnnotationExceptions
javafx.collections.ObservableList ist eine Schnittstelle, und JAXB kann keine Schnittstellen verarbeiten.
this problem is related to the following location:
at javafx.collections.ObservableList
at protected javafx.collections.ObservableList de.levin.domain.SessionFlowModel.selectableMatrix
at de.levin.domain.SessionFlowModel
как оказалось, ObservableList также является «всего лишь» интерфейсом.
Поэтому я добавил аннотацию @XmlJavaTypeAdapter

Код: Выделить всё

@XmlJavaTypeAdapter(ObservableListAdapter.class)    // Since JAXB can't deal with interfaces, use this adapter class
protected ObservableList selectableMatrix; // matrix indicating whether a transition between two exercises is possible or not
Однако мне не удается даже скомпилировать класс XMLAdapter. Может ли кто-нибудь предоставить пример XMLAdapter для List

Подробнее здесь: https://stackoverflow.com/questions/791 ... st-in-jaxb
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «JAVA»