2010-08-27 3 views
4

Мне интересно о Spring 3.0 независимо от того, предоставляет ли она страницу сгенерированного автоматически сервиса после того, как я определил службы.Имеет ли Spring 3.0 файл определения службы?

С SOAP у нас есть файл WSDL, содержащий WHAT, HOW и WHERE, с которым мы можем позвонить службе.

Возможно ли это с весной 3.0 или нет?

+0

Непонятно, что вы имеете в виду. Можете ли вы привести пример? – skaffman

+0

Предполагается, что у нас есть несколько модулей с большим количеством сервисов. Существует ли существующий способ собрать все эти аннотации @RequestMapping на одну страницу, что дает мне полный обзор моих услуг.Я хочу знать все существующие urlmappings с их параметром запроса. – DME

+0

Я тоже ищу способ отображения всех сопоставлений обработчиков URL-адресов, так же, как «рейк-маршруты» Rail. –

ответ

0

Вы можете использовать MBeanExporter для предоставления всех ваших услуг через JMX, который можно просмотреть через панель управления JMX на вашем контейнере (IE Tomcat, Jboss и т. Д.). Это простой способ учета «того, что развертывается». Ваш вопрос не совсем ясен, какой артефакт вы ищете.

<bean id="exporter" class="org.springframework.jmx.export.MBeanExporter"> 
    <property name="autodetect" value="true"/> 
</bean> 

Будет автоматически экспортировать все ваши определенные компоненты в виде MBeans. Обычно это не совсем то, что вы хотите, поэтому в качестве альтернативы вы укажете их вручную.

<bean id="exporter" class="org.springframework.jmx.export.MBeanExporter"> 
    <property name="beans"> 
     <map> 
     <entry key="bean:name=testBean1" value-ref="testBean"/> 
     </map> 
    </property> 
</bean> 
1

Да, так оно и есть. Просто добавьте «WSDL» в URL-адрес вашего веб-сервиса Spring, и вы получите определение. Также вы можете добавить «? Xsd = 1», и вы получите нужную схему (на это также ссылается WSDL).

0

Я согласен с Chochos.

Эти [? WSDL, ? XSD = N] являются универсальным стандартом, чтобы найти файл описания услуг и любой DataContract, определенный в WSDL.

пример:

если http://localhost:8080/MyService ваша конечная точка службы, то он несет ответственность сервис-контейнера, чтобы сделать WSDL доступны в http://localhost:8080/MyService, по умолчанию.

0

Ответ Да,

Используйте тег вашего сообщения диспетчера контекста весна файл.

, если ваш идентификатор bean-компонента диспетчера сообщений является spring-ws, тогда файл контекстного весны для него будет иметь значение spring-ws-servlet.xml.

В этом контексте файл

импорт пространства имен http://www.springframework.org/schema/web-services/web-services-2.0.xsd

XMLNS: SWS = "http://www.springframework.org/schema/web-services".

затем используйте тег dynamic-wsdl из этого пространства имен.

Также вы можете установить для него атрибуты типа portType, binding и id. Это создаст для вас файл wsdl. Вы можете просмотреть его, запросив его в браузере.

/.wsdl

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