Это правило связано с изменениями класса инициализации JAXB и конфликтами, которые возникают во время миграции с версий WebSphere Application Server ниже 7.0. Существует два случая миграции JAXB, в которых возникают неполадки с приложениями заказчика. Первый имеет отношение к миграции приложений из WebSphere 6.1, пакет компонентов для веб-служб. Второй - к миграции приложений заказчика, содержащих реализацию JAXB, в WebSphere 7.0 или более позднюю версию.
В состав WebSphere 7.0 входит JAXB 2.1 как часть среды выполнения Java 6.
До версии 7.0, в WebSphere 6.1, пакет компонентов для веб-служб, был JAXB 2.0,
в котором использовался не такой класс инициализации, как в JAXB 2.1 и 2.2 (версия 8.0).
Если в приложении указано использование прежнего класса инициализации, то во время работы
приложения могут возникать исключительные ситуации "Класс не найден".
Класс инициализации может быть задан в свойстве javax.xml.bind.context.factory. Прежний класс инициализации - com.sun.xml.bind.ContextFactory.
Если в свойстве javax.xml.bind.context.factory указано имя прежнего класса,
возникнет исключительная ситуация java.lang.ClassNotFoundException, когда
используются библиотеки JAXB из Java 6.
Это правило ищет метод javax.xml.bind.JAXBContext.newInstance, который используется
для получения объекта JAXBContext. Если применяется JAXB, приложение необходимо проверить
на наличие прежней фабрики контекста. Правило также обнаруживает строковые литералы
"com.sun.xml.bind.ContextFactory" и "com.sun.xml.bind.DefaultJAXBContextImpl" в коде Java,
но не проверяет файлы свойств, где нередко задаются эти значения.
Они также могут быть заданы как системные свойства Java.
Свойства JAXB обычно загружаются из файла jaxb.properties. Вручную
проверьте файлы свойств приложения на наличие прежней фабрики контекста.
Чтобы просмотреть файлы свойств в Eclipse, выберите Поиск > Файл....
В поле Содержит текст введите com.sun.xml.bind.ContextFactory.
В поле Шаблоны имени файла введите *.properties.
Повторите поиск для строки com.sun.xml.bind.DefaultJAXBContextImpl.
Когда JAXB используется в WebSphere 7 или 8, класс инициализации по умолчанию -
com.ibm.xml.xlxp2.jaxb.JAXBContextFactory, если не задано значение
свойства javax.xml.bind.context.factory.
Во втором случае заказчики, добавившие реализацию JAXB в состав приложения до версии 7, также могут столкнуться с только что описанными неполадками или изменением поведения после миграции на WebSphere 7.0 или более позднюю версию. Такое происходит, когда загружается версия JAXB 2.1 или 2.2 из среды выполнения Java, а не реализация JAXB, идущая в составе приложения. См. рекомендации по устранению неполадок загрузчика классов в статье Настройка стороннего приложения JAX-WS для WebSphere Application Server 7, если необходимо продолжить использование своей реализации JAXB.
Дополнительная информация: