Using a find_tModel sub-query within a find_business does not return proper
results.
------------------------------------------------------------------------------------
Key: JUDDI-396
URL: https://issues.apache.org/jira/browse/JUDDI-396
Project: jUDDI
Issue Type: Bug
Components: core
Affects Versions: 3.0.2
Environment: Tomcat 6.0.10, PostgreSQL 8.4
Reporter: Jason Brown
Assignee: Kurt T Stam
Using a find_tModel sub-query within a find_business does not return proper
results.
Inputs:
Saved the following tModel:
<save_tModel xmlns="urn:uddi-org:api_v3">
<tModel tModelKey="uddi:tmodeltest:01" deleted="false">
<name>tmodeltest:01</name>
</tModel>
</save_tmodel>
Saved the following business:
<save_business xmlns="urn:uddi-org:api_v3">
<businessEntity businessKey="uddi:businesstest:01">
<name>businesstest:01</name>
<businessServices>
<businessService businessKey="uddi:businesstest:01"
serviceKey="uddi:servicetest:01">
<name>servicetest:01</name>
<bindingTemplates>
<bindingTemplate serviceKey="uddi:servicetest:01"
bindingKey="uddi:bindingtest:01">
<accessPoint>http://www.generic.accesspoint</accessPoint>
<tModelInstanceDetails>
<tModelInstanceInfo tModelKey="uddi:tmodeltest:01">
<instanceDetails>
<overviewDoc>
<overviewURL>http://www.generic.accesspoint</overviewURL>
</overviewDoc>
</instanceDetails>
</tModelInstanceInfo>
</tModelInstanceDetails>
</bindingTemplate>
</bindingTemplates>
</businessService>
</businessServices>
</businessEntity>
</save_business>
Executed the following query:
<find_business xmlns="urn:uddi-org:api_v3">
<find_tModel>
<findQualifiers>
<findQualifier>approximateMatch</findQualifier>
</findQualifiers>
<name>tmodeltest:_1</name>
</find_tModel>
</find_business>
Expected Result:
Return business uddi:businesstest:01
Actual Result:
Returned no businesses
Upon review of the code, it seems as though the findQualifiers for the outer
query are being used for the sub-query, therefore the approximateMatch is never
being applied and instead an exactMatch is being used in its place, returning
no results. Making the following change allowed us to successfully complete our
query:
InquiryHelper.java
private static void doFindTModelEmbeddedSearch(EntityManager em,
org.uddi.api_v3.FindQualifiers fq,
FindTModel findTmodel,
TModelBag tmodelBag)
on line 554
changed
findQualifiers.mapApiFindQualifiers(fq);
to
findQualifiers.mapApiFindQualifiers(findTmodel.getFindQualifiers());
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.