Test case description:
UDDI data organised in following way:
1) There are three business defined in local UDDI registry
2) 1st business defines tModel categories (reference
them by category bag)
3) 2nd and 3rd business defines service/binding that
refers category defined by 1st business.
4) Categories organised in tree-like structure. There are
three category items defined (cat. name (parent)):
- service (null)
- search-service (service)
- auto-search-service (search-service)
Now step by step interaction with UDDI-registry
1) find_business(by 1st.name)
2) get categories keys from category bag, put them into
tModelBag
3) find_business(by tModelBag, orAllKeys)
What should i get back ?
I think i should get businessInfos with two businessInfo
items inside, but i got businessInfos with 5 businessInfo
items. 2 items for 2nd company and 3 for 3rd. Is it how
it supposed to be ?
SOAP request - response for last find_business call
MySQL database snapshot
Logged In: YES
user_id=865045
From juddi.log i found following
org.juddi.datastore.jdbc.FindBusinessByTModelKeyQuery -
select from BUSINESS_ENTITY, BUSINESS_SERVICE,
BINDING_TEMPLATE & TMODEL_INSTANCE_INFO tables:
SELECT B.BUSINESS_KEY,B.LAST_UPDATE FROM
BUSINESS_ENTITY B,BUSINESS_SERVICE
S,BINDING_TEMPLATE T,TMODEL_INSTANCE_INFO I WHERE
I.BINDING_KEY = T.BINDING_KEY AND T.SERVICE_KEY =
S.SERVICE_KEY AND S.BUSINESS_KEY = B.BUSINESS_KEY
AND (I.TMODEL_KEY = 'uuid:26F35420-F33B-11D7-9420-
EE5CD5EED340' ) ORDER BY B.LAST_UPDATE DESC
the result of this query is exactly two keys.
Next record is following:
org.juddi.datastore.jdbc.FindBusinessByNameQuery - select
from BUSINESS_ENTITY & BUSINESS_NAME tables:
SELECT B.BUSINESS_KEY,B.LAST_UPDATE,N.NAME FROM
BUSINESS_ENTITY B,BUSINESS_NAME N WHERE
B.BUSINESS_KEY = N.BUSINESS_KEY AND B.BUSINESS_KEY IN
('29444900-F33B-11D7-8900-91B8B99FA4EF','293506C0-F33B-
11D7-86C0-FC5787EBB797') ORDER BY N.NAME
ASC,B.LAST_UPDATE DESC
the result of this query contains 5 elements (business_keys).
Because 2nd company has 2 defined names, and 3rd company
3 defined names.
Finally for each key the following call performed:
dataStore.fetchBusinessInfo
and result returned back to client.
Note: that all find_business calls will behave same for
business with several names defined.
In UDDI v2 Programmers API i didn't find reason for such
behavior. Is it bug or feature ?
Logged In: YES
user_id=865045
From juddi.log i found following
org.juddi.datastore.jdbc.FindBusinessByTModelKeyQuery -
select from BUSINESS_ENTITY, BUSINESS_SERVICE,
BINDING_TEMPLATE & TMODEL_INSTANCE_INFO tables:
SELECT B.BUSINESS_KEY,B.LAST_UPDATE FROM
BUSINESS_ENTITY B,BUSINESS_SERVICE
S,BINDING_TEMPLATE T,TMODEL_INSTANCE_INFO I WHERE
I.BINDING_KEY = T.BINDING_KEY AND T.SERVICE_KEY =
S.SERVICE_KEY AND S.BUSINESS_KEY = B.BUSINESS_KEY
AND (I.TMODEL_KEY = 'uuid:26F35420-F33B-11D7-9420-
EE5CD5EED340' ) ORDER BY B.LAST_UPDATE DESC
the result of this query is exactly two keys.
Next record is following:
org.juddi.datastore.jdbc.FindBusinessByNameQuery - select
from BUSINESS_ENTITY & BUSINESS_NAME tables:
SELECT B.BUSINESS_KEY,B.LAST_UPDATE,N.NAME FROM
BUSINESS_ENTITY B,BUSINESS_NAME N WHERE
B.BUSINESS_KEY = N.BUSINESS_KEY AND B.BUSINESS_KEY IN
('29444900-F33B-11D7-8900-91B8B99FA4EF','293506C0-F33B-
11D7-86C0-FC5787EBB797') ORDER BY N.NAME
ASC,B.LAST_UPDATE DESC
the result of this query contains 5 elements (business_keys).
Because 2nd company has 2 defined names, and 3rd company
3 defined names.
Finally for each key the following call performed:
dataStore.fetchBusinessInfo
and result returned back to client.
Note: that all find_business calls will behave same for
business with several names defined.
In UDDI v2 Programmers API i didn't find reason for such
behavior. Is it bug or feature ?