我有一堆用Spring-WS 1.5.9实现的web服务。我们使用Maven进行构建,我们的服务运行在OC4J上,并拥有UDDI提供者。
我们想要做的是开始在内部使用UDDi来注册我们的Web服务,以便让业务中的其他团队找到并使用它们。
问题在于我一直没有找到如何把所有这些东西放在一起的方法。当服务部署到应用服务器时,如何让它们自己注册呢?
Spring似乎没有支持或注释。也没有maven插件。
我已经有了所有的零件,但如何将它们组合成一个自动化的解决方案呢?
DestinationProvider
接口,在运行时定位服务端点。您可以使用 Wsdl11DestinationProvider
类从可用的 WSDL 检索端点,或者通过扩展 AbstractCachingDestinationProvider
并使用 UDDi 访问库来实现自己的类。可以看看Apache jUDDI。它具有注释,可以用来自动化注册过程。我不确定你所说的“仅内部使用”,但你可以选择在嵌入模式下运行完整服务器(无需Web容器),也可以在Tomcat、Jboss和大多数其他容器中运行。
例如:http://svn.apache.org/repos/asf/juddi/trunk/juddi-examples/uddi-annotations/
还有许多其他解决方案,如WS-Discovery、mDNS、ebXML等。