We had to change our UDDI-client code a little when we switched our UDDI
server backend !!

That was a surprise to us !!  Below are the details.  Please suggest what is
missing -- it's puzzling, and we need to solve this puzzle.

Question:

Why client code change is necessary when we switch from HP to jUDDI v3.0.4 ?

Details:

We switched our backend UDDI registry instance from HP to jUDDI v3.0.4. 
[Note that: The HP registry is also UDDI spec v3 compliant.]

After the jUDDI instance started, we ran our existing piece of code (as
included below) and ran into
"org.uddi.v3_service.DispositionReportFaultMessage: At least one search
criterion must be supplied".

Stack Trace:

Caused by: org.uddi.v3_service.DispositionReportFaultMessage: At least one
search criterion must be supplied

        at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native
Method)

        at
sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)

        at
sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)

        at java.lang.reflect.Constructor.newInstance(Constructor.java:513)

        at
com.sun.xml.ws.fault.SOAPFaultBuilder.createException(SOAPFaultBuilder.java:141)

        at
com.sun.xml.ws.client.sei.SyncMethodHandler.invoke(SyncMethodHandler.java:119)

        at
com.sun.xml.ws.client.sei.SyncMethodHandler.invoke(SyncMethodHandler.java:89)

        at com.sun.xml.ws.client.sei.SEIStub.invoke(SEIStub.java:140)

        at $Proxy41.findBusiness(Unknown Source)

        at
org.mine.connectmgr.uddi.MyUDDIAccessor.retrieveBizInfo(MyUDDIAccessor.java:581)


Code that works on HP:

            UDDIInquiryPortType oInq = getUDDIInqWebSvc();


            FindBusiness oFindBiz = new FindBusiness();

            oFindBiz.setMaxRows(100);


            oBusinessList = oInq.findBusiness(oFindBiz);


Code (with additions) that works on jUDDI v3:

            UDDIInquiryPortType oInq = getUDDIInqWebSvc();


            FindBusiness oFindBiz = new FindBusiness();

            Name findName = new Name();                                 //
new code

            FindQualifiers qualifiers = new FindQualifiers();             //
new code

            findName.setValue("%");                                          
// new code

            qualifiers.getFindQualifier().add("approximateMatch");// new
code

            oFindBiz.getName().add(findName);                          //
new code

            oFindBiz.setFindQualifiers(qualifiers);                         
// new code

            oFindBiz.setMaxRows(100);

            
            oBusinessList = oInq.findBusiness(oFindBiz);


Thanks!  Is the code change (// new code) necessary to get rid of
org.uddi.v3_service.DispositionReportFaultMessage ?

What are we missing ?? 
 Please let us know at your earliest.

-- 
View this message in context: 
http://old.nabble.com/Changes-required-to-the-client-code----%28when-switched-from-HP-to-jUDDI-v3.0.4%29-tp31455105p31455105.html
Sent from the jUDDI - User mailing list archive at Nabble.com.

Reply via email to