Я хотел использовать аннотацию JaxB в своем классе как это:
@XmlRootElement
public class ItemExtension implements Serializable {
Но GWT жалуется, когда я поместил ее в сторону клиента.
[ERROR] Line 4: The import javax.xml.bind cannot be resolved
[ERROR] Line 14: XmlRootElement cannot be resolved to a type
Существует ли обходное решение, или я делаю что-то не так?
Здесь вы можете найти жизнеспособное решение: GWT с JPA
У меня есть проект, в котором в коде GWT на стороне клиента используются классы сущностей с аннотациями JPA и JAXB. См. раздел "Переопределение реализации одного пакета другим" в Документации GWT.
Допустим, ваш модуль находится в пакете com.example.app
. Вам нужно заново создать[1] все классы аннотаций JAXB в новом пакете, а именно com.example.app.jre.java.xml.bind.annotation
; в XML-файле вашего модуля вы добавите
и все готово.
Обратите внимание, что вам не нужно распространять файлы классов в этом пакете, они нужны исключительно для компилятора GWT.
[1]: Вы можете скопировать их и скорректировать все ссылки на пакет.