DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG 
RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT
<http://nagoya.apache.org/bugzilla/show_bug.cgi?id=15615>.
ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND 
INSERTED IN THE BUG DATABASE.

http://nagoya.apache.org/bugzilla/show_bug.cgi?id=15615

Beta regression in WSDL client stub gen - doc lit

           Summary: Beta regression in WSDL client stub gen - doc lit
           Product: Axis
           Version: 1.1beta
          Platform: Other
               URL: http://feeds.archive.org/validator/RSSValidator.wsdl
        OS/Version: Other
            Status: NEW
          Severity: Blocker
          Priority: Other
         Component: WSDL processing
        AssignedTo: [EMAIL PROTECTED]
        ReportedBy: [EMAIL PROTECTED]


Attempting to use a client stub generated from the above WSDL using the latest
nightly results in a class cast exception within the stub.  Debugging in
slightly, it turns out that the request is attempted to be returned as the
response.  Rerunning the same test using the 1.0 release of Axis works.

Test case included below.  Specify as the only argument the path to an XML file,
RSS preferably but not required.

import javax.xml.parsers.*;
import org.apache.axis.message.*;
import org.archive.feeds.*;
import org.w3c.dom.*;

class validate {
  public static void main(String args[]) throws Exception {

    // parse the document
    DocumentBuilderFactory dFactory = DocumentBuilderFactory.newInstance();
    DocumentBuilder dBuilder = dFactory.newDocumentBuilder();
    Document document = dBuilder.parse(args[0]);
    MessageElement element = new MessageElement(document.getDocumentElement());

    // create the request
    Request request = new Request();
    request.set_any(new MessageElement[] {element});

    // issue the request
    RSSValidatorSoap validator =
      (new RSSValidatorLocator()).getRSSValidatorSoap();
    Message[] messages = validator.validate(request).getMessage();

    // print out any messages
    for (int i=0; i<messages.length; i++) {
      System.out.println('[' + messages[i].getLine() + ':' +
        messages[i].getColumn() + "]\t" + messages[i].getText());
    }
  }

}

Reply via email to