Uploaded image for project: 'jUDDI'
  1. jUDDI
  2. JUDDI-514

Upgrade support WSDL2UDDI registration

    Details

    • Type: Task
    • Status: Closed
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: 3.1.0
    • Fix Version/s: 3.1.5
    • Component/s: juddi-client
    • Labels:
      None

      Description

      • replace key generation
      • support WSDL registration
      • check if service exist before creating (and replacing exisiting one)

        Issue Links

          Activity

          Hide
          spyhunter99 Alex O'Ree added a comment -

          Referencing the example at
          juddi-examples\wsdl2uddi-lifecyle\src\main\java\org\apache\juddi\example\wsdl2uddi

          I get the following with "deploying"

          [ERROR] Failed to execute goal org.codehaus.cargo:cargo-maven2-plugin:1.3.3:deploy (default-cli) on project wsdl2uddi-li
          fecycle: Execution default-cli of goal org.codehaus.cargo:cargo-maven2-plugin:1.3.3:deploy failed: Failed to create depl
          oyable with implementation class org.codehaus.cargo.container.tomcat.TomcatWAR for the parameters (container [id = [tomc
          at6x]], deployable type [war]). InvocationTargetException: Failed to parse Tomcat WAR file in [C:\juddi\trunk\juddi-exa
          mples\wsdl2uddi-lifecyle\target\wsdl2uddi.war]: Failed to find file [C:\juddi\trunk\juddi-examples\wsdl2uddi-lifecyle\t
          arget\wsdl2uddi.war]: C:\juddi\trunk\juddi-examples\wsdl2uddi-lifecyle\target\wsdl2uddi.war (The system cannot find the
          file specified) -> [Help 1]

          Show
          spyhunter99 Alex O'Ree added a comment - Referencing the example at juddi-examples\wsdl2uddi-lifecyle\src\main\java\org\apache\juddi\example\wsdl2uddi I get the following with "deploying" [ERROR] Failed to execute goal org.codehaus.cargo:cargo-maven2-plugin:1.3.3:deploy (default-cli) on project wsdl2uddi-li fecycle: Execution default-cli of goal org.codehaus.cargo:cargo-maven2-plugin:1.3.3:deploy failed: Failed to create depl oyable with implementation class org.codehaus.cargo.container.tomcat.TomcatWAR for the parameters (container [id = [tomc at6x]], deployable type [war] ). InvocationTargetException: Failed to parse Tomcat WAR file in [C:\juddi\trunk\juddi-exa mples\wsdl2uddi-lifecyle\target\wsdl2uddi.war]: Failed to find file [C:\juddi\trunk\juddi-examples\wsdl2uddi-lifecyle\t arget\wsdl2uddi.war]: C:\juddi\trunk\juddi-examples\wsdl2uddi-lifecyle\target\wsdl2uddi.war (The system cannot find the file specified) -> [Help 1]
          Hide
          kurtstam Kurt T Stam added a comment -

          I updated the README. You have to also run "mvn package" to build the war.

          Show
          kurtstam Kurt T Stam added a comment - I updated the README. You have to also run "mvn package" to build the war.
          Hide
          spyhunter99 Alex O'Ree added a comment -

          I'm running into an issue saving the generated info. Here's my use case

          http://graphical.weather.gov/xml/SOAP_server/ndfdXMLserver.php?wsdl

          When saving the business and services:
          Caused by: org.apache.cxf.binding.soap.SoapFault: Attempting to project a service when the service does not exist: uddi:graphical.weather.gov:business_graphical.weather.gov, uddi:graphical.weather.gov:service_ndfdxml

          Show
          spyhunter99 Alex O'Ree added a comment - I'm running into an issue saving the generated info. Here's my use case http://graphical.weather.gov/xml/SOAP_server/ndfdXMLserver.php?wsdl When saving the business and services: Caused by: org.apache.cxf.binding.soap.SoapFault: Attempting to project a service when the service does not exist: uddi:graphical.weather.gov:business_graphical.weather.gov, uddi:graphical.weather.gov:service_ndfdxml
          Hide
          spyhunter99 Alex O'Ree added a comment -

          Here's the generated entities: first the tmodel gen (i made this one)

          URL url = new URL("http://graphical.weather.gov/xml/SOAP_server/ndfdXMLserver.php?wsdl");
          String domain = url.getHost();
          PrintUDDI<TModel> tmodelPrinter = new PrintUDDI<TModel>();
          //String domain = "alex.com";
          TModel keygen = UDDIClerk.createKeyGenator("uddi:" + domain + ":keygenerator", domain, "en");

          //save the keygen
          SaveTModel stm = new SaveTModel();
          stm.setAuthInfo(rootAuthToken.getAuthInfo());
          stm.getTModel().add(keygen);
          System.out.println(tmodelPrinter.print(keygen));
          publish.saveTModel(stm);

          ReadWSDL rw = new ReadWSDL();
          Definition wsdlDefinition = rw.readWSDL(url);

          properties.put("keyDomain", domain);
          properties.put("businessName", domain);
          properties.put("serverName", url.getHost());
          properties.put("serverPort", url.getPort());
          wsdlURL = wsdlDefinition.getDocumentBaseURI();
          WSDL2UDDI wsdl2UDDI = new WSDL2UDDI(null, new URLLocalizerDefaultImpl(), properties);

          <org.uddi.api_v3.TModel tModelKey="uddi:graphical.weather.gov:keygenerator" xmlns:ns2="http://www.w3.org/2000/09/xmldsig#" xmlns:ns3="urn:uddi-org:api_v3">
          <ns3:name xml:lang="en">graphical.weather.gov</ns3:name>
          <ns3:overviewDoc>
          <ns3:overviewURL useType="text">http://uddi.org/pubs/uddi_v3.htm#keyGen</ns3:overviewURL>
          </ns3:overviewDoc>
          <ns3:categoryBag>
          <ns3:keyedReference tModelKey="uddi:uddi.org:keygenerator" keyName="uddi.org:keygenerator" keyValue="keyGenerator"/>
          </ns3:categoryBag>
          </org.uddi.api_v3.TModel>

          Retrieving document at 'http://graphical.weather.gov/xml/SOAP_server/ndfdXMLserver.php?wsdl'.
          next the tmodels
          Map<QName, PortType> portTypes = (Map<QName, PortType>) wsdlDefinition.getAllPortTypes();
          Set<TModel> portTypeTModels = wsdl2UDDI.createWSDLPortTypeTModels(wsdlURL, portTypes);

          <org.uddi.api_v3.TModel tModelKey="uddi:graphical.weather.gov:ndfdXMLPortType" xmlns:ns2="http://www.w3.org/2000/09/xmldsig#" xmlns:ns3="urn:uddi-org:api_v3">
          <ns3:name xml:lang="en">ndfdXMLPortType</ns3:name>
          <ns3:overviewDoc>
          <ns3:overviewURL useType="wsdlDeployment">http://localhost</ns3:overviewURL>
          </ns3:overviewDoc>
          <ns3:categoryBag>
          <ns3:keyedReference tModelKey="uddi:uddi.org:wsdl:types" keyName="uddi-org:wsdl:types" keyValue="portType"/>
          <ns3:keyedReference tModelKey="uddi:uddi.org:xml:namespace" keyName="uddi-org:xml:namespace" keyValue="http://graphical.weather.gov/xml/DWMLgen/wsdl/ndfdXML.wsdl"/>
          </ns3:categoryBag>
          </org.uddi.api_v3.TModel>

          SaveTModel tms = new SaveTModel();
          tms.setAuthInfo(rootAuthToken.getAuthInfo());

          TModel[] tmodels = (TModel[]) portTypeTModels.toArray(new TModel[0]);
          for (int i = 0; i < tmodels.length; i++)

          { tms.getTModel().add(tmodels[i]); }

          publish.saveTModel(stm);
          that works OK

          Then save the business
          BusinessServices businessServices = wsdl2UDDI.createBusinessServices(wsdlDefinition);
          SaveBusiness sb = new SaveBusiness();
          sb.setAuthInfo(rootAuthToken.getAuthInfo());
          BusinessEntity be = new BusinessEntity();
          be.getName().add(new Name());
          be.getName().get(0).setValue(domain);
          be.setBusinessServices(businessServices);
          sb.getBusinessEntity().add(be);
          publish.saveBusiness(sb);

          <org.uddi.api_v3.BusinessService serviceKey="uddi:graphical.weather.gov:service_ndfdxml" businessKey="uddi:graphical.weather.gov:business_graphical.weather.gov" xmlns:ns2="http://www.w3.org/2000/09/xmldsig#" xmlns:ns3="urn:uddi-org:api_v3">
          <ns3:name xml:lang="en">ndfdXML</ns3:name>
          <ns3:description xml:lang="en">Default service description when no <wsdl:document> element is defined inside the <wsdl:service> element.</ns3:description>
          <ns3:bindingTemplates>
          <ns3:bindingTemplate bindingKey="uddi:graphical.weather.gov:binding_graphical.weather.gov_ndfdxml_ndfdxmlport_80" serviceKey="uddi:graphical.weather.gov:service_ndfdxml">
          <ns3:description xml:lang="en">Default binding description when no <wsdl:document> element is defined inside the <wsdl:binding> element.</ns3:description>
          <ns3:accessPoint useType="endPoint">http://graphical.weather.gov/xml/SOAP_server/ndfdXMLserver.php</ns3:accessPoint>
          <ns3:tModelInstanceDetails>
          <ns3:tModelInstanceInfo tModelKey="uddi:graphical.weather.gov:ndfdXMLBinding">
          <ns3:description xml:lang="en">The wsdl:binding that this wsdl:port implements. Default binding description when no <wsdl:document> element is defined inside the <wsdl:binding> element. The instanceParms specifies the port local name.</ns3:description>
          <ns3:instanceDetails>
          <ns3:instanceParms>ndfdXMLPort</ns3:instanceParms>
          </ns3:instanceDetails>
          </ns3:tModelInstanceInfo>
          <ns3:tModelInstanceInfo tModelKey="uddi:graphical.weather.gov:ndfdXMLPortType">
          <ns3:description xml:lang="en">The wsdl:portType that this wsdl:port implements.</ns3:description>
          </ns3:tModelInstanceInfo>
          </ns3:tModelInstanceDetails>
          </ns3:bindingTemplate>
          </ns3:bindingTemplates>
          <ns3:categoryBag>
          <ns3:keyedReference tModelKey="uddi:uddi.org:xml:namespace" keyName="uddi-org:xml:namespace" keyValue="http://graphical.weather.gov/xml/DWMLgen/wsdl/ndfdXML.wsdl"/>
          <ns3:keyedReference tModelKey="uddi:uddi.org:wsdl:types" keyName="uddi-org:wsdl:types" keyValue="service"/>
          <ns3:keyedReference tModelKey="uddi:uddi.org:xml:localname" keyName="uddi-org:xml:localName" keyValue="ndfdXML"/>
          </ns3:categoryBag>
          </org.uddi.api_v3.BusinessService>

          Show
          spyhunter99 Alex O'Ree added a comment - Here's the generated entities: first the tmodel gen (i made this one) URL url = new URL("http://graphical.weather.gov/xml/SOAP_server/ndfdXMLserver.php?wsdl"); String domain = url.getHost(); PrintUDDI<TModel> tmodelPrinter = new PrintUDDI<TModel>(); //String domain = "alex.com"; TModel keygen = UDDIClerk.createKeyGenator("uddi:" + domain + ":keygenerator", domain, "en"); //save the keygen SaveTModel stm = new SaveTModel(); stm.setAuthInfo(rootAuthToken.getAuthInfo()); stm.getTModel().add(keygen); System.out.println(tmodelPrinter.print(keygen)); publish.saveTModel(stm); ReadWSDL rw = new ReadWSDL(); Definition wsdlDefinition = rw.readWSDL(url); properties.put("keyDomain", domain); properties.put("businessName", domain); properties.put("serverName", url.getHost()); properties.put("serverPort", url.getPort()); wsdlURL = wsdlDefinition.getDocumentBaseURI(); WSDL2UDDI wsdl2UDDI = new WSDL2UDDI(null, new URLLocalizerDefaultImpl(), properties); <org.uddi.api_v3.TModel tModelKey="uddi:graphical.weather.gov:keygenerator" xmlns:ns2="http://www.w3.org/2000/09/xmldsig#" xmlns:ns3="urn:uddi-org:api_v3"> <ns3:name xml:lang="en">graphical.weather.gov</ns3:name> <ns3:overviewDoc> <ns3:overviewURL useType="text"> http://uddi.org/pubs/uddi_v3.htm#keyGen </ns3:overviewURL> </ns3:overviewDoc> <ns3:categoryBag> <ns3:keyedReference tModelKey="uddi:uddi.org:keygenerator" keyName="uddi.org:keygenerator" keyValue="keyGenerator"/> </ns3:categoryBag> </org.uddi.api_v3.TModel> Retrieving document at 'http://graphical.weather.gov/xml/SOAP_server/ndfdXMLserver.php?wsdl'. next the tmodels Map<QName, PortType> portTypes = (Map<QName, PortType>) wsdlDefinition.getAllPortTypes(); Set<TModel> portTypeTModels = wsdl2UDDI.createWSDLPortTypeTModels(wsdlURL, portTypes); <org.uddi.api_v3.TModel tModelKey="uddi:graphical.weather.gov:ndfdXMLPortType" xmlns:ns2="http://www.w3.org/2000/09/xmldsig#" xmlns:ns3="urn:uddi-org:api_v3"> <ns3:name xml:lang="en">ndfdXMLPortType</ns3:name> <ns3:overviewDoc> <ns3:overviewURL useType="wsdlDeployment"> http://localhost </ns3:overviewURL> </ns3:overviewDoc> <ns3:categoryBag> <ns3:keyedReference tModelKey="uddi:uddi.org:wsdl:types" keyName="uddi-org:wsdl:types" keyValue="portType"/> <ns3:keyedReference tModelKey="uddi:uddi.org:xml:namespace" keyName="uddi-org:xml:namespace" keyValue="http://graphical.weather.gov/xml/DWMLgen/wsdl/ndfdXML.wsdl"/> </ns3:categoryBag> </org.uddi.api_v3.TModel> SaveTModel tms = new SaveTModel(); tms.setAuthInfo(rootAuthToken.getAuthInfo()); TModel[] tmodels = (TModel[]) portTypeTModels.toArray(new TModel [0] ); for (int i = 0; i < tmodels.length; i++) { tms.getTModel().add(tmodels[i]); } publish.saveTModel(stm); that works OK Then save the business BusinessServices businessServices = wsdl2UDDI.createBusinessServices(wsdlDefinition); SaveBusiness sb = new SaveBusiness(); sb.setAuthInfo(rootAuthToken.getAuthInfo()); BusinessEntity be = new BusinessEntity(); be.getName().add(new Name()); be.getName().get(0).setValue(domain); be.setBusinessServices(businessServices); sb.getBusinessEntity().add(be); publish.saveBusiness(sb); <org.uddi.api_v3.BusinessService serviceKey="uddi:graphical.weather.gov:service_ndfdxml" businessKey="uddi:graphical.weather.gov:business_graphical.weather.gov" xmlns:ns2="http://www.w3.org/2000/09/xmldsig#" xmlns:ns3="urn:uddi-org:api_v3"> <ns3:name xml:lang="en">ndfdXML</ns3:name> <ns3:description xml:lang="en">Default service description when no <wsdl:document> element is defined inside the <wsdl:service> element.</ns3:description> <ns3:bindingTemplates> <ns3:bindingTemplate bindingKey="uddi:graphical.weather.gov:binding_graphical.weather.gov_ndfdxml_ndfdxmlport_80" serviceKey="uddi:graphical.weather.gov:service_ndfdxml"> <ns3:description xml:lang="en">Default binding description when no <wsdl:document> element is defined inside the <wsdl:binding> element.</ns3:description> <ns3:accessPoint useType="endPoint"> http://graphical.weather.gov/xml/SOAP_server/ndfdXMLserver.php </ns3:accessPoint> <ns3:tModelInstanceDetails> <ns3:tModelInstanceInfo tModelKey="uddi:graphical.weather.gov:ndfdXMLBinding"> <ns3:description xml:lang="en">The wsdl:binding that this wsdl:port implements. Default binding description when no <wsdl:document> element is defined inside the <wsdl:binding> element. The instanceParms specifies the port local name.</ns3:description> <ns3:instanceDetails> <ns3:instanceParms>ndfdXMLPort</ns3:instanceParms> </ns3:instanceDetails> </ns3:tModelInstanceInfo> <ns3:tModelInstanceInfo tModelKey="uddi:graphical.weather.gov:ndfdXMLPortType"> <ns3:description xml:lang="en">The wsdl:portType that this wsdl:port implements.</ns3:description> </ns3:tModelInstanceInfo> </ns3:tModelInstanceDetails> </ns3:bindingTemplate> </ns3:bindingTemplates> <ns3:categoryBag> <ns3:keyedReference tModelKey="uddi:uddi.org:xml:namespace" keyName="uddi-org:xml:namespace" keyValue="http://graphical.weather.gov/xml/DWMLgen/wsdl/ndfdXML.wsdl"/> <ns3:keyedReference tModelKey="uddi:uddi.org:wsdl:types" keyName="uddi-org:wsdl:types" keyValue="service"/> <ns3:keyedReference tModelKey="uddi:uddi.org:xml:localname" keyName="uddi-org:xml:localName" keyValue="ndfdXML"/> </ns3:categoryBag> </org.uddi.api_v3.BusinessService>
          Hide
          kurtstam Kurt T Stam added a comment -

          Are you trying to save the business or the service?

          Show
          kurtstam Kurt T Stam added a comment - Are you trying to save the business or the service?
          Hide
          spyhunter99 Alex O'Ree added a comment -

          Yes, all at once

          Show
          spyhunter99 Alex O'Ree added a comment - Yes, all at once
          Hide
          spyhunter99 Alex O'Ree added a comment - - edited

          Here's the request before sending it

          <org.uddi.api_v3.SaveBusiness xmlns:ns2="http://www.w3.org/2000/09/xmldsig#" xmlns:ns3="urn:uddi-org:api_v3">
          <ns3:authInfo>snip</ns3:authInfo>
          <ns3:businessEntity>
          <ns3:name>graphical.weather.gov</ns3:name>
          <ns3:businessServices>
          <ns3:businessService serviceKey="uddi:graphical.weather.gov:service_ndfdxml" businessKey="uddi:graphical.weather.gov:business_graphical.weather.gov">
          <ns3:name xml:lang="en">ndfdXML</ns3:name>
          <ns3:description xml:lang="en">Default service description when no <wsdl:document> element is defined inside the <wsdl:service> element.</ns3:description>
          <ns3:bindingTemplates>
          <ns3:bindingTemplate bindingKey="uddi:graphical.weather.gov:binding_graphical.weather.gov_ndfdxml_ndfdxmlport_80" serviceKey="uddi:graphical.weather.gov:service_ndfdxml">
          <ns3:description xml:lang="en">Default binding description when no <wsdl:document> element is defined inside the <wsdl:binding> element.</ns3:description>
          <ns3:accessPoint useType="endPoint">http://graphical.weather.gov/xml/SOAP_server/ndfdXMLserver.php</ns3:accessPoint>
          <ns3:tModelInstanceDetails>
          <ns3:tModelInstanceInfo tModelKey="uddi:graphical.weather.gov:ndfdXMLBinding">
          <ns3:description xml:lang="en">The wsdl:binding that this wsdl:port implements. Default binding description when no <wsdl:document> element is defined inside the <wsdl:binding> element. The instanceParms specifies the port local name.</ns3:description>
          <ns3:instanceDetails>
          <ns3:instanceParms>ndfdXMLPort</ns3:instanceParms>
          </ns3:instanceDetails>
          </ns3:tModelInstanceInfo>
          <ns3:tModelInstanceInfo tModelKey="uddi:graphical.weather.gov:ndfdXMLPortType">
          <ns3:description xml:lang="en">The wsdl:portType that this wsdl:port implements.</ns3:description>
          </ns3:tModelInstanceInfo>
          </ns3:tModelInstanceDetails>
          </ns3:bindingTemplate>
          </ns3:bindingTemplates>
          <ns3:categoryBag>
          <ns3:keyedReference tModelKey="uddi:uddi.org:xml:namespace" keyName="uddi-org:xml:namespace" keyValue="http://graphical.weather.gov/xml/DWMLgen/wsdl/ndfdXML.wsdl"/>
          <ns3:keyedReference tModelKey="uddi:uddi.org:wsdl:types" keyName="uddi-org:wsdl:types" keyValue="service"/>
          <ns3:keyedReference tModelKey="uddi:uddi.org:xml:localname" keyName="uddi-org:xml:localName" keyValue="ndfdXML"/>
          </ns3:categoryBag>
          </ns3:businessService>
          </ns3:businessServices>
          </ns3:businessEntity>
          </org.uddi.api_v3.SaveBusiness>

          Show
          spyhunter99 Alex O'Ree added a comment - - edited Here's the request before sending it <org.uddi.api_v3.SaveBusiness xmlns:ns2="http://www.w3.org/2000/09/xmldsig#" xmlns:ns3="urn:uddi-org:api_v3"> <ns3:authInfo>snip</ns3:authInfo> <ns3:businessEntity> <ns3:name>graphical.weather.gov</ns3:name> <ns3:businessServices> <ns3:businessService serviceKey="uddi:graphical.weather.gov:service_ndfdxml" businessKey="uddi:graphical.weather.gov:business_graphical.weather.gov"> <ns3:name xml:lang="en">ndfdXML</ns3:name> <ns3:description xml:lang="en">Default service description when no <wsdl:document> element is defined inside the <wsdl:service> element.</ns3:description> <ns3:bindingTemplates> <ns3:bindingTemplate bindingKey="uddi:graphical.weather.gov:binding_graphical.weather.gov_ndfdxml_ndfdxmlport_80" serviceKey="uddi:graphical.weather.gov:service_ndfdxml"> <ns3:description xml:lang="en">Default binding description when no <wsdl:document> element is defined inside the <wsdl:binding> element.</ns3:description> <ns3:accessPoint useType="endPoint"> http://graphical.weather.gov/xml/SOAP_server/ndfdXMLserver.php </ns3:accessPoint> <ns3:tModelInstanceDetails> <ns3:tModelInstanceInfo tModelKey="uddi:graphical.weather.gov:ndfdXMLBinding"> <ns3:description xml:lang="en">The wsdl:binding that this wsdl:port implements. Default binding description when no <wsdl:document> element is defined inside the <wsdl:binding> element. The instanceParms specifies the port local name.</ns3:description> <ns3:instanceDetails> <ns3:instanceParms>ndfdXMLPort</ns3:instanceParms> </ns3:instanceDetails> </ns3:tModelInstanceInfo> <ns3:tModelInstanceInfo tModelKey="uddi:graphical.weather.gov:ndfdXMLPortType"> <ns3:description xml:lang="en">The wsdl:portType that this wsdl:port implements.</ns3:description> </ns3:tModelInstanceInfo> </ns3:tModelInstanceDetails> </ns3:bindingTemplate> </ns3:bindingTemplates> <ns3:categoryBag> <ns3:keyedReference tModelKey="uddi:uddi.org:xml:namespace" keyName="uddi-org:xml:namespace" keyValue="http://graphical.weather.gov/xml/DWMLgen/wsdl/ndfdXML.wsdl"/> <ns3:keyedReference tModelKey="uddi:uddi.org:wsdl:types" keyName="uddi-org:wsdl:types" keyValue="service"/> <ns3:keyedReference tModelKey="uddi:uddi.org:xml:localname" keyName="uddi-org:xml:localName" keyValue="ndfdXML"/> </ns3:categoryBag> </ns3:businessService> </ns3:businessServices> </ns3:businessEntity> </org.uddi.api_v3.SaveBusiness>
          Hide
          spyhunter99 Alex O'Ree added a comment -

          I noticed I was missing the tModels for the bindings as well, Same error message is returned. I'm not really sure what the issue is

          Show
          spyhunter99 Alex O'Ree added a comment - I noticed I was missing the tModels for the bindings as well, Same error message is returned. I'm not really sure what the issue is
          Hide
          spyhunter99 Alex O'Ree added a comment -

          Here's another use case, this time a few bugs are uncovered.
          http://www.webservicex.com/globalweather.asmx?WSDL

          Namely, the service is created with 4 binding templates, only one has a key and access point, the others do not have a key or access point defined. Here's the resultant XML

          <org.uddi.api_v3.TModel tModelKey="uddi:www.webservicex.com:keygenerator" xmlns:ns2="http://www.w3.org/2000/09/xmldsig#" xmlns:ns3="urn:uddi-org:api_v3">
          <ns3:name xml:lang="en">www.webservicex.com</ns3:name>
          <ns3:overviewDoc>
          <ns3:overviewURL useType="text">http://uddi.org/pubs/uddi_v3.htm#keyGen</ns3:overviewURL>
          </ns3:overviewDoc>
          <ns3:categoryBag>
          <ns3:keyedReference tModelKey="uddi:uddi.org:keygenerator" keyName="uddi.org:keygenerator" keyValue="keyGenerator"/>
          </ns3:categoryBag>
          </org.uddi.api_v3.TModel>
          Retrieving document at 'http://www.webservicex.com/globalweather.asmx?WSDL'.
          <org.uddi.api_v3.TModel tModelKey="uddi:www.webservicex.com:GlobalWeatherHttpGet" xmlns:ns2="http://www.w3.org/2000/09/xmldsig#" xmlns:ns3="urn:uddi-org:api_v3">
          <ns3:name xml:lang="en">GlobalWeatherHttpGet</ns3:name>
          <ns3:overviewDoc>
          <ns3:overviewURL useType="wsdlDeployment">http://www.webservicex.com/globalweather.asmx?WSDL</ns3:overviewURL>
          </ns3:overviewDoc>
          <ns3:categoryBag>
          <ns3:keyedReference tModelKey="uddi:uddi.org:wsdl:types" keyName="uddi-org:wsdl:types" keyValue="portType"/>
          <ns3:keyedReference tModelKey="uddi:uddi.org:xml:namespace" keyName="uddi-org:xml:namespace" keyValue="http://www.webserviceX.NET"/>
          </ns3:categoryBag>
          </org.uddi.api_v3.TModel>
          <org.uddi.api_v3.TModel tModelKey="uddi:www.webservicex.com:GlobalWeatherHttpPost" xmlns:ns2="http://www.w3.org/2000/09/xmldsig#" xmlns:ns3="urn:uddi-org:api_v3">
          <ns3:name xml:lang="en">GlobalWeatherHttpPost</ns3:name>
          <ns3:overviewDoc>
          <ns3:overviewURL useType="wsdlDeployment">http://www.webservicex.com/globalweather.asmx?WSDL</ns3:overviewURL>
          </ns3:overviewDoc>
          <ns3:categoryBag>
          <ns3:keyedReference tModelKey="uddi:uddi.org:wsdl:types" keyName="uddi-org:wsdl:types" keyValue="portType"/>
          <ns3:keyedReference tModelKey="uddi:uddi.org:xml:namespace" keyName="uddi-org:xml:namespace" keyValue="http://www.webserviceX.NET"/>
          </ns3:categoryBag>
          </org.uddi.api_v3.TModel>
          <org.uddi.api_v3.TModel tModelKey="uddi:www.webservicex.com:GlobalWeatherSoap" xmlns:ns2="http://www.w3.org/2000/09/xmldsig#" xmlns:ns3="urn:uddi-org:api_v3">
          <ns3:name xml:lang="en">GlobalWeatherSoap</ns3:name>
          <ns3:overviewDoc>
          <ns3:overviewURL useType="wsdlDeployment">http://www.webservicex.com/globalweather.asmx?WSDL</ns3:overviewURL>
          </ns3:overviewDoc>
          <ns3:categoryBag>
          <ns3:keyedReference tModelKey="uddi:uddi.org:wsdl:types" keyName="uddi-org:wsdl:types" keyValue="portType"/>
          <ns3:keyedReference tModelKey="uddi:uddi.org:xml:namespace" keyName="uddi-org:xml:namespace" keyValue="http://www.webserviceX.NET"/>
          </ns3:categoryBag>
          </org.uddi.api_v3.TModel>
          <org.uddi.api_v3.TModel tModelKey="uddi:www.webservicex.com:GlobalWeatherSoap12" xmlns:ns2="http://www.w3.org/2000/09/xmldsig#" xmlns:ns3="urn:uddi-org:api_v3">
          <ns3:name xml:lang="en">GlobalWeatherSoap12</ns3:name>
          <ns3:overviewDoc>
          <ns3:overviewURL useType="wsdlDeployment">http://www.webservicex.com/globalweather.asmx?WSDL</ns3:overviewURL>
          </ns3:overviewDoc>
          <ns3:categoryBag>
          <ns3:keyedReference tModelKey="uddi:uddi.org:xml:namespace" keyName="uddi-org:xml:namespace" keyValue="http://www.webserviceX.NET"/>
          <ns3:keyedReference tModelKey="uddi:uddi.org:wsdl:types" keyName="uddi-org:wsdl:types" keyValue="binding"/>
          <ns3:keyedReference tModelKey="uddi:uddi.org:wsdl:porttypereference" keyName="uddi-org:wsdl:portTypeReference" keyValue="uddi:www.webservicex.com:GlobalWeatherSoap"/>
          <ns3:keyedReference tModelKey="uddi:uddi.org:categorization:types" keyName="uddi-org:types" keyValue="wsdlSpec"/>
          </ns3:categoryBag>
          </org.uddi.api_v3.TModel>
          <org.uddi.api_v3.TModel tModelKey="uddi:www.webservicex.com:GlobalWeatherSoap" xmlns:ns2="http://www.w3.org/2000/09/xmldsig#" xmlns:ns3="urn:uddi-org:api_v3">
          <ns3:name xml:lang="en">GlobalWeatherSoap</ns3:name>
          <ns3:overviewDoc>
          <ns3:overviewURL useType="wsdlDeployment">http://www.webservicex.com/globalweather.asmx?WSDL</ns3:overviewURL>
          </ns3:overviewDoc>
          <ns3:categoryBag>
          <ns3:keyedReference tModelKey="uddi:uddi.org:xml:namespace" keyName="uddi-org:xml:namespace" keyValue="http://www.webserviceX.NET"/>
          <ns3:keyedReference tModelKey="uddi:uddi.org:wsdl:types" keyName="uddi-org:wsdl:types" keyValue="binding"/>
          <ns3:keyedReference tModelKey="uddi:uddi.org:wsdl:porttypereference" keyName="uddi-org:wsdl:portTypeReference" keyValue="uddi:www.webservicex.com:GlobalWeatherSoap"/>
          <ns3:keyedReference tModelKey="uddi:uddi.org:categorization:types" keyName="uddi-org:types" keyValue="wsdlSpec"/>
          <ns3:keyedReference tModelKey="uddi:uddi.org:wsdl:categorization:protocol" keyName="uddi-org:protocol:soap" keyValue="uddi:uddi.org:protocol:soap"/>
          <ns3:keyedReference tModelKey="uddi:uddi.org:wsdl:categorization:transport" keyName="uddi-org:http" keyValue="uddi:uddi.org:transport:http"/>
          </ns3:categoryBag>
          </org.uddi.api_v3.TModel>
          <org.uddi.api_v3.TModel tModelKey="uddi:www.webservicex.com:GlobalWeatherHttpGet" xmlns:ns2="http://www.w3.org/2000/09/xmldsig#" xmlns:ns3="urn:uddi-org:api_v3">
          <ns3:name xml:lang="en">GlobalWeatherHttpGet</ns3:name>
          <ns3:overviewDoc>
          <ns3:overviewURL useType="wsdlDeployment">http://www.webservicex.com/globalweather.asmx?WSDL</ns3:overviewURL>
          </ns3:overviewDoc>
          <ns3:categoryBag>
          <ns3:keyedReference tModelKey="uddi:uddi.org:xml:namespace" keyName="uddi-org:xml:namespace" keyValue="http://www.webserviceX.NET"/>
          <ns3:keyedReference tModelKey="uddi:uddi.org:wsdl:types" keyName="uddi-org:wsdl:types" keyValue="binding"/>
          <ns3:keyedReference tModelKey="uddi:uddi.org:wsdl:porttypereference" keyName="uddi-org:wsdl:portTypeReference" keyValue="uddi:www.webservicex.com:GlobalWeatherHttpGet"/>
          <ns3:keyedReference tModelKey="uddi:uddi.org:categorization:types" keyName="uddi-org:types" keyValue="wsdlSpec"/>
          </ns3:categoryBag>
          </org.uddi.api_v3.TModel>
          <org.uddi.api_v3.TModel tModelKey="uddi:www.webservicex.com:GlobalWeatherHttpPost" xmlns:ns2="http://www.w3.org/2000/09/xmldsig#" xmlns:ns3="urn:uddi-org:api_v3">
          <ns3:name xml:lang="en">GlobalWeatherHttpPost</ns3:name>
          <ns3:overviewDoc>
          <ns3:overviewURL useType="wsdlDeployment">http://www.webservicex.com/globalweather.asmx?WSDL</ns3:overviewURL>
          </ns3:overviewDoc>
          <ns3:categoryBag>
          <ns3:keyedReference tModelKey="uddi:uddi.org:xml:namespace" keyName="uddi-org:xml:namespace" keyValue="http://www.webserviceX.NET"/>
          <ns3:keyedReference tModelKey="uddi:uddi.org:wsdl:types" keyName="uddi-org:wsdl:types" keyValue="binding"/>
          <ns3:keyedReference tModelKey="uddi:uddi.org:wsdl:porttypereference" keyName="uddi-org:wsdl:portTypeReference" keyValue="uddi:www.webservicex.com:GlobalWeatherHttpPost"/>
          <ns3:keyedReference tModelKey="uddi:uddi.org:categorization:types" keyName="uddi-org:types" keyValue="wsdlSpec"/>
          </ns3:categoryBag>
          </org.uddi.api_v3.TModel>
          <org.uddi.api_v3.BusinessService serviceKey="uddi:www.webservicex.com:service_globalweather" businessKey="uddi:www.webservicex.com:business_www.webservicex.com" xmlns:ns2="http://www.w3.org/2000/09/xmldsig#" xmlns:ns3="urn:uddi-org:api_v3">
          <ns3:name xml:lang="en">GlobalWeather</ns3:name>
          <ns3:description xml:lang="en">Default service description when no <wsdl:document> element is defined inside the <wsdl:service> element.</ns3:description>
          <ns3:bindingTemplates>
          <ns3:bindingTemplate serviceKey="uddi:www.webservicex.com:service_globalweather">
          <ns3:description xml:lang="en">Default binding description when no <wsdl:document> element is defined inside the <wsdl:binding> element.</ns3:description>
          <ns3:tModelInstanceDetails>
          <ns3:tModelInstanceInfo tModelKey="uddi:www.webservicex.com:GlobalWeatherHttpPost">
          <ns3:description xml:lang="en">The wsdl:binding that this wsdl:port implements. Default binding description when no <wsdl:document> element is defined inside the <wsdl:binding> element. The instanceParms specifies the port local name.</ns3:description>
          <ns3:instanceDetails>
          <ns3:instanceParms>GlobalWeatherHttpPost</ns3:instanceParms>
          </ns3:instanceDetails>
          </ns3:tModelInstanceInfo>
          <ns3:tModelInstanceInfo tModelKey="uddi:www.webservicex.com:GlobalWeatherHttpPost">
          <ns3:description xml:lang="en">The wsdl:portType that this wsdl:port implements.</ns3:description>
          </ns3:tModelInstanceInfo>
          </ns3:tModelInstanceDetails>
          </ns3:bindingTemplate>
          <ns3:bindingTemplate serviceKey="uddi:www.webservicex.com:service_globalweather">
          <ns3:description xml:lang="en">Default binding description when no <wsdl:document> element is defined inside the <wsdl:binding> element.</ns3:description>
          <ns3:tModelInstanceDetails>
          <ns3:tModelInstanceInfo tModelKey="uddi:www.webservicex.com:GlobalWeatherSoap12">
          <ns3:description xml:lang="en">The wsdl:binding that this wsdl:port implements. Default binding description when no <wsdl:document> element is defined inside the <wsdl:binding> element. The instanceParms specifies the port local name.</ns3:description>
          <ns3:instanceDetails>
          <ns3:instanceParms>GlobalWeatherSoap12</ns3:instanceParms>
          </ns3:instanceDetails>
          </ns3:tModelInstanceInfo>
          <ns3:tModelInstanceInfo tModelKey="uddi:www.webservicex.com:GlobalWeatherSoap">
          <ns3:description xml:lang="en">The wsdl:portType that this wsdl:port implements.</ns3:description>
          </ns3:tModelInstanceInfo>
          </ns3:tModelInstanceDetails>
          </ns3:bindingTemplate>
          <ns3:bindingTemplate bindingKey="uddi:www.webservicex.com:binding_www.webservicex.com_globalweather_globalweathersoap_80" serviceKey="uddi:www.webservicex.com:service_globalweather">
          <ns3:description xml:lang="en">Default binding description when no <wsdl:document> element is defined inside the <wsdl:binding> element.</ns3:description>
          <ns3:accessPoint useType="endPoint">http://www.webservicex.com/globalweather.asmx</ns3:accessPoint>
          <ns3:tModelInstanceDetails>
          <ns3:tModelInstanceInfo tModelKey="uddi:www.webservicex.com:GlobalWeatherSoap">
          <ns3:description xml:lang="en">The wsdl:binding that this wsdl:port implements. Default binding description when no <wsdl:document> element is defined inside the <wsdl:binding> element. The instanceParms specifies the port local name.</ns3:description>
          <ns3:instanceDetails>
          <ns3:instanceParms>GlobalWeatherSoap</ns3:instanceParms>
          </ns3:instanceDetails>
          </ns3:tModelInstanceInfo>
          <ns3:tModelInstanceInfo tModelKey="uddi:www.webservicex.com:GlobalWeatherSoap">
          <ns3:description xml:lang="en">The wsdl:portType that this wsdl:port implements.</ns3:description>
          </ns3:tModelInstanceInfo>
          </ns3:tModelInstanceDetails>
          </ns3:bindingTemplate>
          <ns3:bindingTemplate serviceKey="uddi:www.webservicex.com:service_globalweather">
          <ns3:description xml:lang="en">Default binding description when no <wsdl:document> element is defined inside the <wsdl:binding> element.</ns3:description>
          <ns3:tModelInstanceDetails>
          <ns3:tModelInstanceInfo tModelKey="uddi:www.webservicex.com:GlobalWeatherHttpGet">
          <ns3:description xml:lang="en">The wsdl:binding that this wsdl:port implements. Default binding description when no <wsdl:document> element is defined inside the <wsdl:binding> element. The instanceParms specifies the port local name.</ns3:description>
          <ns3:instanceDetails>
          <ns3:instanceParms>GlobalWeatherHttpGet</ns3:instanceParms>
          </ns3:instanceDetails>
          </ns3:tModelInstanceInfo>
          <ns3:tModelInstanceInfo tModelKey="uddi:www.webservicex.com:GlobalWeatherHttpGet">
          <ns3:description xml:lang="en">The wsdl:portType that this wsdl:port implements.</ns3:description>
          </ns3:tModelInstanceInfo>
          </ns3:tModelInstanceDetails>
          </ns3:bindingTemplate>
          </ns3:bindingTemplates>
          <ns3:categoryBag>
          <ns3:keyedReference tModelKey="uddi:uddi.org:xml:namespace" keyName="uddi-org:xml:namespace" keyValue="http://www.webserviceX.NET"/>
          <ns3:keyedReference tModelKey="uddi:uddi.org:wsdl:types" keyName="uddi-org:wsdl:types" keyValue="service"/>
          <ns3:keyedReference tModelKey="uddi:uddi.org:xml:localname" keyName="uddi-org:xml:localName" keyValue="GlobalWeather"/>
          </ns3:categoryBag>
          </org.uddi.api_v3.BusinessService>
          Request <org.uddi.api_v3.SaveBusiness xmlns:ns2="http://www.w3.org/2000/09/xmldsig#" xmlns:ns3="urn:uddi-org:api_v3">
          <ns3:authInfo>authtoken:7272bd46-2d78-46c7-8455-cbfdebac26fe</ns3:authInfo>
          <ns3:businessEntity>
          <ns3:name xml:lang="en">www.webservicex.com</ns3:name>
          <ns3:businessServices>
          <ns3:businessService serviceKey="uddi:www.webservicex.com:service_globalweather" businessKey="uddi:www.webservicex.com:business_www.webservicex.com">
          <ns3:name xml:lang="en">GlobalWeather</ns3:name>
          <ns3:description xml:lang="en">Default service description when no <wsdl:document> element is defined inside the <wsdl:service> element.</ns3:description>
          <ns3:bindingTemplates>
          <ns3:bindingTemplate serviceKey="uddi:www.webservicex.com:service_globalweather">
          <ns3:description xml:lang="en">Default binding description when no <wsdl:document> element is defined inside the <wsdl:binding> element.</ns3:description>
          <ns3:tModelInstanceDetails>
          <ns3:tModelInstanceInfo tModelKey="uddi:www.webservicex.com:GlobalWeatherHttpPost">
          <ns3:description xml:lang="en">The wsdl:binding that this wsdl:port implements. Default binding description when no <wsdl:document> element is defined inside the <wsdl:binding> element. The instanceParms specifies the port local name.</ns3:description>
          <ns3:instanceDetails>
          <ns3:instanceParms>GlobalWeatherHttpPost</ns3:instanceParms>
          </ns3:instanceDetails>
          </ns3:tModelInstanceInfo>
          <ns3:tModelInstanceInfo tModelKey="uddi:www.webservicex.com:GlobalWeatherHttpPost">
          <ns3:description xml:lang="en">The wsdl:portType that this wsdl:port implements.</ns3:description>
          </ns3:tModelInstanceInfo>
          </ns3:tModelInstanceDetails>
          </ns3:bindingTemplate>
          <ns3:bindingTemplate serviceKey="uddi:www.webservicex.com:service_globalweather">
          <ns3:description xml:lang="en">Default binding description when no <wsdl:document> element is defined inside the <wsdl:binding> element.</ns3:description>
          <ns3:tModelInstanceDetails>
          <ns3:tModelInstanceInfo tModelKey="uddi:www.webservicex.com:GlobalWeatherSoap12">
          <ns3:description xml:lang="en">The wsdl:binding that this wsdl:port implements. Default binding description when no <wsdl:document> element is defined inside the <wsdl:binding> element. The instanceParms specifies the port local name.</ns3:description>
          <ns3:instanceDetails>
          <ns3:instanceParms>GlobalWeatherSoap12</ns3:instanceParms>
          </ns3:instanceDetails>
          </ns3:tModelInstanceInfo>
          <ns3:tModelInstanceInfo tModelKey="uddi:www.webservicex.com:GlobalWeatherSoap">
          <ns3:description xml:lang="en">The wsdl:portType that this wsdl:port implements.</ns3:description>
          </ns3:tModelInstanceInfo>
          </ns3:tModelInstanceDetails>
          </ns3:bindingTemplate>
          <ns3:bindingTemplate bindingKey="uddi:www.webservicex.com:binding_www.webservicex.com_globalweather_globalweathersoap_80" serviceKey="uddi:www.webservicex.com:service_globalweather">
          <ns3:description xml:lang="en">Default binding description when no <wsdl:document> element is defined inside the <wsdl:binding> element.</ns3:description>
          <ns3:accessPoint useType="endPoint">http://www.webservicex.com/globalweather.asmx</ns3:accessPoint>
          <ns3:tModelInstanceDetails>
          <ns3:tModelInstanceInfo tModelKey="uddi:www.webservicex.com:GlobalWeatherSoap">
          <ns3:description xml:lang="en">The wsdl:binding that this wsdl:port implements. Default binding description when no <wsdl:document> element is defined inside the <wsdl:binding> element. The instanceParms specifies the port local name.</ns3:description>
          <ns3:instanceDetails>
          <ns3:instanceParms>GlobalWeatherSoap</ns3:instanceParms>
          </ns3:instanceDetails>
          </ns3:tModelInstanceInfo>
          <ns3:tModelInstanceInfo tModelKey="uddi:www.webservicex.com:GlobalWeatherSoap">
          <ns3:description xml:lang="en">The wsdl:portType that this wsdl:port implements.</ns3:description>
          </ns3:tModelInstanceInfo>
          </ns3:tModelInstanceDetails>
          </ns3:bindingTemplate>
          <ns3:bindingTemplate serviceKey="uddi:www.webservicex.com:service_globalweather">
          <ns3:description xml:lang="en">Default binding description when no <wsdl:document> element is defined inside the <wsdl:binding> element.</ns3:description>
          <ns3:tModelInstanceDetails>
          <ns3:tModelInstanceInfo tModelKey="uddi:www.webservicex.com:GlobalWeatherHttpGet">
          <ns3:description xml:lang="en">The wsdl:binding that this wsdl:port implements. Default binding description when no <wsdl:document> element is defined inside the <wsdl:binding> element. The instanceParms specifies the port local name.</ns3:description>
          <ns3:instanceDetails>
          <ns3:instanceParms>GlobalWeatherHttpGet</ns3:instanceParms>
          </ns3:instanceDetails>
          </ns3:tModelInstanceInfo>
          <ns3:tModelInstanceInfo tModelKey="uddi:www.webservicex.com:GlobalWeatherHttpGet">
          <ns3:description xml:lang="en">The wsdl:portType that this wsdl:port implements.</ns3:description>
          </ns3:tModelInstanceInfo>
          </ns3:tModelInstanceDetails>
          </ns3:bindingTemplate>
          </ns3:bindingTemplates>
          <ns3:categoryBag>
          <ns3:keyedReference tModelKey="uddi:uddi.org:xml:namespace" keyName="uddi-org:xml:namespace" keyValue="http://www.webserviceX.NET"/>
          <ns3:keyedReference tModelKey="uddi:uddi.org:wsdl:types" keyName="uddi-org:wsdl:types" keyValue="service"/>
          <ns3:keyedReference tModelKey="uddi:uddi.org:xml:localname" keyName="uddi-org:xml:localName" keyValue="GlobalWeather"/>
          </ns3:categoryBag>
          </ns3:businessService>
          </ns3:businessServices>
          </ns3:businessEntity>
          </org.uddi.api_v3.SaveBusiness>

          Show
          spyhunter99 Alex O'Ree added a comment - Here's another use case, this time a few bugs are uncovered. http://www.webservicex.com/globalweather.asmx?WSDL Namely, the service is created with 4 binding templates, only one has a key and access point, the others do not have a key or access point defined. Here's the resultant XML <org.uddi.api_v3.TModel tModelKey="uddi:www.webservicex.com:keygenerator" xmlns:ns2="http://www.w3.org/2000/09/xmldsig#" xmlns:ns3="urn:uddi-org:api_v3"> <ns3:name xml:lang="en">www.webservicex.com</ns3:name> <ns3:overviewDoc> <ns3:overviewURL useType="text"> http://uddi.org/pubs/uddi_v3.htm#keyGen </ns3:overviewURL> </ns3:overviewDoc> <ns3:categoryBag> <ns3:keyedReference tModelKey="uddi:uddi.org:keygenerator" keyName="uddi.org:keygenerator" keyValue="keyGenerator"/> </ns3:categoryBag> </org.uddi.api_v3.TModel> Retrieving document at 'http://www.webservicex.com/globalweather.asmx?WSDL'. <org.uddi.api_v3.TModel tModelKey="uddi:www.webservicex.com:GlobalWeatherHttpGet" xmlns:ns2="http://www.w3.org/2000/09/xmldsig#" xmlns:ns3="urn:uddi-org:api_v3"> <ns3:name xml:lang="en">GlobalWeatherHttpGet</ns3:name> <ns3:overviewDoc> <ns3:overviewURL useType="wsdlDeployment"> http://www.webservicex.com/globalweather.asmx?WSDL </ns3:overviewURL> </ns3:overviewDoc> <ns3:categoryBag> <ns3:keyedReference tModelKey="uddi:uddi.org:wsdl:types" keyName="uddi-org:wsdl:types" keyValue="portType"/> <ns3:keyedReference tModelKey="uddi:uddi.org:xml:namespace" keyName="uddi-org:xml:namespace" keyValue="http://www.webserviceX.NET"/> </ns3:categoryBag> </org.uddi.api_v3.TModel> <org.uddi.api_v3.TModel tModelKey="uddi:www.webservicex.com:GlobalWeatherHttpPost" xmlns:ns2="http://www.w3.org/2000/09/xmldsig#" xmlns:ns3="urn:uddi-org:api_v3"> <ns3:name xml:lang="en">GlobalWeatherHttpPost</ns3:name> <ns3:overviewDoc> <ns3:overviewURL useType="wsdlDeployment"> http://www.webservicex.com/globalweather.asmx?WSDL </ns3:overviewURL> </ns3:overviewDoc> <ns3:categoryBag> <ns3:keyedReference tModelKey="uddi:uddi.org:wsdl:types" keyName="uddi-org:wsdl:types" keyValue="portType"/> <ns3:keyedReference tModelKey="uddi:uddi.org:xml:namespace" keyName="uddi-org:xml:namespace" keyValue="http://www.webserviceX.NET"/> </ns3:categoryBag> </org.uddi.api_v3.TModel> <org.uddi.api_v3.TModel tModelKey="uddi:www.webservicex.com:GlobalWeatherSoap" xmlns:ns2="http://www.w3.org/2000/09/xmldsig#" xmlns:ns3="urn:uddi-org:api_v3"> <ns3:name xml:lang="en">GlobalWeatherSoap</ns3:name> <ns3:overviewDoc> <ns3:overviewURL useType="wsdlDeployment"> http://www.webservicex.com/globalweather.asmx?WSDL </ns3:overviewURL> </ns3:overviewDoc> <ns3:categoryBag> <ns3:keyedReference tModelKey="uddi:uddi.org:wsdl:types" keyName="uddi-org:wsdl:types" keyValue="portType"/> <ns3:keyedReference tModelKey="uddi:uddi.org:xml:namespace" keyName="uddi-org:xml:namespace" keyValue="http://www.webserviceX.NET"/> </ns3:categoryBag> </org.uddi.api_v3.TModel> <org.uddi.api_v3.TModel tModelKey="uddi:www.webservicex.com:GlobalWeatherSoap12" xmlns:ns2="http://www.w3.org/2000/09/xmldsig#" xmlns:ns3="urn:uddi-org:api_v3"> <ns3:name xml:lang="en">GlobalWeatherSoap12</ns3:name> <ns3:overviewDoc> <ns3:overviewURL useType="wsdlDeployment"> http://www.webservicex.com/globalweather.asmx?WSDL </ns3:overviewURL> </ns3:overviewDoc> <ns3:categoryBag> <ns3:keyedReference tModelKey="uddi:uddi.org:xml:namespace" keyName="uddi-org:xml:namespace" keyValue="http://www.webserviceX.NET"/> <ns3:keyedReference tModelKey="uddi:uddi.org:wsdl:types" keyName="uddi-org:wsdl:types" keyValue="binding"/> <ns3:keyedReference tModelKey="uddi:uddi.org:wsdl:porttypereference" keyName="uddi-org:wsdl:portTypeReference" keyValue="uddi:www.webservicex.com:GlobalWeatherSoap"/> <ns3:keyedReference tModelKey="uddi:uddi.org:categorization:types" keyName="uddi-org:types" keyValue="wsdlSpec"/> </ns3:categoryBag> </org.uddi.api_v3.TModel> <org.uddi.api_v3.TModel tModelKey="uddi:www.webservicex.com:GlobalWeatherSoap" xmlns:ns2="http://www.w3.org/2000/09/xmldsig#" xmlns:ns3="urn:uddi-org:api_v3"> <ns3:name xml:lang="en">GlobalWeatherSoap</ns3:name> <ns3:overviewDoc> <ns3:overviewURL useType="wsdlDeployment"> http://www.webservicex.com/globalweather.asmx?WSDL </ns3:overviewURL> </ns3:overviewDoc> <ns3:categoryBag> <ns3:keyedReference tModelKey="uddi:uddi.org:xml:namespace" keyName="uddi-org:xml:namespace" keyValue="http://www.webserviceX.NET"/> <ns3:keyedReference tModelKey="uddi:uddi.org:wsdl:types" keyName="uddi-org:wsdl:types" keyValue="binding"/> <ns3:keyedReference tModelKey="uddi:uddi.org:wsdl:porttypereference" keyName="uddi-org:wsdl:portTypeReference" keyValue="uddi:www.webservicex.com:GlobalWeatherSoap"/> <ns3:keyedReference tModelKey="uddi:uddi.org:categorization:types" keyName="uddi-org:types" keyValue="wsdlSpec"/> <ns3:keyedReference tModelKey="uddi:uddi.org:wsdl:categorization:protocol" keyName="uddi-org:protocol:soap" keyValue="uddi:uddi.org:protocol:soap"/> <ns3:keyedReference tModelKey="uddi:uddi.org:wsdl:categorization:transport" keyName="uddi-org:http" keyValue="uddi:uddi.org:transport:http"/> </ns3:categoryBag> </org.uddi.api_v3.TModel> <org.uddi.api_v3.TModel tModelKey="uddi:www.webservicex.com:GlobalWeatherHttpGet" xmlns:ns2="http://www.w3.org/2000/09/xmldsig#" xmlns:ns3="urn:uddi-org:api_v3"> <ns3:name xml:lang="en">GlobalWeatherHttpGet</ns3:name> <ns3:overviewDoc> <ns3:overviewURL useType="wsdlDeployment"> http://www.webservicex.com/globalweather.asmx?WSDL </ns3:overviewURL> </ns3:overviewDoc> <ns3:categoryBag> <ns3:keyedReference tModelKey="uddi:uddi.org:xml:namespace" keyName="uddi-org:xml:namespace" keyValue="http://www.webserviceX.NET"/> <ns3:keyedReference tModelKey="uddi:uddi.org:wsdl:types" keyName="uddi-org:wsdl:types" keyValue="binding"/> <ns3:keyedReference tModelKey="uddi:uddi.org:wsdl:porttypereference" keyName="uddi-org:wsdl:portTypeReference" keyValue="uddi:www.webservicex.com:GlobalWeatherHttpGet"/> <ns3:keyedReference tModelKey="uddi:uddi.org:categorization:types" keyName="uddi-org:types" keyValue="wsdlSpec"/> </ns3:categoryBag> </org.uddi.api_v3.TModel> <org.uddi.api_v3.TModel tModelKey="uddi:www.webservicex.com:GlobalWeatherHttpPost" xmlns:ns2="http://www.w3.org/2000/09/xmldsig#" xmlns:ns3="urn:uddi-org:api_v3"> <ns3:name xml:lang="en">GlobalWeatherHttpPost</ns3:name> <ns3:overviewDoc> <ns3:overviewURL useType="wsdlDeployment"> http://www.webservicex.com/globalweather.asmx?WSDL </ns3:overviewURL> </ns3:overviewDoc> <ns3:categoryBag> <ns3:keyedReference tModelKey="uddi:uddi.org:xml:namespace" keyName="uddi-org:xml:namespace" keyValue="http://www.webserviceX.NET"/> <ns3:keyedReference tModelKey="uddi:uddi.org:wsdl:types" keyName="uddi-org:wsdl:types" keyValue="binding"/> <ns3:keyedReference tModelKey="uddi:uddi.org:wsdl:porttypereference" keyName="uddi-org:wsdl:portTypeReference" keyValue="uddi:www.webservicex.com:GlobalWeatherHttpPost"/> <ns3:keyedReference tModelKey="uddi:uddi.org:categorization:types" keyName="uddi-org:types" keyValue="wsdlSpec"/> </ns3:categoryBag> </org.uddi.api_v3.TModel> <org.uddi.api_v3.BusinessService serviceKey="uddi:www.webservicex.com:service_globalweather" businessKey="uddi:www.webservicex.com:business_www.webservicex.com" xmlns:ns2="http://www.w3.org/2000/09/xmldsig#" xmlns:ns3="urn:uddi-org:api_v3"> <ns3:name xml:lang="en">GlobalWeather</ns3:name> <ns3:description xml:lang="en">Default service description when no <wsdl:document> element is defined inside the <wsdl:service> element.</ns3:description> <ns3:bindingTemplates> <ns3:bindingTemplate serviceKey="uddi:www.webservicex.com:service_globalweather"> <ns3:description xml:lang="en">Default binding description when no <wsdl:document> element is defined inside the <wsdl:binding> element.</ns3:description> <ns3:tModelInstanceDetails> <ns3:tModelInstanceInfo tModelKey="uddi:www.webservicex.com:GlobalWeatherHttpPost"> <ns3:description xml:lang="en">The wsdl:binding that this wsdl:port implements. Default binding description when no <wsdl:document> element is defined inside the <wsdl:binding> element. The instanceParms specifies the port local name.</ns3:description> <ns3:instanceDetails> <ns3:instanceParms>GlobalWeatherHttpPost</ns3:instanceParms> </ns3:instanceDetails> </ns3:tModelInstanceInfo> <ns3:tModelInstanceInfo tModelKey="uddi:www.webservicex.com:GlobalWeatherHttpPost"> <ns3:description xml:lang="en">The wsdl:portType that this wsdl:port implements.</ns3:description> </ns3:tModelInstanceInfo> </ns3:tModelInstanceDetails> </ns3:bindingTemplate> <ns3:bindingTemplate serviceKey="uddi:www.webservicex.com:service_globalweather"> <ns3:description xml:lang="en">Default binding description when no <wsdl:document> element is defined inside the <wsdl:binding> element.</ns3:description> <ns3:tModelInstanceDetails> <ns3:tModelInstanceInfo tModelKey="uddi:www.webservicex.com:GlobalWeatherSoap12"> <ns3:description xml:lang="en">The wsdl:binding that this wsdl:port implements. Default binding description when no <wsdl:document> element is defined inside the <wsdl:binding> element. The instanceParms specifies the port local name.</ns3:description> <ns3:instanceDetails> <ns3:instanceParms>GlobalWeatherSoap12</ns3:instanceParms> </ns3:instanceDetails> </ns3:tModelInstanceInfo> <ns3:tModelInstanceInfo tModelKey="uddi:www.webservicex.com:GlobalWeatherSoap"> <ns3:description xml:lang="en">The wsdl:portType that this wsdl:port implements.</ns3:description> </ns3:tModelInstanceInfo> </ns3:tModelInstanceDetails> </ns3:bindingTemplate> <ns3:bindingTemplate bindingKey="uddi:www.webservicex.com:binding_www.webservicex.com_globalweather_globalweathersoap_80" serviceKey="uddi:www.webservicex.com:service_globalweather"> <ns3:description xml:lang="en">Default binding description when no <wsdl:document> element is defined inside the <wsdl:binding> element.</ns3:description> <ns3:accessPoint useType="endPoint"> http://www.webservicex.com/globalweather.asmx </ns3:accessPoint> <ns3:tModelInstanceDetails> <ns3:tModelInstanceInfo tModelKey="uddi:www.webservicex.com:GlobalWeatherSoap"> <ns3:description xml:lang="en">The wsdl:binding that this wsdl:port implements. Default binding description when no <wsdl:document> element is defined inside the <wsdl:binding> element. The instanceParms specifies the port local name.</ns3:description> <ns3:instanceDetails> <ns3:instanceParms>GlobalWeatherSoap</ns3:instanceParms> </ns3:instanceDetails> </ns3:tModelInstanceInfo> <ns3:tModelInstanceInfo tModelKey="uddi:www.webservicex.com:GlobalWeatherSoap"> <ns3:description xml:lang="en">The wsdl:portType that this wsdl:port implements.</ns3:description> </ns3:tModelInstanceInfo> </ns3:tModelInstanceDetails> </ns3:bindingTemplate> <ns3:bindingTemplate serviceKey="uddi:www.webservicex.com:service_globalweather"> <ns3:description xml:lang="en">Default binding description when no <wsdl:document> element is defined inside the <wsdl:binding> element.</ns3:description> <ns3:tModelInstanceDetails> <ns3:tModelInstanceInfo tModelKey="uddi:www.webservicex.com:GlobalWeatherHttpGet"> <ns3:description xml:lang="en">The wsdl:binding that this wsdl:port implements. Default binding description when no <wsdl:document> element is defined inside the <wsdl:binding> element. The instanceParms specifies the port local name.</ns3:description> <ns3:instanceDetails> <ns3:instanceParms>GlobalWeatherHttpGet</ns3:instanceParms> </ns3:instanceDetails> </ns3:tModelInstanceInfo> <ns3:tModelInstanceInfo tModelKey="uddi:www.webservicex.com:GlobalWeatherHttpGet"> <ns3:description xml:lang="en">The wsdl:portType that this wsdl:port implements.</ns3:description> </ns3:tModelInstanceInfo> </ns3:tModelInstanceDetails> </ns3:bindingTemplate> </ns3:bindingTemplates> <ns3:categoryBag> <ns3:keyedReference tModelKey="uddi:uddi.org:xml:namespace" keyName="uddi-org:xml:namespace" keyValue="http://www.webserviceX.NET"/> <ns3:keyedReference tModelKey="uddi:uddi.org:wsdl:types" keyName="uddi-org:wsdl:types" keyValue="service"/> <ns3:keyedReference tModelKey="uddi:uddi.org:xml:localname" keyName="uddi-org:xml:localName" keyValue="GlobalWeather"/> </ns3:categoryBag> </org.uddi.api_v3.BusinessService> Request <org.uddi.api_v3.SaveBusiness xmlns:ns2="http://www.w3.org/2000/09/xmldsig#" xmlns:ns3="urn:uddi-org:api_v3"> <ns3:authInfo>authtoken:7272bd46-2d78-46c7-8455-cbfdebac26fe</ns3:authInfo> <ns3:businessEntity> <ns3:name xml:lang="en">www.webservicex.com</ns3:name> <ns3:businessServices> <ns3:businessService serviceKey="uddi:www.webservicex.com:service_globalweather" businessKey="uddi:www.webservicex.com:business_www.webservicex.com"> <ns3:name xml:lang="en">GlobalWeather</ns3:name> <ns3:description xml:lang="en">Default service description when no <wsdl:document> element is defined inside the <wsdl:service> element.</ns3:description> <ns3:bindingTemplates> <ns3:bindingTemplate serviceKey="uddi:www.webservicex.com:service_globalweather"> <ns3:description xml:lang="en">Default binding description when no <wsdl:document> element is defined inside the <wsdl:binding> element.</ns3:description> <ns3:tModelInstanceDetails> <ns3:tModelInstanceInfo tModelKey="uddi:www.webservicex.com:GlobalWeatherHttpPost"> <ns3:description xml:lang="en">The wsdl:binding that this wsdl:port implements. Default binding description when no <wsdl:document> element is defined inside the <wsdl:binding> element. The instanceParms specifies the port local name.</ns3:description> <ns3:instanceDetails> <ns3:instanceParms>GlobalWeatherHttpPost</ns3:instanceParms> </ns3:instanceDetails> </ns3:tModelInstanceInfo> <ns3:tModelInstanceInfo tModelKey="uddi:www.webservicex.com:GlobalWeatherHttpPost"> <ns3:description xml:lang="en">The wsdl:portType that this wsdl:port implements.</ns3:description> </ns3:tModelInstanceInfo> </ns3:tModelInstanceDetails> </ns3:bindingTemplate> <ns3:bindingTemplate serviceKey="uddi:www.webservicex.com:service_globalweather"> <ns3:description xml:lang="en">Default binding description when no <wsdl:document> element is defined inside the <wsdl:binding> element.</ns3:description> <ns3:tModelInstanceDetails> <ns3:tModelInstanceInfo tModelKey="uddi:www.webservicex.com:GlobalWeatherSoap12"> <ns3:description xml:lang="en">The wsdl:binding that this wsdl:port implements. Default binding description when no <wsdl:document> element is defined inside the <wsdl:binding> element. The instanceParms specifies the port local name.</ns3:description> <ns3:instanceDetails> <ns3:instanceParms>GlobalWeatherSoap12</ns3:instanceParms> </ns3:instanceDetails> </ns3:tModelInstanceInfo> <ns3:tModelInstanceInfo tModelKey="uddi:www.webservicex.com:GlobalWeatherSoap"> <ns3:description xml:lang="en">The wsdl:portType that this wsdl:port implements.</ns3:description> </ns3:tModelInstanceInfo> </ns3:tModelInstanceDetails> </ns3:bindingTemplate> <ns3:bindingTemplate bindingKey="uddi:www.webservicex.com:binding_www.webservicex.com_globalweather_globalweathersoap_80" serviceKey="uddi:www.webservicex.com:service_globalweather"> <ns3:description xml:lang="en">Default binding description when no <wsdl:document> element is defined inside the <wsdl:binding> element.</ns3:description> <ns3:accessPoint useType="endPoint"> http://www.webservicex.com/globalweather.asmx </ns3:accessPoint> <ns3:tModelInstanceDetails> <ns3:tModelInstanceInfo tModelKey="uddi:www.webservicex.com:GlobalWeatherSoap"> <ns3:description xml:lang="en">The wsdl:binding that this wsdl:port implements. Default binding description when no <wsdl:document> element is defined inside the <wsdl:binding> element. The instanceParms specifies the port local name.</ns3:description> <ns3:instanceDetails> <ns3:instanceParms>GlobalWeatherSoap</ns3:instanceParms> </ns3:instanceDetails> </ns3:tModelInstanceInfo> <ns3:tModelInstanceInfo tModelKey="uddi:www.webservicex.com:GlobalWeatherSoap"> <ns3:description xml:lang="en">The wsdl:portType that this wsdl:port implements.</ns3:description> </ns3:tModelInstanceInfo> </ns3:tModelInstanceDetails> </ns3:bindingTemplate> <ns3:bindingTemplate serviceKey="uddi:www.webservicex.com:service_globalweather"> <ns3:description xml:lang="en">Default binding description when no <wsdl:document> element is defined inside the <wsdl:binding> element.</ns3:description> <ns3:tModelInstanceDetails> <ns3:tModelInstanceInfo tModelKey="uddi:www.webservicex.com:GlobalWeatherHttpGet"> <ns3:description xml:lang="en">The wsdl:binding that this wsdl:port implements. Default binding description when no <wsdl:document> element is defined inside the <wsdl:binding> element. The instanceParms specifies the port local name.</ns3:description> <ns3:instanceDetails> <ns3:instanceParms>GlobalWeatherHttpGet</ns3:instanceParms> </ns3:instanceDetails> </ns3:tModelInstanceInfo> <ns3:tModelInstanceInfo tModelKey="uddi:www.webservicex.com:GlobalWeatherHttpGet"> <ns3:description xml:lang="en">The wsdl:portType that this wsdl:port implements.</ns3:description> </ns3:tModelInstanceInfo> </ns3:tModelInstanceDetails> </ns3:bindingTemplate> </ns3:bindingTemplates> <ns3:categoryBag> <ns3:keyedReference tModelKey="uddi:uddi.org:xml:namespace" keyName="uddi-org:xml:namespace" keyValue="http://www.webserviceX.NET"/> <ns3:keyedReference tModelKey="uddi:uddi.org:wsdl:types" keyName="uddi-org:wsdl:types" keyValue="service"/> <ns3:keyedReference tModelKey="uddi:uddi.org:xml:localname" keyName="uddi-org:xml:localName" keyValue="GlobalWeather"/> </ns3:categoryBag> </ns3:businessService> </ns3:businessServices> </ns3:businessEntity> </org.uddi.api_v3.SaveBusiness>
          Hide
          spyhunter99 Alex O'Ree added a comment -

          Ok good news. The issue was that the Service had a business key set, but the business entity itself didn't set the key, once I fixed that, then it saved without an issue

          Show
          spyhunter99 Alex O'Ree added a comment - Ok good news. The issue was that the Service had a business key set, but the business entity itself didn't set the key, once I fixed that, then it saved without an issue
          Hide
          kurtstam Kurt T Stam added a comment -

          Added a fix to support HTTPAddress and SOAP12Address in the Port. Also not adding a binding if we can't figure out the accessPoint (null).

          Please reopen if there we additional blocking issues.

          Show
          kurtstam Kurt T Stam added a comment - Added a fix to support HTTPAddress and SOAP12Address in the Port. Also not adding a binding if we can't figure out the accessPoint (null). Please reopen if there we additional blocking issues.

            People

            • Assignee:
              kurtstam Kurt T Stam
              Reporter:
              kurtstam Kurt T Stam
            • Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved:

                Development