You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@xmlbeans.apache.org by "Jacob Danner (JIRA)" <xm...@xml.apache.org> on 2005/04/19 21:56:32 UTC

[jira] Closed: (XMLBEANS-48) Bug with Root.fetch ( Splay parent, QName name, QNameSet set, int n )

     [ http://issues.apache.org/jira/browse/XMLBEANS-48?page=all ]
     
Jacob Danner closed XMLBEANS-48:
--------------------------------


Closing, please re-open if this needs a backport

> Bug with Root.fetch ( Splay parent, QName name, QNameSet set, int n )
> ---------------------------------------------------------------------
>
>          Key: XMLBEANS-48
>          URL: http://issues.apache.org/jira/browse/XMLBEANS-48
>      Project: XMLBeans
>         Type: Bug
>     Versions: Version 1
>     Reporter: Sal Campana
>      Fix For: Version 2 Beta 1, Version 2 Beta 2, Version 2
>  Attachments: MUWS.wsdl, MUWS.xsd, SplayTest.java, xmltypes-muws.jar
>
> I've attached a simple example of an issue I am seeing.  This is in the v1 codebase...Have not check v2 (assuming the same)
>  
> Basically I cannot get the value of a child element via the generated getter:
>  
>  
>         StateInformation resourceState = resState.getResourceState();
>         //should return a string...
>         String state = resourceState.getState();
>         System.out.println("State: " + state);//null!
>  
> What I see in the debugger is:
>  
> Root.fetch ( ...)
> ...
>  (line 3314)case BEGIN :
>                if (nameHit( name, set, s.getName() ))
>                {
>                        _child = s;
>                        _n = 0;
>                        break loop;
>                 }
>                 //This is the issue in this context...In this case it should continue in the loop, not set to "finish"
>                 s = s.getFinishSplay();
>                  break;
> ...
>  
> So when we get the BEGIN case, the s.getName() is ResourceState and "name" is "State".  The name I am looking for is State (child of ResourceState).  Since the names do not match the call to "s = s.getFinishSplay()" sets the Splay to the end of the element.  Then the loop moves on past that element....Maybe it thinks it's the child element and not the root??
>  
> Had "s = s.getFinishSplay()" not been called, then the next time through the loop (Splay s = parent.nextSplay()) would get the Splay named "State" and the names would match and everything would be happy.....
>  
> The example code and generated types can be used to produce the problem....

-- 
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
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@xmlbeans.apache.org
For additional commands, e-mail: dev-help@xmlbeans.apache.org