combineCategoryBags findQualifier not performing correctly.
-----------------------------------------------------------
Key: JUDDI-456
URL: https://issues.apache.org/jira/browse/JUDDI-456
Project: jUDDI
Issue Type: Bug
Components: core
Affects Versions: 3.0.3
Environment: Tomcat 6.0.29, PostgreSQL 8.4
Reporter: Jason Brown
Assignee: Kurt T Stam
Priority: Minor
When performing queries using the combineCategoryBags findQualifier the
cateogoryBag does not appear to be combined as it is defined in the
specification in section 5.1.4.3.
Considering the following setup (assuming that the tModels referenced are
defined):
one business entity ("uddi:business:01") with a service ("udd:service:01") with
a categoryBag containing tModelKey in a keyedReference which evaluates to
"uddi:test01" and a keyValue which evalues "value-x" containing a binding
(uddi:binding:01) with a cateogryBag which has the tModelKey which evaluates to
"uddi:test02" and a keyValue which evaluates to "value-y"
<businessEntity businessKey="uddi:business:01">
<name>uddi:business:01</name>
<businessServices>
<businessService businessKey="uddi:business:01"
serviceKey="uddi:service:01">
<name>uddi:service:01</name>
<bindingTemplates>
<bindingTemplate serviceKey="uddi:service:01"
bindingKey="uddi:binding:01">
<accessPoint>http://www.testing.com/binding:01</accessPoint>
<categoryBag>
<keyedReference tModelKey="uddi:tmodel:01"
keyValue="value-y"/>
</categoryBag>
</bindingTemplate>
</bindingTemplates>
<categoryBag>
<keyedReference tModelKey="uddi:tmodel:02"
keyValue="value-x"/>
</categoryBag>
</businessService>
</businessServices>
</businessEntity>
a second business entity ("uddi:business:02") has a service ("udd:service:02")
with a categoryBag containing tModelKey in a keyedReference which evaluates to
"uddi:test01" and a keyValue which evalues "value-x" containing a binding
(uddi:binding:02) with a cateogryBag which has the tModelKey which evaluates to
"uddi:test02" and a keyValue which evaluates to "value-z"
<businessEntity businessKey="uddi:business:01">
<name>uddi:business:01</name>
<businessServices>
<businessService businessKey="uddi:business:02"
serviceKey="uddi:service:02">
<name>uddi:service:02</name>
<bindingTemplates>
<bindingTemplate serviceKey="uddi:service:02"
bindingKey="uddi:binding:02">
<accessPoint>http://www.testing.com/binding:02</accessPoint>
<categoryBag>
<keyedReference tModelKey="uddi:tmodel:01"
keyValue="value-z"/>
</categoryBag>
</bindingTemplate>
</bindingTemplates>
<categoryBag>
<keyedReference tModelKey="uddi:tmodel:02"
keyValue="value-x"/>
</categoryBag>
</businessService>
</businessServices>
</businessEntity>
If the following query is performed:
<find_service xmlns="urn:uddi-org:api_v3>
<findQualifiers>
<findQualifier>combineCategoryBags</findQualifier>
</findQualifiers>
<categoryBag>
<keyedReference keyValue="value-z" tModelKey="uddi:tmodel:01"/>
<keyedReference keyValue="value-x"tModelKey="uddi:tmodel:02"/>
</categoryBag>
</find_service>
If I am understanding the way the findQualifer is described in the
specification (the category bags for the service level and below are combined
for the purposes of the query),the expected service to be returned is
"uddi:service:02". When this query is performed, no services are returned from
the registry. Is this findQualifer implemented?
--
This message is automatically generated by JIRA.
-
For more information on JIRA, see: http://www.atlassian.com/software/jira