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 2014/03/27 19:48:51 UTC

[1/3] git commit: Update the javato tests to pass with MOXy

Repository: cxf
Updated Branches:
  refs/heads/master 3e52647fb -> d214d1052


Update the javato tests to pass with MOXy


Project: http://git-wip-us.apache.org/repos/asf/cxf/repo
Commit: http://git-wip-us.apache.org/repos/asf/cxf/commit/b52aee8d
Tree: http://git-wip-us.apache.org/repos/asf/cxf/tree/b52aee8d
Diff: http://git-wip-us.apache.org/repos/asf/cxf/diff/b52aee8d

Branch: refs/heads/master
Commit: b52aee8da04a32dfc44ad9ca7767f1bf88f64ca2
Parents: 3e52647
Author: Daniel Kulp <dk...@apache.org>
Authored: Thu Mar 27 10:31:18 2014 -0400
Committer: Daniel Kulp <dk...@apache.org>
Committed: Thu Mar 27 14:48:43 2014 -0400

----------------------------------------------------------------------
 .../cxf/tools/common/ProcessorTestBase.java     | 12 ++++++
 .../org/apache/cxf/tools/fortest/MyImage.java   |  3 ++
 .../apache/cxf/tools/java2ws/JavaToWSTest.java  | 40 +++++++++++++++-----
 .../processor/JavaToProcessorTest.java          |  2 +-
 .../jaxws/JaxwsServiceBuilderRPCTest.java       | 10 ++++-
 .../internal/jaxws/JaxwsServiceBuilderTest.java |  7 ++++
 6 files changed, 63 insertions(+), 11 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cxf/blob/b52aee8d/tools/common/src/main/java/org/apache/cxf/tools/common/ProcessorTestBase.java
----------------------------------------------------------------------
diff --git a/tools/common/src/main/java/org/apache/cxf/tools/common/ProcessorTestBase.java b/tools/common/src/main/java/org/apache/cxf/tools/common/ProcessorTestBase.java
index 3930d4d..fc21ed9 100644
--- a/tools/common/src/main/java/org/apache/cxf/tools/common/ProcessorTestBase.java
+++ b/tools/common/src/main/java/org/apache/cxf/tools/common/ProcessorTestBase.java
@@ -40,6 +40,8 @@ import java.util.StringTokenizer;
 import java.util.jar.Attributes;
 import java.util.jar.JarFile;
 
+import javax.xml.bind.JAXBContext;
+import javax.xml.bind.JAXBException;
 import javax.xml.namespace.QName;
 
 import org.apache.cxf.common.util.StringUtils;
