[ http://issues.apache.org/jira/browse/JUDDI-43?page=history ]
Steve Viens closed JUDDI-43:
----------------------------
Resolution: Fixed
Fix Version: 0.9
This bug (actually two) has been confirmed and the proposed fixes has been
applied. Thanks to Jeff Zhang for submitting this.
> IdentifierBag and CategoryBag should not be empty
> -------------------------------------------------
>
> Key: JUDDI-43
> URL: http://issues.apache.org/jira/browse/JUDDI-43
> Project: jUDDI
> Type: Bug
> Versions: 0.9rc3
> Reporter: Jeff Zhang
> Assignee: Steve Viens
> Fix For: 0.9
>
> If we look uddi_v2.xsd,
> <xsd:complexType name="categoryBag">
> <xsd:sequence>
> <xsd:element ref="uddi:keyedReference"
> maxOccurs="unbounded"/>
> </xsd:sequence>
> </xsd:complexType>
> <xsd:complexType name="identifierBag">
> <xsd:sequence>
> <xsd:element ref="uddi:keyedReference"
> maxOccurs="unbounded"/>
> </xsd:sequence>
> </xsd:complexType>
> we need a keyedReference at least in categoryBag or identifierBag.
> In fetchBusiness mathod of
> JDBCDataStore.java(src\java\org\apache\juddi\datastore\jdbc). jUDDI get
> infomation from database, and create the struct:
> < IdentifierBag identifierBag = new IdentifierBag();
> <
> identifierBag.setKeyedReferenceVector(BusinessIdentifierTable.select(businessKey,connection));
> < business.setIdentifierBag(identifierBag);
> <
> < CategoryBag categoryBag = new CategoryBag();
> <
> categoryBag.setKeyedReferenceVector(BusinessCategoryTable.select(businessKey,connection));
> < business.setCategoryBag(categoryBag);
> It's wrong if database table doesn't contain IdentifierTable and
> CategoryTable. It should be:
> > Vector identVector =
> > BusinessIdentifierTable.select(businessKey,connection);
> > if (identVector.size() > 0)
> > {
> > IdentifierBag identifierBag = new IdentifierBag();
> > identifierBag.setKeyedReferenceVector(identVector);
> > business.setIdentifierBag(identifierBag);
> > }
> > Vector categoryVector =
> > BusinessCategoryTable.select(businessKey,connection);
> > if (categoryVector.size() > 0)
> > {
> > CategoryBag categoryBag = new CategoryBag();
> > categoryBag.setKeyedReferenceVector(categoryVector);
> > business.setCategoryBag(categoryBag);
> > }
> and in fetchService method, we should do same thing:
> < CategoryBag bag = new CategoryBag();
> <
> bag.setKeyedReferenceVector(ServiceCategoryTable.select(serviceKey,connection));
> < service.setCategoryBag(bag);
> ---
> >
> > Vector categoryVector =
> > ServiceCategoryTable.select(serviceKey,connection);
> > if (categoryVector.size() > 0)
> > {
> > CategoryBag bag = new CategoryBag();
> > bag.setKeyedReferenceVector(categoryVector);
> > service.setCategoryBag(bag);
> > }
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
http://issues.apache.org/jira/secure/Administrators.jspa
-
If you want more information on JIRA, or have a bug to report see:
http://www.atlassian.com/software/jira