Hi Kurt.

Hope you had a good weekend :)

I was able to create new web service that self-registers into the juddi
registry.
But there is an issue.

Prior to publishing the new service I had one service already that was able
register it self, but when I added the new service, the other one
disappeared.

There is this entry in src/main/webapp/WEB-INF/web.xml in both projects

  <servlet>
    <display-name>Clerk Servlet</display-name>
    <servlet-name>UDDIClerkServlet</servlet-name>

<servlet-class>org.apache.juddi.v3.client.config.UDDIClerkServlet</servlet-class>
    <init-param>
        <param-name>uddi.client.manager.name</param-name>
        <param-value>example-manager</param-value>
    </init-param>
    <load-on-startup>1</load-on-startup>
  </servlet>

As soon as I added this to my new web service the other one disappeared when
I deployed the new service.
Is this causing conflict between the two?

Name of the manager in both uddi.xml files is <manager
name="example-manager"> is this not supposed to be like that?
And the uddi.xml both have the same named clerk, but with different class
entry.

        <clerks registerOnStartup="true">
           <clerk name="SalesCratchit" node="default" publisher="sales"
password="sales">
                <class>is.siminn.juddi.ws.HelloWorldImpl</class>
           </clerk>
        </clerks>

        <clerks registerOnStartup="true">
           <clerk name="SalesCratchit" node="default" publisher="sales"
password="sales">
                <class>is.siminn.juddi.ws.AppImpl</class>
           </clerk>
        </clerks>

And the notations in the implementation classes are as follow.

@UDDIService(
        businessKey="uddi:${keyDomain}:${department}-asf",
        serviceKey="uddi:${keyDomain}:services-hello${department}",
        description = "Hello World test service")
@UDDIServiceBinding(
        bindingKey="uddi:${keyDomain}:bindings-hello${department}-wsdl",
        description="WSDL endpoint for the hello${department} Service. This
service is used for "
                  + "testing the jUDDI annotation functionality",
        accessPointType="wsdlDeployment",
        accessPoint="http://${serverName}:${serverPort}/taketwo/app?wsdl";)
@WebService(
        endpointInterface = "is.siminn.juddi.ws.App", serviceName = "App")

++++++++++++++++++++++++++++

@UDDIService(
        businessKey="uddi:${keyDomain}:${department}-asf",
        serviceKey="uddi:${keyDomain}:services-hello${department}",
        description = "Hello World test service")
@UDDIServiceBinding(
        bindingKey="uddi:${keyDomain}:bindings-hello${department}-wsdl",
        description="WSDL endpoint for the hello${department} Service. This
service is used for "
                  + "testing the jUDDI annotation functionality",
        accessPointType="wsdlDeployment",
        accessPoint="http://
${serverName}:${serverPort}/selfregister/helloworld?wsdl")
@WebService(
        endpointInterface = "is.siminn.juddi.ws.HelloWorld", serviceName =
"HelloWorld")

I.e. tha App is the new service.

What am I missing here?


Thanks.

-Gunnlaugur







On Fri, May 14, 2010 at 4:29 PM, Kurt T Stam <kurt.s...@gmail.com> wrote:

> Excellent. Looking forward to the documentation, also for the LDAP work you
> did. We can then add it nicely
> to the codebase :).
>
> Have a great weekend too.
>
> --Kurt
>
> Gunnlaugur Sigurðsson wrote:
>
>>
>>
>> On Fri, May 14, 2010 at 3:54 PM, Kurt T Stam <kurt.s...@gmail.com<mailto:
>> kurt.s...@gmail.com>> wrote:
>>
>>
>>
>>                    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>
>>
>>
>> Finally it looks like its working! I.e. from my own ws :)
>> I'll create new web service just to make sure, and document all steps.
>>
>> Thanks and have a nice weekend.
>>
>> -Gunnlaugur
>>
>>
>>
>>
>>
>>
>>        Thanks.
>>
>>        -Gunnlaugur
>>
>>
>>
>>
>>
>> --
>>
>> Kveðja/Regards
>> Gunnlaugur Sigurðsson
>> gunnlaugur...@gmail.com <mailto:gunnlaugur...@gmail.com>
>>
>> Mobile: (+354) 896-7963
>> Home: (+354) 565-5229
>>
>
>


-- 

Kveðja/Regards
Gunnlaugur Sigurðsson
gunnlaugur...@gmail.com
Mobile: (+354) 896-7963
Home: (+354) 565-5229

Reply via email to