2. Put the juddiv3.war and your WSs war on the same classloader,
may or may not be ideal, but then your WSs wars will be nice and
light.
"on the same classloader" are you talking about same tomcat instance?
yes, prob 3 is the better option.
3. Switch to JAXWSTransport. What you really want to do is to use
the WS stack of your appserver. Running JBoss we have this working
really cleanly where both CXF and Hibernate are deployed to the
appserver (not in the juddiv3.war),
Do I have the same option here as in the self-registration sample.
I.e. just to add the annotation to the interface implementation and
use the following uddi.xml file, or do I have to make any extra code
to make the service self-register?
Note: IT-operations here is only running Tomcat, so I don't have the
option of using jboss.
<?xml version="1.0" encoding="UTF-8"?>
<uddi>
<reloadDelay>5000</reloadDelay>
<manager name="example-manager">
<nodes>
<node>
<!-- required 'default' node -->
<name>default</name>
<properties>
<property name="serverName" value="localhost"/>
<property name="serverPort" value="8080"/>
</properties>
<!-- JAX-WS Transport -->
<proxyTransport>org.apache.juddi.v3.client.transport.JAXWSTransport</proxyTransport>
<custodyTransferUrl>http://${serverName}:${serverPort}/juddiv3/services/custody-transfer?wsdl</custodyTransferUrl>
<inquiryUrl>http://${serverName}:${serverPort}/juddiv3/services/inquiry?wsdl</inquiryUrl>
<publishUrl>http://${serverName}:${serverPort}/juddiv3/services/publish?wsdl</publishUrl>
<securityUrl>http://${serverName}:${serverPort}/juddiv3/services/security?wsdl</securityUrl>
<subscriptionUrl>http://${serverName}:${serverPort}/juddiv3/services/subscription?wsdl</subscriptionUrl>
<subscriptionListenerUrl>http://${serverName}:${serverPort}/juddiv3/services/subscription-listener?wsdl</subscriptionListenerUrl>
<juddiApiUrl>http://${serverName}:${serverPort}/juddiv3/services/juddi-api?wsdl</juddiApiUrl>
</node>
</nodes>
</manager>
</uddi>
This should work, you just need to define a clerk and reference the
class with the annotations:
<clerks registerOnStartup="true">
<clerk name="BobCratchit" node="default" publisher="sales"
password="sales">
<class>org.apache.juddi.samples.HelloWorldImpl</class>
</clerk>
</clerks>
Thanks.
-Gunnlaugur