RESTFUL веб-сервис - тип мультимедиа = приложение / xml - PullRequest
0 голосов
/ 12 ноября 2018

В настоящее время я пишу веб-сервис RESTFUL и пытаюсь вернуть целое число в веб-сервис.

Я столкнулся с 500 Internal Server Error из браузера, и при проверке журнала Tomcat произошла вышеуказанная ошибка.

12-Nov-2018 09:47:12.547 SEVERE [http-nio-8080-exec-52] org.glassfish.jersey.message.internal.WriterInterceptorExecutor$TerminalWriterInterceptor.aroundWriteTo MessageBodyWriter not found for media type=application/xml, type=class java.lang.Integer, genericType=int.

Мой код:

@POST
    @Path("/post")

    @Produces(MediaType.APPLICATION_XML)
    public static int adaptiveAuth(){ 
        int message=1;
        return message; 
    }

Если я заменю функцию на String, она не выдаст ошибку.

@POST
    @Path("/post")

    @Produces(MediaType.APPLICATION_XML)
    public static String adaptiveAuth(){ 
        String message="POST STRING";
        return message; 
    }

Результат: POST STRING

Есть ли какие-либо ограничения на RESTFUL в отношении MediaType.APPLICATION_XML?

Спасибо

1 Ответ

0 голосов
/ 12 ноября 2018

Здравствуйте, попробуйте использовать объект Response из спецификации jax-rs

https://docs.oracle.com/javaee/7/api/javax/ws/rs/core/Response.html

Лучше вернуть объект ответа, который дает вам гибкость в определении статуса, тела и т. Д.

Также вы можете увидеть существующий ответ по этой теме:

Возвращение целого числа из метода веб-сервисов RESTful в java

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...