2010-03-17 3 views
3

Мы используем подход «Bottom Up» для создания веб-сервисов. У нас есть 10 классов java, которые мы хотим открыть в качестве веб-сервиса. Как мы можем создать только один файл WSDL для этих классов? (java2wsdl утилита & ее Ant задача занимает только один класс в качестве параметра для создания файла WSDL.)Создание единого WSDL-файла для нескольких классов

+0

Какой java2wsdl? Ось? JDK 1.6? CXF? – bmargulies

ответ

0

Я не уверен, если вы найдете какой-либо инструмент, который может занять несколько классов Java и генерировать один WSDL для них. Вы можете создать WSDL для каждой службы, а затем объединить их вручную, скопировав соответствующие типы vomplex и сервисные операции в 1 WSDL, а затем ваш SOAP-сервлет сможет идентифицировать эти операции и вызвать соответствующие классы обслуживания.

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

0

Определенно, что это не так, по умолчанию все инструменты предполагают, что они разоблачают одну услугу.

Есть одна вещь, которую вы можете попробовать, если вы используете Jax-WS (Metro или Axis2 или CXF), попробуйте создать интерфейс и позволить всем этим классам реализовать этот интерфейс и все методы (операции), которые вы хотите выставить как часть веб-службы и использовать @WebService с этим интерфейсом как значение «endpointInterface».

0

Один из подходов, который я могу придумать, аналогичный тому, что предложил @shivaspk: «Создайте интерфейс и объявите методы для функциональных возможностей ваших базовых классов. Создайте WSDL для этого интерфейса. В реализации этого интерфейса вы можете вызвать базовый класс в соответствующем методе ».

Смежные вопросы