Author: mmusaji
Date: 2013-02-28 06:31:41 -0500 (Thu, 28 Feb 2013)
New Revision: 17368
Added:
thirdparty/cxf/branches/cxf-2.2.12-patch-04_JBPAPP-10657/rt/databinding/jaxb/src/main/java/org/apache/cxf/jaxb/Utils.java
thirdparty/cxf/branches/cxf-2.2.12-patch-04_JBPAPP-10657/tools/javato/ws/src/test/java/org/apache/cxf/tools/fortest/exception/
thirdparty/cxf/branches/cxf-2.2.12-patch-04_JBPAPP-10657/tools/javato/ws/src/test/java/org/apache/cxf/tools/fortest/exception/Echo.java
thirdparty/cxf/branches/cxf-2.2.12-patch-04_JBPAPP-10657/tools/javato/ws/src/test/java/org/apache/cxf/tools/fortest/exception/EchoImpl.java
thirdparty/cxf/branches/cxf-2.2.12-patch-04_JBPAPP-10657/tools/javato/ws/src/test/java/org/apache/cxf/tools/fortest/exception/MyException.java
thirdparty/cxf/branches/cxf-2.2.12-patch-04_JBPAPP-10657/tools/javato/ws/src/test/java/org/apache/cxf/tools/fortest/exception/SuperException.java
Removed:
thirdparty/cxf/branches/cxf-2.2.12-patch-04_JBPAPP-10657/tools/javato/ws/src/test/java/org/apache/cxf/tools/fortest/exception/Echo.java
thirdparty/cxf/branches/cxf-2.2.12-patch-04_JBPAPP-10657/tools/javato/ws/src/test/java/org/apache/cxf/tools/fortest/exception/EchoImpl.java
thirdparty/cxf/branches/cxf-2.2.12-patch-04_JBPAPP-10657/tools/javato/ws/src/test/java/org/apache/cxf/tools/fortest/exception/MyException.java
thirdparty/cxf/branches/cxf-2.2.12-patch-04_JBPAPP-10657/tools/javato/ws/src/test/java/org/apache/cxf/tools/fortest/exception/SuperException.java
Modified:
thirdparty/cxf/branches/cxf-2.2.12-patch-04_JBPAPP-10657/
thirdparty/cxf/branches/cxf-2.2.12-patch-04_JBPAPP-10657/rt/databinding/jaxb/src/main/java/org/apache/cxf/jaxb/JAXBContextInitializer.java
thirdparty/cxf/branches/cxf-2.2.12-patch-04_JBPAPP-10657/rt/databinding/jaxb/src/main/java/org/apache/cxf/jaxb/JAXBEncoderDecoder.java
thirdparty/cxf/branches/cxf-2.2.12-patch-04_JBPAPP-10657/rt/databinding/jaxb/src/main/java/org/apache/cxf/jaxb/JAXBSchemaInitializer.java
Log:
[JBPAPP-10657] Merged and committed original changes from dependant fixes JBPAPP-10564,
JBPAPP-10566, JBPAPP-10568
Property changes on: thirdparty/cxf/branches/cxf-2.2.12-patch-04_JBPAPP-10657
___________________________________________________________________
Added: svn:mergeinfo
+ /thirdparty/cxf/branches/cxf-2.2.12-patch-04_JBPAPP-10627:17298
/thirdparty/cxf/branches/cxf-2.2.12-patch02_JBPAPP-10129:17139-17140,17225,17231-17235
Modified:
thirdparty/cxf/branches/cxf-2.2.12-patch-04_JBPAPP-10657/rt/databinding/jaxb/src/main/java/org/apache/cxf/jaxb/JAXBContextInitializer.java
===================================================================
---
thirdparty/cxf/branches/cxf-2.2.12-patch-04_JBPAPP-10657/rt/databinding/jaxb/src/main/java/org/apache/cxf/jaxb/JAXBContextInitializer.java 2013-02-28
08:41:36 UTC (rev 17367)
+++
thirdparty/cxf/branches/cxf-2.2.12-patch-04_JBPAPP-10657/rt/databinding/jaxb/src/main/java/org/apache/cxf/jaxb/JAXBContextInitializer.java 2013-02-28
11:31:41 UTC (rev 17368)
@@ -33,14 +33,13 @@
import java.util.Set;
import javax.xml.bind.annotation.XmlAccessType;
-import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlRootElement;
import javax.xml.bind.annotation.XmlSeeAlso;
import javax.xml.bind.annotation.XmlTransient;
import javax.xml.bind.annotation.XmlType;
-import javax.xml.bind.annotation.adapters.XmlAdapter;
import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter;
+import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapters;
import javax.xml.namespace.QName;
import org.apache.cxf.common.classloader.ClassLoaderUtils;
@@ -196,13 +195,19 @@
if (anns != null) {
for (Annotation a : anns) {
if (XmlJavaTypeAdapter.class.isAssignableFrom(a.annotationType())) {
- inspectTypeAdapter(((XmlJavaTypeAdapter)a).value());
+ Type t = Utils.getTypeFromXmlAdapter((XmlJavaTypeAdapter)a);
+ if (t != null) {
+ addType(t);
+ }
}
}
}
XmlJavaTypeAdapter xjta = clazz.getAnnotation(XmlJavaTypeAdapter.class);
if (xjta != null) {
- inspectTypeAdapter(xjta.value());
+ Type t = Utils.getTypeFromXmlAdapter(xjta);
+ if (t != null) {
+ addType(t);
+ }
}
}
@@ -285,9 +290,10 @@
}
}
XmlJavaTypeAdapter xjta =
cls.getAnnotation(XmlJavaTypeAdapter.class);
- if (xjta != null) {
- Class<? extends XmlAdapter> c2 = xjta.value();
- inspectTypeAdapter(c2);
+ if (xjta != null && Utils.getTypeFromXmlAdapter(xjta) !=
null) {
+ Type t = Utils.getTypeFromXmlAdapter(xjta);
+ addType(t);
+ return;
}
} else if (classes.contains(cls)) {
return;
@@ -299,16 +305,24 @@
}
}
- private void inspectTypeAdapter(Class<? extends XmlAdapter> aclass) {
- Class<?> c2 = aclass;
- Type sp = c2.getGenericSuperclass();
- while (!XmlAdapter.class.equals(c2) && c2 != null) {
- sp = c2.getGenericSuperclass();
- c2 = c2.getSuperclass();
+ static XmlJavaTypeAdapter getFieldXJTA(final Field f) {
+ XmlJavaTypeAdapter adapter = f.getAnnotation(XmlJavaTypeAdapter.class);
+ if (adapter == null) {
+ adapter = f.getType().getAnnotation(XmlJavaTypeAdapter.class);
}
- if (sp instanceof ParameterizedType) {
- addType(((ParameterizedType)sp).getActualTypeArguments()[0]);
+ if (adapter == null) {
+ XmlJavaTypeAdapters adapters =
+
f.getDeclaringClass().getPackage().getAnnotation(XmlJavaTypeAdapters.class);
+ if (adapters != null) {
+ for (XmlJavaTypeAdapter candidate : adapters.value()) {
+ if (candidate != null &&
candidate.type().equals(f.getType())) {
+ adapter = candidate;
+ break;
+ }
+ }
+ }
}
+ return adapter;
}
private void walkReferences(Class<?> cls) {
@@ -325,11 +339,7 @@
//We'll grab the public field/method types and then add the ObjectFactory
stuff
//as well as look for jaxb.index files in those packages.
- XmlAccessorType accessorType = cls.getAnnotation(XmlAccessorType.class);
- if (accessorType == null && cls.getPackage() != null) {
- accessorType = cls.getPackage().getAnnotation(XmlAccessorType.class);
- }
- XmlAccessType accessType = accessorType != null ? accessorType.value() :
XmlAccessType.PUBLIC_MEMBER;
+ XmlAccessType accessType = Utils.getXmlAccessType(cls);
if (accessType != XmlAccessType.PROPERTY) { // only look for fields if we are
instructed to
//fields are accessible even if not public, must look at the declared fields
@@ -368,9 +378,6 @@
&& !Modifier.isPublic(field.getModifiers())) {
return false;
}
- if (field.getAnnotation(XmlJavaTypeAdapter.class) != null) {
- return false;
- }
if (accessType == XmlAccessType.NONE
|| accessType == XmlAccessType.PROPERTY) {
return checkJaxbAnnotation(field.getAnnotations());
@@ -397,12 +404,6 @@
return false;
}
- boolean isPropGetter = method.getName().startsWith("get") ||
method.getName().startsWith("is");
-
- if (!isPropGetter
- || method.getAnnotation(XmlJavaTypeAdapter.class) != null) {
- return false;
- }
int beginIndex = 3;
if (method.getName().startsWith("is")) {
beginIndex = 2;
@@ -428,7 +429,7 @@
* @param annotations the array of annotations from the class member
* @return true if JAXB annotations are present, false otherwise
*/
- private static boolean checkJaxbAnnotation(Annotation[] annotations) {
+ static boolean checkJaxbAnnotation(Annotation[] annotations) {
// must check if there are any jaxb annotations
Package jaxbAnnotationsPackage = XmlElement.class.getPackage();
for (Annotation annotation : annotations) {
@@ -438,4 +439,4 @@
}
return false;
}
-}
\ No newline at end of file
+}
Modified:
thirdparty/cxf/branches/cxf-2.2.12-patch-04_JBPAPP-10657/rt/databinding/jaxb/src/main/java/org/apache/cxf/jaxb/JAXBEncoderDecoder.java
===================================================================
---
thirdparty/cxf/branches/cxf-2.2.12-patch-04_JBPAPP-10657/rt/databinding/jaxb/src/main/java/org/apache/cxf/jaxb/JAXBEncoderDecoder.java 2013-02-28
08:41:36 UTC (rev 17367)
+++
thirdparty/cxf/branches/cxf-2.2.12-patch-04_JBPAPP-10657/rt/databinding/jaxb/src/main/java/org/apache/cxf/jaxb/JAXBEncoderDecoder.java 2013-02-28
11:31:41 UTC (rev 17368)
@@ -48,7 +48,7 @@
import javax.xml.bind.Marshaller;
import javax.xml.bind.Unmarshaller;
import javax.xml.bind.annotation.XmlAccessType;
-import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlAttribute;
import javax.xml.bind.annotation.adapters.HexBinaryAdapter;
import javax.xml.bind.attachment.AttachmentMarshaller;
import javax.xml.bind.attachment.AttachmentUnmarshaller;
@@ -65,7 +65,6 @@
import javax.xml.transform.stream.StreamResult;
import org.w3c.dom.Element;
import org.w3c.dom.Node;
-
import org.apache.cxf.common.i18n.Message;
import org.apache.cxf.common.logging.LogUtils;
import org.apache.cxf.common.util.SOAPConstants;
@@ -335,12 +334,7 @@
try {
writer.writeStartElement("ns1", qn.getLocalPart(),
qn.getNamespaceURI());
Class<?> cls = part.getTypeClass();
- XmlAccessorType accessorType = cls.getAnnotation(XmlAccessorType.class);
- if (accessorType == null && cls.getPackage() != null) {
- accessorType = cls.getPackage().getAnnotation(XmlAccessorType.class);
- }
- XmlAccessType accessType = accessorType != null
- ? accessorType.value() : XmlAccessType.PUBLIC_MEMBER;
+ XmlAccessType accessType = Utils.getXmlAccessType(cls);
String namespace = part.getElementQName().getNamespaceURI();
SchemaInfo sch = part.getMessageInfo().getOperation().getInterface()
@@ -353,33 +347,31 @@
LOG.warning("Schema associated with " + namespace + " is
null");
}
- for (Field f : cls.getDeclaredFields()) {
- if (JAXBContextInitializer.isFieldAccepted(f, accessType)) {
+ for (Field f : Utils.getFields(cls, accessType)) {
+ XmlAttribute at = f.getAnnotation(XmlAttribute.class);
+ if (at == null) {
QName fname = new QName(namespace, f.getName());
f.setAccessible(true);
if (JAXBSchemaInitializer.isArray(f.getGenericType())) {
- writeArrayObject(marshaller, writer, fname, f.get(elValue));
+ writeArrayObject(marshaller, writer, fname, f.get(elValue));
} else {
- writeObject(marshaller, writer, new JAXBElement(fname,
String.class,
-
f.get(elValue)));
+ Object o = Utils.getFieldValue(f, elValue);
+ writeObject(marshaller, writer, new JAXBElement(fname,
String.class, o));
}
}
}
- for (Method m : cls.getMethods()) {
- if (JAXBContextInitializer.isMethodAccepted(m, accessType)) {
- int idx = m.getName().startsWith("get") ? 3 : 2;
- String name = m.getName().substring(idx);
- name = Character.toLowerCase(name.charAt(0)) + name.substring(1);
- QName mname = new QName(namespace, name);
- if (JAXBSchemaInitializer.isArray(m.getGenericReturnType())) {
- writeArrayObject(marshaller, writer, mname, m.invoke(elValue));
- } else {
- writeObject(marshaller, writer, new JAXBElement(mname,
String.class,
-
m.invoke(elValue)));
- }
+ for (Method m : Utils.getGetters(cls, accessType)) {
+ int idx = m.getName().startsWith("get") ? 3 : 2;
+ String name = m.getName().substring(idx);
+ name = Character.toLowerCase(name.charAt(0)) + name.substring(1);
+ QName mname = new QName(namespace, name);
+ if (JAXBSchemaInitializer.isArray(m.getGenericReturnType())) {
+ writeArrayObject(marshaller, writer, mname, m.invoke(elValue));
+ } else {
+ Object o = Utils.getMethodValue(m, elValue);
+ writeObject(marshaller, writer, new JAXBElement(mname, String.class,
o));
}
}
-
writer.writeEndElement();
writer.flush();
} catch (Exception e) {
@@ -448,55 +440,43 @@
obj = cons.newInstance(new Object[1]);
}
- XmlAccessorType accessorType = cls.getAnnotation(XmlAccessorType.class);
- if (accessorType == null && cls.getPackage() != null) {
- accessorType = cls.getPackage().getAnnotation(XmlAccessorType.class);
- }
- XmlAccessType accessType = accessorType != null
- ? accessorType.value() : XmlAccessType.PUBLIC_MEMBER;
+ XmlAccessType accessType = Utils.getXmlAccessType(cls);
reader.nextTag();
while (reader.getEventType() == XMLStreamReader.START_ELEMENT) {
QName q = reader.getName();
- try {
- Field f = cls.getField(q.getLocalPart());
+ String fieldName = q.getLocalPart();
+ Field f = Utils.getField(cls, accessType, fieldName);
+ if (f != null) {
Type type = f.getGenericType();
- if (JAXBContextInitializer.isFieldAccepted(f, accessType)) {
- f.setAccessible(true);
- if (JAXBSchemaInitializer.isArray(type)) {
- Class<?> compType = JAXBSchemaInitializer
- .getArrayComponentType(type);
- List<Object> ret = unmarshallArray(u, reader,
- q,
- compType,
- createList(type));
- Object o = ret;
- if (!isList(type)) {
- if (compType.isPrimitive()) {
- o = java.lang.reflect.Array.newInstance(compType,
ret.size());
- for (int x = 0; x < ret.size(); x++) {
- Array.set(o, x, ret.get(x));
- }
- } else {
- o = ret.toArray((Object[])Array.newInstance(compType,
ret.size()));
+ f.setAccessible(true);
+ if (JAXBSchemaInitializer.isArray(type)) {
+ Class<?> compType =
JAXBSchemaInitializer.getArrayComponentType(type);
+ List<Object> ret = unmarshallArray(u, reader, q, compType,
createList(type));
+ Object o = ret;
+ if (!isList(type)) {
+ if (compType.isPrimitive()) {
+ o = java.lang.reflect.Array.newInstance(compType,
ret.size());
+ for (int x = 0; x < ret.size(); x++) {
+ Array.set(o, x, ret.get(x));
}
+ } else {
+ o = ret.toArray((Object[]) Array.newInstance(compType,
ret.size()));
}
-
- f.set(obj, o);
- } else {
- f.set(obj, u.unmarshal(reader, f.getType()));
}
+ f.set(obj, o);
+ } else {
+ Object o = getElementValue(u.unmarshal(reader,
Utils.getFieldType(f)));
+ Utils.setFieldValue(f, obj, o);
}
- } catch (NoSuchFieldException ex) {
+ } else {
String s = Character.toUpperCase(q.getLocalPart().charAt(0))
+ q.getLocalPart().substring(1);
- Method m = null;
- try {
- m = cls.getMethod("get" + s);
- } catch (NoSuchMethodException mex) {
- m = cls.getMethod("is" + s);
+ Method m = Utils.getMethod(cls, accessType, "get" + s);
+ if (m == null) {
+ m = Utils.getMethod(cls, accessType, "is" + s);
}
Type type = m.getGenericReturnType();
- Method m2 = cls.getMethod("set" + s, m.getReturnType());
+ Method m2 = Utils.getMethod(cls, accessType, "set" + s,
m.getReturnType());
if (JAXBSchemaInitializer.isArray(type)) {
Class<?> compType = JAXBSchemaInitializer
.getArrayComponentType(type);
@@ -518,8 +498,8 @@
m2.invoke(obj, o);
} else {
- Object o = getElementValue(u.unmarshal(reader,
m.getReturnType()));
- m2.invoke(obj, o);
+ Object o = getElementValue(u.unmarshal(reader,
Utils.getMethodReturnType(m)));
+ Utils.setMethodValue(m, m2, obj, o);
}
}
}
@@ -527,7 +507,8 @@
} catch (Exception e) {
throw new Fault(new Message("MARSHAL_ERROR", LOG, e.getMessage()),
e);
}
- }
+ }
+
private static void writeObject(Marshaller u, Object source, Object mObj) throws
Fault, JAXBException {
if (source instanceof XMLStreamWriter) {
Modified:
thirdparty/cxf/branches/cxf-2.2.12-patch-04_JBPAPP-10657/rt/databinding/jaxb/src/main/java/org/apache/cxf/jaxb/JAXBSchemaInitializer.java
===================================================================
---
thirdparty/cxf/branches/cxf-2.2.12-patch-04_JBPAPP-10657/rt/databinding/jaxb/src/main/java/org/apache/cxf/jaxb/JAXBSchemaInitializer.java 2013-02-28
08:41:36 UTC (rev 17367)
+++
thirdparty/cxf/branches/cxf-2.2.12-patch-04_JBPAPP-10657/rt/databinding/jaxb/src/main/java/org/apache/cxf/jaxb/JAXBSchemaInitializer.java 2013-02-28
11:31:41 UTC (rev 17368)
@@ -26,13 +26,22 @@
import java.lang.reflect.Method;
import java.lang.reflect.ParameterizedType;
import java.lang.reflect.Type;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.Collections;
+import java.util.Comparator;
import java.util.Iterator;
+import java.util.List;
+import java.util.logging.Level;
import java.util.logging.Logger;
import javax.xml.bind.JAXBContext;
+import javax.xml.bind.annotation.XmlAccessOrder;
import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorOrder;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlList;
+import javax.xml.bind.annotation.XmlType;
import javax.xml.bind.annotation.adapters.XmlAdapter;
import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter;
import javax.xml.namespace.QName;
@@ -368,7 +377,7 @@
MessagePartInfo part = fault.getMessageParts().get(0);
Class<?> cls = part.getTypeClass();
Class<?> cl2 = (Class)fault.getProperty(Class.class.getName());
- if (cls != cl2) {
+ if (cls != cl2) {
QName name = (QName)fault.getProperty("elementName");
part.setElementQName(name);
JAXBBeanInfo beanInfo = getBeanInfo(cls);
@@ -427,6 +436,8 @@
XmlSchemaSequence seq = new XmlSchemaSequence();
ct.setParticle(seq);
+ List<XmlSchemaElement> elementList = new
ArrayList<XmlSchemaElement>();
+
Method methods[] = cls.getMethods();
for (Method m : methods) {
if (m.getName().startsWith("get")
@@ -454,15 +465,38 @@
el.setSchemaTypeName(typeName);
}
- seq.getItems().add(el);
+ elementList.add(el);
} catch (Exception e) {
//not mappable
}
}
}
+ XmlAccessorOrder xmlAccessorOrder =
cls.getAnnotation(XmlAccessorOrder.class);
+ XmlType xmlTypeAnno = cls.getAnnotation(XmlType.class);
+ String[] propertyOrder = null;
+
+ if (xmlTypeAnno != null && xmlTypeAnno.propOrder().length > 0) {
+ propertyOrder = xmlTypeAnno.propOrder();
+ //TODO: handle @XmlAccessOrder
+ }
+
+ if (propertyOrder != null && propertyOrder.length ==
elementList.size()) {
+ sortItems(elementList, propertyOrder);
+ } else if (propertyOrder != null && propertyOrder.length !=
elementList.size()) {
+ LOG.log(Level.WARNING, "propOrder in @XmlType doesn't define all
schema elements: "
+ + Arrays.toString(propertyOrder));
+ }
+
+ if (xmlAccessorOrder != null &&
xmlAccessorOrder.value().equals(XmlAccessOrder.ALPHABETICAL)
+ && propertyOrder == null) {
+ sort(elementList);
+ }
+
+ for (XmlSchemaElement elem : elementList) {
+ seq.getItems().add(elem);
+ }
}
}
-
private void buildExceptionType(MessagePartInfo part, Class<?> cls) {
SchemaInfo schemaInfo = null;
@@ -472,6 +506,15 @@
break;
}
}
+ XmlAccessorOrder xmlAccessorOrder = cls.getAnnotation(XmlAccessorOrder.class);
+ XmlType xmlTypeAnno = cls.getAnnotation(XmlType.class);
+ String[] propertyOrder = null;
+
+ if (xmlTypeAnno != null && xmlTypeAnno.propOrder().length > 0) {
+ propertyOrder = xmlTypeAnno.propOrder();
+ //TODO: handle @XmlAccessOrder
+ }
+
XmlSchema schema;
if (schemaInfo == null) {
schema =
schemas.newXmlSchemaInCollection(part.getElementQName().getNamespaceURI());
@@ -521,32 +564,47 @@
if (accessorType == null && cls.getPackage() != null) {
accessorType = cls.getPackage().getAnnotation(XmlAccessorType.class);
}
- XmlAccessType accessType = accessorType != null ? accessorType.value() :
XmlAccessType.PUBLIC_MEMBER;
+ XmlAccessType accessType = Utils.getXmlAccessType(cls);
+
+ List<XmlSchemaElement> elementList = new
ArrayList<XmlSchemaElement>();
+
+ for (Field f : Utils.getFields(cls, accessType)) {
+ //map field
+ Type type = Utils.getFieldType(f);
+ JAXBBeanInfo beanInfo = getBeanInfo(type);
+ if (beanInfo != null) {
+ addElement(elementList, beanInfo, new QName(namespace, f.getName()),
isArray(type));
+ }
+ }
+ for (Method m : Utils.getGetters(cls, accessType)) {
+ //map method
+ Type type = Utils.getMethodReturnType(m);
+ JAXBBeanInfo beanInfo = getBeanInfo(type);
+ if (beanInfo != null) {
+ int idx = m.getName().startsWith("get") ? 3 : 2;
+ String name = m.getName().substring(idx);
+ name = Character.toLowerCase(name.charAt(0)) + name.substring(1);
+ addElement(elementList, beanInfo, new QName(namespace, name),
isArray(type));
+ }
+ }
+
+ if (propertyOrder != null && propertyOrder.length == elementList.size())
{
+ sortItems(elementList, propertyOrder);
+ } else if (propertyOrder != null && propertyOrder.length !=
elementList.size()) {
+ LOG.log(Level.WARNING, "propOrder in @XmlType doesn't define all
schema elements: "
+ + Arrays.toString(propertyOrder));
+ }
- for (Field f : cls.getDeclaredFields()) {
- if (JAXBContextInitializer.isFieldAccepted(f, accessType)) {
- //map field
- Type type = f.getGenericType();
- JAXBBeanInfo beanInfo = getBeanInfo(type);
- if (beanInfo != null) {
- addElement(seq, beanInfo, new QName(namespace, f.getName()),
isArray(type));
- }
- }
+ if (xmlAccessorOrder != null &&
xmlAccessorOrder.value().equals(XmlAccessOrder.ALPHABETICAL)
+ && propertyOrder == null) {
+ sort(elementList);
}
- for (Method m : cls.getMethods()) {
- if (JAXBContextInitializer.isMethodAccepted(m, accessType)) {
- //map field
- Type type = m.getGenericReturnType();
- JAXBBeanInfo beanInfo = getBeanInfo(type);
- if (beanInfo != null) {
- int idx = m.getName().startsWith("get") ? 3 : 2;
- String name = m.getName().substring(idx);
- name = Character.toLowerCase(name.charAt(0)) + name.substring(1);
- addElement(seq, beanInfo, new QName(namespace, name),
isArray(type));
- }
- }
+
+ for (XmlSchemaElement elem : elementList) {
+ seq.getItems().add(elem);
}
+
part.setProperty(JAXBDataBinding.class.getName() + ".CUSTOM_EXCEPTION",
Boolean.TRUE);
}
@@ -561,7 +619,7 @@
return false;
}
- public void addElement(XmlSchemaSequence seq, JAXBBeanInfo beanInfo,
+ public void addElement(List<XmlSchemaElement> elementList, JAXBBeanInfo
beanInfo,
QName name, boolean isArray) {
XmlSchemaElement el = new XmlSchemaElement();
el.setName(name.getLocalPart());
@@ -591,7 +649,7 @@
el.setSchemaTypeName(typeName);
}
- seq.getItems().add(el);
+ elementList.add(el);
}
@@ -609,4 +667,25 @@
}
return isExist;
}
+
+ //sort to Alphabetical order
+ private void sort(final List<XmlSchemaElement> elementList) {
+ Collections.sort(elementList, new Comparator<XmlSchemaElement>() {
+ public int compare(XmlSchemaElement e1, XmlSchemaElement e2) {
+ return e1.getName().compareTo(e2.getName());
+ }
+ });
+ }
+
+ private void sortItems(List<XmlSchemaElement> elementList, String[] propOrder)
{
+ final List<String> propList = Arrays.asList(propOrder);
+
+ Collections.sort(elementList, new Comparator<XmlSchemaElement>() {
+ public int compare(XmlSchemaElement el1, XmlSchemaElement el2) {
+ int index1 = propList.indexOf(el1.getName());
+ int index2 = propList.indexOf(el2.getName());
+ return index1 - index2;
+ }
+ });
+ }
}
Copied:
thirdparty/cxf/branches/cxf-2.2.12-patch-04_JBPAPP-10657/rt/databinding/jaxb/src/main/java/org/apache/cxf/jaxb/Utils.java
(from rev 17298,
thirdparty/cxf/branches/cxf-2.2.12-patch-04_JBPAPP-10627/rt/databinding/jaxb/src/main/java/org/apache/cxf/jaxb/Utils.java)
===================================================================
---
thirdparty/cxf/branches/cxf-2.2.12-patch-04_JBPAPP-10657/rt/databinding/jaxb/src/main/java/org/apache/cxf/jaxb/Utils.java
(rev 0)
+++
thirdparty/cxf/branches/cxf-2.2.12-patch-04_JBPAPP-10657/rt/databinding/jaxb/src/main/java/org/apache/cxf/jaxb/Utils.java 2013-02-28
11:31:41 UTC (rev 17368)
@@ -0,0 +1,310 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ *
http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+package org.apache.cxf.jaxb;
+
+import java.lang.reflect.Field;
+import java.lang.reflect.Method;
+import java.lang.reflect.Modifier;
+import java.lang.reflect.ParameterizedType;
+import java.lang.reflect.Type;
+import java.util.Arrays;
+import java.util.Collection;
+import java.util.HashSet;
+import java.util.Set;
+
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlTransient;
+import javax.xml.bind.annotation.adapters.XmlAdapter;
+import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter;
+import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapters;
+
+/**
+ * JAXB reflection utilities.
+ */
+final class Utils {
+ private Utils() {
+ }
+
+ static XmlAccessType getXmlAccessType(Class<?> cls) {
+ XmlAccessorType accessorType = cls.getAnnotation(XmlAccessorType.class);
+ if (accessorType == null && cls.getPackage() != null) {
+ accessorType = cls.getPackage().getAnnotation(XmlAccessorType.class);
+ }
+ return accessorType != null
+ ? accessorType.value() : XmlAccessType.PUBLIC_MEMBER;
+ }
+
+ static Collection<Field> getFields(Class<?> cls, XmlAccessType
accessType) {
+ return getFieldsInternal(cls, accessType);
+ }
+
+ private static Collection<Field> getFieldsInternal(Class<?> cls,
XmlAccessType accessType) {
+ Set<Field> fields = new HashSet<Field>();
+ Class<?> superClass = cls.getSuperclass();
+ if (superClass != null && !superClass.equals(Object.class) &&
!superClass.equals(Throwable.class)) {
+ // process super class until java.lang.Object or java.lang.Throwable is not
reached
+ fields.addAll(getFieldsInternal(superClass, accessType));
+ }
+ // process current class
+ for (Field field : cls.getDeclaredFields()) {
+ if (JAXBContextInitializer.isFieldAccepted(field, accessType)) {
+ fields.add(field);
+ }
+ }
+ return fields;
+ }
+
+ private static Collection<Method> getMethods(Class<?> cls,
+ XmlAccessType accessType, boolean acceptSetters) {
+ return getMethodsInternal(cls, accessType, acceptSetters);
+ }
+
+ private static Collection<Method> getMethodsInternal(Class<?> cls,
XmlAccessType accessType,
+ boolean acceptSetters) {
+ Set<Method> methods = new HashSet<Method>();
+ Class<?> superClass = cls.getSuperclass();
+ if (superClass != null && !superClass.equals(Object.class) &&
!superClass.equals(Throwable.class)) {
+ // process super class until java.lang.Object or java.lang.Throwable is not
reached
+ methods.addAll(getMethodsInternal(superClass, accessType, acceptSetters));
+ }
+ // process current class
+ for (Method method : cls.getDeclaredMethods()) {
+ if (isMethodAccepted(method, accessType, acceptSetters)) {
+ methods.add(method);
+ }
+ }
+ return methods;
+ }
+
+ static Method getMethod(Class<?> cls, XmlAccessType accessType, String
methodName,
+ Class<?>... paramTypes) {
+ for (Method m : getMethods(cls, accessType, true)) {
+ if (m.getName().equals(methodName) &&
Arrays.equals(m.getParameterTypes(), paramTypes)) {
+ return m;
+ }
+ }
+ return null;
+ }
+
+ static Field getField(Class<?> cls, XmlAccessType accessType, String fieldName)
{
+ for (final Field f : getFields(cls, accessType)) {
+ if (f.getName().equals(fieldName)) {
+ return f;
+ }
+ }
+ return null;
+ }
+
+ static Collection<Method> getGetters(Class<?> cls, XmlAccessType
accessType) {
+ return getMethods(cls, accessType, false);
+ }
+
+ static boolean isMethodAccepted(Method method, XmlAccessType accessType, boolean
acceptSetters) {
+ // ignore bridge, static, @XmlTransient methods plus methods declared in
Throwable
+ if (method.isBridge()
+ || Modifier.isStatic(method.getModifiers())
+ || method.isAnnotationPresent(XmlTransient.class)
+ || method.getDeclaringClass().equals(Throwable.class)) {
+ return false;
+ }
+ // Allow only public methods if PUBLIC_MEMBER access is requested
+ if (accessType == XmlAccessType.PUBLIC_MEMBER &&
!Modifier.isPublic(method.getModifiers())) {
+ return false;
+ }
+ if (isGetter(method)) {
+ // does nothing
+ } else if (isSetter(method)) {
+ if (!acceptSetters) {
+ return false;
+ }
+ } else {
+ // we accept only getters and setters
+ return false;
+ }
+ // let JAXB annotations decide if NONE or FIELD access is requested
+ if (accessType == XmlAccessType.NONE || accessType == XmlAccessType.FIELD) {
+ return JAXBContextInitializer.checkJaxbAnnotation(method.getAnnotations());
+ }
+ // method accepted
+ return true;
+ }
+
+ private static boolean isGetter(Method m) {
+ if (m.getReturnType() != Void.class
+ && m.getReturnType() != Void.TYPE
+ && m.getParameterTypes().length == 0) {
+ Method setter = getSetter(m);
+ if (setter != null) {
+ return !setter.isAnnotationPresent(XmlTransient.class);
+ }
+ }
+ return false;
+ }
+
+ private static Method getSetter(Method m) {
+ final int index = getterIndex(m.getName());
+ if (index != -1) {
+ String setterName = "set" + m.getName().substring(index);
+ Class<?> paramTypes = m.getReturnType();
+ return getDeclaredMethod(m.getDeclaringClass(), setterName, paramTypes);
+ }
+ return null;
+ }
+
+ private static boolean isSetter(Method m) {
+ Class<?> declaringClass = m.getDeclaringClass();
+ boolean isVoidReturnType = m.getReturnType() == Void.class || m.getReturnType()
== Void.TYPE;
+ if (isVoidReturnType && m.getParameterTypes().length == 1 &&
m.getName().startsWith("set")) {
+ String getterName = "get" + m.getName().substring(3);
+ Class<?> setterParamType = m.getParameterTypes()[0];
+ Method getter = getDeclaredMethod(declaringClass, getterName);
+ if (getter != null && getter.getReturnType().equals(setterParamType)
+ && !getter.isAnnotationPresent(XmlTransient.class)) {
+ return true;
+ }
+ }
+ return false;
+ }
+
+ private static int getterIndex(String methodName) {
+ if (methodName.startsWith("is")) {
+ return 2;
+ }
+ if (methodName.startsWith("get")) {
+ return 3;
+ }
+ return -1;
+ }
+
+ private static Method getDeclaredMethod(Class<?> cls, String methodName,
Class<?>... paramTypes) {
+ try {
+ return cls.getDeclaredMethod(methodName, paramTypes);
+ } catch (Exception e) {
+ return null;
+ }
+ }
+
+ static Class<?> getFieldType(Field f) {
+ XmlJavaTypeAdapter adapter = getFieldXJTA(f);
+ Class<?> adapterType = getTypeFromXmlAdapter(adapter);
+ return adapterType != null ? adapterType : f.getType();
+ }
+
+ static Class<?> getMethodReturnType(Method m) {
+ XmlJavaTypeAdapter adapter = getMethodXJTA(m);
+ Class<?> adapterType = getTypeFromXmlAdapter(adapter);
+ return adapterType != null ? adapterType : m.getReturnType();
+ }
+
+ @SuppressWarnings({ "rawtypes", "unchecked" })
+ static Object getFieldValue(Field f, Object target) throws Exception {
+ XmlJavaTypeAdapter adapterAnnotation = getFieldXJTA(f);
+ XmlAdapter adapter = getXmlAdapter(adapterAnnotation);
+ return adapter != null ? adapter.marshal(f.get(target)) : f.get(target);
+ }
+
+ @SuppressWarnings({ "rawtypes", "unchecked" })
+ static Object getMethodValue(Method m, Object target) throws Exception {
+ XmlJavaTypeAdapter adapterAnnotation = getMethodXJTA(m);
+ XmlAdapter adapter = getXmlAdapter(adapterAnnotation);
+ return adapter != null ? adapter.marshal(m.invoke(target)) : m.invoke(target);
+ }
+
+ @SuppressWarnings({ "rawtypes", "unchecked" })
+ static void setFieldValue(Field f, Object target, Object value) throws Exception {
+ XmlJavaTypeAdapter xjta = getFieldXJTA(f);
+ XmlAdapter adapter = getXmlAdapter(xjta);
+ f.set(target, adapter != null ? adapter.unmarshal(value) : value);
+ }
+
+ @SuppressWarnings({ "rawtypes", "unchecked" })
+ static void setMethodValue(Method getter, Method setter, Object target, Object value)
throws Exception {
+ XmlJavaTypeAdapter xjta = getMethodXJTA(getter);
+ XmlAdapter adapter = getXmlAdapter(xjta);
+ setter.invoke(target, adapter != null ? adapter.unmarshal(value) : value);
+ }
+
+ @SuppressWarnings("rawtypes")
+ static XmlAdapter getXmlAdapter(XmlJavaTypeAdapter adapterAnnotation)
+ throws InstantiationException, IllegalAccessException {
+ return adapterAnnotation != null ? adapterAnnotation.value().newInstance() :
null;
+ }
+
+ static XmlJavaTypeAdapter getFieldXJTA(final Field f) {
+ XmlJavaTypeAdapter adapter = f.getAnnotation(XmlJavaTypeAdapter.class);
+ if (adapter == null) {
+ adapter = f.getType().getAnnotation(XmlJavaTypeAdapter.class);
+ }
+ if (adapter == null) {
+ XmlJavaTypeAdapters adapters =
+
f.getDeclaringClass().getPackage().getAnnotation(XmlJavaTypeAdapters.class);
+ if (adapters != null) {
+ for (XmlJavaTypeAdapter candidate : adapters.value()) {
+ if (candidate != null &&
candidate.type().equals(f.getType())) {
+ adapter = candidate;
+ break;
+ }
+ }
+ }
+ }
+ return adapter;
+ }
+
+ static XmlJavaTypeAdapter getMethodXJTA(final Method m) {
+ XmlJavaTypeAdapter adapter = m.getAnnotation(XmlJavaTypeAdapter.class);
+ if (adapter == null) {
+ Method setter = getSetter(m);
+ adapter = setter.getAnnotation(XmlJavaTypeAdapter.class);
+ }
+ if (adapter == null) {
+ adapter = m.getReturnType().getAnnotation(XmlJavaTypeAdapter.class);
+ }
+ if (adapter == null) {
+ XmlJavaTypeAdapters adapters =
+
m.getDeclaringClass().getPackage().getAnnotation(XmlJavaTypeAdapters.class);
+ if (adapters != null) {
+ for (XmlJavaTypeAdapter candidate : adapters.value()) {
+ if (candidate != null &&
candidate.type().equals(m.getGenericReturnType())) {
+ adapter = candidate;
+ break;
+ }
+ }
+ }
+ }
+ return adapter;
+ }
+
+ static Class<?> getTypeFromXmlAdapter(XmlJavaTypeAdapter xjta) {
+ if (xjta != null) {
+ Class<?> c2 = xjta.value();
+ Type sp = c2.getGenericSuperclass();
+ while (!XmlAdapter.class.equals(c2) && c2 != null) {
+ sp = c2.getGenericSuperclass();
+ c2 = c2.getSuperclass();
+ }
+ if (sp instanceof ParameterizedType) {
+ return
(Class<?>)((ParameterizedType)sp).getActualTypeArguments()[0];
+ }
+ }
+ return null;
+ }
+
+}
Deleted:
thirdparty/cxf/branches/cxf-2.2.12-patch-04_JBPAPP-10657/tools/javato/ws/src/test/java/org/apache/cxf/tools/fortest/exception/Echo.java
===================================================================
---
thirdparty/cxf/branches/cxf-2.2.12-patch-04_JBPAPP-10627/tools/javato/ws/src/test/java/org/apache/cxf/tools/fortest/exception/Echo.java 2013-02-12
14:24:29 UTC (rev 17298)
+++
thirdparty/cxf/branches/cxf-2.2.12-patch-04_JBPAPP-10657/tools/javato/ws/src/test/java/org/apache/cxf/tools/fortest/exception/Echo.java 2013-02-28
11:31:41 UTC (rev 17368)
@@ -1,26 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- *
http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-package org.apache.cxf.tools.fortest.exception;
-
-import javax.jws.WebService;
-
-@WebService(targetNamespace = "http://cxf.apache.org/test/HelloService", name =
"HelloService")
-public interface Echo {
- String echo(String request) throws MyException;
-}
Copied:
thirdparty/cxf/branches/cxf-2.2.12-patch-04_JBPAPP-10657/tools/javato/ws/src/test/java/org/apache/cxf/tools/fortest/exception/Echo.java
(from rev 17298,
thirdparty/cxf/branches/cxf-2.2.12-patch-04_JBPAPP-10627/tools/javato/ws/src/test/java/org/apache/cxf/tools/fortest/exception/Echo.java)
===================================================================
---
thirdparty/cxf/branches/cxf-2.2.12-patch-04_JBPAPP-10657/tools/javato/ws/src/test/java/org/apache/cxf/tools/fortest/exception/Echo.java
(rev 0)
+++
thirdparty/cxf/branches/cxf-2.2.12-patch-04_JBPAPP-10657/tools/javato/ws/src/test/java/org/apache/cxf/tools/fortest/exception/Echo.java 2013-02-28
11:31:41 UTC (rev 17368)
@@ -0,0 +1,26 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ *
http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.cxf.tools.fortest.exception;
+
+import javax.jws.WebService;
+
+@WebService(targetNamespace = "http://cxf.apache.org/test/HelloService", name =
"HelloService")
+public interface Echo {
+ String echo(String request) throws MyException;
+}
Deleted:
thirdparty/cxf/branches/cxf-2.2.12-patch-04_JBPAPP-10657/tools/javato/ws/src/test/java/org/apache/cxf/tools/fortest/exception/EchoImpl.java
===================================================================
---
thirdparty/cxf/branches/cxf-2.2.12-patch-04_JBPAPP-10627/tools/javato/ws/src/test/java/org/apache/cxf/tools/fortest/exception/EchoImpl.java 2013-02-12
14:24:29 UTC (rev 17298)
+++
thirdparty/cxf/branches/cxf-2.2.12-patch-04_JBPAPP-10657/tools/javato/ws/src/test/java/org/apache/cxf/tools/fortest/exception/EchoImpl.java 2013-02-28
11:31:41 UTC (rev 17368)
@@ -1,33 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- *
http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-package org.apache.cxf.tools.fortest.exception;
-
-import javax.jws.WebService;
-
-@WebService(serviceName = "HelloService",
- portName = "HelloPort",
- endpointInterface = "org.apache.cxf.tools.fortest.exception.Echo",
- targetNamespace = "http://cxf.apache.org/test/HelloService")
-public class EchoImpl {
- public String echo(String request) throws MyException {
- return "Response";
-
- }
-
-}
Copied:
thirdparty/cxf/branches/cxf-2.2.12-patch-04_JBPAPP-10657/tools/javato/ws/src/test/java/org/apache/cxf/tools/fortest/exception/EchoImpl.java
(from rev 17298,
thirdparty/cxf/branches/cxf-2.2.12-patch-04_JBPAPP-10627/tools/javato/ws/src/test/java/org/apache/cxf/tools/fortest/exception/EchoImpl.java)
===================================================================
---
thirdparty/cxf/branches/cxf-2.2.12-patch-04_JBPAPP-10657/tools/javato/ws/src/test/java/org/apache/cxf/tools/fortest/exception/EchoImpl.java
(rev 0)
+++
thirdparty/cxf/branches/cxf-2.2.12-patch-04_JBPAPP-10657/tools/javato/ws/src/test/java/org/apache/cxf/tools/fortest/exception/EchoImpl.java 2013-02-28
11:31:41 UTC (rev 17368)
@@ -0,0 +1,33 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ *
http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.cxf.tools.fortest.exception;
+
+import javax.jws.WebService;
+
+@WebService(serviceName = "HelloService",
+ portName = "HelloPort",
+ endpointInterface = "org.apache.cxf.tools.fortest.exception.Echo",
+ targetNamespace = "http://cxf.apache.org/test/HelloService")
+public class EchoImpl {
+ public String echo(String request) throws MyException {
+ return "Response";
+
+ }
+
+}
Deleted:
thirdparty/cxf/branches/cxf-2.2.12-patch-04_JBPAPP-10657/tools/javato/ws/src/test/java/org/apache/cxf/tools/fortest/exception/MyException.java
===================================================================
---
thirdparty/cxf/branches/cxf-2.2.12-patch-04_JBPAPP-10627/tools/javato/ws/src/test/java/org/apache/cxf/tools/fortest/exception/MyException.java 2013-02-12
14:24:29 UTC (rev 17298)
+++
thirdparty/cxf/branches/cxf-2.2.12-patch-04_JBPAPP-10657/tools/javato/ws/src/test/java/org/apache/cxf/tools/fortest/exception/MyException.java 2013-02-28
11:31:41 UTC (rev 17368)
@@ -1,52 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- *
http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-package org.apache.cxf.tools.fortest.exception;
-
-import javax.xml.bind.annotation.XmlType;
-
-(a)javax.xml.ws.WebFault
-@XmlType(namespace = "http://cxf.apache.org/test/HelloService",
- name = "MyException",
- propOrder = { "summary", "from", "id" })
-public class MyException extends SuperException {
- private static final long serialVersionUID = 8575109064272599936L;
- private String summary;
- private String from;
-
- public MyException(String message) {
- super(message);
- }
-
- public void setSummary(String summary) {
- this.summary = summary;
- }
-
- public void setFrom(String from) {
- this.from = from;
- }
-
- public String getSummary() {
- return summary;
- }
-
- public String getFrom() {
- return from;
- }
-
-}
Copied:
thirdparty/cxf/branches/cxf-2.2.12-patch-04_JBPAPP-10657/tools/javato/ws/src/test/java/org/apache/cxf/tools/fortest/exception/MyException.java
(from rev 17298,
thirdparty/cxf/branches/cxf-2.2.12-patch-04_JBPAPP-10627/tools/javato/ws/src/test/java/org/apache/cxf/tools/fortest/exception/MyException.java)
===================================================================
---
thirdparty/cxf/branches/cxf-2.2.12-patch-04_JBPAPP-10657/tools/javato/ws/src/test/java/org/apache/cxf/tools/fortest/exception/MyException.java
(rev 0)
+++
thirdparty/cxf/branches/cxf-2.2.12-patch-04_JBPAPP-10657/tools/javato/ws/src/test/java/org/apache/cxf/tools/fortest/exception/MyException.java 2013-02-28
11:31:41 UTC (rev 17368)
@@ -0,0 +1,52 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ *
http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.cxf.tools.fortest.exception;
+
+import javax.xml.bind.annotation.XmlType;
+
+(a)javax.xml.ws.WebFault
+@XmlType(namespace = "http://cxf.apache.org/test/HelloService",
+ name = "MyException",
+ propOrder = { "summary", "from", "id" })
+public class MyException extends SuperException {
+ private static final long serialVersionUID = 8575109064272599936L;
+ private String summary;
+ private String from;
+
+ public MyException(String message) {
+ super(message);
+ }
+
+ public void setSummary(String summary) {
+ this.summary = summary;
+ }
+
+ public void setFrom(String from) {
+ this.from = from;
+ }
+
+ public String getSummary() {
+ return summary;
+ }
+
+ public String getFrom() {
+ return from;
+ }
+
+}
Deleted:
thirdparty/cxf/branches/cxf-2.2.12-patch-04_JBPAPP-10657/tools/javato/ws/src/test/java/org/apache/cxf/tools/fortest/exception/SuperException.java
===================================================================
---
thirdparty/cxf/branches/cxf-2.2.12-patch-04_JBPAPP-10627/tools/javato/ws/src/test/java/org/apache/cxf/tools/fortest/exception/SuperException.java 2013-02-12
14:24:29 UTC (rev 17298)
+++
thirdparty/cxf/branches/cxf-2.2.12-patch-04_JBPAPP-10657/tools/javato/ws/src/test/java/org/apache/cxf/tools/fortest/exception/SuperException.java 2013-02-28
11:31:41 UTC (rev 17368)
@@ -1,36 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- *
http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-package org.apache.cxf.tools.fortest.exception;
-
-public class SuperException extends Exception {
- private static final long serialVersionUID = 1L;
- private int id;
-
- public SuperException(String message) {
- super(message);
- }
-
- public void setId(int id) {
- this.id = id;
- }
-
- public int getId() {
- return id;
- }
-}
Copied:
thirdparty/cxf/branches/cxf-2.2.12-patch-04_JBPAPP-10657/tools/javato/ws/src/test/java/org/apache/cxf/tools/fortest/exception/SuperException.java
(from rev 17298,
thirdparty/cxf/branches/cxf-2.2.12-patch-04_JBPAPP-10627/tools/javato/ws/src/test/java/org/apache/cxf/tools/fortest/exception/SuperException.java)
===================================================================
---
thirdparty/cxf/branches/cxf-2.2.12-patch-04_JBPAPP-10657/tools/javato/ws/src/test/java/org/apache/cxf/tools/fortest/exception/SuperException.java
(rev 0)
+++
thirdparty/cxf/branches/cxf-2.2.12-patch-04_JBPAPP-10657/tools/javato/ws/src/test/java/org/apache/cxf/tools/fortest/exception/SuperException.java 2013-02-28
11:31:41 UTC (rev 17368)
@@ -0,0 +1,36 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ *
http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.cxf.tools.fortest.exception;
+
+public class SuperException extends Exception {
+ private static final long serialVersionUID = 1L;
+ private int id;
+
+ public SuperException(String message) {
+ super(message);
+ }
+
+ public void setId(int id) {
+ this.id = id;
+ }
+
+ public int getId() {
+ return id;
+ }
+}