[
https://issues.apache.org/jira/browse/JUDDI-514?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13654389#comment-13654389
]
Alex O'Ree commented on JUDDI-514:
----------------------------------
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>
> Upgrade support WSDL2UDDI registration
> --------------------------------------
>
> Key: JUDDI-514
> URL: https://issues.apache.org/jira/browse/JUDDI-514
> Project: jUDDI
> Issue Type: Task
> Components: uddi-client
> Affects Versions: 3.1.0
> Reporter: Kurt T Stam
> Assignee: Kurt T Stam
> Fix For: 3.1.5
>
>
> - replace key generation
> - support WSDL registration
> - check if service exist before creating (and replacing exisiting one)
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira