AuthTokenImpl.getAuthInfo() doesn't seem to work correctly
----------------------------------------------------------

                 Key: SCOUT-29
                 URL: https://issues.apache.org/jira/browse/SCOUT-29
             Project: Scout
          Issue Type: Bug
          Components: Scout Implementation
    Affects Versions: 1.0
         Environment: Win XP + Sun 1.5 SDK, latest scout trunk.
            Reporter: Lin Sun
         Assigned To: Anil Saldhana
             Fix For: 1.0


I created a simple test case to demonstrate the prob.  Basically, the test case 
would read a file and parse it to uddiResponse, then the code changes the 
uddiResponse to AuthToken type.  Then the code calls 
AuthTokenImpl.getAuthInfo() but that returned null.

The content of uddiresponse.xml file is captured value of uddiResponse via a 
debugger of another test in the execute(XmlObject uddiRequest, URI endPointURI) 
method in RegistryImpl.java:

<authToken generic="2.0" operator="jUDDI.org">
  <authInfo>authToken:XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXX</authInfo>
</authToken> 

When the code calls for AuthTokenImpl.getAuthInfo(), it calls 
find_element_user(AUTHINFO$0, 0).  This won't find anything because 
1) the namespace isn't right in the uddiresponse.xml.  So I updated the file a 
bit:

<authToken xmlns="urn:uddi-org:api_v2">
  <authInfo>authToken:XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXX</authInfo>
</authToken> 

This can be possibly fixed by set the response's namespace in the 
execute(XmlObject uddiRequest, URI endPointURI) method and I'll try working on 
that.

2) the find_element_user (in XObj.java) won't be able to travel to the authInfo 
tag because the x._nextSibling is null.  (x._firstChild is the authInfo).

here's the exerpt of the code from xmlbeans:

    public TypeStoreUser find_element_user ( QName name, int i )
    {
        for ( Xobj x = _firstChild ; x != null ; x = x._nextSibling )
            if (x.isElem() && x._name.equals( name ) && --i < 0)
                return x.getUser();

        return null;
    }

I tried to change the following from

    private static final javax.xml.namespace.QName AUTHINFO$0 = 
        new javax.xml.namespace.QName("urn:uddi-org:api_v2", "authInfo");

to
    private static final javax.xml.namespace.QName AUTHINFO$0 = 
        new javax.xml.namespace.QName("urn:uddi-org:api_v2", "authToken");

and i was able to get the "authToken:XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXX" returned 
when I call AuthTokenImpl.getAuthInfo().   However, the AuthTokenImpl.java is 
generated so I don't know how to modify it.

Any comments/advise?  Thanks, Lin


-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to