You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cxf.apache.org by em...@apache.org on 2011/02/25 07:58:34 UTC
svn commit: r1074410 - in /cxf/branches/2.3.x-fixes:
rt/databinding/jaxb/src/main/java/org/apache/cxf/jaxb/
rt/frontend/simple/src/main/java/org/apache/cxf/service/factory/
tools/javato/ws/src/test/java/org/apache/cxf/tools/fortest/simple/
tools/javato...
Author: ema
Date: Fri Feb 25 06:58:34 2011
New Revision: 1074410
URL: http://svn.apache.org/viewvc?rev=1074410&view=rev
Log:
Merged revisions 1074402 via svnmerge from
https://svn.apache.org/repos/asf/cxf/trunk
........
r1074402 | ema | 2011-02-25 13:35:50 +0800 (Fri, 25 Feb 2011) | 1 line
[CXF-3364]:Generate wsdl elements from Exception.class
........
Added:
cxf/branches/2.3.x-fixes/tools/javato/ws/src/test/java/org/apache/cxf/tools/fortest/simple/Caculator.java
- copied unchanged from r1074402, cxf/trunk/tools/javato/ws/src/test/java/org/apache/cxf/tools/fortest/simple/Caculator.java
Modified:
cxf/branches/2.3.x-fixes/rt/databinding/jaxb/src/main/java/org/apache/cxf/jaxb/JAXBSchemaInitializer.java
cxf/branches/2.3.x-fixes/rt/frontend/simple/src/main/java/org/apache/cxf/service/factory/ReflectionServiceFactoryBean.java
cxf/branches/2.3.x-fixes/tools/javato/ws/src/test/java/org/apache/cxf/tools/java2wsdl/processor/JavaToProcessorTest.java
Modified: cxf/branches/2.3.x-fixes/rt/databinding/jaxb/src/main/java/org/apache/cxf/jaxb/JAXBSchemaInitializer.java
URL: http://svn.apache.org/viewvc/cxf/branches/2.3.x-fixes/rt/databinding/jaxb/src/main/java/org/apache/cxf/jaxb/JAXBSchemaInitializer.java?rev=1074410&r1=1074409&r2=1074410&view=diff
==============================================================================
--- cxf/branches/2.3.x-fixes/rt/databinding/jaxb/src/main/java/org/apache/cxf/jaxb/JAXBSchemaInitializer.java (original)
+++ cxf/branches/2.3.x-fixes/rt/databinding/jaxb/src/main/java/org/apache/cxf/jaxb/JAXBSchemaInitializer.java Fri Feb 25 06:58:34 2011
@@ -547,6 +547,16 @@ class JAXBSchemaInitializer extends Serv
}
}
}
+ // Create element in xsd:sequence for Exception.class
+ if (cls.equals(Exception.class)) {
+ JAXBBeanInfo beanInfo = getBeanInfo(java.lang.String.class);
+ XmlSchemaElement exEle = new XmlSchemaElement();
+ exEle.setName("message");
+ exEle.setSchemaTypeName(getTypeName(beanInfo));
+ exEle.setMinOccurs(0);
+ seq.getItems().add(exEle);
+
+ }
part.setProperty(JAXBDataBinding.class.getName() + ".CUSTOM_EXCEPTION", Boolean.TRUE);
}
Modified: cxf/branches/2.3.x-fixes/rt/frontend/simple/src/main/java/org/apache/cxf/service/factory/ReflectionServiceFactoryBean.java
URL: http://svn.apache.org/viewvc/cxf/branches/2.3.x-fixes/rt/frontend/simple/src/main/java/org/apache/cxf/service/factory/ReflectionServiceFactoryBean.java?rev=1074410&r1=1074409&r2=1074410&view=diff
==============================================================================
--- cxf/branches/2.3.x-fixes/rt/frontend/simple/src/main/java/org/apache/cxf/service/factory/ReflectionServiceFactoryBean.java (original)
+++ cxf/branches/2.3.x-fixes/rt/frontend/simple/src/main/java/org/apache/cxf/service/factory/ReflectionServiceFactoryBean.java Fri Feb 25 06:58:34 2011
@@ -2003,7 +2003,7 @@ public class ReflectionServiceFactoryBea
Class exClazz = exceptionClasses[i];
// Ignore XFireFaults because they don't need to be declared
- if (exClazz.equals(Exception.class) || Fault.class.isAssignableFrom(exClazz)
+ if (Fault.class.isAssignableFrom(exClazz)
|| exClazz.equals(RuntimeException.class) || exClazz.equals(Throwable.class)) {
continue;
}
Modified: cxf/branches/2.3.x-fixes/tools/javato/ws/src/test/java/org/apache/cxf/tools/java2wsdl/processor/JavaToProcessorTest.java
URL: http://svn.apache.org/viewvc/cxf/branches/2.3.x-fixes/tools/javato/ws/src/test/java/org/apache/cxf/tools/java2wsdl/processor/JavaToProcessorTest.java?rev=1074410&r1=1074409&r2=1074410&view=diff
==============================================================================
--- cxf/branches/2.3.x-fixes/tools/javato/ws/src/test/java/org/apache/cxf/tools/java2wsdl/processor/JavaToProcessorTest.java (original)
+++ cxf/branches/2.3.x-fixes/tools/javato/ws/src/test/java/org/apache/cxf/tools/java2wsdl/processor/JavaToProcessorTest.java Fri Feb 25 06:58:34 2011
@@ -625,4 +625,33 @@ public class JavaToProcessorTest extends
assertTrue(xsd, xsd.indexOf("ref=") == -1);
}
+
+
+ @Test
+ public void testException() throws Exception {
+ env.put(ToolConstants.CFG_OUTPUTFILE, output.getPath() + "/exception.wsdl");
+ env.put(ToolConstants.CFG_CLASSNAME, "org.apache.cxf.tools.fortest.simple.Caculator");
+ env.put(ToolConstants.CFG_VERBOSE, ToolConstants.CFG_VERBOSE);
+ try {
+ processor.setEnvironment(env);
+ processor.process();
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
+
+ File wsdlFile = new File(output, "exception.wsdl");
+ assertTrue(wsdlFile.exists());
+ // schema element
+ String wsdlContent = getStringFromFile(wsdlFile).replaceAll(" ", " ");
+ assertTrue(wsdlContent.indexOf("<xs:complexType name=\"Exception\">") != -1);
+ assertTrue(wsdlContent.indexOf("<xs:element name=\"Exception\" type=\"tns:Exception\"/>") != -1);
+ assertTrue(wsdlContent.indexOf("<xs:element minOccurs=\"0\" name=\"message\" type=\"xs:string\"/>")
+ != -1);
+ assertTrue(wsdlContent.indexOf("<xs:element minOccurs=\"0\" name=\"message\" type=\"xs:string\"/>")
+ != -1);
+ assertTrue(wsdlContent.indexOf("<wsdl:part name=\"Exception\" element=\"tns:Exception\">") != -1);
+ assertTrue(wsdlContent.indexOf("<wsdl:fault name=\"Exception\" message=\"tns:Exception\">") != -1);
+ assertTrue(wsdlContent.indexOf("<soap:fault name=\"Exception\" use=\"literal\"/>") != -1);
+
+ }
}