У меня проблема с запуском клиента Java (с использованием Metro) против .NET STS и защищенного веб-сервиса.Однако, когда я запускаю свой клиент на основе .NET, он всегда работает.
Как вы, вероятно, уже знаете, когда клиент JAX-WS запускается, он запрашивает метаданные от службы во время выполнения (даже если он уже имеетпобежал wsimport во время разработки).Однако, похоже, что этот запрос метаданных во время выполнения - вот где моя проблема.
Проблема, с которой я сталкиваюсь, заключается в том, что во время запросов метаданных во время выполнения некоторые WSDL, экспортируемые моей службой WCF, приводили к тому, что клиент Java просто«зависать» во время мекс-запросов.Когда он зависает, он даже не доходит до выдачи запроса RST.
Например, я могу добраться до места, где у меня есть 9 атрибутов [OperationContract], и это работает.Но когда я добавляю 10-й сервисный метод, он не работает.Однако, если я удалю один из 9, то это работает.Я знаю, что нет проблемы с конкретным методом, потому что я могу смешивать и сопоставлять, и тот же шаблон имеет место.
Я не могу вывести шаблон или причину, по которой некоторые WSDL работают, а некоторые нетт.Я сильно сомневаюсь, что количество методов обслуживания ограничено.Однако может ли это быть проблемой с «общей сложностью» экспортируемого WSDL?
У кого-нибудь есть идеи?Кто-нибудь сталкивался с этой проблемой раньше?
Если вам нужна дополнительная информация, я с удовольствием опубликую ее.Я просто пытаюсь сохранить начальный пост управляемой длины.
Я также добавлю, что я использую STS и защищенное веб-обслуживание в .NET 4, и они основаны на WIF (так что мне не нужно беспокоиться о настройках безопасности).Мой клиент .NET также является .NET 4. На стороне Java я использую Netbeans 6.9.1 с Metro 2.1 под управлением Glassfish 3. Я подтвердил, что у меня возникает та же проблема, возникающая в Metro 2.0.