REST возвращает XML - PullRequest
       12

REST возвращает XML

0 голосов
/ 26 декабря 2011

У меня есть веб-сервис REST, который возвращает объект JAXB.Я дал Mediatype как JSON для метода.Я использую плагин ajaxForm для отправки некоторых данных на этот веб-сервис.

Проблема в том, что, несмотря на то, что JSON указывается в качестве медиатипа в веб-сервисе, а также в javascript клиента в качестве dataType, я все еще получаю только xmlDocument в качестве возвращаемого объекта.

Этоподпись веб-сервиса.Я использую Glassfish 3.1, и все функции выполняются должным образом (см. Сообщения в server.log).

@Path("GetJson")
public class GetJson
{
    private static  Logger   logger = Logger.getLogger("GetJson");
    @POST
    @Produces({MediaType.APPLICATION_XML,MediaType.APPLICATION_JSON})
    public Exceldatalist getJson(@Context HttpServletRequest request)
{

Это код клиента.Форма:

<form id="form3" action="http://comp1:8080/RestWSGS/jersey/GetJson" style="display:none"
         enctype="multipart/form-data" method="post">
         <input id ="username" name="username" type="hidden" />
         <input id ="purpose" name="purpose" type="hidden" value="new"  /> 
        <input id ="filename" name="filename" type="hidden" />
        <input id ="password" name="password" type="hidden"  value="abc"/>
        <input id ="company" name="company" type="hidden" value="Third"/>
        <input id ="ignoreSheet" name="ignoreSheet" type="hidden" />
        <input type="submit"  style="display:none" />
</form>

Вызов ajaxForm:

$('#form3').ajaxForm({
     url: 'http://comp1:8080/RestWSGS/jersey/GetJson', 
        async: false,
        type: 'POST',
        cache: false,
        dataType: 'json', 
        contentType: "multipart/form-data",
        processData: false,
        success: function(data)
         {
          myData = data;
          alert('success '+myData);

         }
}); 

Кроме этого есть только вызов для submit () для формы.

Мне не удаетсяпонимаю, что я делаю не так.Я застрял здесь на некоторое время ... Пожалуйста, помогите мне разгадать это!

kavita

1 Ответ

0 голосов
/ 06 января 2012

Это то, что я сделал, чтобы решить эту проблему.

Я удалил все банки из джерси и джексона из своего проекта.

удалил все банки из джерси и джексона из директории / модуля установки Glassfish Получил все последние банки из трикотажа и положил их туда.

Затем удалил кэш osgi из glassfish и перезапустил сервер. Это решило мою проблему, хотя что именно изменилось, я не могу сказать !!

...