Проблема - веб-служба Java, используемая .NET - PullRequest
0 голосов
/ 06 июня 2009

Я столкнулся с проблемой при использовании веб-службы Java из .NET. Я могу предоставить информацию в веб-службу, но не могу получить результат. Результатом является пользовательский объект, который создается в Java с одной длинной, одной короткой и одной строковой переменной. Но вывод, который я получаю из .NET, заключается в том, что long и short всегда по умолчанию равны 0, а string - null. Любые указатели должны быть оценены.

Кроме того, когда я делаю возврат просто как int, он работает нормально.

С уважением, Bijesh

Ответы [ 3 ]

0 голосов
/ 10 июня 2009

Скотт Хансельман только что написал запись в блоге , касающуюся использования несколько небрежных файлов wsdl из неназванного (но, вероятно, основанного на Java) веб-сервиса.

Его успехи, хотя и решаются, скорее всего, применимы к вашей проблеме, поэтому я предлагаю прочитать ее и посмотреть, какие биты имеют отношение к вашей проблеме.

Весьма вероятно, что вам потребуется изменить wsdl, чтобы автоматически сгенерировать ваши заглушки .Net.

0 голосов
/ 11 июня 2009

Я бы с удовольствием посмотрел некоторые WSDL и примеры вызовов, но я сделаю некоторые предположения о проблеме, с которой вы столкнулись. :) В прошлом у меня были проблемы с совместимостью Java и .Net SOAP. Кстати, я использовал Axis 1.4.

Моя конкретная проблема была связана с пустыми пространствами имен; например, ... , что означает someElement не является частью пространства имен его родителя. (Подробнее здесь .). У клиентов SOAP .Net - по крайней мере в прошлом - были проблемы с такими элементами. После некоторых копаний я нашел обходной путь в списке рассылки оси-пользователей. Это сработало для нас. Возможно, это поможет вам.

Вот еще несколько вещей, которые можно попробовать.

  • Переключиться на WSDL-первую разработку. :)
  • Установите для параметра dotNetSoapEncFix значение true. Axis '.wsdd файл. Это улучшает совместимость с .Net в отношении массивов.
  • Напишите немного настроенного кода сериализации на стороне Оси.
0 голосов
/ 06 июня 2009

Похоже, ваш WDSL сломан. Что его создало?

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