You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-dev@axis.apache.org by ax...@ws.apache.org on 2004/10/17 01:10:52 UTC

[jira] Commented: (AXIS-1495) WSDL2Java Anonymous Types cause problems for fromJava

The following comment has been added to this issue:

     Author: Ias
    Created: Sat, 16 Oct 2004 4:10 PM
       Body:
FYI,
this problem still happens after patches from AXIS-1598 were applied.
---------------------------------------------------------------------
View this comment:
  http://issues.apache.org/jira/browse/AXIS-1495?page=comments#action_54254

---------------------------------------------------------------------
View the issue:
  http://issues.apache.org/jira/browse/AXIS-1495

Here is an overview of the issue:
---------------------------------------------------------------------
        Key: AXIS-1495
    Summary: WSDL2Java Anonymous Types cause problems for fromJava
       Type: Bug

     Status: Open
   Priority: Major

    Project: Axis
 Components: 
             WSDL processing
   Versions:
             1.1
             1.2 Beta

   Assignee: Ias
   Reporter: Tom Crossland

    Created: Fri, 6 Aug 2004 8:44 AM
    Updated: Sat, 16 Oct 2004 4:10 PM
Environment: Any J2EE Server

Description:
Error Summary:

Anonymous types are named in the SymbolTable with the ANON_TOKEN prefix (">"). This causes a problem for the makeTypeElement method invoked by writeType. 

Initial Diagnostic:

There seems to be a contradiction here, makeTypeElement doesn't allow anonymous types outside of a containing element, whereas writeType invokes makeTypeElement specifying "null" as the containing element.

makeTypeElement code snippet:

 // Can't have an anonymous type outside of a containing element
 if (anonymous && (containingElement == null)) {
   throw new AxisFault(Messages.getMessage(
      "noContainerForAnonymousType", qName.toString()));
 }

writeType code snippet:

 if (!makeTypeElement(type, qName, null)) {
    return null;
 }

How to reproduce the error:

Use WSDL2Java to create client and server-side bindings (with skeleton) from the attached files.

Compile the javas and deploy the jar to your application server (JBoss in my case).

Deploy the Web Service using the deploy.wsdd

Try to obtain the WSDL from the deployed service. The following error results:

Fault - makeTypeElement() was told to create a type "{urn:anontype}>AnonRequest", with no containing element
AxisFault
 faultCode: {http://schemas.xmlsoap.org/soap/envelope/}Server.generalException
 faultSubcode: 
 faultString: makeTypeElement() was told to create a type "{urn:anontype}>AnonRequest", with no containing element
 faultActor: 
 faultNode: 
 faultDetail: 

Workaround:

Make sure types are named (note that this is not always a possible solution, for example for third-party WSDLs, hence Priority=Major).

See Related Issues:

http://nagoya.apache.org/jira/browse/AXIS-1453
http://nagoya.apache.org/jira/browse/AXIS-1431
http://nagoya.apache.org/jira/browse/AXIS-1295
http://nagoya.apache.org/jira/browse/AXIS-1284
http://nagoya.apache.org/jira/browse/AXIS-1277


---------------------------------------------------------------------
JIRA INFORMATION:
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