Конфликтующие сообщения об ошибках для веб-службы JAX-RS - PullRequest
1 голос
/ 21 апреля 2011

Я занимаюсь разработкой веб-службы RESTful с использованием JAX-RS. Я использую JAXB для сопоставления моих классов с XML, который отправляется как параметр запроса в запросах POST и PUT.

Чтобы проверить функциональность моего веб-сервиса, я написал простой клиент, который создает объект HttpConnection и отправляет необходимый XML-код в URI POST. Однако именно здесь я получаю конфликтующие сообщения об ошибках.

Если я использую свой клиент, я получаю в ответ Внутреннюю ошибку сервера, даже если это не одна из ошибок, которые я возвращаю явно. Более того, Tomcat не дает трассировки стека, когда я пытаюсь выполнить любой запрос (GET или POST), чтобы объяснить причину ошибки.

Однако, если я использую curl для отправки запроса POST на тот же URI с теми же данными запроса, я получаю ошибку типа неподдерживаемого носителя (HTTP 415). Тип мультимедиа в моем запросе, а также метод обработчика веб-службы - "text / xml".

Кто-нибудь может подсказать мне, как я могу решить эту проблему? Заранее спасибо.

1 Ответ

0 голосов
/ 21 апреля 2011

Устранение неполадок REST: Я предлагаю использовать Fiddler для проверки вашего трафика.Таким образом, вы можете видеть точные запросы и ответы.

Неподдерживаемая ошибка типа носителя (HTTP 415): При передаче XML следует использовать application/xml или text/xml типы носителей.

...