You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cxf.apache.org by dk...@apache.org on 2011/12/06 20:03:21 UTC
svn commit: r1211066 [1/2] - in /cxf/trunk:
integration/jca/src/test/java/org/apache/cxf/jca/core/classloader/
osgi/bundle/all/ osgi/bundle/jaxrs/ osgi/bundle/minimal/
rt/bindings/corba/src/main/java/org/apache/cxf/binding/corba/utils/
rt/bindings/soap...
Author: dkulp
Date: Tue Dec 6 19:03:20 2011
New Revision: 1211066
URL: http://svn.apache.org/viewvc?rev=1211066&view=rev
Log:
[CXF-3893] Remove references to internal com.ibm.wsdl classes
Modified:
cxf/trunk/integration/jca/src/test/java/org/apache/cxf/jca/core/classloader/negativefilters.properties
cxf/trunk/osgi/bundle/all/pom.xml
cxf/trunk/osgi/bundle/jaxrs/pom.xml
cxf/trunk/osgi/bundle/minimal/pom.xml
cxf/trunk/rt/bindings/corba/src/main/java/org/apache/cxf/binding/corba/utils/CorbaObjectReferenceHelper.java
cxf/trunk/rt/bindings/soap/src/test/java/org/apache/cxf/binding/soap/SoapDestinationFactoryTest.java
cxf/trunk/rt/core/src/main/java/org/apache/cxf/endpoint/ClientImpl.java
cxf/trunk/rt/core/src/main/java/org/apache/cxf/wsdl11/ServiceWSDLBuilder.java
cxf/trunk/rt/core/src/main/java/org/apache/cxf/wsdl11/WSDLManagerImpl.java
cxf/trunk/rt/ws/addr/src/main/java/org/apache/cxf/ws/addressing/VersionTransformer.java
cxf/trunk/tools/common/src/main/java/org/apache/cxf/tools/common/ExtensionInvocationHandler.java
cxf/trunk/tools/corba/src/main/java/org/apache/cxf/tools/corba/common/SchemaFactoryImpl.java
cxf/trunk/tools/corba/src/main/java/org/apache/cxf/tools/corba/common/SchemaWriterImpl.java
cxf/trunk/tools/corba/src/main/java/org/apache/cxf/tools/corba/common/WSDLCorbaFactoryImpl.java
cxf/trunk/tools/corba/src/main/java/org/apache/cxf/tools/corba/common/WSDLCorbaWriterImpl.java
cxf/trunk/tools/corba/src/main/java/org/apache/cxf/tools/corba/common/WSDLUtils.java
cxf/trunk/tools/corba/src/test/java/org/apache/cxf/tools/corba/utils/WSDLGenerationTester.java
cxf/trunk/tools/corba/src/test/resources/idl/expected_Anonboundedsequence.wsdl
cxf/trunk/tools/corba/src/test/resources/idl/expected_Anonsequence.wsdl
cxf/trunk/tools/corba/src/test/resources/idl/expected_Anonstring_unbounded.wsdl
cxf/trunk/tools/corba/src/test/resources/idl/expected_Exception_DiffNS.wsdl
cxf/trunk/tools/corba/src/test/resources/idl/expected_ExternalInterfaceRef.wsdl
cxf/trunk/tools/corba/src/test/resources/idl/expected_HelloWorld.wsdl
cxf/trunk/tools/corba/src/test/resources/idl/expected_HelloWorld_corba_address_file.wsdl
cxf/trunk/tools/corba/src/test/resources/idl/expected_HelloWorld_schema_namespace.wsdl
cxf/trunk/tools/corba/src/test/resources/idl/expected_Parent.wsdl
cxf/trunk/tools/corba/src/test/resources/idl/expected_String_unbounded.wsdl
cxf/trunk/tools/corba/src/test/resources/idl/expected_base64Binary_sequence_octet.wsdl
cxf/trunk/tools/corba/src/test/resources/idl/expected_duplicateAttribute.wsdl
cxf/trunk/tools/corba/src/test/resources/idl/expected_hexBinary_sequence_octet.wsdl
cxf/trunk/tools/corba/src/test/resources/idl/expected_sequence_octet_corba_typemap_tns.wsdl
Modified: cxf/trunk/integration/jca/src/test/java/org/apache/cxf/jca/core/classloader/negativefilters.properties
URL: http://svn.apache.org/viewvc/cxf/trunk/integration/jca/src/test/java/org/apache/cxf/jca/core/classloader/negativefilters.properties?rev=1211066&r1=1211065&r2=1211066&view=diff
==============================================================================
--- cxf/trunk/integration/jca/src/test/java/org/apache/cxf/jca/core/classloader/negativefilters.properties (original)
+++ cxf/trunk/integration/jca/src/test/java/org/apache/cxf/jca/core/classloader/negativefilters.properties Tue Dec 6 19:03:20 2011
@@ -19,7 +19,6 @@
#
#
com.ctc.wstx.*
-com.ibm.wsdl*
com.sun.xml.bind.*
com.sun.xml.messaging.saaj.*
javax.activation.*
Modified: cxf/trunk/osgi/bundle/all/pom.xml
URL: http://svn.apache.org/viewvc/cxf/trunk/osgi/bundle/all/pom.xml?rev=1211066&r1=1211065&r2=1211066&view=diff
==============================================================================
--- cxf/trunk/osgi/bundle/all/pom.xml (original)
+++ cxf/trunk/osgi/bundle/all/pom.xml Tue Dec 6 19:03:20 2011
@@ -327,7 +327,6 @@
!META-INF.cxf,
!META-INF.cxf.osgi,
antlr*;resolution:=optional,
- com.ibm*;resolution:=optional,
com.sun*;resolution:=optional,
com.ctc.wstx.msv*;resolution:=optional,
org.codehaus.stax2*;resolution:=optional,
Modified: cxf/trunk/osgi/bundle/jaxrs/pom.xml
URL: http://svn.apache.org/viewvc/cxf/trunk/osgi/bundle/jaxrs/pom.xml?rev=1211066&r1=1211065&r2=1211066&view=diff
==============================================================================
--- cxf/trunk/osgi/bundle/jaxrs/pom.xml (original)
+++ cxf/trunk/osgi/bundle/jaxrs/pom.xml Tue Dec 6 19:03:20 2011
@@ -130,7 +130,6 @@
!META-INF.cxf,
!META-INF.cxf.osgi,
antlr*;resolution:=optional,
- com.ibm*;resolution:=optional,
com.sun*;resolution:=optional,
com.ctc.wstx.msv*;resolution:=optional,
org.codehaus.stax2*;resolution:=optional,
Modified: cxf/trunk/osgi/bundle/minimal/pom.xml
URL: http://svn.apache.org/viewvc/cxf/trunk/osgi/bundle/minimal/pom.xml?rev=1211066&r1=1211065&r2=1211066&view=diff
==============================================================================
--- cxf/trunk/osgi/bundle/minimal/pom.xml (original)
+++ cxf/trunk/osgi/bundle/minimal/pom.xml Tue Dec 6 19:03:20 2011
@@ -177,7 +177,6 @@
!schemas*,
org.apache.cxf.tools.*;version=${cxf.osgi.version.clean};resolution:=optional,
antlr*;resolution:=optional,
- com.ibm*;resolution:=optional,
com.sun*;resolution:=optional,
javax.ws.rs*;resolution:=optional,
com.ctc.wstx.msv*;resolution:=optional,
Modified: cxf/trunk/rt/bindings/corba/src/main/java/org/apache/cxf/binding/corba/utils/CorbaObjectReferenceHelper.java
URL: http://svn.apache.org/viewvc/cxf/trunk/rt/bindings/corba/src/main/java/org/apache/cxf/binding/corba/utils/CorbaObjectReferenceHelper.java?rev=1211066&r1=1211065&r2=1211066&view=diff
==============================================================================
--- cxf/trunk/rt/bindings/corba/src/main/java/org/apache/cxf/binding/corba/utils/CorbaObjectReferenceHelper.java (original)
+++ cxf/trunk/rt/bindings/corba/src/main/java/org/apache/cxf/binding/corba/utils/CorbaObjectReferenceHelper.java Tue Dec 6 19:03:20 2011
@@ -27,12 +27,12 @@ import java.util.logging.Logger;
import javax.wsdl.Binding;
import javax.wsdl.Definition;
+import javax.wsdl.Import;
import javax.wsdl.Port;
import javax.wsdl.Service;
import javax.xml.bind.DatatypeConverter;
import javax.xml.namespace.QName;
-import com.ibm.wsdl.ImportImpl;
import org.apache.cxf.binding.corba.wsdl.BindingType;
import org.apache.cxf.common.logging.LogUtils;
import org.omg.CORBA.Object;
@@ -140,8 +140,8 @@ public final class CorbaObjectReferenceH
while (importLists.hasNext()) {
List imports = (List) importLists.next();
for (java.lang.Object imp : imports) {
- if (imp instanceof ImportImpl) {
- Definition importDef = ((ImportImpl)imp).getDefinition();
+ if (imp instanceof Import) {
+ Definition importDef = ((Import)imp).getDefinition();
LOG.log(Level.INFO, "Following import " + importDef.getDocumentBaseURI());
ret = getBindingForTypeId(repId, importDef);
if (ret.isValid()) {
@@ -215,8 +215,8 @@ public final class CorbaObjectReferenceH
while (info.getServiceQName() == null && importLists.hasNext()) {
List imports = (List) importLists.next();
for (java.lang.Object imp : imports) {
- if (imp instanceof ImportImpl) {
- Definition importDef = ((ImportImpl)imp).getDefinition();
+ if (imp instanceof Import) {
+ Definition importDef = ((Import)imp).getDefinition();
LOG.log(Level.FINE, "following wsdl import " + importDef.getDocumentBaseURI());
info.setCandidateWsdlDef(importDef);
populateEprInfo(info);
Modified: cxf/trunk/rt/bindings/soap/src/test/java/org/apache/cxf/binding/soap/SoapDestinationFactoryTest.java
URL: http://svn.apache.org/viewvc/cxf/trunk/rt/bindings/soap/src/test/java/org/apache/cxf/binding/soap/SoapDestinationFactoryTest.java?rev=1211066&r1=1211065&r2=1211066&view=diff
==============================================================================
--- cxf/trunk/rt/bindings/soap/src/test/java/org/apache/cxf/binding/soap/SoapDestinationFactoryTest.java (original)
+++ cxf/trunk/rt/bindings/soap/src/test/java/org/apache/cxf/binding/soap/SoapDestinationFactoryTest.java Tue Dec 6 19:03:20 2011
@@ -21,10 +21,6 @@ package org.apache.cxf.binding.soap;
import javax.wsdl.extensions.soap.SOAPAddress;
-
-import com.ibm.wsdl.extensions.soap.SOAPAddressImpl;
-
-
import org.apache.cxf.binding.soap.model.SoapBindingInfo;
import org.apache.cxf.service.model.EndpointInfo;
import org.apache.cxf.service.model.ServiceInfo;
@@ -42,12 +38,16 @@ public class SoapDestinationFactoryTest
public void testDestination() throws Exception {
String wsdlSoapNs = "http://schemas.xmlsoap.org/wsdl/soap/";
String transportURI = "http://foo/transport";
- String location = "http://localhost/service";
+ // String location = "http://localhost/service";
ServiceInfo si = new ServiceInfo();
EndpointInfo ei = new EndpointInfo(si, wsdlSoapNs);
- SOAPAddress add = new SOAPAddressImpl();
- add.setLocationURI(location);
+ // this code used to call "new SOAPAddressImpl()", but the test
+ // is currently not testing anything, and needlessly ties the
+ // code to a specific implementation of wsdl4j. When the SOAPAddress
+ // is really needed, it should be mocked.
+ SOAPAddress add = null;
+ // add.setLocationURI(location);
ei.addExtensor(add);
SoapBindingInfo bi = new SoapBindingInfo(si, "", Soap11.getInstance());
Modified: cxf/trunk/rt/core/src/main/java/org/apache/cxf/endpoint/ClientImpl.java
URL: http://svn.apache.org/viewvc/cxf/trunk/rt/core/src/main/java/org/apache/cxf/endpoint/ClientImpl.java?rev=1211066&r1=1211065&r2=1211066&view=diff
==============================================================================
--- cxf/trunk/rt/core/src/main/java/org/apache/cxf/endpoint/ClientImpl.java (original)
+++ cxf/trunk/rt/core/src/main/java/org/apache/cxf/endpoint/ClientImpl.java Tue Dec 6 19:03:20 2011
@@ -36,10 +36,9 @@ import java.util.concurrent.Executor;
import java.util.logging.Level;
import java.util.logging.Logger;
+import javax.wsdl.extensions.soap.SOAPBinding;
import javax.xml.namespace.QName;
-import com.ibm.wsdl.extensions.soap.SOAPBindingImpl;
-
import org.apache.cxf.Bus;
import org.apache.cxf.BusFactory;
import org.apache.cxf.binding.Binding;
@@ -257,15 +256,14 @@ public class ClientImpl
if (bfo.getBindingId().equals("http://schemas.xmlsoap.org/wsdl/soap/")) {
for (Object o : bfo.getExtensors().get()) {
- if (o instanceof SOAPBindingImpl) {
- SOAPBindingImpl soapB = (SOAPBindingImpl)o;
+ if (o instanceof SOAPBinding) {
+ SOAPBinding soapB = (SOAPBinding)o;
if (soapB.getTransportURI().equals("http://schemas.xmlsoap.org/soap/http")) {
epfo = e;
break;
}
}
}
-
}
}
}
Modified: cxf/trunk/rt/core/src/main/java/org/apache/cxf/wsdl11/ServiceWSDLBuilder.java
URL: http://svn.apache.org/viewvc/cxf/trunk/rt/core/src/main/java/org/apache/cxf/wsdl11/ServiceWSDLBuilder.java?rev=1211066&r1=1211065&r2=1211066&view=diff
==============================================================================
--- cxf/trunk/rt/core/src/main/java/org/apache/cxf/wsdl11/ServiceWSDLBuilder.java (original)
+++ cxf/trunk/rt/core/src/main/java/org/apache/cxf/wsdl11/ServiceWSDLBuilder.java Tue Dec 6 19:03:20 2011
@@ -49,7 +49,9 @@ import javax.wsdl.WSDLException;
import javax.wsdl.extensions.AttributeExtensible;
import javax.wsdl.extensions.ElementExtensible;
import javax.wsdl.extensions.ExtensibilityElement;
+import javax.wsdl.extensions.ExtensionRegistry;
import javax.wsdl.extensions.UnknownExtensibilityElement;
+import javax.wsdl.extensions.schema.Schema;
import javax.wsdl.extensions.schema.SchemaImport;
import javax.wsdl.extensions.schema.SchemaReference;
import javax.xml.namespace.QName;
@@ -58,8 +60,6 @@ import javax.xml.parsers.ParserConfigura
import org.w3c.dom.Document;
import org.w3c.dom.Element;
-
-import com.ibm.wsdl.extensions.schema.SchemaImpl;
import org.apache.cxf.Bus;
import org.apache.cxf.common.WSDLConstants;
import org.apache.cxf.helpers.CastUtils;
@@ -276,6 +276,22 @@ public class ServiceWSDLBuilder {
}
}
+ private Schema getSchemaImplementation(Definition def) {
+ ExtensionRegistry reg = def.getExtensionRegistry();
+ ExtensibilityElement extension;
+ try {
+ extension = reg.createExtension(javax.wsdl.Types.class, WSDLConstants.QNAME_SCHEMA);
+ } catch (WSDLException e) {
+ throw new RuntimeException("Problem creating schema implementation", e);
+ }
+ // try to cast the resulting extension:
+ try {
+ return Schema.class.cast(extension);
+ } catch (ClassCastException e) {
+ throw new RuntimeException("Schema implementation problem", e);
+ }
+ }
+
protected void buildTypes(final Collection<SchemaInfo> schemas,
final Map<String, SchemaInfo> imports,
final Definition def) {
@@ -295,7 +311,7 @@ public class ServiceWSDLBuilder {
for (SchemaInfo schemaInfo : schemas) {
if (!useSchemaImports) {
- SchemaImpl schemaImpl = new SchemaImpl();
+ Schema schemaImpl = getSchemaImplementation(def);
schemaImpl.setRequired(true);
schemaImpl.setElementType(WSDLConstants.QNAME_SCHEMA);
schemaImpl.setElement(schemaInfo.getElement());
@@ -308,7 +324,7 @@ public class ServiceWSDLBuilder {
imp.setNamespaceURI(((XmlSchemaImport)ext).getNamespace());
imp.setSchemaLocationURI(((XmlSchemaImport)ext).getSchemaLocation());
- SchemaImpl schemaImpl2 = new SchemaImpl();
+ Schema schemaImpl2 = getSchemaImplementation(def);
schemaImpl2.setRequired(true);
schemaImpl2.setElementType(WSDLConstants.QNAME_SCHEMA);
schemaImpl2.setDocumentBaseURI(ext.getSchema().getSourceURI());
@@ -324,7 +340,7 @@ public class ServiceWSDLBuilder {
SchemaReference imp = schemaImpl.createInclude();
imp.setSchemaLocationURI(((XmlSchemaInclude)ext).getSchemaLocation());
- SchemaImpl schemaImpl2 = new SchemaImpl();
+ Schema schemaImpl2 = getSchemaImplementation(def);
schemaImpl2.setRequired(true);
schemaImpl2.setElementType(WSDLConstants.QNAME_SCHEMA);
schemaImpl2.setDocumentBaseURI(ext.getSchema().getSourceURI());
@@ -340,7 +356,7 @@ public class ServiceWSDLBuilder {
SchemaReference imp = schemaImpl.createRedefine();
imp.setSchemaLocationURI(((XmlSchemaRedefine)ext).getSchemaLocation());
- SchemaImpl schemaImpl2 = new SchemaImpl();
+ Schema schemaImpl2 = getSchemaImplementation(def);
schemaImpl2.setRequired(true);
schemaImpl2.setElementType(WSDLConstants.QNAME_SCHEMA);
schemaImpl2.setDocumentBaseURI(ext.getSchema().getSourceURI());
@@ -370,7 +386,7 @@ public class ServiceWSDLBuilder {
}
if (useSchemaImports) {
- SchemaImpl schemaImpl = new SchemaImpl();
+ Schema schemaImpl = getSchemaImplementation(def);
schemaImpl.setRequired(true);
schemaImpl.setElementType(WSDLConstants.QNAME_SCHEMA);
schemaImpl.setElement(nd);
Modified: cxf/trunk/rt/core/src/main/java/org/apache/cxf/wsdl11/WSDLManagerImpl.java
URL: http://svn.apache.org/viewvc/cxf/trunk/rt/core/src/main/java/org/apache/cxf/wsdl11/WSDLManagerImpl.java?rev=1211066&r1=1211065&r2=1211066&view=diff
==============================================================================
--- cxf/trunk/rt/core/src/main/java/org/apache/cxf/wsdl11/WSDLManagerImpl.java (original)
+++ cxf/trunk/rt/core/src/main/java/org/apache/cxf/wsdl11/WSDLManagerImpl.java Tue Dec 6 19:03:20 2011
@@ -32,9 +32,11 @@ import java.util.logging.Level;
import java.util.logging.Logger;
import javax.annotation.Resource;
+import javax.wsdl.BindingInput;
import javax.wsdl.Definition;
import javax.wsdl.Types;
import javax.wsdl.WSDLException;
+import javax.wsdl.extensions.ExtensibilityElement;
import javax.wsdl.extensions.ExtensionRegistry;
import javax.wsdl.extensions.mime.MIMEPart;
import javax.wsdl.factory.WSDLFactory;
@@ -47,9 +49,6 @@ import org.w3c.dom.Element;
import org.xml.sax.InputSource;
-import com.ibm.wsdl.extensions.soap.SOAPHeaderImpl;
-import com.ibm.wsdl.extensions.soap.SOAPHeaderSerializer;
-
import org.apache.cxf.Bus;
import org.apache.cxf.BusException;
import org.apache.cxf.catalog.CatalogWSDLLocator;
@@ -98,15 +97,21 @@ public class WSDLManagerImpl implements
registry.registerSerializer(Types.class,
WSDLConstants.QNAME_SCHEMA,
new SchemaSerializer());
- QName header = new QName("http://schemas.xmlsoap.org/wsdl/soap/",
- "header");
+ // these will replace whatever may have already been registered
+ // in these places, but there's no good way to check what was
+ // there before.
+ QName header = new QName(WSDLConstants.NS_SOAP, "header");
registry.registerDeserializer(MIMEPart.class,
header,
- new SOAPHeaderSerializer());
+ registry.queryDeserializer(BindingInput.class, header));
registry.registerSerializer(MIMEPart.class,
header,
- new SOAPHeaderSerializer());
- registry.mapExtensionTypes(MIMEPart.class, header, SOAPHeaderImpl.class);
+ registry.querySerializer(BindingInput.class, header));
+ // get the original classname of the SOAPHeader
+ // implementation that was stored in the registry.
+ Class<? extends ExtensibilityElement> clazz =
+ registry.createExtension(BindingInput.class, header).getClass();
+ registry.mapExtensionTypes(MIMEPart.class, header, clazz);
} catch (WSDLException e) {
throw new BusException(e);
}
Modified: cxf/trunk/rt/ws/addr/src/main/java/org/apache/cxf/ws/addressing/VersionTransformer.java
URL: http://svn.apache.org/viewvc/cxf/trunk/rt/ws/addr/src/main/java/org/apache/cxf/ws/addressing/VersionTransformer.java?rev=1211066&r1=1211065&r2=1211066&view=diff
==============================================================================
--- cxf/trunk/rt/ws/addr/src/main/java/org/apache/cxf/ws/addressing/VersionTransformer.java (original)
+++ cxf/trunk/rt/ws/addr/src/main/java/org/apache/cxf/ws/addressing/VersionTransformer.java Tue Dec 6 19:03:20 2011
@@ -35,12 +35,11 @@ import javax.xml.ws.wsaddressing.W3CEndp
import org.w3c.dom.Document;
import org.w3c.dom.Element;
-import com.ibm.wsdl.util.xml.DOMUtils;
-
// importation convention: if the same class name is used for
// 2005/08 and 2004/08, then the former version is imported
// and the latter is fully qualified when used
import org.apache.cxf.common.util.PackageUtils;
+import org.apache.cxf.helpers.DOMUtils;
import org.apache.cxf.helpers.XMLUtils;
import org.apache.cxf.staxutils.W3CDOMStreamReader;
import org.apache.cxf.ws.addressing.v200408.AttributedQName;
@@ -471,13 +470,13 @@ public class VersionTransformer {
* @throws JAXBException
*/
public static EndpointReferenceType parseEndpointReference(Element ref) throws JAXBException {
- Element child = DOMUtils.getFirstChildElement(ref);
+ Element child = DOMUtils.getFirstElement(ref);
String tns = null;
while (child != null && tns == null) {
if (isSupported(child.getNamespaceURI())) {
tns = child.getNamespaceURI();
}
- child = DOMUtils.getNextSiblingElement(child);
+ child = DOMUtils.getNextElement(child);
}
if (tns == null) {
return null;
Modified: cxf/trunk/tools/common/src/main/java/org/apache/cxf/tools/common/ExtensionInvocationHandler.java
URL: http://svn.apache.org/viewvc/cxf/trunk/tools/common/src/main/java/org/apache/cxf/tools/common/ExtensionInvocationHandler.java?rev=1211066&r1=1211065&r2=1211066&view=diff
==============================================================================
--- cxf/trunk/tools/common/src/main/java/org/apache/cxf/tools/common/ExtensionInvocationHandler.java (original)
+++ cxf/trunk/tools/common/src/main/java/org/apache/cxf/tools/common/ExtensionInvocationHandler.java Tue Dec 6 19:03:20 2011
@@ -38,7 +38,7 @@ public class ExtensionInvocationHandler
}
}
- Method m = obj.getClass().getDeclaredMethod(method.getName(), method.getParameterTypes());
+ Method m = obj.getClass().getMethod(method.getName(), method.getParameterTypes());
return m.invoke(obj, args);
}
}
Modified: cxf/trunk/tools/corba/src/main/java/org/apache/cxf/tools/corba/common/SchemaFactoryImpl.java
URL: http://svn.apache.org/viewvc/cxf/trunk/tools/corba/src/main/java/org/apache/cxf/tools/corba/common/SchemaFactoryImpl.java?rev=1211066&r1=1211065&r2=1211066&view=diff
==============================================================================
--- cxf/trunk/tools/corba/src/main/java/org/apache/cxf/tools/corba/common/SchemaFactoryImpl.java (original)
+++ cxf/trunk/tools/corba/src/main/java/org/apache/cxf/tools/corba/common/SchemaFactoryImpl.java Tue Dec 6 19:03:20 2011
@@ -20,26 +20,29 @@
package org.apache.cxf.tools.corba.common;
import javax.wsdl.Definition;
+import javax.wsdl.WSDLException;
import javax.wsdl.extensions.ExtensionRegistry;
+import javax.wsdl.factory.WSDLFactory;
import javax.wsdl.xml.WSDLWriter;
-import com.ibm.wsdl.DefinitionImpl;
-import com.ibm.wsdl.extensions.PopulatedExtensionRegistry;
-
-
/**
* This class is a copy of the WSDLFactoryImpl from the wsdl4j implementation
* It overwrites the newWSDLWriter method to return a SchemaWriter
*/
public class SchemaFactoryImpl extends SchemaFactory {
+ WSDLFactory factory;
+
+ public SchemaFactoryImpl() throws WSDLException {
+ factory = WSDLFactory.newInstance();
+ }
+
/**
* Create a new instance of a Definition, with an instance of a
* PopulatedExtensionRegistry as its ExtensionRegistry.
*
- * @see com.ibm.wsdl.extensions.PopulatedExtensionRegistry
*/
public Definition newDefinition() {
- Definition def = new DefinitionImpl();
+ Definition def = factory.newDefinition();
ExtensionRegistry extReg = newPopulatedExtensionRegistry();
def.setExtensionRegistry(extReg);
@@ -61,6 +64,6 @@ public class SchemaFactoryImpl extends S
* extensions.
*/
public ExtensionRegistry newPopulatedExtensionRegistry() {
- return new PopulatedExtensionRegistry();
+ return factory.newPopulatedExtensionRegistry();
}
}
Modified: cxf/trunk/tools/corba/src/main/java/org/apache/cxf/tools/corba/common/SchemaWriterImpl.java
URL: http://svn.apache.org/viewvc/cxf/trunk/tools/corba/src/main/java/org/apache/cxf/tools/corba/common/SchemaWriterImpl.java?rev=1211066&r1=1211065&r2=1211066&view=diff
==============================================================================
--- cxf/trunk/tools/corba/src/main/java/org/apache/cxf/tools/corba/common/SchemaWriterImpl.java (original)
+++ cxf/trunk/tools/corba/src/main/java/org/apache/cxf/tools/corba/common/SchemaWriterImpl.java Tue Dec 6 19:03:20 2011
@@ -19,10 +19,8 @@
package org.apache.cxf.tools.corba.common;
-import java.io.OutputStreamWriter;
-import java.io.PrintWriter;
+import java.io.OutputStream;
import java.io.Writer;
-import java.util.Iterator;
import java.util.List;
import javax.wsdl.Definition;
@@ -30,15 +28,14 @@ import javax.wsdl.Types;
import javax.wsdl.WSDLException;
import javax.wsdl.extensions.ExtensibilityElement;
import javax.wsdl.extensions.schema.Schema;
+import javax.wsdl.xml.WSDLWriter;
-import org.w3c.dom.Attr;
+import org.w3c.dom.Document;
import org.w3c.dom.Element;
-import org.w3c.dom.NamedNodeMap;
-import org.w3c.dom.Node;
-import com.ibm.wsdl.Constants;
-import com.ibm.wsdl.util.xml.DOM2Writer;
-import com.ibm.wsdl.xml.WSDLWriterImpl;
+import org.apache.cxf.helpers.CastUtils;
+import org.apache.cxf.helpers.DOMUtils;
+import org.apache.cxf.helpers.XMLUtils;
/*
@@ -46,109 +43,48 @@ import com.ibm.wsdl.xml.WSDLWriterImpl;
* extensibility elements of the schema into a separate file.
*
*/
-public class SchemaWriterImpl extends WSDLWriterImpl {
+public class SchemaWriterImpl implements WSDLWriter {
public static final int DEFAULT_INDENT_LEVEL = 0;
- /**
- * Write the specified schema of the WSDL definition
- * to the specified Writer.
- *
- * @param wsdlDef contains the schema to be written.
- * @param sink the Writer to write the xml to.
- */
- public void writeWSDL(Definition wsdlDef, Writer sink) throws WSDLException {
- PrintWriter pw = new PrintWriter(sink);
- String javaEncoding = (sink instanceof OutputStreamWriter)
- ? ((OutputStreamWriter)sink).getEncoding() : null;
-
- String xmlEncoding = DOM2Writer.java2XMLEncoding(javaEncoding);
-
- if (xmlEncoding == null) {
- throw new WSDLException(WSDLException.CONFIGURATION_ERROR,
- "Unsupported Java encoding for writing " + "schema file: '" + javaEncoding
- + "'.");
- }
-
- pw.println(Constants.XML_DECL_START + xmlEncoding + Constants.XML_DECL_END);
-
- printSchema(wsdlDef, pw);
- }
-
-
- protected void printSchema(Definition def, PrintWriter pw) throws WSDLException {
- if (def == null) {
- return;
- }
-
- Types types = def.getTypes();
+ public Element getElement(Definition wsdlDef) throws WSDLException {
+ Types types = wsdlDef.getTypes();
if (types != null) {
- List extElements = types.getExtensibilityElements();
- printExtensibilityElements(Types.class, extElements, def, pw);
- }
-
- pw.flush();
- }
-
+ List<ExtensibilityElement> l = CastUtils.cast(types.getExtensibilityElements());
+ if (l == null) {
+ return null;
+ }
- public void printExtensibilityElements(Class class1,
- List list,
- Definition def,
- PrintWriter pw)
- throws WSDLException {
- if (list != null) {
- Iterator it = list.iterator();
- while (it.hasNext()) {
- ExtensibilityElement extElement = (ExtensibilityElement) it.next();
- if (extElement instanceof Schema) {
- printDOMElement(((Schema) extElement).getElement(),
- pw,
- DEFAULT_INDENT_LEVEL);
- pw.println();
- } else {
- super.printExtensibilityElements(class1, list, def, pw);
+ for (ExtensibilityElement e : l) {
+ if (e instanceof Schema) {
+ Schema sc = (Schema)e;
+ return sc.getElement();
}
}
}
+ return null;
+ }
+ public Document getDocument(Definition wsdlDef) throws WSDLException {
+ Element el = getElement(wsdlDef);
+ Document doc = DOMUtils.createDocument();
+ doc.appendChild(doc.importNode(el, true));
+ return doc;
}
- private void printDOMElement(Element element, PrintWriter pw, int indentCount) {
- indent(pw, indentCount);
- if (element.getLocalName().equals("schema")) {
- pw.print("<xs:" + element.getLocalName());
- } else {
- pw.print("<" + element.getNodeName());
- }
- NamedNodeMap attrs = element.getAttributes();
- for (int i = 0; i < attrs.getLength(); i++) {
- Attr attr = (Attr) attrs.item(i);
- pw.print(" " + attr.getName() + "=\"" + attr.getValue() + "\"");
- }
-
- pw.print(">");
- Node node = element.getFirstChild();
- pw.println();
- while (node != null) {
- if (node.getNodeType() == Node.ELEMENT_NODE) {
- printDOMElement((Element) node, pw, indentCount + 2);
- pw.println();
- }
- node = node.getNextSibling();
- }
-
- indent(pw, indentCount);
- if (element.getLocalName().equals("schema")) {
- pw.print("</xs:" + element.getLocalName() + ">");
- } else {
- pw.print("</" + element.getNodeName() + ">");
- }
+
+
+ public void setFeature(String name, boolean value) throws IllegalArgumentException {
}
- public void indent(PrintWriter pw, int count) {
- for (int i = 0; i < count; i++) {
- pw.print(' ');
- }
- }
-
+ public boolean getFeature(String name) throws IllegalArgumentException {
+ return false;
+ }
+
+ public void writeWSDL(Definition wsdlDef, Writer sink) throws WSDLException {
+ XMLUtils.writeTo(getDocument(wsdlDef), sink, 2);
+ }
+ public void writeWSDL(Definition wsdlDef, OutputStream sink) throws WSDLException {
+ XMLUtils.writeTo(getDocument(wsdlDef), sink, 2);
+ }
}
Modified: cxf/trunk/tools/corba/src/main/java/org/apache/cxf/tools/corba/common/WSDLCorbaFactoryImpl.java
URL: http://svn.apache.org/viewvc/cxf/trunk/tools/corba/src/main/java/org/apache/cxf/tools/corba/common/WSDLCorbaFactoryImpl.java?rev=1211066&r1=1211065&r2=1211066&view=diff
==============================================================================
--- cxf/trunk/tools/corba/src/main/java/org/apache/cxf/tools/corba/common/WSDLCorbaFactoryImpl.java (original)
+++ cxf/trunk/tools/corba/src/main/java/org/apache/cxf/tools/corba/common/WSDLCorbaFactoryImpl.java Tue Dec 6 19:03:20 2011
@@ -20,31 +20,32 @@
package org.apache.cxf.tools.corba.common;
import javax.wsdl.Definition;
+import javax.wsdl.WSDLException;
import javax.wsdl.extensions.ExtensionRegistry;
+import javax.wsdl.factory.WSDLFactory;
import javax.wsdl.xml.WSDLReader;
import javax.wsdl.xml.WSDLWriter;
-import com.ibm.wsdl.DefinitionImpl;
-import com.ibm.wsdl.extensions.PopulatedExtensionRegistry;
-import com.ibm.wsdl.xml.WSDLReaderImpl;
/**
* This class is a copy of the WSDLFactoryImpl from the wsdl4j implementation
* It overwrites the newWSDLWriter method to return a WSDLCorbaWriter
*/
public class WSDLCorbaFactoryImpl extends WSDLCorbaFactory {
+ WSDLFactory factory;
+
+ public WSDLCorbaFactoryImpl() throws WSDLException {
+ factory = WSDLFactory.newInstance();
+ }
+
/**
* Create a new instance of a Definition, with an instance of a
* PopulatedExtensionRegistry as its ExtensionRegistry.
- *
- * @see com.ibm.wsdl.extensions.PopulatedExtensionRegistry
*/
public Definition newDefinition() {
- Definition def = new DefinitionImpl();
+ Definition def = factory.newDefinition();
ExtensionRegistry extReg = newPopulatedExtensionRegistry();
-
def.setExtensionRegistry(extReg);
-
return def;
}
@@ -52,14 +53,14 @@ public class WSDLCorbaFactoryImpl extend
* Create a new instance of a WSDLReader.
*/
public WSDLReader newWSDLReader() {
- return new WSDLReaderImpl();
+ return factory.newWSDLReader();
}
/**
* Create a new instance of a WSDLWriter.
*/
public WSDLWriter newWSDLWriter() {
- return new WSDLCorbaWriterImpl();
+ return new WSDLCorbaWriterImpl(factory.newWSDLWriter());
}
/**
@@ -69,6 +70,6 @@ public class WSDLCorbaFactoryImpl extend
* extensions.
*/
public ExtensionRegistry newPopulatedExtensionRegistry() {
- return new PopulatedExtensionRegistry();
+ return factory.newPopulatedExtensionRegistry();
}
}
Modified: cxf/trunk/tools/corba/src/main/java/org/apache/cxf/tools/corba/common/WSDLCorbaWriterImpl.java
URL: http://svn.apache.org/viewvc/cxf/trunk/tools/corba/src/main/java/org/apache/cxf/tools/corba/common/WSDLCorbaWriterImpl.java?rev=1211066&r1=1211065&r2=1211066&view=diff
==============================================================================
--- cxf/trunk/tools/corba/src/main/java/org/apache/cxf/tools/corba/common/WSDLCorbaWriterImpl.java (original)
+++ cxf/trunk/tools/corba/src/main/java/org/apache/cxf/tools/corba/common/WSDLCorbaWriterImpl.java Tue Dec 6 19:03:20 2011
@@ -19,205 +19,132 @@
package org.apache.cxf.tools.corba.common;
-import java.io.OutputStreamWriter;
-import java.io.PrintWriter;
+import java.io.OutputStream;
import java.io.Writer;
-import java.util.Iterator;
import java.util.List;
import java.util.Map;
import javax.wsdl.Definition;
+import javax.wsdl.Types;
import javax.wsdl.WSDLException;
import javax.wsdl.extensions.ExtensibilityElement;
import javax.wsdl.extensions.schema.Schema;
-import javax.wsdl.extensions.schema.SchemaImport;
-import javax.xml.namespace.QName;
+import javax.wsdl.xml.WSDLWriter;
+import javax.xml.parsers.ParserConfigurationException;
-import org.w3c.dom.Attr;
+import org.w3c.dom.Document;
import org.w3c.dom.Element;
-import org.w3c.dom.NamedNodeMap;
-import org.w3c.dom.Node;
-import com.ibm.wsdl.Constants;
-import com.ibm.wsdl.util.xml.DOM2Writer;
-import com.ibm.wsdl.util.xml.DOMUtils;
-import com.ibm.wsdl.xml.WSDLWriterImpl;
+import org.apache.cxf.common.util.StringUtils;
+import org.apache.cxf.helpers.CastUtils;
+import org.apache.cxf.helpers.DOMUtils;
+import org.apache.cxf.helpers.XMLUtils;
/*
* This class is extending the wsdl4j RI class to print out the
* extensibility elements at the top of a generated wsdl file.
*
*/
-public class WSDLCorbaWriterImpl extends WSDLWriterImpl {
+public class WSDLCorbaWriterImpl implements WSDLWriter {
public static final int DEFAULT_INDENT_LEVEL = 2;
-
- /**
- * Write the specified WSDL definition to the specified Writer.
- *
- * @param wsdlDef the WSDL definition to be written.
- * @param sink the Writer to write the xml to.
- */
- public void writeWSDL(Definition wsdlDef, Writer sink) throws WSDLException {
- PrintWriter pw = new PrintWriter(sink);
- String javaEncoding = (sink instanceof OutputStreamWriter)
- ? ((OutputStreamWriter)sink).getEncoding() : null;
-
- String xmlEncoding = DOM2Writer.java2XMLEncoding(javaEncoding);
-
- if (xmlEncoding == null) {
- throw new WSDLException(WSDLException.CONFIGURATION_ERROR,
- "Unsupported Java encoding for writing " + "wsdl file: '" + javaEncoding
- + "'.");
- }
-
- pw.println(Constants.XML_DECL_START + xmlEncoding + Constants.XML_DECL_END);
-
- printDefinition(wsdlDef, pw);
- }
+ final WSDLWriter wrapped;
-
- protected void printDefinition(Definition def, PrintWriter pw) throws WSDLException {
- if (def == null) {
- return;
- }
-
- if (def.getPrefix(Constants.NS_URI_WSDL) == null) {
- String prefix = "wsdl";
- int subscript = 0;
+ public WSDLCorbaWriterImpl(WSDLWriter orig) {
+ wrapped = orig;
+ }
- while (def.getNamespace(prefix) != null) {
- prefix = "wsdl" + subscript++;
- }
- def.addNamespace(prefix, Constants.NS_URI_WSDL);
- }
+ public void setFeature(String name, boolean value) throws IllegalArgumentException {
+ wrapped.setFeature(name, value);
+ }
- String tagName = DOMUtils.getQualifiedValue(Constants.NS_URI_WSDL, Constants.ELEM_DEFINITIONS, def);
- pw.print('<' + tagName);
+ public boolean getFeature(String name) throws IllegalArgumentException {
+ return wrapped.getFeature(name);
+ }
- QName name = def.getQName();
- String targetNamespace = def.getTargetNamespace();
- Map namespaces = def.getNamespaces();
- if (name != null) {
- DOMUtils.printAttribute(Constants.ATTR_NAME, name.getLocalPart(), pw);
+ public Document getDocument(Definition wsdlDef) throws WSDLException {
+ try {
+ fixTypes(wsdlDef);
+ } catch (Exception ex) {
+ throw new WSDLException(WSDLException.PARSER_ERROR, ex.getMessage(), ex);
+ }
+ Document doc = wrapped.getDocument(wsdlDef);
+ Element imp = null;
+ Element child = DOMUtils.getFirstElement(doc.getDocumentElement());
+ //move extensability things to the top
+ while (child != null) {
+ if (child.getNamespaceURI().equals(doc.getDocumentElement().getNamespaceURI())) {
+ //wsdl node
+ if (imp == null) {
+ imp = child;
+ }
+ } else if (imp != null) {
+ doc.getDocumentElement().removeChild(child);
+ doc.getDocumentElement().insertBefore(child, imp);
+ }
+ child = DOMUtils.getNextElement(child);
}
-
- DOMUtils.printAttribute(Constants.ATTR_TARGET_NAMESPACE, targetNamespace, pw);
-
- printExtensibilityAttributes(Definition.class, def, def, pw);
-
- printNamespaceDeclarations(namespaces, pw);
-
- pw.println('>');
-
- printDocumentation(def.getDocumentationElement(), def, pw);
- List extElements = def.getExtensibilityElements();
- printExtensibilityElements(Definition.class, extElements, def, pw);
-
- printImports(def.getImports(), def, pw);
- printTypes(def.getTypes(), def, pw);
- printMessages(def.getMessages(), def, pw);
- printPortTypes(def.getPortTypes(), def, pw);
- printBindings(def.getBindings(), def, pw);
- printServices(def.getServices(), def, pw);
-
- pw.println("</" + tagName + '>');
-
- pw.flush();
+
+ return doc;
}
-
-
- public void printExtensibilityElements(Class class1,
- List list,
- Definition def,
- PrintWriter pw)
- throws WSDLException {
- if (list != null) {
- Iterator it = list.iterator();
- while (it.hasNext()) {
- ExtensibilityElement extElement = (ExtensibilityElement) it.next();
- if (extElement instanceof Schema) {
- Schema schemaElement = (Schema)extElement;
- if (schemaElement.getElement() != null) {
- printDOMElement(schemaElement.getElement(),
- pw,
- DEFAULT_INDENT_LEVEL + 2);
- } else if (schemaElement.getImports() != null) {
- printSchemaImports(extElement.getElementType(),
- schemaElement,
- pw,
- DEFAULT_INDENT_LEVEL + 2,
- def);
+
+ private void fixTypes(Definition wsdlDef) throws ParserConfigurationException {
+ Types t = wsdlDef.getTypes();
+ if (t == null) {
+ return;
+ }
+ List<ExtensibilityElement> l = CastUtils.cast(t.getExtensibilityElements());
+ if (l == null) {
+ return;
+ }
+
+ for (ExtensibilityElement e : l) {
+ if (e instanceof Schema) {
+ Schema sc = (Schema)e;
+ String pfx = wsdlDef.getPrefix(sc.getElementType().getNamespaceURI());
+ if (StringUtils.isEmpty(pfx)) {
+ pfx = "xsd";
+ String ns = wsdlDef.getNamespace(pfx);
+ int count = 1;
+ while (!StringUtils.isEmpty(ns)) {
+ pfx = "xsd" + count++;
+ ns = wsdlDef.getNamespace(pfx);
}
- pw.println();
- } else {
- super.printExtensibilityElements(class1, list, def, pw);
+ wsdlDef.addNamespace(pfx, sc.getElementType().getNamespaceURI());
+ }
+ if (sc.getElement() == null) {
+ fixSchema(sc, pfx);
}
}
- }
+ }
}
- private void printDOMElement(Element element, PrintWriter pw, int indentCount) {
- indent(pw, indentCount);
- pw.print("<" + element.getNodeName());
- NamedNodeMap attrs = element.getAttributes();
- for (int i = 0; i < attrs.getLength(); i++) {
- Attr attr = (Attr) attrs.item(i);
- //REVISIT, should we normalize the attribute value?
- pw.print(" " + attr.getName() + "=\"" + attr.getValue() + "\"");
- }
- pw.print(">");
- Node node = element.getFirstChild();
- pw.println();
- while (node != null) {
- if (node.getNodeType() == Node.ELEMENT_NODE) {
- printDOMElement((Element) node, pw, indentCount + 2);
- pw.println();
- }
- node = node.getNextSibling();
+
+ private void fixSchema(Schema sc, String pfx) throws ParserConfigurationException {
+ Document doc = XMLUtils.newDocument();
+ Element el = doc.createElementNS(sc.getElementType().getNamespaceURI(),
+ pfx + ":" + sc.getElementType().getLocalPart());
+ sc.setElement(el);
+ Map<String, List<String>> mp = CastUtils.cast(sc.getImports());
+ for (Map.Entry<String, List<String>> ent : mp.entrySet()) {
+ Element imp = doc.createElementNS(sc.getElementType().getNamespaceURI(),
+ pfx + ":import");
+ el.appendChild(imp);
+ imp.setAttribute("namespace", ent.getKey());
}
- indent(pw, indentCount);
- pw.print("</" + element.getNodeName() + ">");
}
-
- private void printSchemaImports(QName schemaName, Schema schemaElement, PrintWriter pw, int indentCount,
- Definition def) throws WSDLException {
- Map imports = schemaElement.getImports();
- indent(pw, indentCount);
- pw.print("<xsd:" + schemaName.getLocalPart() + ">");
- String tagName = "xsd:import";
-
- Iterator importListIterator = imports.values().iterator();
- while (importListIterator.hasNext()) {
- List importList = (List)importListIterator.next();
- Iterator importIterator = importList.iterator();
-
- while (importIterator.hasNext()) {
- SchemaImport schemaImport = (SchemaImport)importIterator.next();
- pw.println();
- indent(pw, indentCount + 2);
- pw.print("<" + tagName);
- DOMUtils.printAttribute(Constants.ATTR_NAMESPACE,
- schemaImport.getNamespaceURI(), pw);
- DOMUtils.printAttribute("schemaLocation",
- schemaImport.getSchemaLocationURI(), pw);
- pw.println("/>");
- }
- }
- indent(pw, indentCount);
- pw.print("</xsd:" + schemaName.getLocalPart() + ">");
- }
- public void indent(PrintWriter pw, int count) {
- for (int i = 0; i < count; i++) {
- pw.print(' ');
- }
+ public void writeWSDL(Definition wsdlDef, Writer sink) throws WSDLException {
+ XMLUtils.writeTo(getDocument(wsdlDef), sink, 2);
+ }
+ public void writeWSDL(Definition wsdlDef, OutputStream sink) throws WSDLException {
+ XMLUtils.writeTo(getDocument(wsdlDef), sink, 2);
}
}
Modified: cxf/trunk/tools/corba/src/main/java/org/apache/cxf/tools/corba/common/WSDLUtils.java
URL: http://svn.apache.org/viewvc/cxf/trunk/tools/corba/src/main/java/org/apache/cxf/tools/corba/common/WSDLUtils.java?rev=1211066&r1=1211065&r2=1211066&view=diff
==============================================================================
--- cxf/trunk/tools/corba/src/main/java/org/apache/cxf/tools/corba/common/WSDLUtils.java (original)
+++ cxf/trunk/tools/corba/src/main/java/org/apache/cxf/tools/corba/common/WSDLUtils.java Tue Dec 6 19:03:20 2011
@@ -74,8 +74,7 @@ public final class WSDLUtils {
public static void writeWSDL(Definition def, Writer outputWriter)
throws WSDLException, IOException {
- WSDLCorbaFactory wsdlfactory = WSDLCorbaFactory
- .newInstance("org.apache.cxf.tools.corba.common.WSDLCorbaFactoryImpl");
+ WSDLCorbaFactory wsdlfactory = new WSDLCorbaFactoryImpl();
WSDLWriter writer = wsdlfactory.newWSDLWriter();
writer.writeWSDL(def, outputWriter);
@@ -85,8 +84,7 @@ public final class WSDLUtils {
public static void writeSchema(Definition def, Writer outputWriter) throws WSDLException, IOException {
- SchemaFactory sfactory = SchemaFactory
- .newInstance("org.apache.cxf.tools.corba.common.SchemaFactoryImpl");
+ SchemaFactory sfactory = new SchemaFactoryImpl();
WSDLWriter swriter = sfactory.newWSDLWriter();
swriter.writeWSDL(def, outputWriter);
Modified: cxf/trunk/tools/corba/src/test/java/org/apache/cxf/tools/corba/utils/WSDLGenerationTester.java
URL: http://svn.apache.org/viewvc/cxf/trunk/tools/corba/src/test/java/org/apache/cxf/tools/corba/utils/WSDLGenerationTester.java?rev=1211066&r1=1211065&r2=1211066&view=diff
==============================================================================
--- cxf/trunk/tools/corba/src/test/java/org/apache/cxf/tools/corba/utils/WSDLGenerationTester.java (original)
+++ cxf/trunk/tools/corba/src/test/java/org/apache/cxf/tools/corba/utils/WSDLGenerationTester.java Tue Dec 6 19:03:20 2011
@@ -55,6 +55,7 @@ public class WSDLGenerationTester {
boolean origEnd = false;
boolean actualEnd = false;
+ QName elName = null;
while (orig.hasNext() || actual.hasNext()) {
int origTag = orig.next();
while (!orig.isStartElement() && !orig.isEndElement() && !orig.isCharacters()) {
@@ -77,11 +78,12 @@ public class WSDLGenerationTester {
if (!origEnd && !actualEnd) {
Assert.assertEquals("XML mismatch", origTag, actualTag);
if (orig.isStartElement()) {
+ elName = orig.getName();
compareStartElement(orig, actual);
} else if (orig.isEndElement()) {
compareEndElement(orig, actual);
} else if (orig.isCharacters()) {
- compareCharacters(orig, actual);
+ compareCharacters(elName, orig, actual);
}
} else {
break;
@@ -126,9 +128,10 @@ public class WSDLGenerationTester {
Assert.assertEquals("End element is not matched", orig.getName(), actual.getName());
}
- private void compareCharacters(XMLStreamReader orig, XMLStreamReader actual)
+ private void compareCharacters(QName elName, XMLStreamReader orig, XMLStreamReader actual)
throws Exception {
- Assert.assertEquals("Element Characters not matched", orig.getText(), actual.getText());
+ Assert.assertEquals("Element Characters not matched " + elName,
+ orig.getText(), actual.getText());
}
public File writeDefinition(File targetDir, File defnFile) throws Exception {
Modified: cxf/trunk/tools/corba/src/test/resources/idl/expected_Anonboundedsequence.wsdl
URL: http://svn.apache.org/viewvc/cxf/trunk/tools/corba/src/test/resources/idl/expected_Anonboundedsequence.wsdl?rev=1211066&r1=1211065&r2=1211066&view=diff
==============================================================================
--- cxf/trunk/tools/corba/src/test/resources/idl/expected_Anonboundedsequence.wsdl (original)
+++ cxf/trunk/tools/corba/src/test/resources/idl/expected_Anonboundedsequence.wsdl Tue Dec 6 19:03:20 2011
@@ -121,420 +121,343 @@
<xs:schema attributeFormDefault="unqualified" elementFormDefault="unqualified" targetNamespace="http://cxf.apache.org/bindings/corba/idl/Anonboundedsequence" xmlns="http://cxf.apache.org/bindings/corba/idl/Anonboundedsequence" xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:complexType name="SeqLong">
<xs:sequence>
- <xs:element maxOccurs="10" minOccurs="0" name="item" type="xs:unsignedInt">
- </xs:element>
+ <xs:element maxOccurs="10" minOccurs="0" name="item" type="xs:unsignedInt"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="_Anon1_SeqSeqLong">
<xs:sequence>
- <xs:element maxOccurs="10" minOccurs="0" name="item" type="xs:int">
- </xs:element>
+ <xs:element maxOccurs="10" minOccurs="0" name="item" type="xs:int"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="SeqSeqLong">
<xs:sequence>
- <xs:element maxOccurs="100" minOccurs="0" name="item" type="_Anon1_SeqSeqLong">
- </xs:element>
+ <xs:element maxOccurs="100" minOccurs="0" name="item" type="_Anon1_SeqSeqLong"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="SeqSeqSeqLong._Anon1_SeqSeqSeqLong">
<xs:sequence>
- <xs:element maxOccurs="10" minOccurs="0" name="item" type="xs:int">
- </xs:element>
+ <xs:element maxOccurs="10" minOccurs="0" name="item" type="xs:int"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="_Anon1_SeqSeqSeqLong">
<xs:sequence>
- <xs:element maxOccurs="100" minOccurs="0" name="item" type="SeqSeqSeqLong._Anon1_SeqSeqSeqLong">
- </xs:element>
+ <xs:element maxOccurs="100" minOccurs="0" name="item" type="SeqSeqSeqLong._Anon1_SeqSeqSeqLong"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="SeqSeqSeqLong">
<xs:sequence>
- <xs:element maxOccurs="1000" minOccurs="0" name="item" type="_Anon1_SeqSeqSeqLong">
- </xs:element>
+ <xs:element maxOccurs="1000" minOccurs="0" name="item" type="_Anon1_SeqSeqSeqLong"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="_Anon1_anonStruct">
<xs:sequence>
- <xs:element maxOccurs="10" minOccurs="0" name="item" type="xs:int">
- </xs:element>
+ <xs:element maxOccurs="10" minOccurs="0" name="item" type="xs:int"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="anonStruct._Anon1_anonStruct">
<xs:sequence>
- <xs:element maxOccurs="10" minOccurs="0" name="item" type="xs:int">
- </xs:element>
+ <xs:element maxOccurs="10" minOccurs="0" name="item" type="xs:int"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="_Anon2_anonStruct">
<xs:sequence>
- <xs:element maxOccurs="100" minOccurs="0" name="item" type="anonStruct._Anon1_anonStruct">
- </xs:element>
+ <xs:element maxOccurs="100" minOccurs="0" name="item" type="anonStruct._Anon1_anonStruct"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="anonStruct._Anon2_anonStruct">
<xs:sequence>
- <xs:element maxOccurs="10" minOccurs="0" name="item" type="xs:int">
- </xs:element>
+ <xs:element maxOccurs="10" minOccurs="0" name="item" type="xs:int"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="anonStruct._Anon3_anonStruct">
<xs:sequence>
- <xs:element maxOccurs="100" minOccurs="0" name="item" type="anonStruct._Anon2_anonStruct">
- </xs:element>
+ <xs:element maxOccurs="100" minOccurs="0" name="item" type="anonStruct._Anon2_anonStruct"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="_Anon3_anonStruct">
<xs:sequence>
- <xs:element maxOccurs="1000" minOccurs="0" name="item" type="anonStruct._Anon3_anonStruct">
- </xs:element>
+ <xs:element maxOccurs="1000" minOccurs="0" name="item" type="anonStruct._Anon3_anonStruct"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="anonStruct">
<xs:sequence>
- <xs:element name="structSeqLong" type="_Anon1_anonStruct">
- </xs:element>
- <xs:element name="structSeqSeqLong" type="_Anon2_anonStruct">
- </xs:element>
- <xs:element name="structSeqSeqSeqLong" type="_Anon3_anonStruct">
- </xs:element>
+ <xs:element name="structSeqLong" type="_Anon1_anonStruct"/>
+ <xs:element name="structSeqSeqLong" type="_Anon2_anonStruct"/>
+ <xs:element name="structSeqSeqSeqLong" type="_Anon3_anonStruct"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="_Anon1_anonTypedefStruct">
<xs:sequence>
- <xs:element maxOccurs="10" minOccurs="0" name="item" type="xs:short">
- </xs:element>
+ <xs:element maxOccurs="10" minOccurs="0" name="item" type="xs:short"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="anonTypedefStruct._Anon1_anonTypedefStruct">
<xs:sequence>
- <xs:element maxOccurs="10" minOccurs="0" name="item" type="xs:short">
- </xs:element>
+ <xs:element maxOccurs="10" minOccurs="0" name="item" type="xs:short"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="_Anon2_anonTypedefStruct">
<xs:sequence>
- <xs:element maxOccurs="100" minOccurs="0" name="item" type="anonTypedefStruct._Anon1_anonTypedefStruct">
- </xs:element>
+ <xs:element maxOccurs="100" minOccurs="0" name="item" type="anonTypedefStruct._Anon1_anonTypedefStruct"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="anonTypedefStruct._Anon2_anonTypedefStruct">
<xs:sequence>
- <xs:element maxOccurs="10" minOccurs="0" name="item" type="xs:short">
- </xs:element>
+ <xs:element maxOccurs="10" minOccurs="0" name="item" type="xs:short"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="anonTypedefStruct._Anon3_anonTypedefStruct">
<xs:sequence>
- <xs:element maxOccurs="100" minOccurs="0" name="item" type="anonTypedefStruct._Anon2_anonTypedefStruct">
- </xs:element>
+ <xs:element maxOccurs="100" minOccurs="0" name="item" type="anonTypedefStruct._Anon2_anonTypedefStruct"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="_Anon3_anonTypedefStruct">
<xs:sequence>
- <xs:element maxOccurs="1000" minOccurs="0" name="item" type="anonTypedefStruct._Anon3_anonTypedefStruct">
- </xs:element>
+ <xs:element maxOccurs="1000" minOccurs="0" name="item" type="anonTypedefStruct._Anon3_anonTypedefStruct"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="anonTypedefStruct">
<xs:sequence>
- <xs:element name="typedefStructSeqShort" type="_Anon1_anonTypedefStruct">
- </xs:element>
- <xs:element name="typedefStructSeqSeqShort" type="_Anon2_anonTypedefStruct">
- </xs:element>
- <xs:element name="typedefStructSeqSeqSeqShort" type="_Anon3_anonTypedefStruct">
- </xs:element>
+ <xs:element name="typedefStructSeqShort" type="_Anon1_anonTypedefStruct"/>
+ <xs:element name="typedefStructSeqSeqShort" type="_Anon2_anonTypedefStruct"/>
+ <xs:element name="typedefStructSeqSeqSeqShort" type="_Anon3_anonTypedefStruct"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="_Anon1_anonUnion">
<xs:sequence>
- <xs:element maxOccurs="10" minOccurs="0" name="item" type="xs:int">
- </xs:element>
+ <xs:element maxOccurs="10" minOccurs="0" name="item" type="xs:int"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="anonUnion._Anon1_anonUnion">
<xs:sequence>
- <xs:element maxOccurs="10" minOccurs="0" name="item" type="xs:int">
- </xs:element>
+ <xs:element maxOccurs="10" minOccurs="0" name="item" type="xs:int"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="_Anon2_anonUnion">
<xs:sequence>
- <xs:element maxOccurs="100" minOccurs="0" name="item" type="anonUnion._Anon1_anonUnion">
- </xs:element>
+ <xs:element maxOccurs="100" minOccurs="0" name="item" type="anonUnion._Anon1_anonUnion"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="anonUnion._Anon2_anonUnion">
<xs:sequence>
- <xs:element maxOccurs="10" minOccurs="0" name="item" type="xs:int">
- </xs:element>
+ <xs:element maxOccurs="10" minOccurs="0" name="item" type="xs:int"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="anonUnion._Anon3_anonUnion">
<xs:sequence>
- <xs:element maxOccurs="100" minOccurs="0" name="item" type="anonUnion._Anon2_anonUnion">
- </xs:element>
+ <xs:element maxOccurs="100" minOccurs="0" name="item" type="anonUnion._Anon2_anonUnion"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="_Anon3_anonUnion">
<xs:sequence>
- <xs:element maxOccurs="1000" minOccurs="0" name="item" type="anonUnion._Anon3_anonUnion">
- </xs:element>
+ <xs:element maxOccurs="1000" minOccurs="0" name="item" type="anonUnion._Anon3_anonUnion"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="anonUnion">
<xs:choice>
- <xs:element name="unionSeqLong" type="_Anon1_anonUnion">
- </xs:element>
- <xs:element name="unionSeqLong" type="_Anon2_anonUnion">
- </xs:element>
- <xs:element name="unionSeqLong" type="_Anon3_anonUnion">
- </xs:element>
+ <xs:element name="unionSeqLong" type="_Anon1_anonUnion"/>
+ <xs:element name="unionSeqLong" type="_Anon2_anonUnion"/>
+ <xs:element name="unionSeqLong" type="_Anon3_anonUnion"/>
</xs:choice>
</xs:complexType>
<xs:complexType name="_Anon1_anonTypedefUnion">
<xs:sequence>
- <xs:element maxOccurs="10" minOccurs="0" name="item" type="xs:int">
- </xs:element>
+ <xs:element maxOccurs="10" minOccurs="0" name="item" type="xs:int"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="anonTypedefUnion._Anon1_anonTypedefUnion">
<xs:sequence>
- <xs:element maxOccurs="10" minOccurs="0" name="item" type="xs:int">
- </xs:element>
+ <xs:element maxOccurs="10" minOccurs="0" name="item" type="xs:int"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="_Anon2_anonTypedefUnion">
<xs:sequence>
- <xs:element maxOccurs="100" minOccurs="0" name="item" type="anonTypedefUnion._Anon1_anonTypedefUnion">
- </xs:element>
+ <xs:element maxOccurs="100" minOccurs="0" name="item" type="anonTypedefUnion._Anon1_anonTypedefUnion"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="anonTypedefUnion._Anon2_anonTypedefUnion">
<xs:sequence>
- <xs:element maxOccurs="10" minOccurs="0" name="item" type="xs:int">
- </xs:element>
+ <xs:element maxOccurs="10" minOccurs="0" name="item" type="xs:int"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="anonTypedefUnion._Anon3_anonTypedefUnion">
<xs:sequence>
- <xs:element maxOccurs="100" minOccurs="0" name="item" type="anonTypedefUnion._Anon2_anonTypedefUnion">
- </xs:element>
+ <xs:element maxOccurs="100" minOccurs="0" name="item" type="anonTypedefUnion._Anon2_anonTypedefUnion"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="_Anon3_anonTypedefUnion">
<xs:sequence>
- <xs:element maxOccurs="1000" minOccurs="0" name="item" type="anonTypedefUnion._Anon3_anonTypedefUnion">
- </xs:element>
+ <xs:element maxOccurs="1000" minOccurs="0" name="item" type="anonTypedefUnion._Anon3_anonTypedefUnion"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="anonTypedefUnion">
<xs:choice>
- <xs:element name="typedefUnionSeqLong" type="_Anon1_anonTypedefUnion">
- </xs:element>
- <xs:element name="typedefUnionSeqLong" type="_Anon2_anonTypedefUnion">
- </xs:element>
- <xs:element name="typedefUnionSeqLong" type="_Anon3_anonTypedefUnion">
- </xs:element>
+ <xs:element name="typedefUnionSeqLong" type="_Anon1_anonTypedefUnion"/>
+ <xs:element name="typedefUnionSeqLong" type="_Anon2_anonTypedefUnion"/>
+ <xs:element name="typedefUnionSeqLong" type="_Anon3_anonTypedefUnion"/>
</xs:choice>
</xs:complexType>
<xs:complexType name="_Anon1_anonException">
<xs:sequence>
- <xs:element maxOccurs="10" minOccurs="0" name="item" type="xs:int">
- </xs:element>
+ <xs:element maxOccurs="10" minOccurs="0" name="item" type="xs:int"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="anonException._Anon1_anonException">
<xs:sequence>
- <xs:element maxOccurs="10" minOccurs="0" name="item" type="xs:int">
- </xs:element>
+ <xs:element maxOccurs="10" minOccurs="0" name="item" type="xs:int"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="_Anon2_anonException">
<xs:sequence>
- <xs:element maxOccurs="100" minOccurs="0" name="item" type="anonException._Anon1_anonException">
- </xs:element>
+ <xs:element maxOccurs="100" minOccurs="0" name="item" type="anonException._Anon1_anonException"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="anonException._Anon2_anonException">
<xs:sequence>
- <xs:element maxOccurs="10" minOccurs="0" name="item" type="xs:int">
- </xs:element>
+ <xs:element maxOccurs="10" minOccurs="0" name="item" type="xs:int"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="anonException._Anon3_anonException">
<xs:sequence>
- <xs:element maxOccurs="100" minOccurs="0" name="item" type="anonException._Anon2_anonException">
- </xs:element>
+ <xs:element maxOccurs="100" minOccurs="0" name="item" type="anonException._Anon2_anonException"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="_Anon3_anonException">
<xs:sequence>
- <xs:element maxOccurs="1000" minOccurs="0" name="item" type="anonException._Anon3_anonException">
- </xs:element>
+ <xs:element maxOccurs="1000" minOccurs="0" name="item" type="anonException._Anon3_anonException"/>
</xs:sequence>
</xs:complexType>
- <xs:element name="anonException" type="anonExceptionType">
- </xs:element>
+ <xs:element name="anonException" type="anonExceptionType"/>
<xs:complexType name="anonExceptionType">
<xs:sequence>
- <xs:element name="exceptionSeqLong" type="_Anon1_anonException">
- </xs:element>
- <xs:element name="exceptionSeqSeqLong" type="_Anon2_anonException">
- </xs:element>
- <xs:element name="exceptionSeqSeqSeqLong" type="_Anon3_anonException">
- </xs:element>
+ <xs:element name="exceptionSeqLong" type="_Anon1_anonException"/>
+ <xs:element name="exceptionSeqSeqLong" type="_Anon2_anonException"/>
+ <xs:element name="exceptionSeqSeqSeqLong" type="_Anon3_anonException"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="anonBoundedSequences._Anon1_myFloatBoundedSeqSeq">
<xs:sequence>
- <xs:element maxOccurs="5" minOccurs="0" name="item" type="xs:float">
- </xs:element>
+ <xs:element maxOccurs="5" minOccurs="0" name="item" type="xs:float"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="anonBoundedSequences.myFloatBoundedSeqSeq">
<xs:sequence>
- <xs:element maxOccurs="unbounded" minOccurs="0" name="item" type="anonBoundedSequences._Anon1_myFloatBoundedSeqSeq">
- </xs:element>
+ <xs:element maxOccurs="unbounded" minOccurs="0" name="item" type="anonBoundedSequences._Anon1_myFloatBoundedSeqSeq"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="anonBoundedSequences._Anon1_myDoubleBoundedSeqSeq">
<xs:sequence>
- <xs:element maxOccurs="5" minOccurs="0" name="item" type="xs:double">
- </xs:element>
+ <xs:element maxOccurs="5" minOccurs="0" name="item" type="xs:double"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="anonBoundedSequences.myDoubleBoundedSeqSeq">
<xs:sequence>
- <xs:element maxOccurs="unbounded" minOccurs="0" name="item" type="anonBoundedSequences._Anon1_myDoubleBoundedSeqSeq">
- </xs:element>
+ <xs:element maxOccurs="unbounded" minOccurs="0" name="item" type="anonBoundedSequences._Anon1_myDoubleBoundedSeqSeq"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="anonBoundedSequences._Anon1_myLongDoubleBoundedSeqSeq">
<xs:sequence>
- <xs:element maxOccurs="5" minOccurs="0" name="item" type="xs:double">
- </xs:element>
+ <xs:element maxOccurs="5" minOccurs="0" name="item" type="xs:double"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="anonBoundedSequences.myLongDoubleBoundedSeqSeq">
<xs:sequence>
- <xs:element maxOccurs="unbounded" minOccurs="0" name="item" type="anonBoundedSequences._Anon1_myLongDoubleBoundedSeqSeq">
- </xs:element>
+ <xs:element maxOccurs="unbounded" minOccurs="0" name="item" type="anonBoundedSequences._Anon1_myLongDoubleBoundedSeqSeq"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="anonBoundedSequences._Anon1_myShortBoundedSeqSeq">
<xs:sequence>
- <xs:element maxOccurs="5" minOccurs="0" name="item" type="xs:short">
- </xs:element>
+ <xs:element maxOccurs="5" minOccurs="0" name="item" type="xs:short"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="anonBoundedSequences.myShortBoundedSeqSeq">
<xs:sequence>
- <xs:element maxOccurs="unbounded" minOccurs="0" name="item" type="anonBoundedSequences._Anon1_myShortBoundedSeqSeq">
- </xs:element>
+ <xs:element maxOccurs="unbounded" minOccurs="0" name="item" type="anonBoundedSequences._Anon1_myShortBoundedSeqSeq"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="anonBoundedSequences._Anon1_myLongBoundedSeqSeq">
<xs:sequence>
- <xs:element maxOccurs="5" minOccurs="0" name="item" type="xs:int">
- </xs:element>
+ <xs:element maxOccurs="5" minOccurs="0" name="item" type="xs:int"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="anonBoundedSequences.myLongBoundedSeqSeq">
<xs:sequence>
- <xs:element maxOccurs="unbounded" minOccurs="0" name="item" type="anonBoundedSequences._Anon1_myLongBoundedSeqSeq">
- </xs:element>
+ <xs:element maxOccurs="unbounded" minOccurs="0" name="item" type="anonBoundedSequences._Anon1_myLongBoundedSeqSeq"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="anonBoundedSequences._Anon1_myLonglongBoundedSeqSeq">
<xs:sequence>
- <xs:element maxOccurs="5" minOccurs="0" name="item" type="xs:long">
- </xs:element>
+ <xs:element maxOccurs="5" minOccurs="0" name="item" type="xs:long"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="anonBoundedSequences.myLonglongBoundedSeqSeq">
<xs:sequence>
- <xs:element maxOccurs="unbounded" minOccurs="0" name="item" type="anonBoundedSequences._Anon1_myLonglongBoundedSeqSeq">
- </xs:element>
+ <xs:element maxOccurs="unbounded" minOccurs="0" name="item" type="anonBoundedSequences._Anon1_myLonglongBoundedSeqSeq"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="anonBoundedSequences._Anon1_myUnsignedShortBoundedSeqSeq">
<xs:sequence>
- <xs:element maxOccurs="5" minOccurs="0" name="item" type="xs:unsignedShort">
- </xs:element>
+ <xs:element maxOccurs="5" minOccurs="0" name="item" type="xs:unsignedShort"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="anonBoundedSequences.myUnsignedShortBoundedSeqSeq">
<xs:sequence>
- <xs:element maxOccurs="unbounded" minOccurs="0" name="item" type="anonBoundedSequences._Anon1_myUnsignedShortBoundedSeqSeq">
- </xs:element>
+ <xs:element maxOccurs="unbounded" minOccurs="0" name="item" type="anonBoundedSequences._Anon1_myUnsignedShortBoundedSeqSeq"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="anonBoundedSequences._Anon1_myUnsignedLongBoundedSeqSeq">
<xs:sequence>
- <xs:element maxOccurs="5" minOccurs="0" name="item" type="xs:unsignedInt">
- </xs:element>
+ <xs:element maxOccurs="5" minOccurs="0" name="item" type="xs:unsignedInt"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="anonBoundedSequences.myUnsignedLongBoundedSeqSeq">
<xs:sequence>
- <xs:element maxOccurs="unbounded" minOccurs="0" name="item" type="anonBoundedSequences._Anon1_myUnsignedLongBoundedSeqSeq">
- </xs:element>
+ <xs:element maxOccurs="unbounded" minOccurs="0" name="item" type="anonBoundedSequences._Anon1_myUnsignedLongBoundedSeqSeq"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="anonBoundedSequences._Anon1_myUnsignedLongLongBoundedSeqSeq">
<xs:sequence>
- <xs:element maxOccurs="5" minOccurs="0" name="item" type="xs:unsignedLong">
- </xs:element>
+ <xs:element maxOccurs="5" minOccurs="0" name="item" type="xs:unsignedLong"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="anonBoundedSequences.myUnsignedLongLongBoundedSeqSeq">
<xs:sequence>
- <xs:element maxOccurs="unbounded" minOccurs="0" name="item" type="anonBoundedSequences._Anon1_myUnsignedLongLongBoundedSeqSeq">
- </xs:element>
+ <xs:element maxOccurs="unbounded" minOccurs="0" name="item" type="anonBoundedSequences._Anon1_myUnsignedLongLongBoundedSeqSeq"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="anonBoundedSequences._Anon1_myCharBoundedSeqSeq">
<xs:sequence>
- <xs:element maxOccurs="5" minOccurs="0" name="item" type="xs:byte">
- </xs:element>
+ <xs:element maxOccurs="5" minOccurs="0" name="item" type="xs:byte"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="anonBoundedSequences.myCharBoundedSeqSeq">
<xs:sequence>
- <xs:element maxOccurs="unbounded" minOccurs="0" name="item" type="anonBoundedSequences._Anon1_myCharBoundedSeqSeq">
- </xs:element>
+ <xs:element maxOccurs="unbounded" minOccurs="0" name="item" type="anonBoundedSequences._Anon1_myCharBoundedSeqSeq"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="anonBoundedSequences._Anon1_myWcharBoundedSeqSeq">
<xs:sequence>
- <xs:element maxOccurs="5" minOccurs="0" name="item" type="xs:string">
- </xs:element>
+ <xs:element maxOccurs="5" minOccurs="0" name="item" type="xs:string"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="anonBoundedSequences.myWcharBoundedSeqSeq">
<xs:sequence>
- <xs:element maxOccurs="unbounded" minOccurs="0" name="item" type="anonBoundedSequences._Anon1_myWcharBoundedSeqSeq">
- </xs:element>
+ <xs:element maxOccurs="unbounded" minOccurs="0" name="item" type="anonBoundedSequences._Anon1_myWcharBoundedSeqSeq"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="anonBoundedSequences._Anon1_myBooleanBoundedSeqSeq">
<xs:sequence>
- <xs:element maxOccurs="5" minOccurs="0" name="item" type="xs:boolean">
- </xs:element>
+ <xs:element maxOccurs="5" minOccurs="0" name="item" type="xs:boolean"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="anonBoundedSequences.myBooleanBoundedSeqSeq">
<xs:sequence>
- <xs:element maxOccurs="unbounded" minOccurs="0" name="item" type="anonBoundedSequences._Anon1_myBooleanBoundedSeqSeq">
- </xs:element>
+ <xs:element maxOccurs="unbounded" minOccurs="0" name="item" type="anonBoundedSequences._Anon1_myBooleanBoundedSeqSeq"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="anonBoundedSequences.myOctetBoundedSeqSeq">
<xs:sequence>
- <xs:element maxOccurs="unbounded" minOccurs="0" name="item" type="xs:base64Binary">
- </xs:element>
+ <xs:element maxOccurs="unbounded" minOccurs="0" name="item" type="xs:base64Binary"/>
</xs:sequence>
</xs:complexType>
</xs:schema>