2011-03-09 58 views
6

我在Spring-WS 1.5.9中实现了一堆Web服务。我们使用Maven来完成我们的构建,我们的服务运行在拥有UDDI提供者的OC4J上。Spring WS和UDDI

我们想要做的就是在内部开始使用UDDi注册我们的Web服务,以允许业务中的其他组找到并使用它们。

问题是,我一直无法找到如何将这一切放在一起。在部署到应用服务器时,如何让这些服务自行注册。

春天似乎没有任何支持或注释。似乎没有一个Maven插件。

我已经掌握了所有的功能,但是如何将这些功能集成到一个自动化解决方案中?

回答

0

你可以使用UDDI4J它让你与UDDI服务器交互:)

2

对于服务可发现,春-WS提供了DestinationProvider接口定位在运行时服务的edpoint。您可以使用Wsdl11DestinationProvider类从可用的WSDL中检索端点,或者您可以通过使用UDDi访问库扩展AbstractCachingDestinationProvider来实现自己的类。

对于自动发布,我知道Mule Galaxy这是一个Service Registry解决方案(不基于UDDI但在ATOM/REST上),它提供了连接器以自动从Maven导入工件。

0

查看Apache jUDDI。它有注释说明您可以使用自动注册过程。我不确定你的意思是“仅限内部使用”,但是你可以选择以没有Web容器的嵌入模式运行整个服务器),也可以在Tomcat,Jboss和大多数其他容器中运行。

实施例:http://svn.apache.org/repos/asf/juddi/trunk/juddi-examples/uddi-annotations/

还有许多其他解决方案,例如WS-发现,的mDNS,ebXML的等