Как настроить поведение анализатора XML, используемого JAX-WS - PullRequest
4 голосов
/ 16 сентября 2011

Мое намерение состоит в том, чтобы запретить парсеру XML ссылаться на внешние сущности, определенные в разделе DOCTYPE в начале XML-запроса, но меня интересует возможность более общего конфигурирования парсера XML, используемого JAX-WS во время выполнения.

Просматривая доступную документацию JAX-WS (не формальную, не полную, "не" во многих отношениях), я не могу найти способ выразить свои требования к конфигурации в JAX-WS. Это было бы здорово, потому что мне не пришлось бы иметь дело с тем, что под ним.

Заклинивание шестерен отверткой показывает, что он использует StAX. Это означает, что я мог бы использовать javax.xml.stream.XMLInputFactory и его setProperty(String, Object) метод для его настройки, но мне нужен специфический экземпляр XMLInputFactory, используемый JAX-WS для этого. Установка системных свойств при запуске JVM не помогает; свойства должны быть установлены для экземпляра, используемого JAX-WS.

Итак, - это какой-то способ настройки синтаксического анализатора XML JAX-WS, о котором я не знаю, или мне придется копаться во внутренностях JAX-WS, чтобы каким-то образом овладеть синтаксическим анализатором и настроить его напрямую. Последний будет довольно хромым.

Редактировать: Я имею в виду стандартную реализацию JAX-WS, представленную в Sun / Oracle JDK. Я использую Java 1.6.0 Update 24. Полагаю, это должен быть RI.

1 Ответ

0 голосов
/ 21 ноября 2011

Я предлагаю лучше использовать XStream для того же.

...