juddi-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Steve Viens (JIRA)" <juddi-...@ws.apache.org>
Subject [jira] Commented: (JUDDI-64) bindingTemplate does not check empty description
Date Mon, 14 Mar 2005 21:53:08 GMT
     [ http://issues.apache.org/jira/browse/JUDDI-64?page=comments#action_60785 ]
     
Steve Viens commented on JUDDI-64:
----------------------------------

A solution that should eliminate this problem from a dozen (or more) places.

Update the unmarshal() methods in DescriptionHandler and NameHandler classes so that they
ignore description and name elements which do not contain a text node (the problem you've
encountered).  For instance. The updated DescriptionHandler.unmarshal() method would look
like this:

  public RegistryObject unmarshal(Element element)
  {   
    // Attributes
    String langCode = element.getAttribute("xml:lang");

    // Text Node Value
    String descValue = XMLUtils.getText(element);

    // Child Elements
    // {none}

    // Only create Description instance if descValue not null and not zero-length
    Description obj = null;
    if ((descValue != null) && (descValue.trim().length() > 0)) 
      obj = new Description(descValue,langCode);
    
    return obj;
  }

The new unmarshal method in NameHandler will look (almost) identical.  Unfortunately all dependent
handlers will need to be updated as well to potentially expect to receive a null value from
this method.  It's an easy change but it must be made to the following 19 Handler classes:


BindingTemplateHandler
BusinessEntityHandler
BusinessInfoHandler
BusinessServiceHandler
ContactHandler
FindBusinessHandler
FindPublisherHandler
FindServiceHandler
FindTModelHandler
InstanceDetailsHandler
OverviewDocHandler
PublisherInfoHandler
RelatedBusinessInfoHandler
ServiceInfoHandler
SubscriptionHandler
TModelHandler
TModelInfoHandler
TModelInstanceInfoHandler

> bindingTemplate does not check empty description
> ------------------------------------------------
>
>          Key: JUDDI-64
>          URL: http://issues.apache.org/jira/browse/JUDDI-64
>      Project: jUDDI
>         Type: Bug
>     Versions: 0.9rc3
>  Environment: windows XP, Tomcat 4.1.31, JDK1.4
>     Reporter: Mingfang Wang
>     Assignee: Steve Viens

>
> Hi,
> I have just found one more bug from the Sun Micro implementation of Jaxr. It generates
an empty description element on a bindingTemplate element. According to uddi.xsd, empty description
element under a bindingTemplate element is a violation.
> The jaxr code looks like this:
>                 ServiceBinding bnd = m_buzLfCyclMgr.createServiceBinding();
>                 bnd.setValidateURI(false);
> //                InternationalString
> is=m_buzLfCyclMgr.createInternationalString(Locale.US,
> //                    "Just another access point");
> //                bnd.setDescription(is);
>  
> bnd.setAccessURI("http://localhost:8080/axis/services/urn:xmltoday-delay
> ed-quotes");
>                 svc.addServiceBinding(bnd);
> With these three lines commented out, the section of uddi XML looks
> like:
>                 <bindingTemplate bindingKey="" serviceKey="A2B392F0-90DD-11D9-BF4F-FAA2D4FA8F92">
>                     <description xml:lang="en-US"/>
>                     <accessPoint URLType="http">
>  
> http://localhost:8080/axis/services/urn:xmltoday-delayed-quotes
>                     </accessPoint>
>                     <tModelInstanceDetails/>
>                 </bindingTemplate>
> According to UDDI schema, this <description> element can be missing but cannot
be empty. When Juddi tries to insert the comment, a sql exception is thrown, complaining null
value instead into a null value disallowed column.
> Solution, do not comment these lines.

-- 
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


Mime
View raw message