Я пытался добавить схему XML в существующий проект EJB. JAXB используется для привязки XML-схемы к классу Java. Поскольку мы будем использовать поисковую систему для сканирования DTO, когда EJB находится в сеансе.
Я не смог найти прямой подход к отображению файла класса сущностей в XML-схему.
Единственный способ, которого мы смогли достичь, - это создать веб-службы, сгенерировать WSDL, который генерирует XML-схему (XSD), а затем выполнить синтаксический анализ файла XSD через JAXB (команда xjc) для создания файлов классов Java. Теперь, используя файл mapping-binding.xml, мы можем отобразить как XML, так и файл классов Java.
Но теперь снова проблема заключается в том, как сопоставить это с классом сущности.
Вот чего мы хотим достичь:
- Объект данных XML с XML-схемой (это уже присутствует в спецификации JAXB).
- Затем Entity Bean расширяет или имеет интерфейс к этому объекту JAXB.
- Все функции постоянства управляются компонентом Entity Bean ...
- Затем компонент Entity Bean будет содержать функции XML Marshalling и UnMarshalling, найденные в JAXB.
- Объект-значение может быть получен в двоичном или XML-виде из объекта Entity Bean.
- JSP может легко извлечь XML-схему и XML-данные из объекта-значения и выполнить над ними такие операции, как преобразования XSL.
Мой аргумент в том, что у Entity Bean нет стандартного способа взаимодействия с объектами JAXB.
Кастор может быть решением, но опять же нам нужно реализовать веб-сервисы или использовать JDO-ролики.
Я нашел XStream довольно полезным, поскольку он использует класс конвертера, в котором вы можете вызывать объекты класса объекта EJB и генерировать XML-файл. Но я не предпочел использовать другой класс, но включил функции в существующий класс бина.
Можете ли вы помочь мне в этом отношении?
Я скажу вам, чего я на самом деле пытаюсь достичь. Я создаю поисковую систему, которая будет вызываться во время сеанса EJB и будет использовать сканер через DTO и получать снимок в формате XML. Поиск будет по разным критериям.
Lucene является одним из инструментов поисковой системы, но затем он использует свои собственные свойства и файлы (будет действовать скорее как автономный)
У меня уже есть DTO, которые используются веб-сервисами для связи между PHP и Java-приложением (EJB-слой). Я хотел повторно использовать эти DTO в jaxb в качестве сканера, чтобы получить вывод из таблиц в XML, что я не могу сделать, поскольку JAXB использует свои собственные сгенерированные классы через xml-схему. Как вы сказали, я еще не нашел способа обучить JAXB бобовым классам.