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.

Reply via email to