@@ -94,6 +96,16 @@ public class ProcessorTestBase extends Assert {
     public void tearDown() {
         env = null;
     }
+    
+
+    protected boolean isMOXy() {
+        try {
+            JAXBContext c = JAXBContext.newInstance(String.class);
+            return c.getClass().getName().contains(".eclipse");
+        } catch (JAXBException e) {
+            return false;
+        }
+    }
 
     protected String getClassPath() throws URISyntaxException, IOException {
         ClassLoader loader = getClass().getClassLoader();

http://git-wip-us.apache.org/repos/asf/cxf/blob/b52aee8d/tools/javato/ws/src/test/java/org/apache/cxf/tools/fortest/MyImage.java
----------------------------------------------------------------------
diff --git a/tools/javato/ws/src/test/java/org/apache/cxf/tools/fortest/MyImage.java b/tools/javato/ws/src/test/java/org/apache/cxf/tools/fortest/MyImage.java
index 53f30c7..ed07f59 100644
--- a/tools/javato/ws/src/test/java/org/apache/cxf/tools/fortest/MyImage.java
+++ b/tools/javato/ws/src/test/java/org/apache/cxf/tools/fortest/MyImage.java
@@ -19,8 +19,11 @@
 package org.apache.cxf.tools.fortest;
 
 import java.awt.Image;
+
 import javax.xml.bind.annotation.XmlMimeType;
+import javax.xml.bind.annotation.XmlType;
 
+@XmlType(name = "myImage", namespace = "http://fortest.tools.cxf.apache.org/")
 public class MyImage {
     @XmlMimeType("image/png")
     protected Image myPhoto;

http://git-wip-us.apache.org/repos/asf/cxf/blob/b52aee8d/tools/javato/ws/src/test/java/org/apache/cxf/tools/java2ws/JavaToWSTest.java
----------------------------------------------------------------------
diff --git a/tools/javato/ws/src/test/java/org/apache/cxf/tools/java2ws/JavaToWSTest.java b/tools/javato/ws/src/test/java/org/apache/cxf/tools/java2ws/JavaToWSTest.java
index 0788134..ba12120 100644
--- a/tools/javato/ws/src/test/java/org/apache/cxf/tools/java2ws/JavaToWSTest.java
+++ b/tools/javato/ws/src/test/java/org/apache/cxf/tools/java2ws/JavaToWSTest.java
@@ -22,11 +22,19 @@ import java.io.File;
 import java.net.URISyntaxException;
 import java.net.URL;
 import java.net.URLClassLoader;
+import java.util.HashMap;
+import java.util.Map;
+
+import org.w3c.dom.Document;
+import org.w3c.dom.Element;
 
 import org.apache.cxf.common.util.Compiler;
 import org.apache.cxf.helpers.FileUtils;
+import org.apache.cxf.helpers.XPathUtils;
+import org.apache.cxf.staxutils.StaxUtils;
 import org.apache.cxf.tools.common.ToolContext;
 import org.apache.cxf.tools.common.ToolTestBase;
+
 import org.junit.After;
 import org.junit.Before;
 import org.junit.Test;
@@ -337,10 +345,17 @@ public class JavaToWSTest extends ToolTestBase {
         JavaToWS.main(args);
 
         File file = new File(output.getPath() + "/xml-list.wsdl");
-        String str = FileUtils.getStringFromFile(file);
-        assertTrue("Java2wsdl did not generate xsd:list element",
-                   str.indexOf("xs:list") > -1);
-
+        
+        Document doc = StaxUtils.read(file);
+        Map<String, String> map = new HashMap<String, String>();
+        map.put("xsd", "http://www.w3.org/2001/XMLSchema");
+        map.put("wsdl", "http://schemas.xmlsoap.org/wsdl/");
+        map.put("soap", "http://schemas.xmlsoap.org/wsdl/soap/");
+        XPathUtils util = new XPathUtils(map);
+        Element node = (Element)util.getValueNode("//xsd:list", doc);
+        assertNotNull(node);
+
+        assertTrue(node.getAttribute("itemType").contains("string"));
     }
 
     @Test
@@ -365,11 +380,18 @@ public class JavaToWSTest extends ToolTestBase {
        
         JavaToWS.main(args);
         File file = new File(output.getPath() + "/xmladapter.wsdl");
-        String str = FileUtils.getStringFromFile(file);
-        String expected = "<xs:element  minOccurs=\"0\"  name=\"arg0\"  type=\"xs:string\"/>";
-        assertTrue("@XmlJavaTypeAdapter in SEI dose not take effect",
-                   str.indexOf(expected) > -1);
-            
+        
+        Document doc = StaxUtils.read(file);
+        Map<String, String> map = new HashMap<String, String>();
+        map.put("xsd", "http://www.w3.org/2001/XMLSchema");
+        map.put("wsdl", "http://schemas.xmlsoap.org/wsdl/");
+        map.put("soap", "http://schemas.xmlsoap.org/wsdl/soap/");
+        XPathUtils util = new XPathUtils(map);
+        Element node = (Element)util.getValueNode("//xsd:element[@name='arg0']", doc);
+        assertNotNull(node);
+
+        assertEquals("0", node.getAttribute("minOccurs"));
+        assertTrue(node.getAttribute("type").contains("string"));
     }
 
 

http://git-wip-us.apache.org/repos/asf/cxf/blob/b52aee8d/tools/javato/ws/src/test/java/org/apache/cxf/tools/java2wsdl/processor/JavaToProcessorTest.java
----------------------------------------------------------------------
diff --git a/tools/javato/ws/src/test/java/org/apache/cxf/tools/java2wsdl/processor/JavaToProcessorTest.java b/tools/javato/ws/src/test/java/org/apache/cxf/tools/java2wsdl/processor/JavaToProcessorTest.java
index 54d8997..bcbe202 100644
--- a/tools/javato/ws/src/test/java/org/apache/cxf/tools/java2wsdl/processor/JavaToProcessorTest.java
+++ b/tools/javato/ws/src/test/java/org/apache/cxf/tools/java2wsdl/processor/JavaToProcessorTest.java
@@ -481,7 +481,7 @@ public class JavaToProcessorTest extends ProcessorTestBase {
     @Test
     public void testMimeTypeInBean() throws Exception {
         env.put(ToolConstants.CFG_OUTPUTFILE, output.getPath() + "/send_image2.wsdl");
-        env.put(ToolConstants.CFG_CLASSNAME, "org.apache.cxf.tools.fortest.ImageSender2");
+        env.put(ToolConstants.CFG_CLASSNAME, org.apache.cxf.tools.fortest.ImageSender2.class.getName());
         env.put(ToolConstants.CFG_VERBOSE, ToolConstants.CFG_VERBOSE);
         try {
             processor.setEnvironment(env);

http://git-wip-us.apache.org/repos/asf/cxf/blob/b52aee8d/tools/javato/ws/src/test/java/org/apache/cxf/tools/java2wsdl/processor/internal/jaxws/JaxwsServiceBuilderRPCTest.java
----------------------------------------------------------------------
diff --git a/tools/javato/ws/src/test/java/org/apache/cxf/tools/java2wsdl/processor/internal/jaxws/JaxwsServiceBuilderRPCTest.java b/tools/javato/ws/src/test/java/org/apache/cxf/tools/java2wsdl/processor/internal/jaxws/JaxwsServiceBuilderRPCTest.java
index 6b9e64a..9080260 100644
--- a/tools/javato/ws/src/test/java/org/apache/cxf/tools/java2wsdl/processor/internal/jaxws/JaxwsServiceBuilderRPCTest.java
+++ b/tools/javato/ws/src/test/java/org/apache/cxf/tools/java2wsdl/processor/internal/jaxws/JaxwsServiceBuilderRPCTest.java
@@ -20,6 +20,8 @@
 package org.apache.cxf.tools.java2wsdl.processor.internal.jaxws;
 
 import java.io.File;
+import java.util.ArrayList;
+import java.util.List;
 
 import org.apache.cxf.BusFactory;
 import org.apache.cxf.common.jaxb.JAXBContextCache;
@@ -27,6 +29,7 @@ import org.apache.cxf.jaxws.JaxwsServiceBuilder;
 import org.apache.cxf.service.model.ServiceInfo;
 import org.apache.cxf.tools.common.ProcessorTestBase;
 import org.apache.cxf.tools.java2wsdl.generator.wsdl11.WSDL11Generator;
+
 import org.junit.Before;
 import org.junit.Test;
 
@@ -59,7 +62,12 @@ public class JaxwsServiceBuilderRPCTest extends ProcessorTestBase {
 
         File expectedFile = new File(this.getClass()
             .getResource("expected/rpc_greeter.wsdl").toURI());
-        assertWsdlEquals(expectedFile, output);
+        
+        //MOXy doesn't put a final attribute on the array types, we can ignore that
+        //for the purpose of this test
+        List<String> ignores = new ArrayList<String>(DEFAULT_IGNORE_ATTR);
+        ignores.add("final");
+        assertWsdlEquals(expectedFile, output, ignores, DEFAULT_IGNORE_TAG);
     }
 
     private File getOutputFile(String fileName) {

http://git-wip-us.apache.org/repos/asf/cxf/blob/b52aee8d/tools/javato/ws/src/test/java/org/apache/cxf/tools/java2wsdl/processor/internal/jaxws/JaxwsServiceBuilderTest.java
----------------------------------------------------------------------
diff --git a/tools/javato/ws/src/test/java/org/apache/cxf/tools/java2wsdl/processor/internal/jaxws/JaxwsServiceBuilderTest.java b/tools/javato/ws/src/test/java/org/apache/cxf/tools/java2wsdl/processor/internal/jaxws/JaxwsServiceBuilderTest.java
index d587deb..f49aaae 100644
--- a/tools/javato/ws/src/test/java/org/apache/cxf/tools/java2wsdl/processor/internal/jaxws/JaxwsServiceBuilderTest.java
+++ b/tools/javato/ws/src/test/java/org/apache/cxf/tools/java2wsdl/processor/internal/jaxws/JaxwsServiceBuilderTest.java
@@ -68,6 +68,13 @@ public class JaxwsServiceBuilderTest extends ProcessorTestBase {
 
     @Test
     public void testDocLitWrappedWithWrapperClass() throws Exception {
+        if (isMOXy()) {
+            //This test is testing to see if the lack of namespace declarations on the wrapper classes
+            //can still map into the targetnamespace of the service.   MOXy always looks for the
+            //namespace on the annotation or in package-info and thus cannot support this.  This
+            //is fairly bad practice anyway.
+            return;
+        }
         builder.setServiceClass(org.apache.cxf.tools.fortest.withannotation.doc.StockWrapped.class);
         ServiceInfo service = builder.createService();
         generator.setServiceModel(service);


[3/3] git commit: Massive update to the CORBA binding to remove the subclassing of the TExtensibilityElement, cleanup the type hiearchy, and get the tests passing with MOXy

Posted by dk...@apache.org.
Massive update to the CORBA binding to remove the subclassing of the TExtensibilityElement, cleanup the type hiearchy, and get the tests passing with MOXy


Project: http://git-wip-us.apache.org/repos/asf/cxf/repo
Commit: http://git-wip-us.apache.org/repos/asf/cxf/commit/d214d105
Tree: http://git-wip-us.apache.org/repos/asf/cxf/tree/d214d105
Diff: http://git-wip-us.apache.org/repos/asf/cxf/diff/d214d105

Branch: refs/heads/master
Commit: d214d1052a8133571aa1be1dac2896591ca57948
Parents: b52aee8
Author: Daniel Kulp <dk...@apache.org>
Authored: Thu Mar 27 14:47:57 2014 -0400
Committer: Daniel Kulp <dk...@apache.org>
Committed: Thu Mar 27 14:48:44 2014 -0400

----------------------------------------------------------------------
 .../apache/cxf/binding/corba/CorbaTypeMap.java  |  16 +-
 .../corba/types/CorbaAnyEventProducer.java      |   4 +-
 .../binding/corba/types/CorbaHandlerUtils.java  |  14 +-
 .../binding/corba/types/CorbaObjectHandler.java |   8 +-
 .../corba/types/CorbaSequenceListener.java      |   4 +-
 .../corba/types/CorbaStructListener.java        |   4 +-
 .../cxf/binding/corba/utils/CorbaUtils.java     |   9 +-
 .../cxf/binding/corba/wsdl/CorbaTypeImpl.java   |  47 +-----
 .../corba/wsdl/WSDLExtensionRegister.java       |   5 +-
 .../resources/schemas/wsdl/corba-binding.xjb    |  10 +-
 .../resources/schemas/wsdl/corba-binding.xsd    | 154 +++++++++----------
 .../cxf/binding/corba/CorbaTypeMapTest.java     |  10 +-
 .../tools/corba/common/CorbaPrimitiveMap.java   |   6 +-
 .../corba/processors/idl/ArrayVisitor.java      |  18 +--
 .../corba/processors/idl/AttributeVisitor.java  |   4 +-
 .../corba/processors/idl/DeclaratorVisitor.java |   8 +-
 .../corba/processors/idl/ExceptionVisitor.java  |   6 +-
 .../processors/idl/FixedPtConstVisitor.java     |  10 +-
 .../processors/idl/IDLToWSDLProcessor.java      |  13 +-
 .../processors/idl/ObjectReferenceVisitor.java  |   8 +-
 .../corba/processors/idl/OperationVisitor.java  |   3 +-
 .../corba/processors/idl/ParamDclVisitor.java   |   6 +-
 .../corba/processors/idl/PortTypeVisitor.java   |   3 +-
 .../processors/idl/PrimitiveTypesVisitor.java   |  10 +-
 .../corba/processors/idl/ScopedNameVisitor.java |  28 ++--
 .../corba/processors/idl/SequenceVisitor.java   |  10 +-
 .../corba/processors/idl/StringVisitor.java     |   8 +-
 .../corba/processors/idl/StructVisitor.java     |  10 +-
 .../corba/processors/idl/TypedefVisitor.java    |   8 +-
 .../tools/corba/processors/idl/TypesUtils.java  |   8 +-
 .../corba/processors/idl/UnionVisitor.java      |   8 +-
 .../cxf/tools/corba/processors/idl/Visitor.java |   4 +-
 .../tools/corba/processors/idl/VisitorBase.java |   8 +-
 .../corba/processors/idl/VisitorTypeHolder.java |   8 +-
 .../corba/processors/idl/WSDLSchemaManager.java |  37 +----
 .../corba/processors/wsdl/WSDLParameter.java    |   8 +-
 .../processors/wsdl/WSDLToCorbaBinding.java     |  56 ++-----
 .../processors/wsdl/WSDLToCorbaHelper.java      | 112 +++++++-------
 .../corba/processors/wsdl/WSDLToIDLAction.java  |  56 ++-----
 .../tools/corba/processors/wsdl/WSDLTypes.java  |  28 ++--
 .../corba/common/CorbaPrimitiveMapTest.java     |   6 +-
 .../processors/IDLToWSDLGenerationTest.java     |  10 +-
 .../processors/WSDLToCorbaBindingTest.java      |  16 +-
 .../processors/WSDLToCorbaBindingTypeTest.java  |  16 +-
 .../tools/corba/utils/WSDLGenerationTester.java |  34 +---
 .../test/resources/wsdl/wsaddressing_bank.wsdl  |   2 +-
 46 files changed, 349 insertions(+), 512 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cxf/blob/d214d105/rt/bindings/corba/src/main/java/org/apache/cxf/binding/corba/CorbaTypeMap.java
----------------------------------------------------------------------
diff --git a/rt/bindings/corba/src/main/java/org/apache/cxf/binding/corba/CorbaTypeMap.java b/rt/bindings/corba/src/main/java/org/apache/cxf/binding/corba/CorbaTypeMap.java
index 3bd9dd6..857ec73 100644
--- a/rt/bindings/corba/src/main/java/org/apache/cxf/binding/corba/CorbaTypeMap.java
+++ b/rt/bindings/corba/src/main/java/org/apache/cxf/binding/corba/CorbaTypeMap.java
@@ -25,7 +25,7 @@ import java.util.Set;
 
 import javax.xml.namespace.QName;
 
-import org.apache.cxf.binding.corba.wsdl.CorbaTypeImpl;
+import org.apache.cxf.binding.corba.wsdl.CorbaType;
 import org.apache.cxf.binding.corba.wsdl.NamedType;
 import org.omg.CORBA.TypeCode;
 
@@ -33,20 +33,20 @@ import org.omg.CORBA.TypeCode;
 public class CorbaTypeMap {
 
     private String targetNamespace;
-    private Map<String, CorbaTypeImpl> typeMap;
+    private Map<String, CorbaType> typeMap;
     private Map<QName, TypeCode> typeCodeMap;
 
     public CorbaTypeMap(String namespace) {
         targetNamespace = namespace;
-        typeMap = new HashMap<String, CorbaTypeImpl>();
+        typeMap = new HashMap<String, CorbaType>();
         typeCodeMap = new HashMap<QName, TypeCode>();
     }
 
-    public void addType(String name, CorbaTypeImpl type) {
+    public void addType(String name, CorbaType type) {
         typeMap.put(name, type);
     }
 
-    public CorbaTypeImpl getType(String name) {
+    public CorbaType getType(String name) {
         assert name != null;
 
         return typeMap.get(name);
@@ -79,9 +79,9 @@ public class CorbaTypeMap {
             return null;
         }
 
-        Set<Map.Entry<String, CorbaTypeImpl>> mapSet = typeMap.entrySet();
-        for (Iterator<Map.Entry<String, CorbaTypeImpl>> i = mapSet.iterator(); i.hasNext();) {
-            Map.Entry<String, CorbaTypeImpl> entry = i.next();
+        Set<Map.Entry<String, CorbaType>> mapSet = typeMap.entrySet();
+        for (Iterator<Map.Entry<String, CorbaType>> i = mapSet.iterator(); i.hasNext();) {
+            Map.Entry<String, CorbaType> entry = i.next();
             if (entry.getValue() instanceof NamedType) {
                 NamedType n = (NamedType)entry.getValue();
                 if (n.getRepositoryID().equals(repId)) {

http://git-wip-us.apache.org/repos/asf/cxf/blob/d214d105/rt/bindings/corba/src/main/java/org/apache/cxf/binding/corba/types/CorbaAnyEventProducer.java
----------------------------------------------------------------------
diff --git a/rt/bindings/corba/src/main/java/org/apache/cxf/binding/corba/types/CorbaAnyEventProducer.java b/rt/bindings/corba/src/main/java/org/apache/cxf/binding/corba/types/CorbaAnyEventProducer.java
index b0a9db7..8918e30 100644
--- a/rt/bindings/corba/src/main/java/org/apache/cxf/binding/corba/types/CorbaAnyEventProducer.java
+++ b/rt/bindings/corba/src/main/java/org/apache/cxf/binding/corba/types/CorbaAnyEventProducer.java
@@ -32,7 +32,7 @@ import org.apache.cxf.binding.corba.runtime.CorbaObjectReader;
 import org.apache.cxf.binding.corba.utils.CorbaAnyHelper;
 import org.apache.cxf.binding.corba.utils.CorbaUtils;
 import org.apache.cxf.binding.corba.wsdl.CorbaConstants;
-import org.apache.cxf.binding.corba.wsdl.CorbaTypeImpl;
+import org.apache.cxf.binding.corba.wsdl.CorbaType;
 import org.apache.cxf.binding.corba.wsdl.W3CConstants;
 import org.apache.cxf.service.model.ServiceInfo;
 import org.omg.CORBA.Any;
@@ -135,7 +135,7 @@ public class CorbaAnyEventProducer extends AbstractStartEndEventProducer {
         if (CorbaAnyHelper.isPrimitiveIdlType(idlType)) {
             result = CorbaAnyHelper.convertPrimitiveIdlToSchemaType(obj.getIdlType());
         } else {
-            CorbaTypeImpl impl = obj.getType();
+            CorbaType impl = obj.getType();
             result = impl.getType();
         }
 

http://git-wip-us.apache.org/repos/asf/cxf/blob/d214d105/rt/bindings/corba/src/main/java/org/apache/cxf/binding/corba/types/CorbaHandlerUtils.java
----------------------------------------------------------------------
diff --git a/rt/bindings/corba/src/main/java/org/apache/cxf/binding/corba/types/CorbaHandlerUtils.java b/rt/bindings/corba/src/main/java/org/apache/cxf/binding/corba/types/CorbaHandlerUtils.java
index 65eeb7d..56eed7f 100644
--- a/rt/bindings/corba/src/main/java/org/apache/cxf/binding/corba/types/CorbaHandlerUtils.java
+++ b/rt/bindings/corba/src/main/java/org/apache/cxf/binding/corba/types/CorbaHandlerUtils.java
@@ -31,7 +31,7 @@ import org.apache.cxf.binding.corba.wsdl.Alias;
 import org.apache.cxf.binding.corba.wsdl.Anonarray;
 import org.apache.cxf.binding.corba.wsdl.Anonsequence;
 import org.apache.cxf.binding.corba.wsdl.Array;
-import org.apache.cxf.binding.corba.wsdl.CorbaTypeImpl;
+import org.apache.cxf.binding.corba.wsdl.CorbaType;
 import org.apache.cxf.binding.corba.wsdl.Exception;
 import org.apache.cxf.binding.corba.wsdl.MemberType;
 import org.apache.cxf.binding.corba.wsdl.Sequence;
@@ -79,7 +79,7 @@ public final class CorbaHandlerUtils {
             handler = new CorbaAnyHandler(name, idlType, tc, null);
             ((CorbaAnyHandler)handler).setTypeMap(typeMap);
         } else {
-            CorbaTypeImpl type = CorbaUtils.getCorbaType(idlType, typeMap);
+            CorbaType type = CorbaUtils.getCorbaType(idlType, typeMap);
             switch (tc.kind().value()) {
             case TCKind._tk_array:
                 handler = new CorbaArrayHandler(name, idlType, tc, type);
@@ -176,7 +176,7 @@ public final class CorbaHandlerUtils {
                                               Map<QName, CorbaObjectHandler> seenTypes) {
         QName arrayElementType = null;
         long arrayBound = 0;
-        CorbaTypeImpl baseType = obj.getType();
+        CorbaType baseType = obj.getType();
         QName elementName;
         if (baseType instanceof Array) {
             Array arrayType = (Array)baseType;
@@ -231,7 +231,7 @@ public final class CorbaHandlerUtils {
                                                  Map<QName, CorbaObjectHandler> seenTypes) {
         QName seqElementType = null;
         long seqBound = 0;
-        CorbaTypeImpl baseType = obj.getType();
+        CorbaType baseType = obj.getType();
         QName elementName;
         if (baseType instanceof Sequence) {
             Sequence seqType = (Sequence)baseType;
@@ -415,7 +415,7 @@ public final class CorbaHandlerUtils {
             handler = new CorbaPrimitiveHandler(name, idlType, tc, null);
             result = new CorbaPrimitiveListener(handler);
         } else {
-            CorbaTypeImpl type = CorbaUtils.getCorbaType(idlType, typeMap);
+            CorbaType type = CorbaUtils.getCorbaType(idlType, typeMap);
             switch (tc.kind().value()) {
             case TCKind._tk_any:
                 handler = new CorbaAnyHandler(name, idlType, tc, type);
@@ -533,7 +533,7 @@ public final class CorbaHandlerUtils {
     }
 
     public static boolean isPrimitiveIDLTypeSequence(CorbaObjectHandler handler) {
-        CorbaTypeImpl seqType = handler.getType();
+        CorbaType seqType = handler.getType();
         QName seqElementType;
         if (seqType instanceof Anonsequence) {
             Anonsequence anonSeqType = (Anonsequence) seqType;
@@ -554,7 +554,7 @@ public final class CorbaHandlerUtils {
         return result;
     }
 
-    public static boolean isOctets(CorbaTypeImpl baseType) {
+    public static boolean isOctets(CorbaType baseType) {
         return baseType.getType().equals(W3CConstants.NT_SCHEMA_BASE64)
             || baseType.getType().equals(W3CConstants.NT_SCHEMA_HBIN);
     }

http://git-wip-us.apache.org/repos/asf/cxf/blob/d214d105/rt/bindings/corba/src/main/java/org/apache/cxf/binding/corba/types/CorbaObjectHandler.java
----------------------------------------------------------------------
diff --git a/rt/bindings/corba/src/main/java/org/apache/cxf/binding/corba/types/CorbaObjectHandler.java b/rt/bindings/corba/src/main/java/org/apache/cxf/binding/corba/types/CorbaObjectHandler.java
index 9f2ddc5..3c348bb 100644
--- a/rt/bindings/corba/src/main/java/org/apache/cxf/binding/corba/types/CorbaObjectHandler.java
+++ b/rt/bindings/corba/src/main/java/org/apache/cxf/binding/corba/types/CorbaObjectHandler.java
@@ -21,7 +21,7 @@ package org.apache.cxf.binding.corba.types;
 import javax.xml.namespace.QName;
 
 import org.apache.cxf.binding.corba.CorbaStreamable;
-import org.apache.cxf.binding.corba.wsdl.CorbaTypeImpl;
+import org.apache.cxf.binding.corba.wsdl.CorbaType;
 
 import org.omg.CORBA.Any;
 import org.omg.CORBA.TCKind;
@@ -34,7 +34,7 @@ public class CorbaObjectHandler {
     protected QName name;
     protected QName idlType;
     protected TypeCode typeCode;
-    protected CorbaTypeImpl type;
+    protected CorbaType type;
     protected boolean isAnon;
     protected boolean isRecursive;
 
@@ -45,7 +45,7 @@ public class CorbaObjectHandler {
         name = objName;
         idlType = objIdlType;
         typeCode = objTC;
-        type = (CorbaTypeImpl)objType;
+        type = (CorbaType)objType;
     }
     
     public QName getName() {
@@ -68,7 +68,7 @@ public class CorbaObjectHandler {
         return typeCode.kind();
     }
     
-    public CorbaTypeImpl getType() {
+    public CorbaType getType() {
         return type;
     }
 

http://git-wip-us.apache.org/repos/asf/cxf/blob/d214d105/rt/bindings/corba/src/main/java/org/apache/cxf/binding/corba/types/CorbaSequenceListener.java
----------------------------------------------------------------------
diff --git a/rt/bindings/corba/src/main/java/org/apache/cxf/binding/corba/types/CorbaSequenceListener.java b/rt/bindings/corba/src/main/java/org/apache/cxf/binding/corba/types/CorbaSequenceListener.java
index c62e3b7..a84a80b 100644
--- a/rt/bindings/corba/src/main/java/org/apache/cxf/binding/corba/types/CorbaSequenceListener.java
+++ b/rt/bindings/corba/src/main/java/org/apache/cxf/binding/corba/types/CorbaSequenceListener.java
@@ -22,7 +22,7 @@ import javax.xml.namespace.QName;
 
 import org.apache.cxf.binding.corba.CorbaTypeMap;
 import org.apache.cxf.binding.corba.wsdl.Anonsequence;
-import org.apache.cxf.binding.corba.wsdl.CorbaTypeImpl;
+import org.apache.cxf.binding.corba.wsdl.CorbaType;
 import org.apache.cxf.binding.corba.wsdl.Sequence;
 import org.apache.cxf.service.model.ServiceInfo;
 import org.omg.CORBA.ORB;
@@ -46,7 +46,7 @@ public class CorbaSequenceListener extends AbstractCorbaTypeListener {
         orb = orbRef;
         typeMap = map;
         serviceInfo = sInfo;
-        CorbaTypeImpl seqType = handler.getType();
+        CorbaType seqType = handler.getType();
         QName elementName;
         if (seqType instanceof Anonsequence) {
             Anonsequence anonSeqType = (Anonsequence) seqType;

http://git-wip-us.apache.org/repos/asf/cxf/blob/d214d105/rt/bindings/corba/src/main/java/org/apache/cxf/binding/corba/types/CorbaStructListener.java
----------------------------------------------------------------------
diff --git a/rt/bindings/corba/src/main/java/org/apache/cxf/binding/corba/types/CorbaStructListener.java b/rt/bindings/corba/src/main/java/org/apache/cxf/binding/corba/types/CorbaStructListener.java
index c1e91e3..b498817 100644
--- a/rt/bindings/corba/src/main/java/org/apache/cxf/binding/corba/types/CorbaStructListener.java
+++ b/rt/bindings/corba/src/main/java/org/apache/cxf/binding/corba/types/CorbaStructListener.java
@@ -26,7 +26,7 @@ import org.apache.cxf.binding.corba.CorbaTypeMap;
 import org.apache.cxf.binding.corba.utils.CorbaUtils;
 import org.apache.cxf.binding.corba.wsdl.Abstractanonsequence;
 import org.apache.cxf.binding.corba.wsdl.Abstractsequence;
-import org.apache.cxf.binding.corba.wsdl.CorbaTypeImpl;
+import org.apache.cxf.binding.corba.wsdl.CorbaType;
 import org.apache.cxf.binding.corba.wsdl.MemberType;
 import org.apache.cxf.binding.corba.wsdl.Struct;
 import org.apache.cxf.service.model.ServiceInfo;
@@ -98,7 +98,7 @@ public class CorbaStructListener extends AbstractCorbaTypeListener {
                 currentTypeListener.getCorbaObject().setAnonymousType(true);
                 currentTypeListener.processStartElement(name);
             } else {
-                CorbaTypeImpl type = CorbaUtils.getCorbaType(member.getIdltype(), typeMap);
+                CorbaType type = CorbaUtils.getCorbaType(member.getIdltype(), typeMap);
                 boolean wrapped = true;
                 if (type instanceof Abstractsequence) {
                     wrapped = ((Abstractsequence)type).isWrapped();

http://git-wip-us.apache.org/repos/asf/cxf/blob/d214d105/rt/bindings/corba/src/main/java/org/apache/cxf/binding/corba/utils/CorbaUtils.java
----------------------------------------------------------------------
diff --git a/rt/bindings/corba/src/main/java/org/apache/cxf/binding/corba/utils/CorbaUtils.java b/rt/bindings/corba/src/main/java/org/apache/cxf/binding/corba/utils/CorbaUtils.java
index 94560c1..a51354e 100644
--- a/rt/bindings/corba/src/main/java/org/apache/cxf/binding/corba/utils/CorbaUtils.java
+++ b/rt/bindings/corba/src/main/java/org/apache/cxf/binding/corba/utils/CorbaUtils.java
@@ -41,7 +41,6 @@ import org.apache.cxf.binding.corba.wsdl.Array;
 import org.apache.cxf.binding.corba.wsdl.CaseType;
 import org.apache.cxf.binding.corba.wsdl.CorbaConstants;
 import org.apache.cxf.binding.corba.wsdl.CorbaType;
-import org.apache.cxf.binding.corba.wsdl.CorbaTypeImpl;
 import org.apache.cxf.binding.corba.wsdl.Enum;
 import org.apache.cxf.binding.corba.wsdl.Enumerator;
 import org.apache.cxf.binding.corba.wsdl.Exception;
@@ -418,7 +417,7 @@ public final class CorbaUtils {
         return PRIMITIVE_TYPECODES.values().contains(tc.kind());
     }
 
-    public static CorbaTypeImpl getCorbaType(QName idlType, CorbaTypeMap typeMap) {
+    public static CorbaType getCorbaType(QName idlType, CorbaTypeMap typeMap) {
         if (!isPrimitiveIdlType(idlType) && (typeMap != null)) {
             return typeMap.getType(idlType.getLocalPart());
         }
@@ -432,10 +431,10 @@ public final class CorbaUtils {
             TypeMappingType tmType = tmTypes.get(0);
             map = new CorbaTypeMap(tmType.getTargetNamespace());
 
-            List<CorbaTypeImpl> types = tmType.getStructOrExceptionOrUnion();
+            List<CorbaType> types = tmType.getStructOrExceptionOrUnion();
             LOG.fine("Found " + types.size() + " types defined in the typemap");
-            for (Iterator<CorbaTypeImpl> it = types.iterator(); it.hasNext();) {
-                CorbaTypeImpl corbaType = it.next();
+            for (Iterator<CorbaType> it = types.iterator(); it.hasNext();) {
+                CorbaType corbaType = it.next();
                 String name = corbaType.getName();
                 // There can be some instances where a prefix is added to the name by the tool
                 // (e.g. Object Reference Names).  Since the name is read as a string, this

http://git-wip-us.apache.org/repos/asf/cxf/blob/d214d105/rt/bindings/corba/src/main/java/org/apache/cxf/binding/corba/wsdl/CorbaTypeImpl.java
----------------------------------------------------------------------
diff --git a/rt/bindings/corba/src/main/java/org/apache/cxf/binding/corba/wsdl/CorbaTypeImpl.java b/rt/bindings/corba/src/main/java/org/apache/cxf/binding/corba/wsdl/CorbaTypeImpl.java
index db553b2..8daf9c6 100644
--- a/rt/bindings/corba/src/main/java/org/apache/cxf/binding/corba/wsdl/CorbaTypeImpl.java
+++ b/rt/bindings/corba/src/main/java/org/apache/cxf/binding/corba/wsdl/CorbaTypeImpl.java
@@ -19,48 +19,11 @@
 
 package org.apache.cxf.binding.corba.wsdl;
 
-import javax.xml.bind.annotation.XmlAccessType;
-import javax.xml.bind.annotation.XmlAccessorType;
-import javax.xml.bind.annotation.XmlAttribute;
-import javax.xml.bind.annotation.XmlType;
 import javax.xml.namespace.QName;
 
 
-/**
- * Anonymous IDL type. Has no repository ID.
- *  Used for intermediate types for multidimensional arrays 
- * and sequences of sequences.
- *             
- * 
- * <p>Java class for corbaType complex type.
- * 
- * <p>The following schema fragment specifies the expected i
- * content contained within this class.
- * 
- * <pre>
- * &lt;complexType name="corbaType">
- *   &lt;complexContent>
- *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- *       &lt;attribute name="name" use="required" i
- *       type="{http://www.w3.org/2001/XMLSchema}string" />
- *       &lt;attribute name="type" use="required" i
- *      type="{http://www.w3.org/2001/XMLSchema}QName" />
- *     &lt;/restriction>
- *   &lt;/complexContent>
- * &lt;/complexType>
- * </pre>
- * 
- * 
- */
-
-@XmlAccessorType(XmlAccessType.FIELD)
-@XmlType(name = "corbaTypeImpl")
-public class CorbaTypeImpl 
-      extends CorbaType {
-
-
-    @XmlAttribute(required = true)
-    protected QName name;
+public class CorbaTypeImpl {
+    protected QName qname;
     
     /**
      * Gets the value of the qname property.
@@ -71,7 +34,7 @@ public class CorbaTypeImpl
      *     
      */
     public QName getQName() {
-        return name;
+        return qname;
     }
 
     /**
@@ -83,11 +46,11 @@ public class CorbaTypeImpl
      *     
      */
     public void setQName(QName value) {
-        this.name = value;
+        this.qname = value;
     }
 
     public boolean isSetQName() {
-        return this.name != null;
+        return this.qname != null;
     }
     
 }

http://git-wip-us.apache.org/repos/asf/cxf/blob/d214d105/rt/bindings/corba/src/main/java/org/apache/cxf/binding/corba/wsdl/WSDLExtensionRegister.java
----------------------------------------------------------------------
diff --git a/rt/bindings/corba/src/main/java/org/apache/cxf/binding/corba/wsdl/WSDLExtensionRegister.java b/rt/bindings/corba/src/main/java/org/apache/cxf/binding/corba/wsdl/WSDLExtensionRegister.java
index 5f3d538..ef006d2 100644
--- a/rt/bindings/corba/src/main/java/org/apache/cxf/binding/corba/wsdl/WSDLExtensionRegister.java
+++ b/rt/bindings/corba/src/main/java/org/apache/cxf/binding/corba/wsdl/WSDLExtensionRegister.java
@@ -24,7 +24,6 @@ import javax.xml.bind.JAXBException;
 import org.apache.cxf.Bus;
 import org.apache.cxf.common.injection.NoJSR250Annotations;
 import org.apache.cxf.wsdl.JAXBExtensionHelper;
-import org.apache.cxf.wsdl.TExtensibilityElementImpl;
 import org.apache.cxf.wsdl.WSDLExtensionLoader;
 import org.apache.cxf.wsdl.WSDLManager;
 
@@ -67,7 +66,7 @@ public final class WSDLExtensionRegister implements WSDLExtensionLoader {
     }
     private void createExtensor(WSDLManager manager,
                                 Class<?> parentType,
-                                Class<? extends TExtensibilityElementImpl> elementType) {
+                                Class<?> elementType) {
         try {
             JAXBExtensionHelper.addExtensions(manager.getExtensionRegistry(),
                                               parentType, 
@@ -80,7 +79,7 @@ public final class WSDLExtensionRegister implements WSDLExtensionLoader {
 
     private void createCompatExtensor(WSDLManager manager,
                                       Class<?> parentType,
-                                      Class<? extends TExtensibilityElementImpl> elementType) {
+                                      Class<?> elementType) {
         try {
             JAXBExtensionHelper.addExtensions(manager.getExtensionRegistry(),
                                               parentType, 

http://git-wip-us.apache.org/repos/asf/cxf/blob/d214d105/rt/bindings/corba/src/main/resources/schemas/wsdl/corba-binding.xjb
----------------------------------------------------------------------
diff --git a/rt/bindings/corba/src/main/resources/schemas/wsdl/corba-binding.xjb b/rt/bindings/corba/src/main/resources/schemas/wsdl/corba-binding.xjb
index 7276431..931daf3 100644
--- a/rt/bindings/corba/src/main/resources/schemas/wsdl/corba-binding.xjb
+++ b/rt/bindings/corba/src/main/resources/schemas/wsdl/corba-binding.xjb
@@ -22,16 +22,8 @@
   xmlns:xs="http://www.w3.org/2001/XMLSchema" 
   xmlns:xjc="http://java.sun.com/xml/ns/jaxb/xjc" 
   jaxb:extensionBindingPrefixes="xjc">
-    <jaxb:bindings schemaLocation="http://schemas.xmlsoap.org/wsdl/2003-02-11.xsd" node="/xs:schema">
-        <jaxb:schemaBindings>
-            <jaxb:package name="org.apache.cxf.wsdl"/>
-        </jaxb:schemaBindings>
-        <jaxb:globalBindings generateIsSetMethod="true"/>
-    </jaxb:bindings>
-    <jaxb:bindings schemaLocation="http://schemas.xmlsoap.org/wsdl/2003-02-11.xsd" node="/xs:schema/xs:complexType[@name='tExtensibilityElement']">
-        <jaxb:class implClass="org.apache.cxf.wsdl.TExtensibilityElementImpl"/>
-    </jaxb:bindings>
     <jaxb:bindings schemaLocation="corba-binding.xsd" node="/xs:schema">
+        <jaxb:globalBindings generateIsSetMethod="true"/>
         <jaxb:schemaBindings>
             <jaxb:package name="org.apache.cxf.binding.corba.wsdl"/>
         </jaxb:schemaBindings>

http://git-wip-us.apache.org/repos/asf/cxf/blob/d214d105/rt/bindings/corba/src/main/resources/schemas/wsdl/corba-binding.xsd
----------------------------------------------------------------------
diff --git a/rt/bindings/corba/src/main/resources/schemas/wsdl/corba-binding.xsd b/rt/bindings/corba/src/main/resources/schemas/wsdl/corba-binding.xsd
index b29598a..668dc51 100644
--- a/rt/bindings/corba/src/main/resources/schemas/wsdl/corba-binding.xsd
+++ b/rt/bindings/corba/src/main/resources/schemas/wsdl/corba-binding.xsd
@@ -20,26 +20,28 @@
 -->
 
 <xs:schema targetNamespace="http://cxf.apache.org/bindings/corba" 
-    xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" 
     xmlns:corba="http://cxf.apache.org/bindings/corba" 
     xmlns:xs="http://www.w3.org/2001/XMLSchema" 
     xmlns:jaxb="http://java.sun.com/xml/ns/jaxb"
     jaxb:version="2.0"
     elementFormDefault="qualified" 
     attributeFormDefault="unqualified"> 
-    
-    <xs:import namespace="http://schemas.xmlsoap.org/wsdl/"
-        schemaLocation="http://schemas.xmlsoap.org/wsdl/2003-02-11.xsd"/>
-  
+      
+        <xs:complexType name="baseCorbaType">
+                <xs:annotation>
+        			<xs:appinfo>
+            			<jaxb:class ref="org.apache.cxf.binding.corba.wsdl.CorbaTypeImpl"/>                                
+        			</xs:appinfo>      
+                </xs:annotation>
+	    </xs:complexType>  
         <xs:complexType name="corbaType">
                 <xs:annotation>
                         <xs:documentation>Anonymous IDL type. Has no repository ID.
             Used for intermediate types for multidimensional arrays and sequences of sequences.
             </xs:documentation>            
-        <xs:appinfo>
-            <jaxb:class implClass="org.apache.cxf.binding.corba.wsdl.CorbaTypeImpl"/>                                
-        </xs:appinfo>      
                 </xs:annotation>
+                <xs:complexContent>
+                        <xs:extension base="corba:baseCorbaType">
                 <xs:attribute name="name" type="xs:string" use="required">
                   <xs:annotation>
                     <xs:documentation>Specifies a name for the mapped type. Typically this name is derived from the XML Schema type being mapped.</xs:documentation>
@@ -51,6 +53,8 @@
                   </xs:annotation>
                 </xs:attribute>
                 <xs:attribute name="qualified" type="xs:boolean" />
+                </xs:extension>
+                </xs:complexContent>
         </xs:complexType>
         <xs:complexType name="namedType">
                 <xs:annotation>
@@ -258,7 +262,7 @@
                 </xs:annotation>
                 <xs:complexContent>
                         <xs:extension base="corba:corbaType">
-                                <xs:attribute name="bound" type="corba:ulong"/>
+                                <xs:attribute name="bound" type="corba:ulong" use="required"/>
                         </xs:extension>
                 </xs:complexContent>
         </xs:complexType>
@@ -268,7 +272,7 @@
                 </xs:annotation>
                 <xs:complexContent>
                         <xs:extension base="corba:corbaType">
-                                <xs:attribute name="bound" type="corba:ulong"/>
+                                <xs:attribute name="bound" type="corba:ulong" use="required"/>
                         </xs:extension>
                 </xs:complexContent>
         </xs:complexType>
@@ -301,41 +305,33 @@
                 <xs:annotation>
                         <xs:documentation>CXF CORBA WSDL binding type map.</xs:documentation>
                 </xs:annotation>
-                <xs:complexContent>
-                        <xs:extension base="wsdl:tExtensibilityElement">
-                                <xs:sequence>
-                                        <xs:choice maxOccurs="unbounded">
-                                                <xs:element name="struct" type="corba:struct"/>
-                                                <xs:element name="exception" type="corba:exception"/>
-                                                <xs:element name="union" type="corba:union"/>
-                                                <xs:element name="alias" type="corba:alias"/>
-                                                <xs:element name="sequence" type="corba:sequence"/>
-                                                <xs:element name="array" type="corba:array"/>
-                                                <xs:element name="enum" type="corba:enum"/>
-                                                <xs:element name="fixed" type="corba:fixed"/>
-                                                <xs:element name="anonsequence" type="corba:anonsequence"/>
-                                                <xs:element name="anonarray" type="corba:anonarray"/>
-                                                <xs:element name="anonstring" type="corba:anonstring"/>
-                                                <xs:element name="anonwstring" type="corba:anonwstring"/>
-                                                <xs:element name="anonfixed" type="corba:anonfixed"/>
-                                                <xs:element name="const" type="corba:const"/>
-                                                <xs:element name="object" type="corba:object"/>
-                                        </xs:choice>
-                                </xs:sequence>
-                                <xs:attribute name="targetNamespace" type="xs:anyURI" use="required"/>
-                        </xs:extension>
-                </xs:complexContent>
+                <xs:sequence>
+                        <xs:choice maxOccurs="unbounded">
+                                <xs:element name="struct" type="corba:struct"/>
+                                <xs:element name="exception" type="corba:exception"/>
+                                <xs:element name="union" type="corba:union"/>
+                                <xs:element name="alias" type="corba:alias"/>
+                                <xs:element name="sequence" type="corba:sequence"/>
+                                <xs:element name="array" type="corba:array"/>
+                                <xs:element name="enum" type="corba:enum"/>
+                                <xs:element name="fixed" type="corba:fixed"/>
+                                <xs:element name="anonsequence" type="corba:anonsequence"/>
+                                <xs:element name="anonarray" type="corba:anonarray"/>
+                                <xs:element name="anonstring" type="corba:anonstring"/>
+                                <xs:element name="anonwstring" type="corba:anonwstring"/>
+                                <xs:element name="anonfixed" type="corba:anonfixed"/>
+                                <xs:element name="const" type="corba:const"/>
+                                <xs:element name="object" type="corba:object"/>
+                        </xs:choice>
+                </xs:sequence>
+                <xs:attribute name="targetNamespace" type="xs:anyURI" use="required"/>
         </xs:complexType>
         <!-- Begin CORBA Binding Definitions -->
         <xs:complexType name="addressType">
                 <xs:annotation>
                         <xs:documentation>CXF CORBA Address Type</xs:documentation>
                 </xs:annotation>
-                <xs:complexContent>
-                        <xs:extension base="wsdl:tExtensibilityElement">
-                                <xs:attribute name="location" type="xs:string" use="required"/>
-                        </xs:extension>
-                </xs:complexContent>
+                <xs:attribute name="location" type="xs:string" use="required"/>
         </xs:complexType>
         <xs:element name="address" type="corba:addressType"/>
         <xs:complexType name="policyType">
@@ -344,38 +340,34 @@
                 Artix IIOP tunnel policy specification.
             </xs:documentation>
                 </xs:annotation>
-                <xs:complexContent>
-                        <xs:extension base="wsdl:tExtensibilityElement">
-                                <xs:attribute name="poaname" type="xs:string" use="optional">
-                                        <xs:annotation>
-                                                <xs:documentation>
-                                                        Attribute used to set a poaname, otherwise it will
-                                                        default to the service name that this port runs under.
+                <xs:attribute name="poaname" type="xs:string" use="optional">
+                        <xs:annotation>
+                                <xs:documentation>
+                                        Attribute used to set a poaname, otherwise it will
+                                        default to the service name that this port runs under.
 
-                                                        poaname is used for setting certain policies, such
-                                                        as direct persistence and well-known port numbers in
-                                                        the orb config file.
-                                                </xs:documentation>
-                                        </xs:annotation>
-                                </xs:attribute>
-                                <xs:attribute name="serviceid" type="xs:string" use="optional">
-                                        <xs:annotation>
-                                                <xs:documentation>
-                                                        Attribute used to set a serviceid
-                                                        see CORBA documentation for more details.
-                                                </xs:documentation>
-                                        </xs:annotation>
-                                </xs:attribute>
-                                <xs:attribute name="persistent" type="xs:boolean" use="optional" default="false">
-                                        <xs:annotation>
-                                                <xs:documentation>
-                                                        Attribute select whether to use a persistent poa.
-                                                        see CORBA documentation for more details.
-                                                </xs:documentation>
-                                        </xs:annotation>
-                                </xs:attribute>
-                        </xs:extension>
-                </xs:complexContent>
+                                        poaname is used for setting certain policies, such
+                                        as direct persistence and well-known port numbers in
+                                        the orb config file.
+                                </xs:documentation>
+                        </xs:annotation>
+                </xs:attribute>
+                <xs:attribute name="serviceid" type="xs:string" use="optional">
+                        <xs:annotation>
+                                <xs:documentation>
+                                        Attribute used to set a serviceid
+                                        see CORBA documentation for more details.
+                                </xs:documentation>
+                        </xs:annotation>
+                </xs:attribute>
+                <xs:attribute name="persistent" type="xs:boolean" use="optional" default="false">
+                        <xs:annotation>
+                                <xs:documentation>
+                                        Attribute select whether to use a persistent poa.
+                                        see CORBA documentation for more details.
+                                </xs:documentation>
+                        </xs:annotation>
+                </xs:attribute>
         </xs:complexType>
         <xs:element name="policy" type="corba:policyType"/>
 
@@ -386,12 +378,8 @@
                 <xs:annotation>
                         <xs:documentation>CXF CORBA Binding Type</xs:documentation>
                 </xs:annotation>
-                <xs:complexContent>
-                        <xs:extension base="wsdl:tExtensibilityElement">
-                                <xs:attribute name="repositoryID" type="xs:string" use="required"/>
+                <xs:attribute name="repositoryID" type="xs:string" use="required"/>
                 <xs:attribute name="bases" type="corba:basesType" use="optional"/>
-                        </xs:extension>
-                </xs:complexContent>
         </xs:complexType>
         <xs:element name="binding" type="corba:bindingType">
                 <xs:annotation>
@@ -402,16 +390,12 @@
                 <xs:annotation>
                         <xs:documentation>CORBA Operation Type</xs:documentation>
                 </xs:annotation>
-                <xs:complexContent>
-                        <xs:extension base="wsdl:tExtensibilityElement">
-                                <xs:sequence>
-                                        <xs:element name="param" type="corba:paramType" minOccurs="0" maxOccurs="unbounded"/>
-                                        <xs:element name="return" type="corba:argType" minOccurs="0"/>
-                                        <xs:element name="raises" type="corba:raisesType" minOccurs="0" maxOccurs="unbounded"/>
-                                </xs:sequence>
-                                <xs:attribute name="name" type="xs:string" use="required"/>
-                        </xs:extension>
-                </xs:complexContent>
+                <xs:sequence>
+                        <xs:element name="param" type="corba:paramType" minOccurs="0" maxOccurs="unbounded"/>
+                        <xs:element name="return" type="corba:argType" minOccurs="0"/>
+                        <xs:element name="raises" type="corba:raisesType" minOccurs="0" maxOccurs="unbounded"/>
+                </xs:sequence>
+                <xs:attribute name="name" type="xs:string" use="required"/>
         </xs:complexType>
         <xs:element name="operation" type="corba:operationType">
                 <xs:annotation>

http://git-wip-us.apache.org/repos/asf/cxf/blob/d214d105/rt/bindings/corba/src/test/java/org/apache/cxf/binding/corba/CorbaTypeMapTest.java
----------------------------------------------------------------------
diff --git a/rt/bindings/corba/src/test/java/org/apache/cxf/binding/corba/CorbaTypeMapTest.java b/rt/bindings/corba/src/test/java/org/apache/cxf/binding/corba/CorbaTypeMapTest.java
index 3bd4ecd..766f42e 100644
--- a/rt/bindings/corba/src/test/java/org/apache/cxf/binding/corba/CorbaTypeMapTest.java
+++ b/rt/bindings/corba/src/test/java/org/apache/cxf/binding/corba/CorbaTypeMapTest.java
@@ -20,7 +20,7 @@ package org.apache.cxf.binding.corba;
 
 import javax.xml.namespace.QName;
 
-import org.apache.cxf.binding.corba.wsdl.CorbaTypeImpl;
+import org.apache.cxf.binding.corba.wsdl.CorbaType;
 import org.junit.Assert;
 import org.junit.Test;
 
@@ -33,20 +33,16 @@ public class CorbaTypeMapTest extends Assert {
         String targetNamespace = typeMap.getTargetNamespace();
         assertEquals(targetNamespace, "http://yoko.apache.org/ComplexTypes");
         
-        QName qname = new QName("http://yoko.apache.org/ComplexTypes", 
-                                "Test.MultiPart.Colour", "");
         QName type = new QName("http://yoko.apache.org/ComplexTypes",
                                "xsd1:Test.MultiPart.Colour", "");
                 
-        CorbaTypeImpl corbaTypeImpl = new CorbaTypeImpl();
-        corbaTypeImpl.setQName(qname);
+        CorbaType corbaTypeImpl = new CorbaType();
         corbaTypeImpl.setType(type);
         corbaTypeImpl.setName("Test.MultiPart.Colour");
         typeMap.addType("Test.MultiPart.Colour", corbaTypeImpl);
         
-        CorbaTypeImpl corbatype = typeMap.getType("Test.MultiPart.Colour");
+        CorbaType corbatype = typeMap.getType("Test.MultiPart.Colour");
         assertEquals(corbatype.getName(), "Test.MultiPart.Colour");
-        assertEquals(corbatype.getQName().getNamespaceURI(), "http://yoko.apache.org/ComplexTypes");
         assertEquals(corbatype.getType().getLocalPart(), "xsd1:Test.MultiPart.Colour");
     }
     

http://git-wip-us.apache.org/repos/asf/cxf/blob/d214d105/tools/corba/src/main/java/org/apache/cxf/tools/corba/common/CorbaPrimitiveMap.java
----------------------------------------------------------------------
diff --git a/tools/corba/src/main/java/org/apache/cxf/tools/corba/common/CorbaPrimitiveMap.java b/tools/corba/src/main/java/org/apache/cxf/tools/corba/common/CorbaPrimitiveMap.java
index 8d41eef..916fd6d 100644
--- a/tools/corba/src/main/java/org/apache/cxf/tools/corba/common/CorbaPrimitiveMap.java
+++ b/tools/corba/src/main/java/org/apache/cxf/tools/corba/common/CorbaPrimitiveMap.java
@@ -24,7 +24,7 @@ import java.util.HashMap;
 import javax.xml.namespace.QName;
 
 import org.apache.cxf.binding.corba.wsdl.CorbaConstants;
-import org.apache.cxf.binding.corba.wsdl.CorbaTypeImpl;
+import org.apache.cxf.binding.corba.wsdl.CorbaType;
 
 public class CorbaPrimitiveMap extends PrimitiveMapBase {
     
@@ -75,11 +75,11 @@ public class CorbaPrimitiveMap extends PrimitiveMapBase {
     }
     
     public Object get(QName key) {
-        CorbaTypeImpl corbaTypeImpl = null;
+        CorbaType corbaTypeImpl = null;
 
         QName type = corbaPrimitiveMap.get(key.getLocalPart());
         if (type != null) {
-            corbaTypeImpl = new CorbaTypeImpl();
+            corbaTypeImpl = new CorbaType();
             corbaTypeImpl.setQName(type);
             corbaTypeImpl.setType(key);
             corbaTypeImpl.setName(key.getLocalPart());

http://git-wip-us.apache.org/repos/asf/cxf/blob/d214d105/tools/corba/src/main/java/org/apache/cxf/tools/corba/processors/idl/ArrayVisitor.java
----------------------------------------------------------------------
diff --git a/tools/corba/src/main/java/org/apache/cxf/tools/corba/processors/idl/ArrayVisitor.java b/tools/corba/src/main/java/org/apache/cxf/tools/corba/processors/idl/ArrayVisitor.java
index b888655..cb2123f 100644
--- a/tools/corba/src/main/java/org/apache/cxf/tools/corba/processors/idl/ArrayVisitor.java
+++ b/tools/corba/src/main/java/org/apache/cxf/tools/corba/processors/idl/ArrayVisitor.java
@@ -27,7 +27,7 @@ import antlr.collections.AST;
 
 import org.apache.cxf.binding.corba.wsdl.Anonarray;
 import org.apache.cxf.binding.corba.wsdl.Array;
-import org.apache.cxf.binding.corba.wsdl.CorbaTypeImpl;
+import org.apache.cxf.binding.corba.wsdl.CorbaType;
 import org.apache.cxf.tools.corba.common.ReferenceConstants;
 import org.apache.ws.commons.schema.XmlSchema;
 import org.apache.ws.commons.schema.XmlSchemaComplexType;
@@ -95,7 +95,7 @@ public class ArrayVisitor extends VisitorBase {
         // process first array
         Long size = new Long(firstSizeNode.toString());
         XmlSchemaType stype = null;
-        CorbaTypeImpl ctype = null;
+        CorbaType ctype = null;
         if (identifierNode != null) {
             Scope scopedName = getScope();
             if (result.getSchemaType() != null) {
@@ -144,7 +144,7 @@ public class ArrayVisitor extends VisitorBase {
         setCorbaType(ctype);
     }
 
-    private Types doAnonarray(AST node, XmlSchemaType stype, CorbaTypeImpl ctype) {
+    private Types doAnonarray(AST node, XmlSchemaType stype, CorbaType ctype) {
         Types result = new Types();
 
         if (node != null) {
@@ -218,7 +218,7 @@ public class ArrayVisitor extends VisitorBase {
     }
 
     private Array generateCorbaArray(Scope scopedName, Long size,
-                                     CorbaTypeImpl type, XmlSchemaType stype, Scope fQName) {
+                                     CorbaType type, XmlSchemaType stype, Scope fQName) {
         Array array = new Array();
         array.setQName(new QName(typeMap.getTargetNamespace(), scopedName.toString()));
         array.setBound(size);
@@ -237,7 +237,7 @@ public class ArrayVisitor extends VisitorBase {
     }
 
     private Anonarray generateCorbaAnonarray(String name, Long size,
-                                             CorbaTypeImpl type, XmlSchemaType stype, Scope fQName) {
+                                             CorbaType type, XmlSchemaType stype, Scope fQName) {
         Anonarray anonarray = new Anonarray();
         anonarray.setQName(new QName(typeMap.getTargetNamespace(), name));
         anonarray.setBound(size);
@@ -256,7 +256,7 @@ public class ArrayVisitor extends VisitorBase {
 
     class Types {
         private XmlSchemaType schemaType;
-        private CorbaTypeImpl corbaType;
+        private CorbaType corbaType;
         private Scope fullyQualifiedName;
 
         public Types() {
@@ -264,7 +264,7 @@ public class ArrayVisitor extends VisitorBase {
             corbaType = null;
         }
 
-        public Types(XmlSchemaType stype, CorbaTypeImpl ctype,
+        public Types(XmlSchemaType stype, CorbaType ctype,
                      Scope fqName) {
             schemaType = stype;
             corbaType = ctype;
@@ -275,7 +275,7 @@ public class ArrayVisitor extends VisitorBase {
             schemaType = stype;
         }
 
-        public void setCorbaType(CorbaTypeImpl ctype) {
+        public void setCorbaType(CorbaType ctype) {
             corbaType = ctype;
         }
 
@@ -283,7 +283,7 @@ public class ArrayVisitor extends VisitorBase {
             return schemaType;
         }
 
-        public CorbaTypeImpl getCorbaType() {
+        public CorbaType getCorbaType() {
             return corbaType;
         }
 

http://git-wip-us.apache.org/repos/asf/cxf/blob/d214d105/tools/corba/src/main/java/org/apache/cxf/tools/corba/processors/idl/AttributeVisitor.java
----------------------------------------------------------------------
diff --git a/tools/corba/src/main/java/org/apache/cxf/tools/corba/processors/idl/AttributeVisitor.java b/tools/corba/src/main/java/org/apache/cxf/tools/corba/processors/idl/AttributeVisitor.java
index 1beed04..d53ed6d 100644
--- a/tools/corba/src/main/java/org/apache/cxf/tools/corba/processors/idl/AttributeVisitor.java
+++ b/tools/corba/src/main/java/org/apache/cxf/tools/corba/processors/idl/AttributeVisitor.java
@@ -21,6 +21,7 @@ package org.apache.cxf.tools.corba.processors.idl;
 
 import java.util.HashMap;
 import java.util.Map;
+
 import javax.wsdl.Binding;
 import javax.wsdl.BindingInput;
 import javax.wsdl.BindingOperation;
@@ -33,6 +34,7 @@ import javax.wsdl.Output;
 import javax.wsdl.Part;
 import javax.wsdl.PortType;
 import javax.wsdl.WSDLException;
+import javax.wsdl.extensions.ExtensibilityElement;
 import javax.wsdl.extensions.ExtensionRegistry;
 import javax.xml.namespace.QName;
 
@@ -388,7 +390,7 @@ public class AttributeVisitor extends VisitorBase {
         bindingOutput.setName(op.getOutput().getName());
 
         BindingOperation bindingOperation = definition.createBindingOperation();
-        bindingOperation.addExtensibilityElement(corbaOp);
+        bindingOperation.addExtensibilityElement((ExtensibilityElement)corbaOp);
         bindingOperation.setOperation(op);
         bindingOperation.setName(op.getName());
 

http://git-wip-us.apache.org/repos/asf/cxf/blob/d214d105/tools/corba/src/main/java/org/apache/cxf/tools/corba/processors/idl/DeclaratorVisitor.java
----------------------------------------------------------------------
diff --git a/tools/corba/src/main/java/org/apache/cxf/tools/corba/processors/idl/DeclaratorVisitor.java b/tools/corba/src/main/java/org/apache/cxf/tools/corba/processors/idl/DeclaratorVisitor.java
index 117ecdf..f8d623f 100644
--- a/tools/corba/src/main/java/org/apache/cxf/tools/corba/processors/idl/DeclaratorVisitor.java
+++ b/tools/corba/src/main/java/org/apache/cxf/tools/corba/processors/idl/DeclaratorVisitor.java
@@ -25,7 +25,7 @@ import javax.xml.namespace.QName;
 import antlr.collections.AST;
 
 import org.apache.cxf.binding.corba.wsdl.Alias;
-import org.apache.cxf.binding.corba.wsdl.CorbaTypeImpl;
+import org.apache.cxf.binding.corba.wsdl.CorbaType;
 import org.apache.cxf.binding.corba.wsdl.Fixed;
 import org.apache.cxf.binding.corba.wsdl.Sequence;
 import org.apache.ws.commons.schema.XmlSchema;
@@ -45,7 +45,7 @@ public class DeclaratorVisitor extends VisitorBase {
                              XmlSchema schemaRef,
                              WSDLASTVisitor wsdlASTVisitor,
                              XmlSchemaType schemaTypeRef,
-                             CorbaTypeImpl corbaTypeRef,
+                             CorbaType corbaTypeRef,
                              Scope fQName) {
         super(scope, defn, schemaRef, wsdlASTVisitor);
         setSchemaType(schemaTypeRef);
@@ -95,10 +95,10 @@ public class DeclaratorVisitor extends VisitorBase {
     }
 
     private void visitNewTypes(Scope newScope) {
-        CorbaTypeImpl nextCorbaType = null;
+        CorbaType nextCorbaType = null;
         XmlSchemaType nextSchemaType = null;
 
-        CorbaTypeImpl oldCorbaType = getCorbaType();
+        CorbaType oldCorbaType = getCorbaType();
 
         QName newQname = new QName(getCorbaType().getQName().getNamespaceURI(), newScope.toString());
 

http://git-wip-us.apache.org/repos/asf/cxf/blob/d214d105/tools/corba/src/main/java/org/apache/cxf/tools/corba/processors/idl/ExceptionVisitor.java
----------------------------------------------------------------------
diff --git a/tools/corba/src/main/java/org/apache/cxf/tools/corba/processors/idl/ExceptionVisitor.java b/tools/corba/src/main/java/org/apache/cxf/tools/corba/processors/idl/ExceptionVisitor.java
index 24f5643..74c8b47 100644
--- a/tools/corba/src/main/java/org/apache/cxf/tools/corba/processors/idl/ExceptionVisitor.java
+++ b/tools/corba/src/main/java/org/apache/cxf/tools/corba/processors/idl/ExceptionVisitor.java
@@ -26,7 +26,7 @@ import javax.xml.namespace.QName;
 
 import antlr.collections.AST;
 
-import org.apache.cxf.binding.corba.wsdl.CorbaTypeImpl;
+import org.apache.cxf.binding.corba.wsdl.CorbaType;
 import org.apache.cxf.binding.corba.wsdl.MemberType;
 import org.apache.cxf.tools.corba.common.ReferenceConstants;
 import org.apache.ws.commons.schema.XmlSchema;
@@ -108,7 +108,7 @@ public class ExceptionVisitor extends VisitorBase {
                                                     null);
             visitor.visit(memberTypeNode);
             XmlSchemaType stype = visitor.getSchemaType();
-            CorbaTypeImpl ctype = visitor.getCorbaType();
+            CorbaType ctype = visitor.getCorbaType();
             Scope fullyQualifiedName = visitor.getFullyQualifiedName();
 
             // needed for anonymous arrays in exceptions
@@ -188,7 +188,7 @@ public class ExceptionVisitor extends VisitorBase {
         return member;
     }
 
-    private MemberType createMemberType(AST memberNode, CorbaTypeImpl ctype,
+    private MemberType createMemberType(AST memberNode, CorbaType ctype,
                                         Scope fqName) {
         // corba:member
         MemberType memberType = new MemberType();

http://git-wip-us.apache.org/repos/asf/cxf/blob/d214d105/tools/corba/src/main/java/org/apache/cxf/tools/corba/processors/idl/FixedPtConstVisitor.java
----------------------------------------------------------------------
diff --git a/tools/corba/src/main/java/org/apache/cxf/tools/corba/processors/idl/FixedPtConstVisitor.java b/tools/corba/src/main/java/org/apache/cxf/tools/corba/processors/idl/FixedPtConstVisitor.java
index 10f7e73..f8904c2 100644
--- a/tools/corba/src/main/java/org/apache/cxf/tools/corba/processors/idl/FixedPtConstVisitor.java
+++ b/tools/corba/src/main/java/org/apache/cxf/tools/corba/processors/idl/FixedPtConstVisitor.java
@@ -25,7 +25,7 @@ import javax.xml.namespace.QName;
 import antlr.collections.AST;
 
 import org.apache.cxf.binding.corba.wsdl.CorbaConstants;
-import org.apache.cxf.binding.corba.wsdl.CorbaTypeImpl;
+import org.apache.cxf.binding.corba.wsdl.CorbaType;
 import org.apache.ws.commons.schema.XmlSchema;
 import org.apache.ws.commons.schema.XmlSchemaCollection;
 import org.apache.ws.commons.schema.XmlSchemaType;
@@ -34,7 +34,7 @@ import org.apache.ws.commons.schema.constants.Constants;
 public class FixedPtConstVisitor implements Visitor {
         
     private XmlSchemaType schemaType;
-    private CorbaTypeImpl corbaType;
+    private CorbaType corbaType;
     private Scope scope;
     private XmlSchemaCollection schemas;
     
@@ -59,7 +59,7 @@ public class FixedPtConstVisitor implements Visitor {
         //      <fixed_pt_const_type> ::= "fixed"
                 
         XmlSchemaType stype = null; 
-        CorbaTypeImpl ctype = null;
+        CorbaType ctype = null;
         
         QName corbaTypeQName =  CorbaConstants.NE_CORBA_FIXED; 
         
@@ -68,7 +68,7 @@ public class FixedPtConstVisitor implements Visitor {
             if (schemaTypeQName != null) {        
                 stype = schemas.getTypeByQName(schemaTypeQName);
                 if (stype != null) {
-                    ctype = new CorbaTypeImpl();
+                    ctype = new CorbaType();
                     ctype.setQName(corbaTypeQName);
                     ctype.setType(stype.getQName());
                     ctype.setName(stype.getQName().getLocalPart());
@@ -84,7 +84,7 @@ public class FixedPtConstVisitor implements Visitor {
         return schemaType;
     }
     
-    public CorbaTypeImpl getCorbaType() {
+    public CorbaType getCorbaType() {
         return corbaType;
     }
     

http://git-wip-us.apache.org/repos/asf/cxf/blob/d214d105/tools/corba/src/main/java/org/apache/cxf/tools/corba/processors/idl/IDLToWSDLProcessor.java
----------------------------------------------------------------------
diff --git a/tools/corba/src/main/java/org/apache/cxf/tools/corba/processors/idl/IDLToWSDLProcessor.java b/tools/corba/src/main/java/org/apache/cxf/tools/corba/processors/idl/IDLToWSDLProcessor.java
index 3cbace6..f56b167 100644
--- a/tools/corba/src/main/java/org/apache/cxf/tools/corba/processors/idl/IDLToWSDLProcessor.java
+++ b/tools/corba/src/main/java/org/apache/cxf/tools/corba/processors/idl/IDLToWSDLProcessor.java
@@ -40,6 +40,7 @@ import javax.wsdl.Definition;
 import javax.wsdl.Port;
 import javax.wsdl.Service;
 import javax.wsdl.Types;
+import javax.wsdl.extensions.ExtensibilityElement;
 import javax.wsdl.extensions.schema.Schema;
 import javax.wsdl.extensions.schema.SchemaImport;
 import javax.xml.namespace.QName;
@@ -48,7 +49,7 @@ import antlr.collections.AST;
 
 import org.apache.cxf.binding.corba.wsdl.AddressType;
 import org.apache.cxf.binding.corba.wsdl.CorbaConstants;
-import org.apache.cxf.binding.corba.wsdl.CorbaTypeImpl;
+import org.apache.cxf.binding.corba.wsdl.CorbaType;
 import org.apache.cxf.binding.corba.wsdl.TypeMappingType;
 import org.apache.cxf.helpers.CastUtils;
 import org.apache.cxf.tools.common.ToolConstants;
@@ -521,17 +522,17 @@ public class IDLToWSDLProcessor extends IDLProcessor {
                 addr = "IOR:";
             }
             address.setLocation(addr);
-            port.addExtensibilityElement(address);
+            port.addExtensibilityElement((ExtensibilityElement)address);
             service.addPort(port);
             port.setBinding(bindings[i]);
         }
     }
 
     public void cleanUpTypeMap(TypeMappingType typeMap) {
-        List<CorbaTypeImpl> types = typeMap.getStructOrExceptionOrUnion();
+        List<CorbaType> types = typeMap.getStructOrExceptionOrUnion();
         if (types != null) {
             for (int i = 0; i < types.size(); i++) {
-                CorbaTypeImpl type = types.get(i);
+                CorbaType type = types.get(i);
                 if (type.getQName() != null) {
                     type.setName(type.getQName().getLocalPart());
                     type.setQName(null);
@@ -541,7 +542,7 @@ public class IDLToWSDLProcessor extends IDLProcessor {
     }
     
     public void addTypeMapSchemaImports(Definition def, WSDLASTVisitor visitor) {
-        List<CorbaTypeImpl> types = visitor.getTypeMap().getStructOrExceptionOrUnion();
+        List<CorbaType> types = visitor.getTypeMap().getStructOrExceptionOrUnion();
         ModuleToNSMapper mapper = visitor.getModuleToNSMapper();
         WSDLSchemaManager manager = visitor.getManager();
         Collection<String> namespaces = CastUtils.cast(def.getNamespaces().values());
@@ -549,7 +550,7 @@ public class IDLToWSDLProcessor extends IDLProcessor {
         
         if (types != null) {
             for (int i = 0; i < types.size(); i++) {
-                CorbaTypeImpl type = types.get(i);
+                CorbaType type = types.get(i);
                 QName schemaType = type.getType();
                 if (schemaType != null) {
                     String typeNamespace = schemaType.getNamespaceURI();

http://git-wip-us.apache.org/repos/asf/cxf/blob/d214d105/tools/corba/src/main/java/org/apache/cxf/tools/corba/processors/idl/ObjectReferenceVisitor.java
----------------------------------------------------------------------
diff --git a/tools/corba/src/main/java/org/apache/cxf/tools/corba/processors/idl/ObjectReferenceVisitor.java b/tools/corba/src/main/java/org/apache/cxf/tools/corba/processors/idl/ObjectReferenceVisitor.java
index f163248..5f2bcf7 100644
--- a/tools/corba/src/main/java/org/apache/cxf/tools/corba/processors/idl/ObjectReferenceVisitor.java
+++ b/tools/corba/src/main/java/org/apache/cxf/tools/corba/processors/idl/ObjectReferenceVisitor.java
@@ -36,7 +36,7 @@ import org.w3c.dom.Element;
 import antlr.collections.AST;
 
 import org.apache.cxf.binding.corba.wsdl.BindingType;
-import org.apache.cxf.binding.corba.wsdl.CorbaTypeImpl;
+import org.apache.cxf.binding.corba.wsdl.CorbaType;
 import org.apache.cxf.binding.corba.wsdl.Object;
 import org.apache.cxf.helpers.CastUtils;
 import org.apache.cxf.tools.corba.common.ReferenceConstants;
@@ -292,9 +292,9 @@ public class ObjectReferenceVisitor extends VisitorBase {
         // Get the list of all corba types already defined and look for the provided
         // QName.  If we have defined this type, we don't need to add it to the typemap
         // again.
-        List<CorbaTypeImpl> allTypes = typeMap.getStructOrExceptionOrUnion();
-        for (Iterator<CorbaTypeImpl> iter = allTypes.iterator(); iter.hasNext();) {
-            CorbaTypeImpl impl = iter.next();
+        List<CorbaType> allTypes = typeMap.getStructOrExceptionOrUnion();
+        for (Iterator<CorbaType> iter = allTypes.iterator(); iter.hasNext();) {
+            CorbaType impl = iter.next();
             if (impl.getQName().equals(objectReferenceName))  {
                 return true;
             }

http://git-wip-us.apache.org/repos/asf/cxf/blob/d214d105/tools/corba/src/main/java/org/apache/cxf/tools/corba/processors/idl/OperationVisitor.java
----------------------------------------------------------------------
diff --git a/tools/corba/src/main/java/org/apache/cxf/tools/corba/processors/idl/OperationVisitor.java b/tools/corba/src/main/java/org/apache/cxf/tools/corba/processors/idl/OperationVisitor.java
index b64ef26..5d5343f 100644
--- a/tools/corba/src/main/java/org/apache/cxf/tools/corba/processors/idl/OperationVisitor.java
+++ b/tools/corba/src/main/java/org/apache/cxf/tools/corba/processors/idl/OperationVisitor.java
@@ -33,6 +33,7 @@ import javax.wsdl.Output;
 import javax.wsdl.Part;
 import javax.wsdl.PortType;
 import javax.wsdl.WSDLException;
+import javax.wsdl.extensions.ExtensibilityElement;
 import javax.wsdl.extensions.ExtensionRegistry;
 import javax.xml.namespace.QName;
 
@@ -233,7 +234,7 @@ public class OperationVisitor extends VisitorBase {
             throw new RuntimeException(ex);
         }
         corbaOperation.setName(corbaOpName);
-        bindingOperation.addExtensibilityElement(corbaOperation);
+        bindingOperation.addExtensibilityElement((ExtensibilityElement)corbaOperation);
         bindingOperation.setOperation(op);
         bindingOperation.setName(op.getName());
         binding.addBindingOperation(bindingOperation);

http://git-wip-us.apache.org/repos/asf/cxf/blob/d214d105/tools/corba/src/main/java/org/apache/cxf/tools/corba/processors/idl/ParamDclVisitor.java
----------------------------------------------------------------------
diff --git a/tools/corba/src/main/java/org/apache/cxf/tools/corba/processors/idl/ParamDclVisitor.java b/tools/corba/src/main/java/org/apache/cxf/tools/corba/processors/idl/ParamDclVisitor.java
index 01186a1..3d5736a 100644
--- a/tools/corba/src/main/java/org/apache/cxf/tools/corba/processors/idl/ParamDclVisitor.java
+++ b/tools/corba/src/main/java/org/apache/cxf/tools/corba/processors/idl/ParamDclVisitor.java
@@ -23,7 +23,7 @@ import javax.wsdl.Definition;
 
 import antlr.collections.AST;
 
-import org.apache.cxf.binding.corba.wsdl.CorbaTypeImpl;
+import org.apache.cxf.binding.corba.wsdl.CorbaType;
 import org.apache.cxf.binding.corba.wsdl.ModeType;
 import org.apache.cxf.binding.corba.wsdl.OperationType;
 import org.apache.cxf.binding.corba.wsdl.ParamType;
@@ -77,7 +77,7 @@ public class ParamDclVisitor extends VisitorBase {
                                                                 wsdlVisitor);
         visitor.visit(typeNode);
         XmlSchemaType schemaType = visitor.getSchemaType();
-        CorbaTypeImpl corbaType = visitor.getCorbaType();
+        CorbaType corbaType = visitor.getCorbaType();
         Scope fullyQualifiedName = visitor.getFullyQualifiedName();
 
         switch (node.getType()) {
@@ -135,7 +135,7 @@ public class ParamDclVisitor extends VisitorBase {
         return element;
     }
 
-    private void addCorbaParam(CorbaTypeImpl corbaType, ModeType mode,
+    private void addCorbaParam(CorbaType corbaType, ModeType mode,
                                String partName, Scope fullyQualifiedName) {
         ParamType param = new ParamType();
         param.setName(partName);

http://git-wip-us.apache.org/repos/asf/cxf/blob/d214d105/tools/corba/src/main/java/org/apache/cxf/tools/corba/processors/idl/PortTypeVisitor.java
----------------------------------------------------------------------
diff --git a/tools/corba/src/main/java/org/apache/cxf/tools/corba/processors/idl/PortTypeVisitor.java b/tools/corba/src/main/java/org/apache/cxf/tools/corba/processors/idl/PortTypeVisitor.java
index 487cc7d..d443847 100644
--- a/tools/corba/src/main/java/org/apache/cxf/tools/corba/processors/idl/PortTypeVisitor.java
+++ b/tools/corba/src/main/java/org/apache/cxf/tools/corba/processors/idl/PortTypeVisitor.java
@@ -31,6 +31,7 @@ import javax.wsdl.Fault;
 import javax.wsdl.Operation;
 import javax.wsdl.PortType;
 import javax.wsdl.WSDLException;
+import javax.wsdl.extensions.ExtensibilityElement;
 import javax.wsdl.extensions.ExtensionRegistry;
 import javax.xml.namespace.QName;
 
@@ -254,7 +255,7 @@ public class PortTypeVisitor extends VisitorBase {
                                         + pragmaPrefix
                                         + scopedPortTypeName.replace('.', '/')
                                         + CorbaConstants.IDL_VERSION);
-            binding.addExtensibilityElement(bindingType);
+            binding.addExtensibilityElement((ExtensibilityElement)bindingType);
         } catch (WSDLException ex) {
             throw new RuntimeException(ex);
         }

http://git-wip-us.apache.org/repos/asf/cxf/blob/d214d105/tools/corba/src/main/java/org/apache/cxf/tools/corba/processors/idl/PrimitiveTypesVisitor.java
----------------------------------------------------------------------
diff --git a/tools/corba/src/main/java/org/apache/cxf/tools/corba/processors/idl/PrimitiveTypesVisitor.java b/tools/corba/src/main/java/org/apache/cxf/tools/corba/processors/idl/PrimitiveTypesVisitor.java
index 131ce1b..d81c999 100644
--- a/tools/corba/src/main/java/org/apache/cxf/tools/corba/processors/idl/PrimitiveTypesVisitor.java
+++ b/tools/corba/src/main/java/org/apache/cxf/tools/corba/processors/idl/PrimitiveTypesVisitor.java
@@ -28,7 +28,7 @@ import javax.xml.namespace.QName;
 import antlr.collections.AST;
 
 import org.apache.cxf.binding.corba.wsdl.CorbaConstants;
-import org.apache.cxf.binding.corba.wsdl.CorbaTypeImpl;
+import org.apache.cxf.binding.corba.wsdl.CorbaType;
 import org.apache.cxf.tools.corba.common.XmlSchemaPrimitiveMap;
 import org.apache.ws.commons.schema.XmlSchema;
 import org.apache.ws.commons.schema.XmlSchemaCollection;
@@ -55,7 +55,7 @@ public class PrimitiveTypesVisitor implements Visitor {
     }
 
     private XmlSchemaType schemaType;
-    private CorbaTypeImpl corbaType;
+    private CorbaType corbaType;
     private Scope scope;
     private XmlSchemaCollection schemas;
     
@@ -106,7 +106,7 @@ public class PrimitiveTypesVisitor implements Visitor {
  
         
         XmlSchemaType stype = null; 
-        CorbaTypeImpl ctype = null;
+        CorbaType ctype = null;
         QName corbaTypeQName = PrimitiveTypesVisitor.getPrimitiveType(node);
         if (corbaTypeQName != null) {
             QName schemaTypeQName = xmlSchemaPrimitiveMap.get(corbaTypeQName);
@@ -114,7 +114,7 @@ public class PrimitiveTypesVisitor implements Visitor {
                 //XmlSchemaCollection schemas = new XmlSchemaCollection();
                 stype = schemas.getTypeByQName(schemaTypeQName);
                 if (stype != null) {
-                    ctype = new CorbaTypeImpl();
+                    ctype = new CorbaType();
                     ctype.setQName(corbaTypeQName);
                     ctype.setType(stype.getQName());
                     ctype.setName(stype.getQName().getLocalPart());
@@ -131,7 +131,7 @@ public class PrimitiveTypesVisitor implements Visitor {
         return schemaType;
     }
     
-    public CorbaTypeImpl getCorbaType() {
+    public CorbaType getCorbaType() {
         return corbaType;
     }
     

http://git-wip-us.apache.org/repos/asf/cxf/blob/d214d105/tools/corba/src/main/java/org/apache/cxf/tools/corba/processors/idl/ScopedNameVisitor.java
----------------------------------------------------------------------
diff --git a/tools/corba/src/main/java/org/apache/cxf/tools/corba/processors/idl/ScopedNameVisitor.java b/tools/corba/src/main/java/org/apache/cxf/tools/corba/processors/idl/ScopedNameVisitor.java
index aec3ff8..2d1fb67 100644
--- a/tools/corba/src/main/java/org/apache/cxf/tools/corba/processors/idl/ScopedNameVisitor.java
+++ b/tools/corba/src/main/java/org/apache/cxf/tools/corba/processors/idl/ScopedNameVisitor.java
@@ -32,7 +32,7 @@ import org.apache.cxf.binding.corba.wsdl.Anonarray;
 import org.apache.cxf.binding.corba.wsdl.Anonsequence;
 import org.apache.cxf.binding.corba.wsdl.Array;
 import org.apache.cxf.binding.corba.wsdl.CorbaConstants;
-import org.apache.cxf.binding.corba.wsdl.CorbaTypeImpl;
+import org.apache.cxf.binding.corba.wsdl.CorbaType;
 import org.apache.cxf.binding.corba.wsdl.Sequence;
 import org.apache.cxf.binding.corba.wsdl.TypeMappingType;
 import org.apache.cxf.tools.corba.common.XmlSchemaPrimitiveMap;
@@ -95,7 +95,7 @@ public class ScopedNameVisitor extends VisitorBase {
         //                 | <scoped_name> "::" <identifier>
 
         XmlSchemaType stype = null;
-        CorbaTypeImpl ctype = null;        
+        CorbaType ctype = null;        
         if (PrimitiveTypesVisitor.accept(node)) {
             // primitive type            
             PrimitiveTypesVisitor primitiveVisitor =
@@ -147,13 +147,13 @@ public class ScopedNameVisitor extends VisitorBase {
         
     }
 
-    private static CorbaTypeImpl getCorbaSchemaType(XmlSchema xmlSchema,
+    private static CorbaType getCorbaSchemaType(XmlSchema xmlSchema,
                                                     TypeMappingType typeMap,
                                                     XmlSchemaType stype,
                                                     Scope scopedName) {       
-        CorbaTypeImpl ctype = null;
+        CorbaType ctype = null;
         if (stype.getQName().equals(Constants.XSD_STRING)) {
-            ctype = new CorbaTypeImpl();
+            ctype = new CorbaType();
             ctype.setName(CorbaConstants.NT_CORBA_STRING.getLocalPart());
             ctype.setQName(CorbaConstants.NT_CORBA_STRING);
             ctype.setType(Constants.XSD_STRING);
@@ -518,11 +518,11 @@ public class ScopedNameVisitor extends VisitorBase {
     
     
     
-    public static CorbaTypeImpl findCorbaTypeForSchemaType(TypeMappingType typeMap, 
+    public static CorbaType findCorbaTypeForSchemaType(TypeMappingType typeMap, 
                                                            QName schemaTypeName,
                                                            Scope scopedName) {
-        CorbaTypeImpl result = null;
-        for (CorbaTypeImpl type : typeMap.getStructOrExceptionOrUnion()) {         
+        CorbaType result = null;
+        for (CorbaType type : typeMap.getStructOrExceptionOrUnion()) {         
             if ((type instanceof Sequence)
                 || (type instanceof Array)
                 || (type.getType() == null)
@@ -550,9 +550,9 @@ public class ScopedNameVisitor extends VisitorBase {
         return result;
     }  
 
-    public static CorbaTypeImpl findCorbaType(TypeMappingType typeMap, QName typeName) {
-        CorbaTypeImpl result = null;
-        for (CorbaTypeImpl type : typeMap.getStructOrExceptionOrUnion()) {
+    public static CorbaType findCorbaType(TypeMappingType typeMap, QName typeName) {
+        CorbaType result = null;
+        for (CorbaType type : typeMap.getStructOrExceptionOrUnion()) {
             if (type.getQName().equals(typeName)) {
                 result = type;
                 break;
@@ -596,7 +596,7 @@ public class ScopedNameVisitor extends VisitorBase {
         XmlSchemaCollection schemas = wsdlVisitor.getSchemas();
 
         QName qname = new QName(typeMap.getTargetNamespace(), name);
-        CorbaTypeImpl corbaType = findCorbaType(typeMap, qname);
+        CorbaType corbaType = findCorbaType(typeMap, qname);
         if (corbaType != null) {
             if (corbaType instanceof Alias) {
                 result = true;
@@ -617,7 +617,7 @@ public class ScopedNameVisitor extends VisitorBase {
         return result;
     }
 
-    protected static void populateAliasSchemaType(CorbaTypeImpl corbaType,
+    protected static void populateAliasSchemaType(CorbaType corbaType,
                                                   WSDLASTVisitor wsdlVisitor,
                                                   VisitorTypeHolder holder) {
         XmlSchemaCollection schemas = wsdlVisitor.getSchemas();
@@ -625,7 +625,7 @@ public class ScopedNameVisitor extends VisitorBase {
         holder.setCorbaType(corbaType);
         Alias alias = (Alias) corbaType;
         //loop through alias base types, till you get a non-alias corba type
-        CorbaTypeImpl type = findCorbaType(typeMap, alias.getBasetype());
+        CorbaType type = findCorbaType(typeMap, alias.getBasetype());
         while ((type != null) && (type instanceof Alias)) {
             alias = (Alias) type;
             type = findCorbaType(typeMap, alias.getBasetype());

http://git-wip-us.apache.org/repos/asf/cxf/blob/d214d105/tools/corba/src/main/java/org/apache/cxf/tools/corba/processors/idl/SequenceVisitor.java
----------------------------------------------------------------------
diff --git a/tools/corba/src/main/java/org/apache/cxf/tools/corba/processors/idl/SequenceVisitor.java b/tools/corba/src/main/java/org/apache/cxf/tools/corba/processors/idl/SequenceVisitor.java
index 6acb650..384583c 100644
--- a/tools/corba/src/main/java/org/apache/cxf/tools/corba/processors/idl/SequenceVisitor.java
+++ b/tools/corba/src/main/java/org/apache/cxf/tools/corba/processors/idl/SequenceVisitor.java
@@ -25,7 +25,7 @@ import javax.xml.namespace.QName;
 import antlr.collections.AST;
 
 import org.apache.cxf.binding.corba.wsdl.Anonsequence;
-import org.apache.cxf.binding.corba.wsdl.CorbaTypeImpl;
+import org.apache.cxf.binding.corba.wsdl.CorbaType;
 import org.apache.cxf.binding.corba.wsdl.Sequence;
 import org.apache.cxf.tools.corba.common.ReferenceConstants;
 import org.apache.ws.commons.schema.XmlSchema;
@@ -83,7 +83,7 @@ public class SequenceVisitor extends VisitorBase {
         visitor.visit(simpleTypeSpecNode);
 
         XmlSchemaType stype = visitor.getSchemaType();
-        CorbaTypeImpl ctype = visitor.getCorbaType();
+        CorbaType ctype = visitor.getCorbaType();
         Scope fullyQualifiedName = visitor.getFullyQualifiedName();
 
 
@@ -119,7 +119,7 @@ public class SequenceVisitor extends VisitorBase {
             schemaType = generateSchemaType(null, scopedName, bound, fullyQualifiedName);
         }
 
-        CorbaTypeImpl corbaType = null;
+        CorbaType corbaType = null;
         if (identifierNode == null) {
             corbaType = generateCorbaAnonsequence(ctype,
                                                   schemaType,
@@ -168,7 +168,7 @@ public class SequenceVisitor extends VisitorBase {
         return ct;
     }
 
-    private CorbaTypeImpl generateCorbaSequence(CorbaTypeImpl ctype,
+    private CorbaType generateCorbaSequence(CorbaType ctype,
                                                 XmlSchemaType schemaType,
                                                 Scope scopedName,
                                                 long bound,
@@ -195,7 +195,7 @@ public class SequenceVisitor extends VisitorBase {
         return corbaSeq;
     }
 
-    private Anonsequence generateCorbaAnonsequence(CorbaTypeImpl ctype,
+    private Anonsequence generateCorbaAnonsequence(CorbaType ctype,
                                                    XmlSchemaType schemaType,
                                                    Scope scopedName,
                                                    long bound,

http://git-wip-us.apache.org/repos/asf/cxf/blob/d214d105/tools/corba/src/main/java/org/apache/cxf/tools/corba/processors/idl/StringVisitor.java
----------------------------------------------------------------------
diff --git a/tools/corba/src/main/java/org/apache/cxf/tools/corba/processors/idl/StringVisitor.java b/tools/corba/src/main/java/org/apache/cxf/tools/corba/processors/idl/StringVisitor.java
index 4bd0a02..f4ef3b4 100644
--- a/tools/corba/src/main/java/org/apache/cxf/tools/corba/processors/idl/StringVisitor.java
+++ b/tools/corba/src/main/java/org/apache/cxf/tools/corba/processors/idl/StringVisitor.java
@@ -28,7 +28,7 @@ import org.apache.cxf.binding.corba.wsdl.Alias;
 import org.apache.cxf.binding.corba.wsdl.Anonstring;
 import org.apache.cxf.binding.corba.wsdl.Anonwstring;
 import org.apache.cxf.binding.corba.wsdl.CorbaConstants;
-import org.apache.cxf.binding.corba.wsdl.CorbaTypeImpl;
+import org.apache.cxf.binding.corba.wsdl.CorbaType;
 import org.apache.ws.commons.schema.XmlSchema;
 import org.apache.ws.commons.schema.XmlSchemaMaxLengthFacet;
 import org.apache.ws.commons.schema.XmlSchemaSimpleType;
@@ -130,7 +130,7 @@ public class StringVisitor extends VisitorBase {
 
         setSchemaType(simpleType);
 
-        CorbaTypeImpl anon = null;
+        CorbaType anon = null;
         if (stringNode.getType() == IDLTokenTypes.LITERAL_string) {
             // corba:anonstring
             Anonstring anonstring = new Anonstring();
@@ -175,7 +175,7 @@ public class StringVisitor extends VisitorBase {
 
         Scope anonstringScopedName = new Scope(getScope(), "_Anon1_" + stringScopedName.tail());
         String anonstringName = anonstringScopedName.toString();
-        CorbaTypeImpl anon = null;
+        CorbaType anon = null;
         if (stringNode.getType() == IDLTokenTypes.LITERAL_string) {
             // corba:anonstring
             Anonstring anonstring = new Anonstring();
@@ -219,7 +219,7 @@ public class StringVisitor extends VisitorBase {
 
 
         // corba type
-        CorbaTypeImpl corbaString = new CorbaTypeImpl();
+        CorbaType corbaString = new CorbaType();
         if (stringNode.getType() == IDLTokenTypes.LITERAL_string) {
             corbaString.setQName(CorbaConstants.NT_CORBA_STRING);
             corbaString.setName(CorbaConstants.NT_CORBA_STRING.getLocalPart());

http://git-wip-us.apache.org/repos/asf/cxf/blob/d214d105/tools/corba/src/main/java/org/apache/cxf/tools/corba/processors/idl/StructVisitor.java
----------------------------------------------------------------------
diff --git a/tools/corba/src/main/java/org/apache/cxf/tools/corba/processors/idl/StructVisitor.java b/tools/corba/src/main/java/org/apache/cxf/tools/corba/processors/idl/StructVisitor.java
index c112f5a..cb2d23f 100644
--- a/tools/corba/src/main/java/org/apache/cxf/tools/corba/processors/idl/StructVisitor.java
+++ b/tools/corba/src/main/java/org/apache/cxf/tools/corba/processors/idl/StructVisitor.java
@@ -27,7 +27,7 @@ import javax.xml.namespace.QName;
 
 import antlr.collections.AST;
 
-import org.apache.cxf.binding.corba.wsdl.CorbaTypeImpl;
+import org.apache.cxf.binding.corba.wsdl.CorbaType;
 import org.apache.cxf.binding.corba.wsdl.MemberType;
 import org.apache.cxf.binding.corba.wsdl.Struct;
 import org.apache.cxf.tools.corba.common.ReferenceConstants;
@@ -114,7 +114,7 @@ public class StructVisitor extends VisitorBase {
             AST memberNode = TypesUtils.getCorbaTypeNameNode(memberTypeNode);
 
             XmlSchemaType schemaType = null;
-            CorbaTypeImpl corbaType = null;
+            CorbaType corbaType = null;
             Scope fqName = null;
             try {
                 TypesVisitor visitor = new TypesVisitor(structScope,
@@ -141,7 +141,7 @@ public class StructVisitor extends VisitorBase {
                    && !ScopedNameVisitor.accept(structScope, definition, schema, memberNode, wsdlVisitor, true)) {
 
                 XmlSchemaType memberSchemaType = schemaType;
-                CorbaTypeImpl memberCorbaType = corbaType;
+                CorbaType memberCorbaType = corbaType;
                 // needed for anonymous arrays in structs
                 if (ArrayVisitor.accept(memberNode)) {
                     Scope anonScope = new Scope(structScope,
@@ -195,7 +195,7 @@ public class StructVisitor extends VisitorBase {
     }
 
     private MemberType createMemberType(AST memberNode,
-                                        CorbaTypeImpl corbaType,
+                                        CorbaType corbaType,
                                         Scope fqName) {
         // corba:member
         String memberName = memberNode.toString();
@@ -227,7 +227,7 @@ public class StructVisitor extends VisitorBase {
             List<DeferredAction> list = deferredActions.getActions(structScope);
             if ((list != null) && !list.isEmpty()) {
                 XmlSchemaType stype = getSchemaType();
-                CorbaTypeImpl ctype = getCorbaType();
+                CorbaType ctype = getCorbaType();
                 Iterator<DeferredAction> iterator = list.iterator();
                 while (iterator.hasNext()) {
                     SchemaDeferredAction action = (SchemaDeferredAction)iterator.next();

http://git-wip-us.apache.org/repos/asf/cxf/blob/d214d105/tools/corba/src/main/java/org/apache/cxf/tools/corba/processors/idl/TypedefVisitor.java
----------------------------------------------------------------------
diff --git a/tools/corba/src/main/java/org/apache/cxf/tools/corba/processors/idl/TypedefVisitor.java b/tools/corba/src/main/java/org/apache/cxf/tools/corba/processors/idl/TypedefVisitor.java
index 62bca4d..97bf6f5 100644
--- a/tools/corba/src/main/java/org/apache/cxf/tools/corba/processors/idl/TypedefVisitor.java
+++ b/tools/corba/src/main/java/org/apache/cxf/tools/corba/processors/idl/TypedefVisitor.java
@@ -26,7 +26,7 @@ import antlr.collections.AST;
 
 import org.apache.cxf.binding.corba.wsdl.Alias;
 import org.apache.cxf.binding.corba.wsdl.CorbaConstants;
-import org.apache.cxf.binding.corba.wsdl.CorbaTypeImpl;
+import org.apache.cxf.binding.corba.wsdl.CorbaType;
 import org.apache.ws.commons.schema.XmlSchema;
 import org.apache.ws.commons.schema.XmlSchemaType;
 import org.apache.ws.commons.schema.constants.Constants;
@@ -61,7 +61,7 @@ public class TypedefVisitor extends VisitorBase {
         typesVisitor.visit(typeDeclaratorNode);
 
         XmlSchemaType schemaType = typesVisitor.getSchemaType();
-        CorbaTypeImpl corbaType = typesVisitor.getCorbaType();
+        CorbaType corbaType = typesVisitor.getCorbaType();
         Scope fullyQualifiedName = typesVisitor.getFullyQualifiedName();
         Scope typedefScope = new Scope(getScope(), identifierNode);
         
@@ -150,7 +150,7 @@ public class TypedefVisitor extends VisitorBase {
     
     private void generateAlias(AST identifierNode,
                                XmlSchemaType schemaType,
-                               CorbaTypeImpl corbaType,
+                               CorbaType corbaType,
                                Scope fqName) {
     
         Scope scopedName = new Scope(getScope(), identifierNode);
@@ -174,7 +174,7 @@ public class TypedefVisitor extends VisitorBase {
     private void generateStringAlias(AST typeDeclaratorNode,
                                      AST identifierNode,
                                      XmlSchemaType schemaType,
-                                     CorbaTypeImpl corbaType,
+                                     CorbaType corbaType,
                                      Scope fqName) {
         
         Scope typedefScope = new Scope(getScope(), identifierNode);

http://git-wip-us.apache.org/repos/asf/cxf/blob/d214d105/tools/corba/src/main/java/org/apache/cxf/tools/corba/processors/idl/TypesUtils.java
----------------------------------------------------------------------
diff --git a/tools/corba/src/main/java/org/apache/cxf/tools/corba/processors/idl/TypesUtils.java b/tools/corba/src/main/java/org/apache/cxf/tools/corba/processors/idl/TypesUtils.java
index 01e4a18..9e96820 100644
--- a/tools/corba/src/main/java/org/apache/cxf/tools/corba/processors/idl/TypesUtils.java
+++ b/tools/corba/src/main/java/org/apache/cxf/tools/corba/processors/idl/TypesUtils.java
@@ -27,7 +27,7 @@ import javax.xml.namespace.QName;
 import antlr.collections.AST;
 
 import org.apache.cxf.binding.corba.wsdl.Const;
-import org.apache.cxf.binding.corba.wsdl.CorbaTypeImpl;
+import org.apache.cxf.binding.corba.wsdl.CorbaType;
 import org.apache.cxf.binding.corba.wsdl.TypeMappingType;
 import org.apache.ws.commons.schema.XmlSchema;
 import org.apache.ws.commons.schema.XmlSchemaType;
@@ -103,9 +103,9 @@ public final class TypesUtils {
     }
     
     public static String getConstValueByName(AST node, TypeMappingType typeMap) {
-        List<CorbaTypeImpl> types = typeMap.getStructOrExceptionOrUnion();
-        for (Iterator<CorbaTypeImpl> it = types.iterator(); it.hasNext();) {
-            CorbaTypeImpl corbaType = it.next();
+        List<CorbaType> types = typeMap.getStructOrExceptionOrUnion();
+        for (Iterator<CorbaType> it = types.iterator(); it.hasNext();) {
+            CorbaType corbaType = it.next();
             if (corbaType instanceof Const) {
                 Const corbaConst = (Const) corbaType;
                 String name = corbaConst.getQName().getLocalPart();

http://git-wip-us.apache.org/repos/asf/cxf/blob/d214d105/tools/corba/src/main/java/org/apache/cxf/tools/corba/processors/idl/UnionVisitor.java
----------------------------------------------------------------------
diff --git a/tools/corba/src/main/java/org/apache/cxf/tools/corba/processors/idl/UnionVisitor.java b/tools/corba/src/main/java/org/apache/cxf/tools/corba/processors/idl/UnionVisitor.java
index 09cfcf5..1b06f0b 100644
--- a/tools/corba/src/main/java/org/apache/cxf/tools/corba/processors/idl/UnionVisitor.java
+++ b/tools/corba/src/main/java/org/apache/cxf/tools/corba/processors/idl/UnionVisitor.java
@@ -28,7 +28,7 @@ import javax.xml.namespace.QName;
 import antlr.collections.AST;
 
 import org.apache.cxf.binding.corba.wsdl.CaseType;
-import org.apache.cxf.binding.corba.wsdl.CorbaTypeImpl;
+import org.apache.cxf.binding.corba.wsdl.CorbaType;
 import org.apache.cxf.binding.corba.wsdl.Union;
 import org.apache.cxf.binding.corba.wsdl.Unionbranch;
 import org.apache.cxf.tools.corba.common.ReferenceConstants;
@@ -93,7 +93,7 @@ public class UnionVisitor extends VisitorBase {
         // it should be visited by a SwitchTypeSpecVisitor
         TypesVisitor visitor = new TypesVisitor(getScope(), definition, schema, wsdlVisitor, null);
         visitor.visit(discriminatorNode);
-        CorbaTypeImpl ctype = visitor.getCorbaType();
+        CorbaType ctype = visitor.getCorbaType();
         Scope fullyQualifiedName = visitor.getFullyQualifiedName();
 
         XmlSchemaChoice choice = new XmlSchemaChoice();
@@ -181,7 +181,7 @@ public class UnionVisitor extends VisitorBase {
                                                     null);
             visitor.visit(typeNode);
             XmlSchemaType stype = visitor.getSchemaType();
-            CorbaTypeImpl ctype = visitor.getCorbaType();
+            CorbaType ctype = visitor.getCorbaType();
             Scope fullyQualifiedName = visitor.getFullyQualifiedName();
 
 
@@ -271,7 +271,7 @@ public class UnionVisitor extends VisitorBase {
             List<DeferredAction> list = deferredActions.getActions(unionScope);
             if ((list != null) && !list.isEmpty()) {
                 XmlSchemaType stype = getSchemaType();
-                CorbaTypeImpl ctype = getCorbaType();
+                CorbaType ctype = getCorbaType();
                 Iterator<DeferredAction> iterator = list.iterator();
                 while (iterator.hasNext()) {
                     SchemaDeferredAction action = (SchemaDeferredAction)iterator.next();

http://git-wip-us.apache.org/repos/asf/cxf/blob/d214d105/tools/corba/src/main/java/org/apache/cxf/tools/corba/processors/idl/Visitor.java
----------------------------------------------------------------------
diff --git a/tools/corba/src/main/java/org/apache/cxf/tools/corba/processors/idl/Visitor.java b/tools/corba/src/main/java/org/apache/cxf/tools/corba/processors/idl/Visitor.java
index 8ca3625..2c8ce01 100644
--- a/tools/corba/src/main/java/org/apache/cxf/tools/corba/processors/idl/Visitor.java
+++ b/tools/corba/src/main/java/org/apache/cxf/tools/corba/processors/idl/Visitor.java
@@ -21,7 +21,7 @@ package org.apache.cxf.tools.corba.processors.idl;
 
 import antlr.collections.AST;
 
-import org.apache.cxf.binding.corba.wsdl.CorbaTypeImpl;
+import org.apache.cxf.binding.corba.wsdl.CorbaType;
 import org.apache.ws.commons.schema.XmlSchemaType;
 
 public interface Visitor {
@@ -29,7 +29,7 @@ public interface Visitor {
     void visit(AST node);
     
     XmlSchemaType getSchemaType();
-    CorbaTypeImpl getCorbaType();
+    CorbaType getCorbaType();
 
     Scope getScope();  
     Scope getFullyQualifiedName();  

http://git-wip-us.apache.org/repos/asf/cxf/blob/d214d105/tools/corba/src/main/java/org/apache/cxf/tools/corba/processors/idl/VisitorBase.java
----------------------------------------------------------------------
diff --git a/tools/corba/src/main/java/org/apache/cxf/tools/corba/processors/idl/VisitorBase.java b/tools/corba/src/main/java/org/apache/cxf/tools/corba/processors/idl/VisitorBase.java
index c93bb63..2372b54 100644
--- a/tools/corba/src/main/java/org/apache/cxf/tools/corba/processors/idl/VisitorBase.java
+++ b/tools/corba/src/main/java/org/apache/cxf/tools/corba/processors/idl/VisitorBase.java
@@ -23,7 +23,7 @@ import javax.wsdl.Definition;
 
 import antlr.collections.AST;
 
-import org.apache.cxf.binding.corba.wsdl.CorbaTypeImpl;
+import org.apache.cxf.binding.corba.wsdl.CorbaType;
 import org.apache.cxf.binding.corba.wsdl.TypeMappingType;
 import org.apache.ws.commons.schema.XmlSchema;
 import org.apache.ws.commons.schema.XmlSchemaCollection;
@@ -42,7 +42,7 @@ public abstract class VisitorBase implements Visitor {
     protected Definition definition;
     
     private XmlSchemaType schemaType;
-    private CorbaTypeImpl corbaType;
+    private CorbaType corbaType;
     private Scope fullyQualifiedName;
 
     private Scope scope;
@@ -79,11 +79,11 @@ public abstract class VisitorBase implements Visitor {
         return schemaType;
     }
     
-    protected void setCorbaType(CorbaTypeImpl type) {
+    protected void setCorbaType(CorbaType type) {
         corbaType = type;
     }
     
-    public CorbaTypeImpl getCorbaType() {
+    public CorbaType getCorbaType() {
         return corbaType;        
     }
     


[2/3] Massive update to the CORBA binding to remove the subclassing of the TExtensibilityElement, cleanup the type hiearchy, and get the tests passing with MOXy

Posted by dk...@apache.org.
http://git-wip-us.apache.org/repos/asf/cxf/blob/d214d105/tools/corba/src/main/java/org/apache/cxf/tools/corba/processors/idl/VisitorTypeHolder.java
----------------------------------------------------------------------
diff --git a/tools/corba/src/main/java/org/apache/cxf/tools/corba/processors/idl/VisitorTypeHolder.java b/tools/corba/src/main/java/org/apache/cxf/tools/corba/processors/idl/VisitorTypeHolder.java
index 1796971..10bb8db 100644
--- a/tools/corba/src/main/java/org/apache/cxf/tools/corba/processors/idl/VisitorTypeHolder.java
+++ b/tools/corba/src/main/java/org/apache/cxf/tools/corba/processors/idl/VisitorTypeHolder.java
@@ -19,15 +19,15 @@
 
 package org.apache.cxf.tools.corba.processors.idl;
 
-import org.apache.cxf.binding.corba.wsdl.CorbaTypeImpl;
+import org.apache.cxf.binding.corba.wsdl.CorbaType;
 import org.apache.ws.commons.schema.XmlSchemaType;
 
 public class VisitorTypeHolder {
 
-    CorbaTypeImpl ctype;
+    CorbaType ctype;
     XmlSchemaType stype;
 
-    public CorbaTypeImpl getCorbaType() {
+    public CorbaType getCorbaType() {
         return ctype;
     }
 
@@ -35,7 +35,7 @@ public class VisitorTypeHolder {
         return stype;
     }
 
-    public void setCorbaType(CorbaTypeImpl type) {
+    public void setCorbaType(CorbaType type) {
         ctype = type;
     }
 

http://git-wip-us.apache.org/repos/asf/cxf/blob/d214d105/tools/corba/src/main/java/org/apache/cxf/tools/corba/processors/idl/WSDLSchemaManager.java
----------------------------------------------------------------------
diff --git a/tools/corba/src/main/java/org/apache/cxf/tools/corba/processors/idl/WSDLSchemaManager.java b/tools/corba/src/main/java/org/apache/cxf/tools/corba/processors/idl/WSDLSchemaManager.java
index 355cb37..4379b19 100644
--- a/tools/corba/src/main/java/org/apache/cxf/tools/corba/processors/idl/WSDLSchemaManager.java
+++ b/tools/corba/src/main/java/org/apache/cxf/tools/corba/processors/idl/WSDLSchemaManager.java
@@ -26,27 +26,22 @@ import java.util.Iterator;
 import java.util.List;
 import java.util.Map;
 
-import javax.wsdl.Binding;
-import javax.wsdl.BindingOperation;
 import javax.wsdl.Definition;
 import javax.wsdl.Import;
-import javax.wsdl.Port;
 import javax.wsdl.Types;
 import javax.wsdl.WSDLException;
-import javax.wsdl.extensions.ExtensionRegistry;
+import javax.wsdl.extensions.ExtensibilityElement;
 import javax.wsdl.extensions.schema.Schema;
 import javax.wsdl.extensions.schema.SchemaImport;
 import javax.wsdl.factory.WSDLFactory;
 import javax.xml.bind.JAXBException;
 import javax.xml.namespace.QName;
 
-import org.apache.cxf.binding.corba.wsdl.AddressType;
-import org.apache.cxf.binding.corba.wsdl.BindingType;
+import org.apache.cxf.BusFactory;
 import org.apache.cxf.binding.corba.wsdl.CorbaConstants;
-import org.apache.cxf.binding.corba.wsdl.OperationType;
 import org.apache.cxf.binding.corba.wsdl.TypeMappingType;
-import org.apache.cxf.wsdl.JAXBExtensionHelper;
 import org.apache.cxf.wsdl.WSDLConstants;
+import org.apache.cxf.wsdl.WSDLManager;
 import org.apache.ws.commons.schema.XmlSchema;
 import org.apache.ws.commons.schema.XmlSchemaCollection;
 import org.apache.ws.commons.schema.XmlSchemaExternal;
@@ -84,15 +79,16 @@ public class WSDLSchemaManager {
     }
 
     public Definition createWSDLDefinition(String tns) throws WSDLException, JAXBException {
-        WSDLFactory wsdlFactory = WSDLFactory.newInstance();
+        WSDLManager wm = BusFactory.getThreadDefaultBus().getExtension(WSDLManager.class);
+        WSDLFactory wsdlFactory = wm.getWSDLFactory();
         Definition wsdlDefinition = wsdlFactory.newDefinition();
+        wsdlDefinition.setExtensionRegistry(wm.getExtensionRegistry());
         wsdlDefinition.setTargetNamespace(tns);
         wsdlDefinition.addNamespace("wsdl", "http://schemas.xmlsoap.org/wsdl/");
         wsdlDefinition.addNamespace(WSDLConstants.NP_SCHEMA_XSD, WSDLConstants.NS_SCHEMA_XSD);
         wsdlDefinition.addNamespace(WSDLConstants.SOAP11_PREFIX, WSDLConstants.NS_SOAP11);
         wsdlDefinition.addNamespace("tns", tns);
         wsdlDefinition.addNamespace(CorbaConstants.NP_WSDL_CORBA, CorbaConstants.NU_WSDL_CORBA);
-        addCorbaExtensions(wsdlDefinition.getExtensionRegistry());
         defns.put(tns, wsdlDefinition);
         return wsdlDefinition;
     }
@@ -231,25 +227,6 @@ public class WSDLSchemaManager {
         }
     }
 
-    private void addCorbaExtensions(ExtensionRegistry extReg) throws JAXBException {
-        try {
-            JAXBExtensionHelper.addExtensions(extReg, Binding.class, BindingType.class);
-            JAXBExtensionHelper.addExtensions(extReg, BindingOperation.class, OperationType.class);
-            JAXBExtensionHelper.addExtensions(extReg, Definition.class, TypeMappingType.class);
-            JAXBExtensionHelper.addExtensions(extReg, Port.class, AddressType.class);
-
-            extReg.mapExtensionTypes(Binding.class, CorbaConstants.NE_CORBA_BINDING, BindingType.class);
-            extReg.mapExtensionTypes(BindingOperation.class, CorbaConstants.NE_CORBA_OPERATION,
-                                     org.apache.cxf.binding.corba.wsdl.OperationType.class);
-            extReg.mapExtensionTypes(Definition.class, CorbaConstants.NE_CORBA_TYPEMAPPING,
-                                     TypeMappingType.class);
-            extReg.mapExtensionTypes(Port.class, CorbaConstants.NE_CORBA_ADDRESS,
-                                     org.apache.cxf.binding.corba.wsdl.AddressType.class);
-        } catch (javax.xml.bind.JAXBException ex) {
-            throw new JAXBException(ex.getMessage());
-        }
-    }
-
     public void deferAttachSchemaToWSDL(Definition definition, XmlSchema schema, boolean isSchemaGenerated)
         throws Exception {
         DeferredSchemaAttachment attachment = new DeferredSchemaAttachment();
@@ -321,7 +298,7 @@ public class WSDLSchemaManager {
         } else {
             typeMap.setTargetNamespace(corbatypemaptns);
         }
-        definition.addExtensibilityElement(typeMap);
+        definition.addExtensibilityElement((ExtensibilityElement)typeMap);
         return typeMap;
     }
 

http://git-wip-us.apache.org/repos/asf/cxf/blob/d214d105/tools/corba/src/main/java/org/apache/cxf/tools/corba/processors/wsdl/WSDLParameter.java
----------------------------------------------------------------------
diff --git a/tools/corba/src/main/java/org/apache/cxf/tools/corba/processors/wsdl/WSDLParameter.java b/tools/corba/src/main/java/org/apache/cxf/tools/corba/processors/wsdl/WSDLParameter.java
index adbe9ae..6b93661 100644
--- a/tools/corba/src/main/java/org/apache/cxf/tools/corba/processors/wsdl/WSDLParameter.java
+++ b/tools/corba/src/main/java/org/apache/cxf/tools/corba/processors/wsdl/WSDLParameter.java
@@ -32,7 +32,7 @@ import javax.wsdl.Part;
 import javax.xml.namespace.QName;
 
 import org.apache.cxf.binding.corba.wsdl.ArgType;
-import org.apache.cxf.binding.corba.wsdl.CorbaTypeImpl;
+import org.apache.cxf.binding.corba.wsdl.CorbaType;
 import org.apache.cxf.binding.corba.wsdl.ModeType;
 import org.apache.cxf.binding.corba.wsdl.ParamType;
 import org.apache.cxf.common.xmlschema.SchemaCollection;
@@ -436,9 +436,9 @@ public final class WSDLParameter {
     private static QName getIdlType(WSDLToCorbaBinding wsdlToCorbaBinding, XmlSchemaType schemaType,
                                     QName typeName, boolean nill) throws Exception {
         QName idltype = null;
-        CorbaTypeImpl corbaTypeImpl = null;
+        CorbaType corbaTypeImpl = null;
         if (schemaType == null) {
-            corbaTypeImpl = (CorbaTypeImpl)WSDLToCorbaHelper.CORBAPRIMITIVEMAP.get(typeName);
+            corbaTypeImpl = (CorbaType)WSDLToCorbaHelper.CORBAPRIMITIVEMAP.get(typeName);
             if (nill) {
                 QName qname = corbaTypeImpl.getQName();
                 idltype = wsdlToCorbaBinding.getHelper().createQNameCorbaNamespace(qname.getLocalPart()
@@ -487,7 +487,7 @@ public final class WSDLParameter {
                                            XmlSchemaAnnotation annotation, QName typeName, boolean nill)
         throws Exception {
         QName idltype = null;
-        CorbaTypeImpl corbaTypeImpl = null;
+        CorbaType corbaTypeImpl = null;
 
         corbaTypeImpl = wsdlToCorbaBinding.getHelper().convertSchemaToCorbaType(schemaType, typeName, null,
                                                                                 annotation, false);

http://git-wip-us.apache.org/repos/asf/cxf/blob/d214d105/tools/corba/src/main/java/org/apache/cxf/tools/corba/processors/wsdl/WSDLToCorbaBinding.java
----------------------------------------------------------------------
diff --git a/tools/corba/src/main/java/org/apache/cxf/tools/corba/processors/wsdl/WSDLToCorbaBinding.java b/tools/corba/src/main/java/org/apache/cxf/tools/corba/processors/wsdl/WSDLToCorbaBinding.java
index 9659444..3b602d7 100644
--- a/tools/corba/src/main/java/org/apache/cxf/tools/corba/processors/wsdl/WSDLToCorbaBinding.java
+++ b/tools/corba/src/main/java/org/apache/cxf/tools/corba/processors/wsdl/WSDLToCorbaBinding.java
@@ -44,19 +44,18 @@ import javax.wsdl.Port;
 import javax.wsdl.PortType;
 import javax.wsdl.Service;
 import javax.wsdl.WSDLException;
+import javax.wsdl.extensions.ExtensibilityElement;
 import javax.wsdl.extensions.ExtensionRegistry;
-import javax.xml.bind.JAXBException;
 import javax.xml.namespace.QName;
 
 import org.w3c.dom.Node;
 import org.w3c.dom.NodeList;
 
-
 import org.apache.cxf.binding.corba.wsdl.AddressType;
 import org.apache.cxf.binding.corba.wsdl.ArgType;
 import org.apache.cxf.binding.corba.wsdl.BindingType;
 import org.apache.cxf.binding.corba.wsdl.CorbaConstants;
-import org.apache.cxf.binding.corba.wsdl.CorbaTypeImpl;
+import org.apache.cxf.binding.corba.wsdl.CorbaType;
 import org.apache.cxf.binding.corba.wsdl.MemberType;
 import org.apache.cxf.binding.corba.wsdl.OperationType;
 import org.apache.cxf.binding.corba.wsdl.ParamType;
@@ -67,7 +66,6 @@ import org.apache.cxf.common.logging.LogUtils;
 import org.apache.cxf.common.xmlschema.SchemaCollection;
 import org.apache.cxf.helpers.CastUtils;
 import org.apache.cxf.tools.common.ToolException;
-import org.apache.cxf.wsdl.JAXBExtensionHelper;
 import org.apache.ws.commons.schema.XmlSchema;
 import org.apache.ws.commons.schema.XmlSchemaAnnotation;
 import org.apache.ws.commons.schema.XmlSchemaAnnotationItem;
@@ -225,7 +223,6 @@ public class WSDLToCorbaBinding {
 
         if (extReg == null) {
             extReg = def.getExtensionRegistry();
-            addExtensions(extReg);
         }
 
         bindingNames = new ArrayList<String>();
@@ -287,7 +284,7 @@ public class WSDLToCorbaBinding {
                                         + binding.getPortType().getQName().getLocalPart().replace('.', '/')
                                         + WSDLToCorbaHelper.IDL_VERSION);
 
-            binding.addExtensibilityElement(bindingType);
+            binding.addExtensibilityElement((ExtensibilityElement)bindingType);
         } catch (WSDLException ex) {
             ex.printStackTrace();
         }
@@ -309,7 +306,6 @@ public class WSDLToCorbaBinding {
                                                 Binding binding) throws Exception {
         if (extReg == null) {
             extReg = def.getExtensionRegistry();
-            addExtensions(extReg);
         }
 
         String interfaceName = portType.getQName().getLocalPart();
@@ -362,7 +358,7 @@ public class WSDLToCorbaBinding {
                 addr = "file:./" + interfaceName + ".ref";
             }
             addressType.setLocation(addr);
-            servicePort.addExtensibilityElement(addressType);
+            servicePort.addExtensibilityElement((ExtensibilityElement)addressType);
         } catch (WSDLException ex) {
             throw new Exception("Failed to create CORBA address for service", ex);
         }
@@ -409,28 +405,6 @@ public class WSDLToCorbaBinding {
         }
     }
 
-    public void addExtensions(ExtensionRegistry extRegistry) throws JAXBException {
-        try {
-            JAXBExtensionHelper.addExtensions(extReg, Binding.class, BindingType.class);
-            JAXBExtensionHelper.addExtensions(extReg, BindingOperation.class,
-                                              org.apache.cxf.binding.corba.wsdl.OperationType.class);
-            JAXBExtensionHelper.addExtensions(extReg, Definition.class, TypeMappingType.class);
-            JAXBExtensionHelper.addExtensions(extReg, Port.class,
-                                              org.apache.cxf.binding.corba.wsdl.AddressType.class);
-
-            extReg.mapExtensionTypes(Binding.class, CorbaConstants.NE_CORBA_BINDING, BindingType.class);
-            extReg.mapExtensionTypes(BindingOperation.class, CorbaConstants.NE_CORBA_OPERATION,
-                                     org.apache.cxf.binding.corba.wsdl.OperationType.class);
-            extReg.mapExtensionTypes(Definition.class, CorbaConstants.NE_CORBA_TYPEMAPPING,
-                                     TypeMappingType.class);
-            extReg.mapExtensionTypes(Port.class, CorbaConstants.NE_CORBA_ADDRESS,
-                                     org.apache.cxf.binding.corba.wsdl.AddressType.class);
-        } catch (javax.xml.bind.JAXBException ex) {
-            LOG.log(Level.SEVERE, "Failing to serialize/deserialize extensions", ex);
-            throw new JAXBException(ex.getMessage());
-        }
-    }
-
     private void addCorbaOperationExtElement(BindingOperation bo, Operation op)
         throws Exception {
 
@@ -459,14 +433,14 @@ public class WSDLToCorbaBinding {
         Collection<Fault> faults = CastUtils.cast(op.getFaults().values());
         for (Fault fault : faults) {
             RaisesType raisestype = new RaisesType();
-            CorbaTypeImpl extype = convertFaultToCorbaType(xmlSchemaType, fault);
+            CorbaType extype = convertFaultToCorbaType(xmlSchemaType, fault);
             if (extype != null) {
                 raisestype.setException(helper.createQNameCorbaNamespace(extype.getName()));
                 operationType.getRaises().add(raisestype);
             }
         }
 
-        bo.addExtensibilityElement(operationType);
+        bo.addExtensibilityElement((ExtensibilityElement)operationType);
     }
 
 
@@ -485,7 +459,7 @@ public class WSDLToCorbaBinding {
             typeMappingType = (TypeMappingType)extReg.createExtension(Definition.class,
                                                                       CorbaConstants.NE_CORBA_TYPEMAPPING);
             typeMappingType.setTargetNamespace(getIdlNamespace());
-            definition.addExtensibilityElement(typeMappingType);
+            definition.addExtensibilityElement((ExtensibilityElement)typeMappingType);
         }
         helper.setTypeMap(typeMappingType);
         addCorbaTypes(definition);
@@ -513,7 +487,7 @@ public class WSDLToCorbaBinding {
 
     private void addCorbaTypes(XmlSchema xmlSchemaTypes) throws Exception {
         Map<QName, XmlSchemaType> objs = xmlSchemaTypes.getSchemaTypes();
-        CorbaTypeImpl corbaTypeImpl = null;
+        CorbaType corbaTypeImpl = null;
         for (XmlSchemaType type : objs.values()) {
             boolean anonymous = WSDLTypes.isAnonymous(type.getName());
             corbaTypeImpl = helper.convertSchemaToCorbaType(type, type.getQName(), null,
@@ -527,7 +501,7 @@ public class WSDLToCorbaBinding {
     }
 
 
-    private void addCorbaElements(CorbaTypeImpl corbaTypeImpl,
+    private void addCorbaElements(CorbaType corbaTypeImpl,
                                   XmlSchema xmlSchemaTypes) throws Exception {
         Map<QName, XmlSchemaElement> elements = xmlSchemaTypes.getElements();
         for (XmlSchemaElement el : elements.values()) {
@@ -597,7 +571,7 @@ public class WSDLToCorbaBinding {
         }
     }
 
-    private CorbaTypeImpl convertFaultToCorbaType(XmlSchema xmlSchema, Fault fault) throws Exception {
+    private CorbaType convertFaultToCorbaType(XmlSchema xmlSchema, Fault fault) throws Exception {
         org.apache.cxf.binding.corba.wsdl.Exception corbaex = null;
         XmlSchemaType schemaType = null;
         Iterator<Part> parts = CastUtils.cast(fault.getMessage().getParts().values().iterator());
@@ -628,7 +602,7 @@ public class WSDLToCorbaBinding {
                 QName faultMsgName = helper.createQNameCorbaNamespace(faultName);
                 corbaex.setName(faultName);
                 corbaex.setQName(faultMsgName);
-                CorbaTypeImpl corbaTypeImpl =
+                CorbaType corbaTypeImpl =
                     helper.convertSchemaToCorbaType(schemaType, name, null, null, false);
                 if (corbaTypeImpl != null) {
                     MemberType member = new MemberType();
@@ -664,9 +638,9 @@ public class WSDLToCorbaBinding {
                 + corbaex.getName().replace('.', '/')
                 + WSDLToCorbaHelper.IDL_VERSION;
             corbaex.setRepositoryID(repoId);
-            CorbaTypeImpl corbaTypeImpl = corbaex;
+            CorbaType corbaTypeImpl = corbaex;
             if (!helper.isDuplicate(corbaTypeImpl)) {
-                CorbaTypeImpl dup = helper.isDuplicateException(corbaTypeImpl);
+                CorbaType dup = helper.isDuplicateException(corbaTypeImpl);
                 if (dup != null) {
                     typeMappingType.getStructOrExceptionOrUnion().remove(dup);
                     typeMappingType.getStructOrExceptionOrUnion().add(corbaTypeImpl);
@@ -872,10 +846,10 @@ public class WSDLToCorbaBinding {
     }
 
     public void cleanUpTypeMap(TypeMappingType typeMap) {
-        List<CorbaTypeImpl> types = typeMap.getStructOrExceptionOrUnion();
+        List<CorbaType> types = typeMap.getStructOrExceptionOrUnion();
         if (types != null) {
             for (int i = 0; i < types.size(); i++) {
-                CorbaTypeImpl type = types.get(i);
+                CorbaType type = types.get(i);
                 if (type.getQName() != null) {
                     type.setName(type.getQName().getLocalPart());
                     type.setQName(null);

http://git-wip-us.apache.org/repos/asf/cxf/blob/d214d105/tools/corba/src/main/java/org/apache/cxf/tools/corba/processors/wsdl/WSDLToCorbaHelper.java
----------------------------------------------------------------------
diff --git a/tools/corba/src/main/java/org/apache/cxf/tools/corba/processors/wsdl/WSDLToCorbaHelper.java b/tools/corba/src/main/java/org/apache/cxf/tools/corba/processors/wsdl/WSDLToCorbaHelper.java
index f288110..ad5fdfb 100644
--- a/tools/corba/src/main/java/org/apache/cxf/tools/corba/processors/wsdl/WSDLToCorbaHelper.java
+++ b/tools/corba/src/main/java/org/apache/cxf/tools/corba/processors/wsdl/WSDLToCorbaHelper.java
@@ -40,7 +40,7 @@ import org.apache.cxf.binding.corba.wsdl.Abstractanonsequence;
 import org.apache.cxf.binding.corba.wsdl.Abstractsequence;
 import org.apache.cxf.binding.corba.wsdl.CaseType;
 import org.apache.cxf.binding.corba.wsdl.CorbaConstants;
-import org.apache.cxf.binding.corba.wsdl.CorbaTypeImpl;
+import org.apache.cxf.binding.corba.wsdl.CorbaType;
 import org.apache.cxf.binding.corba.wsdl.Enum;
 import org.apache.cxf.binding.corba.wsdl.Enumerator;
 import org.apache.cxf.binding.corba.wsdl.MemberType;
@@ -104,7 +104,7 @@ public class WSDLToCorbaHelper {
     SchemaCollection xmlSchemaList;
     TypeMappingType typeMappingType;
     Definition def;
-    Map<QName, CorbaTypeImpl> recursionMap = new HashMap<QName, CorbaTypeImpl>();
+    Map<QName, CorbaType> recursionMap = new HashMap<QName, CorbaType>();
 
     public void setTypeMap(TypeMappingType map) {
         typeMappingType = map;
@@ -130,13 +130,13 @@ public class WSDLToCorbaHelper {
         def = defn;
     }
 
-    public CorbaTypeImpl convertSchemaToCorbaType(XmlSchemaType stype,
+    public CorbaType convertSchemaToCorbaType(XmlSchemaType stype,
                                                   QName defaultName,
                                                   XmlSchemaType parent,
                                                   XmlSchemaAnnotation annotation,
                                                   boolean anonymous)
         throws Exception {
-        CorbaTypeImpl corbaTypeImpl = null;
+        CorbaType corbaTypeImpl = null;
         if (!isAddressingNamespace(stype.getQName())) {
             // need to determine if its a primitive type.
             if (stype instanceof XmlSchemaComplexType) {
@@ -189,7 +189,7 @@ public class WSDLToCorbaHelper {
 
             if (container instanceof XmlSchemaSequence) {
                 XmlSchemaSequence sequence = (XmlSchemaSequence)container;
-                CorbaTypeImpl memberType =
+                CorbaType memberType =
                     processSequenceType(sequence, defaultName, schemaTypeName);
                 QName typeName = memberType.getQName();
                 if (memberType instanceof Struct
@@ -219,7 +219,7 @@ public class WSDLToCorbaHelper {
             } else if (container instanceof XmlSchemaElement) {
                 XmlSchemaElement element = (XmlSchemaElement)container;
 
-                CorbaTypeImpl corbatype = processLocalElement(defaultName, element, schemaTypeName.getNamespaceURI());
+                CorbaType corbatype = processLocalElement(defaultName, element, schemaTypeName.getNamespaceURI());
                 QName elName = element.getQName();
                 if (elName == null) {
                     elName = element.getRef().getTargetQName();
@@ -246,7 +246,7 @@ public class WSDLToCorbaHelper {
     private MemberType processChoiceMember(XmlSchemaChoice choice, QName defaultName,
         QName schemaTypeName) throws Exception {
 
-        CorbaTypeImpl corbatype = processChoice(choice, defaultName, schemaTypeName);
+        CorbaType corbatype = processChoice(choice, defaultName, schemaTypeName);
         MemberType member = new MemberType();
         member.setName(corbatype.getQName().getLocalPart());
         member.setIdltype(corbatype.getQName());
@@ -259,7 +259,7 @@ public class WSDLToCorbaHelper {
     private MemberType processAllMember(XmlSchemaAll all, QName defaultName,
         QName schemaTypeName) throws Exception {
 
-        CorbaTypeImpl corbatype = processAllType(all, defaultName, schemaTypeName);
+        CorbaType corbatype = processAllType(all, defaultName, schemaTypeName);
         MemberType member = new MemberType();
         member.setName(corbatype.getQName().getLocalPart());
         member.setIdltype(corbatype.getQName());
@@ -270,7 +270,7 @@ public class WSDLToCorbaHelper {
     }
 
 
-    private CorbaTypeImpl processChoice(XmlSchemaChoice choice,
+    private CorbaType processChoice(XmlSchemaChoice choice,
                                         QName defaultName,
                                         QName schemaTypeName)
         throws Exception {
@@ -283,14 +283,14 @@ public class WSDLToCorbaHelper {
         }
         choicename = checkPrefix(choicename);
 
-        CorbaTypeImpl corbatype = createUnion(choicename, choice, defaultName, schemaTypeName);
+        CorbaType corbatype = createUnion(choicename, choice, defaultName, schemaTypeName);
         String repoId = REPO_STRING + corbatype.getQName().getLocalPart().replace('.', '/')
             + IDL_VERSION;
         ((Union)corbatype).setRepositoryID(repoId);
 
         if (!(choice.getMaxOccurs() == 1) || !(choice.getMinOccurs() == 1)) {
             QName name = createQNameTargetNamespace(corbatype.getQName().getLocalPart() + "Array");
-            CorbaTypeImpl arrayType =
+            CorbaType arrayType =
                 createArray(name, corbatype.getQName(), corbatype.getQName(),
                             choice.getMaxOccurs(), choice.getMinOccurs(), false);
 
@@ -302,9 +302,9 @@ public class WSDLToCorbaHelper {
         return corbatype;
     }
 
-    private CorbaTypeImpl processLocalElement(QName containingTypeName,
+    private CorbaType processLocalElement(QName containingTypeName,
                                               XmlSchemaElement element, String uri) throws Exception {
-        CorbaTypeImpl membertype = new CorbaTypeImpl();
+        CorbaType membertype = new CorbaType();
 
         XmlSchemaType schemaType = element.getSchemaType();
         QName schemaName = element.getQName();
@@ -327,14 +327,14 @@ public class WSDLToCorbaHelper {
 
         QName memName = null;
         if (element.isNillable()) {
-            CorbaTypeImpl elemtype = convertSchemaToCorbaType(schemaType, elemName,
+            CorbaType elemtype = convertSchemaToCorbaType(schemaType, elemName,
                                                               schemaType, null, true);
             QName name = createQNameTargetNamespace(elemtype.getQName().getLocalPart() + "_nil");
             QName elName = checkPrefix(elemName);
             if (elName ==  null) {
                 elName = createQNameTargetNamespace(elemName.getLocalPart());
             }
-            CorbaTypeImpl memtype = createNillableUnion(elName,
+            CorbaType memtype = createNillableUnion(elName,
                                           name,
                                           elemtype.getQName(),
                                           elementQualified);
@@ -368,7 +368,7 @@ public class WSDLToCorbaHelper {
         if (!(element.getMaxOccurs() == 1) || !(element.getMinOccurs() == 1)) {
             QName name = createQNameCorbaNamespace(getModulePrefix(membertype)
                                                     + elemName.getLocalPart() + "Array");
-            CorbaTypeImpl arraytype = null;
+            CorbaType arraytype = null;
             if (memName != null) {
                 arraytype = createArray(name, /*schemaName*/name, memName, elemName,
                                         element.getMaxOccurs(), element.getMinOccurs(), false);
@@ -418,17 +418,17 @@ public class WSDLToCorbaHelper {
         return type;
     }
 
-    private String getModulePrefix(CorbaTypeImpl type) {
+    private String getModulePrefix(CorbaType type) {
         String name = type.getQName().getLocalPart();
         int dotPos = name.lastIndexOf(".");
         return dotPos == -1 ? "" : name.substring(0, dotPos + 1);
     }
 
 
-    protected CorbaTypeImpl processSequenceType(XmlSchemaSequence seq,
+    protected CorbaType processSequenceType(XmlSchemaSequence seq,
                                                 QName defaultName, QName schemaTypeName)
         throws Exception {
-        CorbaTypeImpl type = null;
+        CorbaType type = null;
         QName seqName = null;
         if (schemaTypeName == null) {
             seqName = createQNameCorbaNamespace(defaultName.getLocalPart() + "SequenceStruct");
@@ -452,7 +452,7 @@ public class WSDLToCorbaHelper {
 
         if (seq.getMaxOccurs() != 1 || seq.getMinOccurs() != 1) {
             QName name = createQNameTargetNamespace(type.getQName().getLocalPart() + "Array");
-            CorbaTypeImpl atype = createArray(name, type.getQName(), type.getQName(),
+            CorbaType atype = createArray(name, type.getQName(), type.getQName(),
                                               seq.getMaxOccurs(), seq.getMinOccurs(), false);
 
             if (atype != null
@@ -473,7 +473,7 @@ public class WSDLToCorbaHelper {
     }
 
 
-    protected CorbaTypeImpl processAllType(XmlSchemaAll seq, QName defaultName,
+    protected CorbaType processAllType(XmlSchemaAll seq, QName defaultName,
                                            QName schematypeName) throws Exception {
         QName allName = null;
         Struct type = null;
@@ -499,12 +499,12 @@ public class WSDLToCorbaHelper {
         return type;
     }
 
-    private CorbaTypeImpl processPrimitiveType(QName typeName) {
+    private CorbaType processPrimitiveType(QName typeName) {
         QName qName = createQNameXmlSchemaNamespace(typeName.getLocalPart());
-        CorbaTypeImpl corbatype = (CorbaTypeImpl)CORBAPRIMITIVEMAP.get(qName);
+        CorbaType corbatype = (CorbaType)CORBAPRIMITIVEMAP.get(qName);
         if (corbatype == null) {
             //REVISIT, bravi, not an ideal way to add the fixed & octet type to the typemap.
-            CorbaTypeImpl type = null;
+            CorbaType type = null;
             if (typeName.equals(W3CConstants.NT_SCHEMA_DECIMAL)) {
                 QName name = new QName(idlNamespace, "fixed_1");
                 type = WSDLTypes.getFixedCorbaType(name, typeName, 31, 6);
@@ -538,11 +538,11 @@ public class WSDLToCorbaHelper {
             if (attrName.getNamespaceURI().equals("")) {
                 attrName = new QName(uri, attrName.getLocalPart());
             }
-            CorbaTypeImpl membertype = null;
+            CorbaType membertype = null;
             boolean attrQualified = getAttributeQualification(attribute, uri);
             if (attribute.getUse() == XmlSchemaUse.NONE
                 || attribute.getUse() == XmlSchemaUse.OPTIONAL) {
-                CorbaTypeImpl attType = null;
+                CorbaType attType = null;
                 if (attribute.getSchemaType() != null) {
                     // REVISIT, edell bug in XmlSchema 1.2.
                     // https://issues.apache.org/jira/browse/WSCOMMONS-208
@@ -616,7 +616,7 @@ public class WSDLToCorbaHelper {
         return members;
     }
 
-    private CorbaTypeImpl processElementType(XmlSchemaElement stype, QName defaultName, String uri)
+    private CorbaType processElementType(XmlSchemaElement stype, QName defaultName, String uri)
         throws Exception {
 
         String name = null;
@@ -636,18 +636,18 @@ public class WSDLToCorbaHelper {
         if (schemaTypeName == null) {
             schemaTypeName = createQNameTargetNamespace(name);
         }
-        CorbaTypeImpl result = convertSchemaToCorbaType(schemaType, schemaTypeName,
+        CorbaType result = convertSchemaToCorbaType(schemaType, schemaTypeName,
                                                         schemaType, null, false);
 
         result.setQualified(getElementQualification(stype, uri));
         return result;
     }
 
-    private CorbaTypeImpl processSimpleType(XmlSchemaSimpleType stype, QName defaultName,
+    private CorbaType processSimpleType(XmlSchemaSimpleType stype, QName defaultName,
                                             boolean anonymous)
         throws Exception {
 
-        CorbaTypeImpl corbaTypeImpl = null;
+        CorbaType corbaTypeImpl = null;
         QName name;
         QName schematypeName = null;
 
@@ -670,7 +670,7 @@ public class WSDLToCorbaHelper {
             corbaTypeImpl = processSimpleRestrictionType(stype, name, schematypeName, anonymous);
         } else if (stype.getContent() instanceof XmlSchemaSimpleTypeList) {
             XmlSchemaSimpleTypeList ltype = (XmlSchemaSimpleTypeList)stype.getContent();
-            CorbaTypeImpl itemType = null;
+            CorbaType itemType = null;
             if (ltype.getItemType() != null) {
                 itemType = convertSchemaToCorbaType(ltype.getItemType(), name, stype, null, false);
                 if (itemType != null) {
@@ -704,11 +704,11 @@ public class WSDLToCorbaHelper {
 
     }
 
-    private CorbaTypeImpl processSimpleRestrictionType(XmlSchemaSimpleType stype,
+    private CorbaType processSimpleRestrictionType(XmlSchemaSimpleType stype,
                                                        QName name, QName schematypeName,
                                                        boolean anonymous)
         throws Exception {
-        CorbaTypeImpl corbaTypeImpl = null;
+        CorbaType corbaTypeImpl = null;
 
         // checks if enumeration
         XmlSchemaSimpleTypeRestriction restrictionType = (XmlSchemaSimpleTypeRestriction)stype
@@ -765,7 +765,7 @@ public class WSDLToCorbaHelper {
         return corbaTypeImpl;
     }
 
-    private CorbaTypeImpl getLocalType(QName qname) {
+    private CorbaType getLocalType(QName qname) {
         return processPrimitiveType(qname);
     }
 
@@ -908,7 +908,7 @@ public class WSDLToCorbaHelper {
      * maxOccurs == 1 then log warning and return null. Else if minOccurs is
      * equal to maxOccurs then create an Array. Else create a Sequence
      */
-    protected CorbaTypeImpl createArray(QName name, QName schematypeName, QName arrayType,
+    protected CorbaType createArray(QName name, QName schematypeName, QName arrayType,
                                         Long maxOccurs, Long minOccurs, boolean anonymous) {
         return createArray(name, schematypeName, arrayType, null, maxOccurs, minOccurs, anonymous);
     }
@@ -917,7 +917,7 @@ public class WSDLToCorbaHelper {
      * maxOccurs == 1 then log warning and return null. Else if minOccurs is
      * equal to maxOccurs then create an Array. Else create a Sequence
      */
-    protected CorbaTypeImpl createArray(QName name, QName schematypeName, QName arrayType, QName elName,
+    protected CorbaType createArray(QName name, QName schematypeName, QName arrayType, QName elName,
                                         Long maxOccurs, Long minOccurs, boolean anonymous) {
 
         int max = maxOccurs.intValue();
@@ -949,10 +949,10 @@ public class WSDLToCorbaHelper {
     }
 
 
-    private CorbaTypeImpl processComplexType(XmlSchemaComplexType complex, QName defaultName,
+    private CorbaType processComplexType(XmlSchemaComplexType complex, QName defaultName,
                                              XmlSchemaAnnotation annotation,
                                              boolean anonymous) throws Exception {
-        CorbaTypeImpl corbatype = null;
+        CorbaType corbatype = null;
         if (isLiteralArray(complex)) {
             corbatype = processLiteralArray(complex, defaultName, anonymous);
         } else if (WSDLTypes.isOMGUnion(complex)) {
@@ -971,7 +971,7 @@ public class WSDLToCorbaHelper {
     }
 
 
-    private CorbaTypeImpl processStruct(XmlSchemaComplexType complex, QName defaultName)
+    private CorbaType processStruct(XmlSchemaComplexType complex, QName defaultName)
         throws Exception {
         QName name;
         Struct corbaStruct = null;
@@ -1045,7 +1045,7 @@ public class WSDLToCorbaHelper {
         throws Exception {
         XmlSchemaType base = null;
         List<MemberType> attrMembers = null;
-        CorbaTypeImpl basetype = null;
+        CorbaType basetype = null;
 
         String uri;
         if (schematypeName != null) {
@@ -1191,7 +1191,7 @@ public class WSDLToCorbaHelper {
                                                  QName defaultName, QName schematypeName)
         throws Exception {
 
-        CorbaTypeImpl seqtype =
+        CorbaType seqtype =
             processSequenceType(seq, defaultName, schematypeName);
 
         MemberType seqmem = new MemberType();
@@ -1214,7 +1214,7 @@ public class WSDLToCorbaHelper {
                                                   QName defaultName, QName schematypeName)
         throws Exception {
 
-        CorbaTypeImpl alltype = processAllType(all, defaultName, schematypeName);
+        CorbaType alltype = processAllType(all, defaultName, schematypeName);
         MemberType allmem = new MemberType();
         allmem.setName(alltype.getQName().getLocalPart() + "_f");
         allmem.setIdltype(alltype.getQName());
@@ -1255,7 +1255,7 @@ public class WSDLToCorbaHelper {
         return choicemem;
     }
 
-    protected CorbaTypeImpl createNillableUnion(QName name,
+    protected CorbaType createNillableUnion(QName name,
                                                 QName schemaType,
                                                 QName membertype,
                                                 boolean isQualified) {
@@ -1283,7 +1283,7 @@ public class WSDLToCorbaHelper {
         return nilUnion;
     }
 
-    private CorbaTypeImpl processLiteralArray(XmlSchemaComplexType complex, QName defaultName,
+    private CorbaType processLiteralArray(XmlSchemaComplexType complex, QName defaultName,
                                               boolean anonymous) throws Exception {
         // NEED TO DO
         QName name;
@@ -1301,7 +1301,7 @@ public class WSDLToCorbaHelper {
             name = checkPrefix(name);
         }
 
-        CorbaTypeImpl arrayType = null;
+        CorbaType arrayType = null;
         XmlSchemaElement arrayEl = null;
         QName elName = null;
         if (complex.getParticle() instanceof XmlSchemaSequence) {
@@ -1370,7 +1370,7 @@ public class WSDLToCorbaHelper {
                            maxOccurs, minOccurs, anonymous);
     }
 
-    private CorbaTypeImpl processOMGUnion(XmlSchemaComplexType complex, QName defaultName) throws Exception {
+    private CorbaType processOMGUnion(XmlSchemaComplexType complex, QName defaultName) throws Exception {
         QName name;
         Union corbaUnion = null;
         QName schematypeName = checkPrefix(complex.getQName());
@@ -1404,7 +1404,7 @@ public class WSDLToCorbaHelper {
             choice = (XmlSchemaChoice)st1;
         }
 
-        CorbaTypeImpl disctype = convertSchemaToCorbaType(discEl.getSchemaType(), discEl.getQName(), discEl
+        CorbaType disctype = convertSchemaToCorbaType(discEl.getSchemaType(), discEl.getQName(), discEl
             .getSchemaType(), null, false);
         corbaUnion.setDiscriminator(disctype.getQName());
 
@@ -1453,7 +1453,7 @@ public class WSDLToCorbaHelper {
     }
 
 
-    private CorbaTypeImpl processRegularUnion(XmlSchemaComplexType complex,
+    private CorbaType processRegularUnion(XmlSchemaComplexType complex,
                                               QName defaultName) throws Exception {
         //NEED TO DO
         QName name = null;
@@ -1512,18 +1512,18 @@ public class WSDLToCorbaHelper {
         return corbaUnion;
     }
 
-    protected boolean isDuplicate(CorbaTypeImpl corbaTypeImpl) {
+    protected boolean isDuplicate(CorbaType corbaTypeImpl) {
         String corbaName = corbaTypeImpl.getName();
         QName corbaType = corbaTypeImpl.getType();
 
         QName primName = createQNameXmlSchemaNamespace(corbaName);
-        if ((CorbaTypeImpl)CORBAPRIMITIVEMAP.get(primName) != null) {
+        if ((CorbaType)CORBAPRIMITIVEMAP.get(primName) != null) {
             return true;
         }
         if (!typeMappingType.getStructOrExceptionOrUnion().isEmpty()) {
-            Iterator<CorbaTypeImpl> i = typeMappingType.getStructOrExceptionOrUnion().iterator();
+            Iterator<CorbaType> i = typeMappingType.getStructOrExceptionOrUnion().iterator();
             while (i.hasNext()) {
-                CorbaTypeImpl type = i.next();
+                CorbaType type = i.next();
                 if ((corbaName != null) && type.getType() != null && corbaType != null
                     && (corbaName.equals(type.getName()))
                     && (corbaType.getLocalPart().equals(type.getType().getLocalPart()))
@@ -1536,14 +1536,14 @@ public class WSDLToCorbaHelper {
     }
 
 
-    protected CorbaTypeImpl isDuplicateException(CorbaTypeImpl corbaTypeImpl) {
-        CorbaTypeImpl duplicate = null;
+    protected CorbaType isDuplicateException(CorbaType corbaTypeImpl) {
+        CorbaType duplicate = null;
         String corbaName = corbaTypeImpl.getName();
         String corbaType = corbaTypeImpl.getType().getLocalPart();
         if (!typeMappingType.getStructOrExceptionOrUnion().isEmpty()) {
-            Iterator<CorbaTypeImpl> i = typeMappingType.getStructOrExceptionOrUnion().iterator();
+            Iterator<CorbaType> i = typeMappingType.getStructOrExceptionOrUnion().iterator();
             while (i.hasNext()) {
-                CorbaTypeImpl type = i.next();
+                CorbaType type = i.next();
                 if (corbaName.equals(type.getName())
                     && corbaType.equals(type.getType().getLocalPart())
                     && type instanceof Struct) {

http://git-wip-us.apache.org/repos/asf/cxf/blob/d214d105/tools/corba/src/main/java/org/apache/cxf/tools/corba/processors/wsdl/WSDLToIDLAction.java
----------------------------------------------------------------------
diff --git a/tools/corba/src/main/java/org/apache/cxf/tools/corba/processors/wsdl/WSDLToIDLAction.java b/tools/corba/src/main/java/org/apache/cxf/tools/corba/processors/wsdl/WSDLToIDLAction.java
index ac8e106..502cdf7 100644
--- a/tools/corba/src/main/java/org/apache/cxf/tools/corba/processors/wsdl/WSDLToIDLAction.java
+++ b/tools/corba/src/main/java/org/apache/cxf/tools/corba/processors/wsdl/WSDLToIDLAction.java
@@ -27,15 +27,11 @@ import java.util.Collection;
 import java.util.Iterator;
 import java.util.List;
 import java.util.StringTokenizer;
-import java.util.logging.Level;
 import java.util.logging.Logger;
 
 import javax.wsdl.Binding;
 import javax.wsdl.BindingOperation;
 import javax.wsdl.Definition;
-import javax.wsdl.Port;
-import javax.wsdl.extensions.ExtensionRegistry;
-import javax.xml.bind.JAXBException;
 import javax.xml.namespace.QName;
 
 import org.apache.cxf.binding.corba.wsdl.Alias;
@@ -49,7 +45,7 @@ import org.apache.cxf.binding.corba.wsdl.BindingType;
 import org.apache.cxf.binding.corba.wsdl.CaseType;
 import org.apache.cxf.binding.corba.wsdl.Const;
 import org.apache.cxf.binding.corba.wsdl.CorbaConstants;
-import org.apache.cxf.binding.corba.wsdl.CorbaTypeImpl;
+import org.apache.cxf.binding.corba.wsdl.CorbaType;
 import org.apache.cxf.binding.corba.wsdl.Enum;
 import org.apache.cxf.binding.corba.wsdl.Enumerator;
 import org.apache.cxf.binding.corba.wsdl.Fixed;
@@ -91,7 +87,6 @@ import org.apache.cxf.tools.corba.common.idltypes.IdlUnion;
 import org.apache.cxf.tools.corba.common.idltypes.IdlUnionBranch;
 import org.apache.cxf.tools.corba.utils.FileOutputStreamFactory;
 import org.apache.cxf.tools.corba.utils.OutputStreamFactory;
-import org.apache.cxf.wsdl.JAXBExtensionHelper;
 
 public class WSDLToIDLAction {
         
@@ -106,7 +101,6 @@ public class WSDLToIDLAction {
     private Definition def;
     private IdlRoot root = IdlRoot.create();
     private IdlInterface intf;
-    private ExtensionRegistry extReg;
     private WSDLToTypeProcessor typeProcessor = new WSDLToTypeProcessor(); 
     private boolean generateAllBindings;    
 
@@ -120,8 +114,6 @@ public class WSDLToIDLAction {
         } else {
             def = definition;
         }
-        extReg = def.getExtensionRegistry();
-
         if (printWriter == null) {
             printWriter = createPrintWriter(outputFile);
         }
@@ -163,32 +155,6 @@ public class WSDLToIDLAction {
         
     }
 
-    
-    public void addExtensions(ExtensionRegistry extRegistry) throws JAXBException {
-        extReg = extRegistry;
-        try {
-                      
-            JAXBExtensionHelper.addExtensions(extReg, Binding.class, BindingType.class);
-            JAXBExtensionHelper.addExtensions(extReg, BindingOperation.class,
-                                              org.apache.cxf.binding.corba.wsdl.OperationType.class);
-            JAXBExtensionHelper.addExtensions(extReg, Definition.class, TypeMappingType.class);
-            JAXBExtensionHelper.addExtensions(extReg, Port.class,
-                                              org.apache.cxf.binding.corba.wsdl.AddressType.class);
-
-            extReg.mapExtensionTypes(Binding.class, CorbaConstants.NE_CORBA_BINDING, BindingType.class);
-            extReg.mapExtensionTypes(BindingOperation.class, CorbaConstants.NE_CORBA_OPERATION,
-                                     org.apache.cxf.binding.corba.wsdl.OperationType.class);
-            extReg.mapExtensionTypes(Definition.class, CorbaConstants.NE_CORBA_TYPEMAPPING,
-                                     TypeMappingType.class);
-            extReg.mapExtensionTypes(Port.class, CorbaConstants.NE_CORBA_ADDRESS,
-                                     org.apache.cxf.binding.corba.wsdl.AddressType.class);
-
-        } catch (javax.xml.bind.JAXBException ex) {
-            LOG.log(Level.SEVERE, "Failing to serialize/deserialize extensions", ex);
-            throw new JAXBException(ex.getMessage());
-        }
-    }    
-
     private void generateIDL(Definition definition, Binding binding) {
         List<?> ext = binding.getExtensibilityElements();
         if (!(ext.get(0) instanceof BindingType)) {
@@ -326,7 +292,7 @@ public class WSDLToIDLAction {
         try {
             TypeMappingType typeMappingType = getTypeMappingType();
             if (typeMappingType != null) {
-                for (CorbaTypeImpl corbaTypeImpl 
+                for (CorbaType corbaTypeImpl 
                     : typeMappingType.getStructOrExceptionOrUnion()) {                                
                     findCorbaIdlType(corbaTypeImpl);
                 }
@@ -336,13 +302,13 @@ public class WSDLToIDLAction {
         }
     }
 
-    private CorbaTypeImpl getCorbaType(QName qname) throws Exception {    
-        CorbaTypeImpl corbaTypeImpl = null;
+    private CorbaType getCorbaType(QName qname) throws Exception {    
+        CorbaType corbaTypeImpl = null;
 
         try {
             TypeMappingType typeMappingType = getTypeMappingType();
             if (typeMappingType != null) {
-                for (CorbaTypeImpl corbaType : typeMappingType.getStructOrExceptionOrUnion()) {
+                for (CorbaType corbaType : typeMappingType.getStructOrExceptionOrUnion()) {
                     if (corbaType.getName().equals(qname.getLocalPart())) {                    
                         return corbaType;
                     }
@@ -368,13 +334,13 @@ public class WSDLToIDLAction {
         return findIdlType(local, qname, null);                
     }
 
-    private IdlType findCorbaIdlType(CorbaTypeImpl corbaTypeImpl) throws Exception {        
+    private IdlType findCorbaIdlType(CorbaType corbaTypeImpl) throws Exception {        
         String local = corbaTypeImpl.getName();        
         return findIdlType(local, corbaTypeImpl.getType(), corbaTypeImpl);                
     }
     
     private IdlType findIdlType(String local, QName ntype, 
-                                  CorbaTypeImpl corbatypeImpl) throws Exception {
+                                  CorbaType corbatypeImpl) throws Exception {
         IdlType idlType = null;
         
         if (ntype.getNamespaceURI().equals(CorbaConstants.NU_WSDL_CORBA)) {
@@ -432,12 +398,12 @@ public class WSDLToIDLAction {
         return (IdlType)result;
     }
        
-    protected IdlType createType(QName idlType, String name[], CorbaTypeImpl corbaType) throws Exception {
+    protected IdlType createType(QName idlType, String name[], CorbaType corbaType) throws Exception {
         if (idlType.getLocalPart().equals("CORBA.Object")) {
             return IdlInterface.create(null, "Object");
         }        
 
-        CorbaTypeImpl  corbaTypeImpl = corbaType;
+        CorbaType  corbaTypeImpl = corbaType;
         if (corbaTypeImpl == null) {
             corbaTypeImpl = getCorbaType(idlType);
         }
@@ -479,7 +445,7 @@ public class WSDLToIDLAction {
                 // Check to see if CORBAType exists. If so, create type for it
                 // otherwise
                 // create module for this scope               
-                CorbaTypeImpl possibleCorbaType = getCorbaType(qname);
+                CorbaType possibleCorbaType = getCorbaType(qname);
 
                 if (possibleCorbaType != null) {
                     idlDef = findType(qname);                    
@@ -534,7 +500,7 @@ public class WSDLToIDLAction {
         return result; 
     }
 
-    private IdlType checkAnon(CorbaTypeImpl corbaTypeImpl, IdlScopeBase scope, 
+    private IdlType checkAnon(CorbaType corbaTypeImpl, IdlScopeBase scope, 
                               String local) throws Exception {
         IdlType result = null;
         

http://git-wip-us.apache.org/repos/asf/cxf/blob/d214d105/tools/corba/src/main/java/org/apache/cxf/tools/corba/processors/wsdl/WSDLTypes.java
----------------------------------------------------------------------
diff --git a/tools/corba/src/main/java/org/apache/cxf/tools/corba/processors/wsdl/WSDLTypes.java b/tools/corba/src/main/java/org/apache/cxf/tools/corba/processors/wsdl/WSDLTypes.java
index 5e1ffa2..36fafb3 100644
--- a/tools/corba/src/main/java/org/apache/cxf/tools/corba/processors/wsdl/WSDLTypes.java
+++ b/tools/corba/src/main/java/org/apache/cxf/tools/corba/processors/wsdl/WSDLTypes.java
@@ -41,7 +41,7 @@ import org.apache.cxf.binding.corba.wsdl.Array;
 import org.apache.cxf.binding.corba.wsdl.BindingType;
 import org.apache.cxf.binding.corba.wsdl.CaseType;
 import org.apache.cxf.binding.corba.wsdl.CorbaConstants;
-import org.apache.cxf.binding.corba.wsdl.CorbaTypeImpl;
+import org.apache.cxf.binding.corba.wsdl.CorbaType;
 import org.apache.cxf.binding.corba.wsdl.Fixed;
 import org.apache.cxf.binding.corba.wsdl.MemberType;
 import org.apache.cxf.binding.corba.wsdl.Sequence;
@@ -70,11 +70,11 @@ public final class WSDLTypes {
     private WSDLTypes() {
     }
 
-    public static CorbaTypeImpl processObject(Definition definition, XmlSchemaComplexType complex,
+    public static CorbaType processObject(Definition definition, XmlSchemaComplexType complex,
                                               XmlSchemaAnnotation annotation, QName typeName,
                                               QName defaultName, String idlNamespace)
         throws Exception {
-        CorbaTypeImpl corbaTypeImpl = null;
+        CorbaType corbaTypeImpl = null;
 
         if (annotation != null) {
             for (XmlSchemaAnnotationItem item : annotation.getItems()) {
@@ -142,7 +142,7 @@ public final class WSDLTypes {
     }
 
 
-    public static CorbaTypeImpl processStringType(CorbaTypeImpl corbaTypeImpl, QName name,
+    public static CorbaType processStringType(CorbaType corbaTypeImpl, QName name,
                                                   String maxLength, String length) throws Exception {
         boolean boundedString = true;
         int bound = 0;
@@ -173,9 +173,9 @@ public final class WSDLTypes {
         return corbaTypeImpl;
     }
 
-    public static CorbaTypeImpl mapToArray(QName name, QName schematypeName, QName arrayType,
+    public static CorbaType mapToArray(QName name, QName schematypeName, QName arrayType,
                                            QName elName, int bound, boolean anonymous) {
-        CorbaTypeImpl corbatype = null;
+        CorbaType corbatype = null;
 
         //schematypeName = checkPrefix(schematypeName);
 
@@ -206,9 +206,9 @@ public final class WSDLTypes {
         return corbatype;
     }
 
-    public static CorbaTypeImpl mapToSequence(QName name, QName schematypeName, QName arrayType,
+    public static CorbaType mapToSequence(QName name, QName schematypeName, QName arrayType,
                                               QName elName, int bound, boolean anonymous) {
-        CorbaTypeImpl corbaTypeImpl = null;
+        CorbaType corbaTypeImpl = null;
 
         //schematypeName = checkPrefix(schematypeName);
         if (!anonymous) {
@@ -302,8 +302,8 @@ public final class WSDLTypes {
     }
 
 
-    public static CorbaTypeImpl processDecimalType(XmlSchemaSimpleTypeRestriction restrictionType,
-                                                   QName name, CorbaTypeImpl corbaTypeImpl,
+    public static CorbaType processDecimalType(XmlSchemaSimpleTypeRestriction restrictionType,
+                                                   QName name, CorbaType corbaTypeImpl,
                                                    boolean anonymous) throws Exception {
 
         String tdigits = null;
@@ -395,7 +395,7 @@ public final class WSDLTypes {
     }
 
 
-    public static CorbaTypeImpl processBase64Type(CorbaTypeImpl corbaTypeImpl, QName name,
+    public static CorbaType processBase64Type(CorbaType corbaTypeImpl, QName name,
                                                   String maxLength, String length)
         throws Exception {
         int bound = 0;
@@ -442,7 +442,7 @@ public final class WSDLTypes {
         return anonymous;
     }
 
-    public static CorbaTypeImpl getFixedCorbaType(QName name, QName stype, int digits, int scale) {
+    public static CorbaType getFixedCorbaType(QName name, QName stype, int digits, int scale) {
         Fixed fixed = new Fixed();
         fixed.setName(name.getLocalPart());
         fixed.setQName(name);
@@ -455,7 +455,7 @@ public final class WSDLTypes {
         return fixed;
     }
 
-    public static CorbaTypeImpl getAnonFixedCorbaType(QName name, QName stype, int digits, int scale) {
+    public static CorbaType getAnonFixedCorbaType(QName name, QName stype, int digits, int scale) {
         Anonfixed fixed = new Anonfixed();
         fixed.setName(name.getLocalPart());
         fixed.setQName(name);
@@ -465,7 +465,7 @@ public final class WSDLTypes {
         return fixed;
     }
 
-    public static CorbaTypeImpl getOctetCorbaType(QName name, QName stype, int bound) {
+    public static CorbaType getOctetCorbaType(QName name, QName stype, int bound) {
         Sequence seq = new Sequence();
         seq.setName(name.getLocalPart());
         seq.setQName(name);

http://git-wip-us.apache.org/repos/asf/cxf/blob/d214d105/tools/corba/src/test/java/org/apache/cxf/tools/corba/common/CorbaPrimitiveMapTest.java
----------------------------------------------------------------------
diff --git a/tools/corba/src/test/java/org/apache/cxf/tools/corba/common/CorbaPrimitiveMapTest.java b/tools/corba/src/test/java/org/apache/cxf/tools/corba/common/CorbaPrimitiveMapTest.java
index f81830f..bf278cb 100644
--- a/tools/corba/src/test/java/org/apache/cxf/tools/corba/common/CorbaPrimitiveMapTest.java
+++ b/tools/corba/src/test/java/org/apache/cxf/tools/corba/common/CorbaPrimitiveMapTest.java
@@ -25,17 +25,17 @@ import javax.xml.namespace.QName;
 
 import junit.framework.TestCase;
 
-import org.apache.cxf.binding.corba.wsdl.CorbaTypeImpl;
+import org.apache.cxf.binding.corba.wsdl.CorbaType;
 
 public class CorbaPrimitiveMapTest extends TestCase {
 
     public void testMap() {
 
-        Map<QName, CorbaTypeImpl> map = new HashMap<QName, CorbaTypeImpl>();
+        Map<QName, CorbaType> map = new HashMap<QName, CorbaType>();
         QName corbaName = new QName("http://cxf.apache.org/bindings/corba", "string", "corba");
         QName typeName = new QName("http://www.w3.org/2001/XMLSchema", "string");
 
-        CorbaTypeImpl corbaTypeImpl = new CorbaTypeImpl();
+        CorbaType corbaTypeImpl = new CorbaType();
         corbaTypeImpl.setQName(corbaName);
         corbaTypeImpl.setType(typeName);
         corbaTypeImpl.setName(corbaName.getLocalPart());

http://git-wip-us.apache.org/repos/asf/cxf/blob/d214d105/tools/corba/src/test/java/org/apache/cxf/tools/corba/processors/IDLToWSDLGenerationTest.java
----------------------------------------------------------------------
diff --git a/tools/corba/src/test/java/org/apache/cxf/tools/corba/processors/IDLToWSDLGenerationTest.java b/tools/corba/src/test/java/org/apache/cxf/tools/corba/processors/IDLToWSDLGenerationTest.java
index 1289919..e3de3e1 100644
--- a/tools/corba/src/test/java/org/apache/cxf/tools/corba/processors/IDLToWSDLGenerationTest.java
+++ b/tools/corba/src/test/java/org/apache/cxf/tools/corba/processors/IDLToWSDLGenerationTest.java
@@ -61,6 +61,7 @@ public class IDLToWSDLGenerationTest extends ProcessorTestBase {
         addQNameAttribute(new QName(CorbaConstants.NU_WSDL_CORBA, "object"), "binding");
         addQNameAttribute(new QName(CorbaConstants.NU_WSDL_CORBA, "enum"), "type");
         addQNameAttribute(new QName(CorbaConstants.NU_WSDL_CORBA, "union"), "type");
+        addQNameAttribute(new QName(CorbaConstants.NU_WSDL_CORBA, "union"), "discriminator");
         addQNameAttribute(new QName(CorbaConstants.NU_WSDL_CORBA, "unionbranch"), "idltype");
         addQNameAttribute(new QName(CorbaConstants.NU_WSDL_CORBA, "anonstring"), "type");
         addQNameAttribute(new QName(CorbaConstants.NU_WSDL_CORBA, "anonwstring"), "type");
@@ -75,6 +76,11 @@ public class IDLToWSDLGenerationTest extends ProcessorTestBase {
         addQNameAttribute(new QName(CorbaConstants.NU_WSDL_CORBA, "alias"), "basetype");
         addQNameAttribute(new QName(CorbaConstants.NU_WSDL_CORBA, "anonsequence"), "type");
         addQNameAttribute(new QName(CorbaConstants.NU_WSDL_CORBA, "anonsequence"), "elemtype");
+        addQNameAttribute(new QName(CorbaConstants.NU_WSDL_CORBA, "anonarray"), "type");
+        addQNameAttribute(new QName(CorbaConstants.NU_WSDL_CORBA, "anonarray"), "elemtype");
+        addQNameAttribute(new QName(CorbaConstants.NU_WSDL_CORBA, "param"), "idltype");
+        addQNameAttribute(new QName(CorbaConstants.NU_WSDL_CORBA, "return"), "idltype");
+        addQNameAttribute(new QName(CorbaConstants.NU_WSDL_CORBA, "raises"), "exception");
 
     }
 
@@ -96,11 +102,11 @@ public class IDLToWSDLGenerationTest extends ProcessorTestBase {
         processor.setOutputWriter(out);        
         processor.process();
 
-        InputStream origStream = getClass().getResourceAsStream(expectedWsdlFilename);  
+        URL orig = getClass().getResource(expectedWsdlFilename);  
         InputStream actualStream = new ByteArrayInputStream(out.toString().getBytes());
 
         System.out.println(out.toString());
-        assertWsdlEquals(origStream, actualStream, DEFAULT_IGNORE_ATTR, DEFAULT_IGNORE_TAG);
+        assertWsdlEquals(orig.openStream(), actualStream, DEFAULT_IGNORE_ATTR, DEFAULT_IGNORE_TAG);
     }
     
     @Test

http://git-wip-us.apache.org/repos/asf/cxf/blob/d214d105/tools/corba/src/test/java/org/apache/cxf/tools/corba/processors/WSDLToCorbaBindingTest.java
----------------------------------------------------------------------
diff --git a/tools/corba/src/test/java/org/apache/cxf/tools/corba/processors/WSDLToCorbaBindingTest.java b/tools/corba/src/test/java/org/apache/cxf/tools/corba/processors/WSDLToCorbaBindingTest.java
index bfea341..616e939 100644
--- a/tools/corba/src/test/java/org/apache/cxf/tools/corba/processors/WSDLToCorbaBindingTest.java
+++ b/tools/corba/src/test/java/org/apache/cxf/tools/corba/processors/WSDLToCorbaBindingTest.java
@@ -45,7 +45,7 @@ import org.apache.cxf.binding.corba.wsdl.Anonsequence;
 import org.apache.cxf.binding.corba.wsdl.Array;
 import org.apache.cxf.binding.corba.wsdl.BindingType;
 import org.apache.cxf.binding.corba.wsdl.CorbaConstants;
-import org.apache.cxf.binding.corba.wsdl.CorbaTypeImpl;
+import org.apache.cxf.binding.corba.wsdl.CorbaType;
 import org.apache.cxf.binding.corba.wsdl.Fixed;
 import org.apache.cxf.binding.corba.wsdl.OperationType;
 import org.apache.cxf.binding.corba.wsdl.ParamType;
@@ -144,8 +144,8 @@ public class WSDLToCorbaBindingTest extends Assert {
                                 "YCORBABinding", "tns");
         Binding binding = model.getBinding(bName);
         TypeMappingType mapType = (TypeMappingType)model.getExtensibilityElements().get(0);
-        Map<String, CorbaTypeImpl> tmap = new HashMap<String, CorbaTypeImpl>();
-        for (CorbaTypeImpl type : mapType.getStructOrExceptionOrUnion()) {
+        Map<String, CorbaType> tmap = new HashMap<String, CorbaType>();
+        for (CorbaType type : mapType.getStructOrExceptionOrUnion()) {
             tmap.put(type.getName(), type);
         }
         
@@ -168,7 +168,7 @@ public class WSDLToCorbaBindingTest extends Assert {
     }
      
     private void checkSequenceType(BindingOperation bindingOperation,
-                                   Map<String, CorbaTypeImpl> mapType) {
+                                   Map<String, CorbaType> mapType) {
         for (ExtensibilityElement extElement : getExtensibilityElements(bindingOperation)) {
             if (extElement.getElementType().getLocalPart().equals("operation")) {
                 OperationType corbaOpType = (OperationType)extElement;
@@ -185,7 +185,7 @@ public class WSDLToCorbaBindingTest extends Assert {
     }
     
     private void checkFixedTypeOne(BindingOperation bindingOperation,
-                                   Map<String, CorbaTypeImpl>  mapType) {
+                                   Map<String, CorbaType>  mapType) {
 
         assertEquals(bindingOperation.getBindingInput().getName(), "op_k");
         assertEquals(bindingOperation.getBindingOutput().getName(), "op_kResponse");
@@ -208,7 +208,7 @@ public class WSDLToCorbaBindingTest extends Assert {
     }
     
     private void checkFixedTypeTwo(BindingOperation bindingOperation,
-                                   Map<String, CorbaTypeImpl>  mapType) {
+                                   Map<String, CorbaType>  mapType) {
         for (ExtensibilityElement extElement : getExtensibilityElements(bindingOperation)) {
             if (extElement.getElementType().getLocalPart().equals("operation")) {
                 OperationType corbaOpType = (OperationType)extElement;
@@ -227,7 +227,7 @@ public class WSDLToCorbaBindingTest extends Assert {
     }
     
     private void checkFixedTypeThree(BindingOperation bindingOperation,
-                                     Map<String, CorbaTypeImpl>  mapType) {
+                                     Map<String, CorbaType>  mapType) {
         for (ExtensibilityElement extElement : getExtensibilityElements(bindingOperation)) {
             if (extElement.getElementType().getLocalPart().equals("operation")) {
                 OperationType corbaOpType = (OperationType)extElement;
@@ -246,7 +246,7 @@ public class WSDLToCorbaBindingTest extends Assert {
     }
     
     private void checkFixedTypeFour(BindingOperation bindingOperation,
-                                    Map<String, CorbaTypeImpl>  mapType) {
+                                    Map<String, CorbaType>  mapType) {
         for (ExtensibilityElement extElement : getExtensibilityElements(bindingOperation)) {
             if (extElement.getElementType().getLocalPart().equals("operation")) {
                 OperationType corbaOpType = (OperationType)extElement;

http://git-wip-us.apache.org/repos/asf/cxf/blob/d214d105/tools/corba/src/test/java/org/apache/cxf/tools/corba/processors/WSDLToCorbaBindingTypeTest.java
----------------------------------------------------------------------
diff --git a/tools/corba/src/test/java/org/apache/cxf/tools/corba/processors/WSDLToCorbaBindingTypeTest.java b/tools/corba/src/test/java/org/apache/cxf/tools/corba/processors/WSDLToCorbaBindingTypeTest.java
index cc05a0c..8692e45 100644
--- a/tools/corba/src/test/java/org/apache/cxf/tools/corba/processors/WSDLToCorbaBindingTypeTest.java
+++ b/tools/corba/src/test/java/org/apache/cxf/tools/corba/processors/WSDLToCorbaBindingTypeTest.java
@@ -42,7 +42,7 @@ import org.apache.cxf.binding.corba.wsdl.Anonfixed;
 import org.apache.cxf.binding.corba.wsdl.Anonsequence;
 import org.apache.cxf.binding.corba.wsdl.Anonstring;
 import org.apache.cxf.binding.corba.wsdl.Array;
-import org.apache.cxf.binding.corba.wsdl.CorbaTypeImpl;
+import org.apache.cxf.binding.corba.wsdl.CorbaType;
 import org.apache.cxf.binding.corba.wsdl.Struct;
 import org.apache.cxf.binding.corba.wsdl.TypeMappingType;
 import org.apache.cxf.binding.corba.wsdl.Union;
@@ -386,9 +386,9 @@ public class WSDLToCorbaBindingTypeTest extends Assert {
             idlgen.setOutputFile("typeInherit.idl");
             idlgen.generateIDL(model);
 
-            List<CorbaTypeImpl> types = mapType.getStructOrExceptionOrUnion();
+            List<CorbaType> types = mapType.getStructOrExceptionOrUnion();
             for (int i = 0; i < types.size(); i++) {
-                CorbaTypeImpl type = types.get(i);
+                CorbaType type = types.get(i);
                 if ("Type5SequenceStruct".equals(type.getName())) {
                     assertTrue("Name is incorrect for Type5SequenceStruct Type", type instanceof Struct);
                     assertEquals("Type is incorrect for AnonSequence Type", "Type5", 
@@ -435,9 +435,9 @@ public class WSDLToCorbaBindingTypeTest extends Assert {
             idlgen.setOutputFile("atype.idl");
             idlgen.generateIDL(model);
 
-            List<CorbaTypeImpl> types = mapType.getStructOrExceptionOrUnion();
+            List<CorbaType> types = mapType.getStructOrExceptionOrUnion();
             for (int i = 0; i < types.size(); i++) {
-                CorbaTypeImpl type = types.get(i);
+                CorbaType type = types.get(i);
                 if (type instanceof Anonstring) {
                     Anonstring str = (Anonstring)type;
                     assertEquals("Name is incorrect for Array Type", "X._1_S", 
@@ -513,8 +513,8 @@ public class WSDLToCorbaBindingTypeTest extends Assert {
             assertEquals(2, typemap.getElementsByTagName("corba:struct").getLength());            
 
             TypeMappingType mapType = (TypeMappingType)model.getExtensibilityElements().get(0);
-            Map<String, CorbaTypeImpl> tmap = new HashMap<String, CorbaTypeImpl>();
-            for (CorbaTypeImpl type : mapType.getStructOrExceptionOrUnion()) {
+            Map<String, CorbaType> tmap = new HashMap<String, CorbaType>();
+            for (CorbaType type : mapType.getStructOrExceptionOrUnion()) {
                 tmap.put(type.getName(), type);
             }
 
@@ -576,7 +576,7 @@ public class WSDLToCorbaBindingTypeTest extends Assert {
             assertEquals(5, mapType.getStructOrExceptionOrUnion().size());
             int strcnt = 0;
             int unioncnt = 0;
-            for (CorbaTypeImpl corbaType : mapType.getStructOrExceptionOrUnion()) {
+            for (CorbaType corbaType : mapType.getStructOrExceptionOrUnion()) {
                 if (corbaType instanceof Struct) {
                     strcnt++;
                 }

http://git-wip-us.apache.org/repos/asf/cxf/blob/d214d105/tools/corba/src/test/java/org/apache/cxf/tools/corba/utils/WSDLGenerationTester.java
----------------------------------------------------------------------
diff --git a/tools/corba/src/test/java/org/apache/cxf/tools/corba/utils/WSDLGenerationTester.java b/tools/corba/src/test/java/org/apache/cxf/tools/corba/utils/WSDLGenerationTester.java
index 3af588b..6f65764 100644
--- a/tools/corba/src/test/java/org/apache/cxf/tools/corba/utils/WSDLGenerationTester.java
+++ b/tools/corba/src/test/java/org/apache/cxf/tools/corba/utils/WSDLGenerationTester.java
@@ -23,21 +23,15 @@ import java.io.File;
 import java.io.FileReader;
 import java.io.FileWriter;
 
-import javax.wsdl.Binding;
-import javax.wsdl.BindingOperation;
 import javax.wsdl.Definition;
-import javax.wsdl.Port;
-import javax.wsdl.extensions.ExtensionRegistry;
 import javax.wsdl.factory.WSDLFactory;
 import javax.wsdl.xml.WSDLReader;
 import javax.wsdl.xml.WSDLWriter;
 import javax.xml.namespace.QName;
 import javax.xml.stream.XMLStreamReader;
 
-import org.apache.cxf.binding.corba.wsdl.BindingType;
-import org.apache.cxf.binding.corba.wsdl.CorbaConstants;
-import org.apache.cxf.binding.corba.wsdl.TypeMappingType;
-import org.apache.cxf.wsdl.JAXBExtensionHelper;
+import org.apache.cxf.BusFactory;
+import org.apache.cxf.wsdl.WSDLManager;
 import org.apache.ws.commons.schema.XmlSchema;
 import org.apache.ws.commons.schema.XmlSchemaCollection;
 
@@ -159,16 +153,16 @@ public class WSDLGenerationTester {
     }
 
     public File writeDefinition(File targetDir, File defnFile) throws Exception {
+        WSDLManager wm = BusFactory.getThreadDefaultBus().getExtension(WSDLManager.class);
         File bkFile = new File(targetDir, "bk_" + defnFile.getName());
         FileWriter writer = new FileWriter(bkFile);
         WSDLFactory factory
             = WSDLFactory.newInstance("org.apache.cxf.tools.corba.utils.TestWSDLCorbaFactoryImpl");
         WSDLReader reader = factory.newWSDLReader();
         reader.setFeature("javax.wsdl.importDocuments", false);
-        ExtensionRegistry extReg = new ExtensionRegistry();
-        addExtensions(extReg);
-        reader.setExtensionRegistry(extReg);
+        reader.setExtensionRegistry(wm.getExtensionRegistry());
         Definition wsdlDefn = reader.readWSDL(defnFile.toString());
+        
         WSDLWriter wsdlWriter = factory.newWSDLWriter();
         wsdlWriter.writeWSDL(wsdlDefn, writer);
         writer.close();
@@ -189,22 +183,4 @@ public class WSDLGenerationTester {
         reader = null;
         return bkFile;
     }
-
-    private void addExtensions(ExtensionRegistry extReg) throws Exception {
-        JAXBExtensionHelper.addExtensions(extReg, Binding.class, BindingType.class);
-        JAXBExtensionHelper.addExtensions(extReg, BindingOperation.class,
-                                          org.apache.cxf.binding.corba.wsdl.OperationType.class);
-        JAXBExtensionHelper.addExtensions(extReg, Definition.class, TypeMappingType.class);
-        JAXBExtensionHelper.addExtensions(extReg, Port.class,
-                                          org.apache.cxf.binding.corba.wsdl.AddressType.class);
-
-        extReg.mapExtensionTypes(Binding.class, CorbaConstants.NE_CORBA_BINDING, BindingType.class);
-        extReg.mapExtensionTypes(BindingOperation.class, CorbaConstants.NE_CORBA_OPERATION,
-                                 org.apache.cxf.binding.corba.wsdl.OperationType.class);
-        extReg.mapExtensionTypes(Definition.class, CorbaConstants.NE_CORBA_TYPEMAPPING,
-                                 TypeMappingType.class);
-        extReg.mapExtensionTypes(Port.class, CorbaConstants.NE_CORBA_ADDRESS,
-                                 org.apache.cxf.binding.corba.wsdl.AddressType.class);
-    }
-
 }

http://git-wip-us.apache.org/repos/asf/cxf/blob/d214d105/tools/corba/src/test/resources/wsdl/wsaddressing_bank.wsdl
----------------------------------------------------------------------
diff --git a/tools/corba/src/test/resources/wsdl/wsaddressing_bank.wsdl b/tools/corba/src/test/resources/wsdl/wsaddressing_bank.wsdl
index def4802..bc104d4 100644
--- a/tools/corba/src/test/resources/wsdl/wsaddressing_bank.wsdl
+++ b/tools/corba/src/test/resources/wsdl/wsaddressing_bank.wsdl
@@ -20,7 +20,7 @@
 <definitions xmlns:tns="http://www.apache.org/bus/demos/bank" xmlns:bank="http://www.apache.org/bus/demos/bank" xmlns:wsa="http://www.w3.org/2005/08/addressing" xmlns:corba="http://cxf.apache.org/bindings/corba" xmlns:ns1="http://www.apache.org/corba/typemap/BasePortType.idl" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:ns2="http://www.apache.org/bus/demos/bank/corba/typemap/" xmlns:xsd1="http://soapinterop.org/xsd" xmlns="http://schemas.xmlsoap.org/wsdl/" name="BaseService" targetNamespace="http://www.apache.org/bus/demos/bank">
     <corba:typeMapping targetNamespace="http://www.apache.org/bus/demos/bank/corba/typemap/">
         <corba:sequence xmlns:tns="http://www.apache.org/bus/demos/bank" elemtype="corba:string" bound="0" repositoryID="IDL:AccountNames:1.0" type="tns:AccountNames" name="AccountNames"/>
-        <corba:object xmlns:wsa="http://www.w3.org/2005/08/addressing" xmlns="" xmlns:ns3="http://schemas.xmlsoap.org/wsdl/" binding="" repositoryID="IDL:omg.org/CORBA/Object/1.0" type="wsa:EndpointReferenceType" name="CORBA.Object"/>
+        <corba:object xmlns:wsa="http://www.w3.org/2005/08/addressing" xmlns="" xmlns:ns3="http://schemas.xmlsoap.org/wsdl/" repositoryID="IDL:omg.org/CORBA/Object/1.0" type="wsa:EndpointReferenceType" name="CORBA.Object"/>
     </corba:typeMapping>
     <types>
         <schema xmlns="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" targetNamespace="http://www.apache.org/bus/demos/bank">