You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cxf.apache.org by jl...@apache.org on 2007/10/25 19:10:56 UTC
svn commit: r588283 [8/18] - in /incubator/cxf/branches/jliu: ./ api/
api/src/main/java/org/apache/cxf/databinding/
api/src/main/java/org/apache/cxf/io/
api/src/main/java/org/apache/cxf/message/
api/src/main/java/org/apache/cxf/phase/ api/src/main/java...
Modified: incubator/cxf/branches/jliu/rt/databinding/aegis/src/main/java/org/apache/cxf/aegis/type/basic/ArrayType.java
URL: http://svn.apache.org/viewvc/incubator/cxf/branches/jliu/rt/databinding/aegis/src/main/java/org/apache/cxf/aegis/type/basic/ArrayType.java?rev=588283&r1=588282&r2=588283&view=diff
==============================================================================
--- incubator/cxf/branches/jliu/rt/databinding/aegis/src/main/java/org/apache/cxf/aegis/type/basic/ArrayType.java (original)
+++ incubator/cxf/branches/jliu/rt/databinding/aegis/src/main/java/org/apache/cxf/aegis/type/basic/ArrayType.java Thu Oct 25 10:09:20 2007
@@ -35,9 +35,9 @@
import org.apache.cxf.aegis.type.Type;
import org.apache.cxf.aegis.type.TypeUtil;
import org.apache.cxf.aegis.util.NamespaceHelper;
-import org.apache.cxf.aegis.util.XmlConstants;
import org.apache.cxf.aegis.xml.MessageReader;
import org.apache.cxf.aegis.xml.MessageWriter;
+import org.apache.cxf.common.util.SOAPConstants;
import org.jdom.Attribute;
import org.jdom.Element;
import org.jdom.Namespace;
@@ -265,14 +265,14 @@
return;
}
- Element complex = new Element("complexType", XmlConstants.XSD_PREFIX, XmlConstants.XSD);
+ Element complex = new Element("complexType", SOAPConstants.XSD_PREFIX, SOAPConstants.XSD);
complex.setAttribute(new Attribute("name", getSchemaType().getLocalPart()));
root.addContent(complex);
- Element seq = new Element("sequence", XmlConstants.XSD_PREFIX, XmlConstants.XSD);
+ Element seq = new Element("sequence", SOAPConstants.XSD_PREFIX, SOAPConstants.XSD);
complex.addContent(seq);
- Element element = new Element("element", XmlConstants.XSD_PREFIX, XmlConstants.XSD);
+ Element element = new Element("element", SOAPConstants.XSD_PREFIX, SOAPConstants.XSD);
seq.addContent(element);
Type componentType = getComponentType();
@@ -308,7 +308,7 @@
* @return
*/
private boolean hasDefinedArray(Element root) {
- List children = root.getChildren("complexType", Namespace.getNamespace(XmlConstants.XSD));
+ List children = root.getChildren("complexType", Namespace.getNamespace(SOAPConstants.XSD));
for (Iterator itr = children.iterator(); itr.hasNext();) {
Element e = (Element) itr.next();
Modified: incubator/cxf/branches/jliu/rt/databinding/aegis/src/main/java/org/apache/cxf/aegis/type/basic/Base64Type.java
URL: http://svn.apache.org/viewvc/incubator/cxf/branches/jliu/rt/databinding/aegis/src/main/java/org/apache/cxf/aegis/type/basic/Base64Type.java?rev=588283&r1=588282&r2=588283&view=diff
==============================================================================
--- incubator/cxf/branches/jliu/rt/databinding/aegis/src/main/java/org/apache/cxf/aegis/type/basic/Base64Type.java (original)
+++ incubator/cxf/branches/jliu/rt/databinding/aegis/src/main/java/org/apache/cxf/aegis/type/basic/Base64Type.java Thu Oct 25 10:09:20 2007
@@ -29,11 +29,11 @@
import org.apache.cxf.aegis.type.Type;
import org.apache.cxf.aegis.type.mtom.AbstractXOPType;
import org.apache.cxf.aegis.type.mtom.ByteArrayType;
-import org.apache.cxf.aegis.util.XmlConstants;
import org.apache.cxf.aegis.xml.MessageReader;
import org.apache.cxf.aegis.xml.MessageWriter;
import org.apache.cxf.common.util.Base64Exception;
import org.apache.cxf.common.util.Base64Utility;
+import org.apache.cxf.common.util.SOAPConstants;
/**
* Converts back and forth to byte[] objects.
@@ -49,7 +49,7 @@
@Override
public Object readObject(MessageReader mreader, Context context) throws DatabindingException {
- boolean mtomEnabled = Boolean.valueOf((String)context.get(XmlConstants.MTOM_ENABLED)).booleanValue();
+ boolean mtomEnabled = Boolean.valueOf((String)context.get(SOAPConstants.MTOM_ENABLED)).booleanValue();
XMLStreamReader reader = mreader.getXMLStreamReader();
ByteArrayOutputStream bos = new ByteArrayOutputStream();
@@ -107,7 +107,7 @@
public void writeObject(Object object,
MessageWriter writer,
Context context) throws DatabindingException {
- boolean mtomEnabled = Boolean.valueOf((String)context.get(XmlConstants.MTOM_ENABLED)).booleanValue();
+ boolean mtomEnabled = Boolean.valueOf((String)context.get(SOAPConstants.MTOM_ENABLED)).booleanValue();
if (mtomEnabled) {
optimizedType.writeObject(object, writer, context);
return;
Modified: incubator/cxf/branches/jliu/rt/databinding/aegis/src/main/java/org/apache/cxf/aegis/type/basic/BeanType.java
URL: http://svn.apache.org/viewvc/incubator/cxf/branches/jliu/rt/databinding/aegis/src/main/java/org/apache/cxf/aegis/type/basic/BeanType.java?rev=588283&r1=588282&r2=588283&view=diff
==============================================================================
--- incubator/cxf/branches/jliu/rt/databinding/aegis/src/main/java/org/apache/cxf/aegis/type/basic/BeanType.java (original)
+++ incubator/cxf/branches/jliu/rt/databinding/aegis/src/main/java/org/apache/cxf/aegis/type/basic/BeanType.java Thu Oct 25 10:09:20 2007
@@ -36,10 +36,10 @@
import org.apache.cxf.aegis.type.TypeMapping;
import org.apache.cxf.aegis.type.TypeUtil;
import org.apache.cxf.aegis.util.NamespaceHelper;
-import org.apache.cxf.aegis.util.XmlConstants;
import org.apache.cxf.aegis.xml.MessageReader;
import org.apache.cxf.aegis.xml.MessageWriter;
import org.apache.cxf.common.classloader.ClassLoaderUtils;
+import org.apache.cxf.common.util.SOAPConstants;
import org.apache.cxf.interceptor.Fault;
import org.jdom.Attribute;
import org.jdom.Element;
@@ -387,7 +387,7 @@
@Override
public void writeSchema(Element root) {
BeanTypeInfo inf = getTypeInfo();
- Element complex = new Element("complexType", XmlConstants.XSD_PREFIX, XmlConstants.XSD);
+ Element complex = new Element("complexType", SOAPConstants.XSD_PREFIX, SOAPConstants.XSD);
complex.setAttribute(new Attribute("name", getSchemaType().getLocalPart()));
root.addContent(complex);
@@ -403,7 +403,9 @@
}
if (inf.isExtension() && sooperType != null) {
- Element complexContent = new Element("complexContent", XmlConstants.XSD_PREFIX, XmlConstants.XSD);
+ Element complexContent = new Element("complexContent",
+ SOAPConstants.XSD_PREFIX,
+ SOAPConstants.XSD);
complex.addContent(complexContent);
complex = complexContent;
}
@@ -418,7 +420,7 @@
if (isExtension && sooperType != null) {
- Element extension = new Element("extension", XmlConstants.XSD_PREFIX, XmlConstants.XSD);
+ Element extension = new Element("extension", SOAPConstants.XSD_PREFIX, SOAPConstants.XSD);
complex.addContent(extension);
QName baseType = sooperType.getSchemaType();
extension.setAttribute(new Attribute("base", getNameWithPrefix2(root, baseType
@@ -444,11 +446,11 @@
}
if (seq == null) {
- seq = new Element("sequence", XmlConstants.XSD_PREFIX, XmlConstants.XSD);
+ seq = new Element("sequence", SOAPConstants.XSD_PREFIX, SOAPConstants.XSD);
dummy.addContent(seq);
}
- Element element = new Element("element", XmlConstants.XSD_PREFIX, XmlConstants.XSD);
+ Element element = new Element("element", SOAPConstants.XSD_PREFIX, SOAPConstants.XSD);
seq.addContent(element);
Type type = getType(inf, name);
@@ -466,7 +468,7 @@
*/
if (inf.isExtensibleElements()) {
if (seq == null) {
- seq = new Element("sequence", XmlConstants.XSD_PREFIX, XmlConstants.XSD);
+ seq = new Element("sequence", SOAPConstants.XSD_PREFIX, SOAPConstants.XSD);
dummy.addContent(seq);
}
seq.addContent(createAnyElement());
@@ -476,7 +478,7 @@
for (Iterator itr = inf.getAttributes(); itr.hasNext();) {
QName name = (QName)itr.next();
- Element element = new Element("attribute", XmlConstants.XSD_PREFIX, XmlConstants.XSD);
+ Element element = new Element("attribute", SOAPConstants.XSD_PREFIX, SOAPConstants.XSD);
dummy.addContent(element);
Type type = getType(inf, name);
@@ -664,7 +666,7 @@
* @return
*/
private Element createAnyElement() {
- Element result = new Element("any", XmlConstants.XSD_PREFIX, XmlConstants.XSD);
+ Element result = new Element("any", SOAPConstants.XSD_PREFIX, SOAPConstants.XSD);
result.setAttribute(new Attribute("minOccurs", "0"));
result.setAttribute(new Attribute("maxOccurs", "unbounded"));
return result;
@@ -693,7 +695,7 @@
* @return
*/
private Element createAnyAttribute() {
- return new Element("anyAttribute", XmlConstants.XSD_PREFIX, XmlConstants.XSD);
+ return new Element("anyAttribute", SOAPConstants.XSD_PREFIX, SOAPConstants.XSD);
}
}
Modified: incubator/cxf/branches/jliu/rt/databinding/aegis/src/main/java/org/apache/cxf/aegis/type/basic/ObjectType.java
URL: http://svn.apache.org/viewvc/incubator/cxf/branches/jliu/rt/databinding/aegis/src/main/java/org/apache/cxf/aegis/type/basic/ObjectType.java?rev=588283&r1=588282&r2=588283&view=diff
==============================================================================
--- incubator/cxf/branches/jliu/rt/databinding/aegis/src/main/java/org/apache/cxf/aegis/type/basic/ObjectType.java (original)
+++ incubator/cxf/branches/jliu/rt/databinding/aegis/src/main/java/org/apache/cxf/aegis/type/basic/ObjectType.java Thu Oct 25 10:09:20 2007
@@ -31,10 +31,10 @@
import org.apache.cxf.aegis.DatabindingException;
import org.apache.cxf.aegis.type.Type;
import org.apache.cxf.aegis.type.TypeMapping;
-import org.apache.cxf.aegis.util.XmlConstants;
import org.apache.cxf.aegis.xml.MessageReader;
import org.apache.cxf.aegis.xml.MessageWriter;
import org.apache.cxf.common.util.Base64Utility;
+import org.apache.cxf.common.util.SOAPConstants;
import org.jdom.Attribute;
import org.jdom.Element;
@@ -50,8 +50,8 @@
* @author <a href="mailto:peter.royal@pobox.com">peter royal</a>
*/
public class ObjectType extends Type {
- private static final QName XSI_TYPE = new QName(XmlConstants.XSI_NS, "type");
- private static final QName XSI_NIL = new QName(XmlConstants.XSI_NS, "nil");
+ private static final QName XSI_TYPE = new QName(SOAPConstants.XSI_NS, "type");
+ private static final QName XSI_NIL = new QName(SOAPConstants.XSI_NS, "nil");
private Set<Type> dependencies;
private boolean serializedWhenUnknown;
@@ -185,7 +185,8 @@
tm.register(type);
}
- String prefix = writer.getPrefixForNamespace(type.getSchemaType().getNamespaceURI());
+ String prefix = writer.getPrefixForNamespace(type.getSchemaType().getNamespaceURI(),
+ type.getSchemaType().getPrefix());
if (null == prefix || prefix.length() == 0) {
addXsiType(writer, type.getSchemaType().getLocalPart());
@@ -294,12 +295,12 @@
@Override
public void writeSchema(Element root) {
if (serializedWhenUnknown) {
- Element simple = new Element("simpleType", XmlConstants.XSD_PREFIX, XmlConstants.XSD);
+ Element simple = new Element("simpleType", SOAPConstants.XSD_PREFIX, SOAPConstants.XSD);
simple.setAttribute(new Attribute("name", "serializedJavaObject"));
root.addContent(simple);
- Element restriction = new Element("restriction", XmlConstants.XSD_PREFIX, XmlConstants.XSD);
- restriction.setAttribute(new Attribute("base", XmlConstants.XSD_PREFIX + ":base64Binary"));
+ Element restriction = new Element("restriction", SOAPConstants.XSD_PREFIX, SOAPConstants.XSD);
+ restriction.setAttribute(new Attribute("base", SOAPConstants.XSD_PREFIX + ":base64Binary"));
simple.addContent(restriction);
}
Modified: incubator/cxf/branches/jliu/rt/databinding/aegis/src/main/java/org/apache/cxf/aegis/type/collection/MapType.java
URL: http://svn.apache.org/viewvc/incubator/cxf/branches/jliu/rt/databinding/aegis/src/main/java/org/apache/cxf/aegis/type/collection/MapType.java?rev=588283&r1=588282&r2=588283&view=diff
==============================================================================
--- incubator/cxf/branches/jliu/rt/databinding/aegis/src/main/java/org/apache/cxf/aegis/type/collection/MapType.java (original)
+++ incubator/cxf/branches/jliu/rt/databinding/aegis/src/main/java/org/apache/cxf/aegis/type/collection/MapType.java Thu Oct 25 10:09:20 2007
@@ -32,9 +32,9 @@
import org.apache.cxf.aegis.type.Type;
import org.apache.cxf.aegis.type.TypeUtil;
import org.apache.cxf.aegis.util.NamespaceHelper;
-import org.apache.cxf.aegis.util.XmlConstants;
import org.apache.cxf.aegis.xml.MessageReader;
import org.apache.cxf.aegis.xml.MessageWriter;
+import org.apache.cxf.common.util.SOAPConstants;
import org.jdom.Attribute;
import org.jdom.Element;
@@ -176,27 +176,27 @@
@Override
public void writeSchema(Element root) {
- Element complex = new Element("complexType", XmlConstants.XSD_PREFIX, XmlConstants.XSD);
+ Element complex = new Element("complexType", SOAPConstants.XSD_PREFIX, SOAPConstants.XSD);
complex.setAttribute(new Attribute("name", getSchemaType().getLocalPart()));
root.addContent(complex);
- Element seq = new Element("sequence", XmlConstants.XSD_PREFIX, XmlConstants.XSD);
+ Element seq = new Element("sequence", SOAPConstants.XSD_PREFIX, SOAPConstants.XSD);
complex.addContent(seq);
Type kType = getKeyType();
Type vType = getValueType();
- Element element = new Element("element", XmlConstants.XSD_PREFIX, XmlConstants.XSD);
+ Element element = new Element("element", SOAPConstants.XSD_PREFIX, SOAPConstants.XSD);
seq.addContent(element);
element.setAttribute(new Attribute("name", getEntryName().getLocalPart()));
element.setAttribute(new Attribute("minOccurs", "0"));
element.setAttribute(new Attribute("maxOccurs", "unbounded"));
- Element evComplex = new Element("complexType", XmlConstants.XSD_PREFIX, XmlConstants.XSD);
+ Element evComplex = new Element("complexType", SOAPConstants.XSD_PREFIX, SOAPConstants.XSD);
element.addContent(evComplex);
- Element evseq = new Element("sequence", XmlConstants.XSD_PREFIX, XmlConstants.XSD);
+ Element evseq = new Element("sequence", SOAPConstants.XSD_PREFIX, SOAPConstants.XSD);
evComplex.addContent(evseq);
createElement(root, evseq, getKeyName(), kType);
@@ -207,7 +207,7 @@
* Creates a element in a sequence for the key type and the value type.
*/
private void createElement(Element root, Element seq, QName name, Type type) {
- Element element = new Element("element", XmlConstants.XSD_PREFIX, XmlConstants.XSD);
+ Element element = new Element("element", SOAPConstants.XSD_PREFIX, SOAPConstants.XSD);
seq.addContent(element);
String prefix = NamespaceHelper.getUniquePrefix((Element)root, type.getSchemaType()
Modified: incubator/cxf/branches/jliu/rt/databinding/aegis/src/main/java/org/apache/cxf/aegis/type/java5/EnumType.java
URL: http://svn.apache.org/viewvc/incubator/cxf/branches/jliu/rt/databinding/aegis/src/main/java/org/apache/cxf/aegis/type/java5/EnumType.java?rev=588283&r1=588282&r2=588283&view=diff
==============================================================================
--- incubator/cxf/branches/jliu/rt/databinding/aegis/src/main/java/org/apache/cxf/aegis/type/java5/EnumType.java (original)
+++ incubator/cxf/branches/jliu/rt/databinding/aegis/src/main/java/org/apache/cxf/aegis/type/java5/EnumType.java Thu Oct 25 10:09:20 2007
@@ -21,9 +21,9 @@
import org.apache.cxf.aegis.Context;
import org.apache.cxf.aegis.DatabindingException;
import org.apache.cxf.aegis.type.Type;
-import org.apache.cxf.aegis.util.XmlConstants;
import org.apache.cxf.aegis.xml.MessageReader;
import org.apache.cxf.aegis.xml.MessageWriter;
+import org.apache.cxf.common.util.SOAPConstants;
import org.jdom.Attribute;
import org.jdom.Element;
import org.jdom.Namespace;
@@ -53,14 +53,14 @@
@Override
public void writeSchema(Element root) {
- Namespace xsd = Namespace.getNamespace(XmlConstants.XSD_PREFIX, XmlConstants.XSD);
+ Namespace xsd = Namespace.getNamespace(SOAPConstants.XSD_PREFIX, SOAPConstants.XSD);
Element simple = new Element("simpleType", xsd);
simple.setAttribute(new Attribute("name", getSchemaType().getLocalPart()));
root.addContent(simple);
Element restriction = new Element("restriction", xsd);
- restriction.setAttribute(new Attribute("base", XmlConstants.XSD_PREFIX + ":string"));
+ restriction.setAttribute(new Attribute("base", SOAPConstants.XSD_PREFIX + ":string"));
simple.addContent(restriction);
Object[] constants = getTypeClass().getEnumConstants();
Modified: incubator/cxf/branches/jliu/rt/databinding/aegis/src/main/java/org/apache/cxf/aegis/type/java5/Java5TypeCreator.java
URL: http://svn.apache.org/viewvc/incubator/cxf/branches/jliu/rt/databinding/aegis/src/main/java/org/apache/cxf/aegis/type/java5/Java5TypeCreator.java?rev=588283&r1=588282&r2=588283&view=diff
==============================================================================
--- incubator/cxf/branches/jliu/rt/databinding/aegis/src/main/java/org/apache/cxf/aegis/type/java5/Java5TypeCreator.java (original)
+++ incubator/cxf/branches/jliu/rt/databinding/aegis/src/main/java/org/apache/cxf/aegis/type/java5/Java5TypeCreator.java Thu Oct 25 10:09:20 2007
@@ -44,6 +44,7 @@
info = nextCreator.createClassInfo(m, index);
} else {
info = new TypeClassInfo();
+ info.setDescription("method " + m.getName() + " parameter " + index);
info.setGenericType(genericType);
}
info.setTypeClass(m.getParameterTypes()[index]);
@@ -66,6 +67,7 @@
info = nextCreator.createClassInfo(m, index);
} else {
info = new TypeClassInfo();
+ info.setDescription("method " + m.getName() + " parameter " + index);
info.setGenericType(genericReturnType);
}
info.setTypeClass(m.getReturnType());
Modified: incubator/cxf/branches/jliu/rt/databinding/aegis/src/main/java/org/apache/cxf/aegis/type/mtom/ByteArrayType.java
URL: http://svn.apache.org/viewvc/incubator/cxf/branches/jliu/rt/databinding/aegis/src/main/java/org/apache/cxf/aegis/type/mtom/ByteArrayType.java?rev=588283&r1=588282&r2=588283&view=diff
==============================================================================
--- incubator/cxf/branches/jliu/rt/databinding/aegis/src/main/java/org/apache/cxf/aegis/type/mtom/ByteArrayType.java (original)
+++ incubator/cxf/branches/jliu/rt/databinding/aegis/src/main/java/org/apache/cxf/aegis/type/mtom/ByteArrayType.java Thu Oct 25 10:09:20 2007
@@ -27,9 +27,9 @@
import javax.xml.namespace.QName;
import org.apache.cxf.aegis.Context;
-import org.apache.cxf.aegis.util.XmlConstants;
import org.apache.cxf.attachment.AttachmentImpl;
import org.apache.cxf.attachment.ByteDataSource;
+import org.apache.cxf.common.util.SOAPConstants;
import org.apache.cxf.message.Attachment;
/**
@@ -38,7 +38,7 @@
public class ByteArrayType extends AbstractXOPType {
public ByteArrayType() {
setTypeClass(byte[].class);
- setSchemaType(new QName(XmlConstants.XSD, "base64Binary"));
+ setSchemaType(new QName(SOAPConstants.XSD, "base64Binary"));
}
@Override
Modified: incubator/cxf/branches/jliu/rt/databinding/aegis/src/main/java/org/apache/cxf/aegis/util/NamespaceHelper.java
URL: http://svn.apache.org/viewvc/incubator/cxf/branches/jliu/rt/databinding/aegis/src/main/java/org/apache/cxf/aegis/util/NamespaceHelper.java?rev=588283&r1=588282&r2=588283&view=diff
==============================================================================
--- incubator/cxf/branches/jliu/rt/databinding/aegis/src/main/java/org/apache/cxf/aegis/util/NamespaceHelper.java (original)
+++ incubator/cxf/branches/jliu/rt/databinding/aegis/src/main/java/org/apache/cxf/aegis/util/NamespaceHelper.java Thu Oct 25 10:09:20 2007
@@ -56,7 +56,11 @@
public static String getUniquePrefix(Element element, String namespaceURI) {
String prefix = getPrefix(element, namespaceURI);
+ // it is OK to have both namespace URI and prefix be empty.
if (prefix == null) {
+ if ("".equals(namespaceURI)) {
+ return "";
+ }
prefix = getUniquePrefix(element);
element.addNamespaceDeclaration(Namespace.getNamespace(prefix, namespaceURI));
}
Modified: incubator/cxf/branches/jliu/rt/databinding/aegis/src/main/java/org/apache/cxf/aegis/xml/AbstractMessageReader.java
URL: http://svn.apache.org/viewvc/incubator/cxf/branches/jliu/rt/databinding/aegis/src/main/java/org/apache/cxf/aegis/xml/AbstractMessageReader.java?rev=588283&r1=588282&r2=588283&view=diff
==============================================================================
--- incubator/cxf/branches/jliu/rt/databinding/aegis/src/main/java/org/apache/cxf/aegis/xml/AbstractMessageReader.java (original)
+++ incubator/cxf/branches/jliu/rt/databinding/aegis/src/main/java/org/apache/cxf/aegis/xml/AbstractMessageReader.java Thu Oct 25 10:09:20 2007
@@ -22,7 +22,7 @@
import javax.xml.stream.XMLStreamReader;
import org.apache.cxf.aegis.DatabindingException;
-import org.apache.cxf.aegis.util.XmlConstants;
+import org.apache.cxf.common.util.SOAPConstants;
/**
* Basic type conversions for reading messages.
@@ -30,7 +30,7 @@
* @author <a href="mailto:dan@envoisolutions.com">Dan Diephouse</a>
*/
public abstract class AbstractMessageReader implements MessageReader {
- private static final QName XSI_NIL = new QName(XmlConstants.XSI_NS, "nil", XmlConstants.XSI_PREFIX);
+ private static final QName XSI_NIL = new QName(SOAPConstants.XSI_NS, "nil", SOAPConstants.XSI_PREFIX);
public AbstractMessageReader() {
}
Modified: incubator/cxf/branches/jliu/rt/databinding/aegis/src/main/java/org/apache/cxf/aegis/xml/AbstractMessageWriter.java
URL: http://svn.apache.org/viewvc/incubator/cxf/branches/jliu/rt/databinding/aegis/src/main/java/org/apache/cxf/aegis/xml/AbstractMessageWriter.java?rev=588283&r1=588282&r2=588283&view=diff
==============================================================================
--- incubator/cxf/branches/jliu/rt/databinding/aegis/src/main/java/org/apache/cxf/aegis/xml/AbstractMessageWriter.java (original)
+++ incubator/cxf/branches/jliu/rt/databinding/aegis/src/main/java/org/apache/cxf/aegis/xml/AbstractMessageWriter.java Thu Oct 25 10:09:20 2007
@@ -20,7 +20,7 @@
import javax.xml.namespace.QName;
-import org.apache.cxf.aegis.util.XmlConstants;
+import org.apache.cxf.common.util.SOAPConstants;
/**
* Basic type conversion functionality for writing messages.
@@ -53,11 +53,11 @@
} else {
value = type.getLocalPart();
}
- getAttributeWriter("type", XmlConstants.XSI_NS).writeValue(value);
+ getAttributeWriter("type", SOAPConstants.XSI_NS).writeValue(value);
}
public void writeXsiNil() {
- MessageWriter attWriter = getAttributeWriter("nil", XmlConstants.XSI_NS);
+ MessageWriter attWriter = getAttributeWriter("nil", SOAPConstants.XSI_NS);
attWriter.writeValue("true");
attWriter.close();
}
Modified: incubator/cxf/branches/jliu/rt/databinding/aegis/src/main/java/org/apache/cxf/aegis/xml/stax/ElementReader.java
URL: http://svn.apache.org/viewvc/incubator/cxf/branches/jliu/rt/databinding/aegis/src/main/java/org/apache/cxf/aegis/xml/stax/ElementReader.java?rev=588283&r1=588282&r2=588283&view=diff
==============================================================================
--- incubator/cxf/branches/jliu/rt/databinding/aegis/src/main/java/org/apache/cxf/aegis/xml/stax/ElementReader.java (original)
+++ incubator/cxf/branches/jliu/rt/databinding/aegis/src/main/java/org/apache/cxf/aegis/xml/stax/ElementReader.java Thu Oct 25 10:09:20 2007
@@ -28,9 +28,9 @@
import javax.xml.stream.XMLStreamReader;
import org.apache.cxf.aegis.DatabindingException;
-import org.apache.cxf.aegis.util.XmlConstants;
import org.apache.cxf.aegis.xml.AbstractMessageReader;
import org.apache.cxf.aegis.xml.MessageReader;
+import org.apache.cxf.common.util.SOAPConstants;
import org.apache.cxf.staxutils.DepthXMLStreamReader;
import org.apache.cxf.staxutils.StaxUtils;
@@ -106,7 +106,7 @@
/*
* We're making a conscious choice here -- garbage in == garbate out.
*/
- String xsiTypeQname = root.getAttributeValue(XmlConstants.XSI_NS, "type");
+ String xsiTypeQname = root.getAttributeValue(SOAPConstants.XSI_NS, "type");
if (xsiTypeQname != null) {
Matcher m = QNAME_PATTERN.matcher(xsiTypeQname);
if (m.matches()) {
Modified: incubator/cxf/branches/jliu/rt/databinding/aegis/src/main/java/org/apache/cxf/aegis/xml/stax/ElementWriter.java
URL: http://svn.apache.org/viewvc/incubator/cxf/branches/jliu/rt/databinding/aegis/src/main/java/org/apache/cxf/aegis/xml/stax/ElementWriter.java?rev=588283&r1=588282&r2=588283&view=diff
==============================================================================
--- incubator/cxf/branches/jliu/rt/databinding/aegis/src/main/java/org/apache/cxf/aegis/xml/stax/ElementWriter.java (original)
+++ incubator/cxf/branches/jliu/rt/databinding/aegis/src/main/java/org/apache/cxf/aegis/xml/stax/ElementWriter.java Thu Oct 25 10:09:20 2007
@@ -29,6 +29,7 @@
import org.apache.cxf.aegis.util.NamespaceHelper;
import org.apache.cxf.aegis.xml.AbstractMessageWriter;
import org.apache.cxf.aegis.xml.MessageWriter;
+import org.apache.cxf.common.util.StringUtils;
/**
* LiteralWriter
@@ -99,10 +100,10 @@
String decPrefix = writer.getNamespaceContext().getPrefix(namespace);
// If the user didn't specify a prefix, create one
- if (prefix == null && decPrefix == null) {
+ if (StringUtils.isEmpty(prefix) && decPrefix == null) {
declare = true;
prefix = NamespaceHelper.getUniquePrefix(writer);
- } else if (prefix == null) {
+ } else if (StringUtils.isEmpty(prefix)) {
prefix = decPrefix;
} else if (!prefix.equals(decPrefix)) {
declare = true;
Modified: incubator/cxf/branches/jliu/rt/databinding/aegis/src/schema/mapping.xsd
URL: http://svn.apache.org/viewvc/incubator/cxf/branches/jliu/rt/databinding/aegis/src/schema/mapping.xsd?rev=588283&r1=588282&r2=588283&view=diff
==============================================================================
--- incubator/cxf/branches/jliu/rt/databinding/aegis/src/schema/mapping.xsd (original)
+++ incubator/cxf/branches/jliu/rt/databinding/aegis/src/schema/mapping.xsd Thu Oct 25 10:09:20 2007
@@ -18,8 +18,8 @@
under the License.
-->
<schema xmlns="http://www.w3.org/2001/XMLSchema"
- targetNamespace="http://xfire.codehaus.org/aegis/1.0"
- xmlns:tns="http://xfire.codehaus.org/aegis/1.0"
+ targetNamespace="http://cxf.apache.org/aegis/1.1"
+ xmlns:tns="http://cxf.apache.org/aegis/1.1"
elementFormDefault="unqualified"
attributeFormDefault="unqualified" >
@@ -76,10 +76,13 @@
<attribute name="typeName" type="string" />
<attribute name="mappedName" type="string" />
<attribute name="nillable" type="boolean" />
+ <attribute name="flag" type="boolean" />
<attribute name="ignore" type="boolean" />
<attribute name="componentType" type="string" />
<attribute name="keyType" type="string" />
+ <attribute name="valueType" type="string" />
<attribute name="minOccurs" type="int"/>
+ <attribute name="maxOccurs" type="string"/> <!-- takes * -->
<attribute name="style">
<simpleType>
<restriction base="string">
Modified: incubator/cxf/branches/jliu/rt/databinding/aegis/src/test/java/org/apache/cxf/aegis/AbstractAegisTest.java
URL: http://svn.apache.org/viewvc/incubator/cxf/branches/jliu/rt/databinding/aegis/src/test/java/org/apache/cxf/aegis/AbstractAegisTest.java?rev=588283&r1=588282&r2=588283&view=diff
==============================================================================
--- incubator/cxf/branches/jliu/rt/databinding/aegis/src/test/java/org/apache/cxf/aegis/AbstractAegisTest.java (original)
+++ incubator/cxf/branches/jliu/rt/databinding/aegis/src/test/java/org/apache/cxf/aegis/AbstractAegisTest.java Thu Oct 25 10:09:20 2007
@@ -20,6 +20,7 @@
import java.util.ArrayList;
import java.util.Collection;
+
import javax.wsdl.Definition;
import javax.wsdl.Import;
import javax.wsdl.WSDLException;
@@ -35,11 +36,11 @@
import org.apache.cxf.BusFactory;
import org.apache.cxf.aegis.databinding.AegisDatabinding;
import org.apache.cxf.aegis.databinding.AegisServiceConfiguration;
-import org.apache.cxf.aegis.util.XmlConstants;
import org.apache.cxf.binding.BindingFactoryManager;
import org.apache.cxf.binding.soap.SoapBindingFactory;
import org.apache.cxf.binding.soap.SoapTransportFactory;
import org.apache.cxf.bus.extension.ExtensionManagerBus;
+import org.apache.cxf.common.util.SOAPConstants;
import org.apache.cxf.endpoint.Server;
import org.apache.cxf.endpoint.ServerRegistry;
import org.apache.cxf.frontend.AbstractWSDLBasedEndpointFactory;
@@ -91,9 +92,9 @@
bus.setExtension(new WSDLManagerImpl(), WSDLManager.class);
- addNamespace("wsdl", XmlConstants.WSDL11_NS);
- addNamespace("wsdlsoap", XmlConstants.WSDL11_SOAP_NS);
- addNamespace("xsd", XmlConstants.XSD);
+ addNamespace("wsdl", SOAPConstants.WSDL11_NS);
+ addNamespace("wsdlsoap", SOAPConstants.WSDL11_SOAP_NS);
+ addNamespace("xsd", SOAPConstants.XSD);
}
@@ -110,27 +111,56 @@
}
public Server createService(Class serviceClass, QName name) {
- return createService(serviceClass, serviceClass.getSimpleName(), name);
+ return createService(serviceClass, null, name);
+ }
+
+ public Server createService(Class serviceClass, Object serviceBean, QName name) {
+ return createService(serviceClass, serviceBean, serviceClass.getSimpleName(), name);
+ }
+
+ protected Server createService(Class serviceClass, QName name, AegisDatabinding binding) {
+ return createService(serviceClass, serviceClass.getSimpleName(), name, binding);
+ }
+
+ protected Server createService(Class serviceClass,
+ String address, QName name,
+ AegisDatabinding binding) {
+ ServerFactoryBean sf = createServiceFactory(serviceClass, null, address, name, binding);
+ return sf.create();
}
- public Server createService(Class serviceClass,
- String address, QName name) {
- ServerFactoryBean sf = createServiceFactory(serviceClass, address, name);
+ public Server createService(Class serviceClass,
+ Object serviceBean,
+ String address,
+ QName name) {
+ ServerFactoryBean sf = createServiceFactory(serviceClass, serviceBean, address, name, null);
return sf.create();
}
- protected ServerFactoryBean createServiceFactory(Class serviceClass, String address, QName name) {
+ protected ServerFactoryBean createServiceFactory(Class serviceClass,
+ Object serviceBean,
+ String address,
+ QName name,
+ AegisDatabinding binding) {
ServerFactoryBean sf = new ServerFactoryBean();
sf.setServiceClass(serviceClass);
+ if (serviceBean != null) {
+ sf.setServiceBean(serviceBean);
+ }
sf.getServiceFactory().setServiceName(name);
sf.setAddress("local://" + address);
- setupAegis(sf);
+ setupAegis(sf, binding);
return sf;
}
-
- protected void setupAegis(AbstractWSDLBasedEndpointFactory sf) {
+ protected void setupAegis(AbstractWSDLBasedEndpointFactory sf) {
+ setupAegis(sf, null);
+ }
+ protected void setupAegis(AbstractWSDLBasedEndpointFactory sf, AegisDatabinding binding) {
+ if (binding == null) {
+ binding = new AegisDatabinding();
+ }
sf.getServiceFactory().getServiceConfigurations().add(0, new AegisServiceConfiguration());
- sf.getServiceFactory().setDataBinding(new AegisDatabinding());
+ sf.getServiceFactory().setDataBinding(binding);
}
protected Collection<Document> getWSDLDocuments(String string) throws WSDLException {
Modified: incubator/cxf/branches/jliu/rt/databinding/aegis/src/test/java/org/apache/cxf/aegis/client/HeaderTest.java
URL: http://svn.apache.org/viewvc/incubator/cxf/branches/jliu/rt/databinding/aegis/src/test/java/org/apache/cxf/aegis/client/HeaderTest.java?rev=588283&r1=588282&r2=588283&view=diff
==============================================================================
--- incubator/cxf/branches/jliu/rt/databinding/aegis/src/test/java/org/apache/cxf/aegis/client/HeaderTest.java (original)
+++ incubator/cxf/branches/jliu/rt/databinding/aegis/src/test/java/org/apache/cxf/aegis/client/HeaderTest.java Thu Oct 25 10:09:20 2007
@@ -25,7 +25,7 @@
import org.w3c.dom.Document;
import org.apache.cxf.aegis.AbstractAegisTest;
-import org.apache.cxf.aegis.util.XmlConstants;
+import org.apache.cxf.common.util.SOAPConstants;
import org.apache.cxf.frontend.ClientProxyFactoryBean;
import org.apache.cxf.frontend.ServerFactoryBean;
import org.apache.cxf.service.factory.ReflectionServiceFactoryBean;
@@ -82,7 +82,7 @@
Document wsdl = getWSDLDocument("Echo");
- addNamespace("wsdlsoap", XmlConstants.WSDL11_NS);
+ addNamespace("wsdlsoap", SOAPConstants.WSDL11_NS);
assertValid("//wsdl:input/wsdlsoap:header[@message='tns:echoRequestHeaders'][@part='in0']", wsdl);
assertValid("//wsdl:output/wsdlsoap:header[@message='tns:echoResponseHeaders'][@part='out']", wsdl);
assertValid("//wsdl:output/wsdlsoap:header[@message='tns:echoResponseHeaders'][@part='out0']", wsdl);
Modified: incubator/cxf/branches/jliu/rt/databinding/aegis/src/test/java/org/apache/cxf/aegis/exception/ExceptionService.java
URL: http://svn.apache.org/viewvc/incubator/cxf/branches/jliu/rt/databinding/aegis/src/test/java/org/apache/cxf/aegis/exception/ExceptionService.java?rev=588283&r1=588282&r2=588283&view=diff
==============================================================================
--- incubator/cxf/branches/jliu/rt/databinding/aegis/src/test/java/org/apache/cxf/aegis/exception/ExceptionService.java (original)
+++ incubator/cxf/branches/jliu/rt/databinding/aegis/src/test/java/org/apache/cxf/aegis/exception/ExceptionService.java Thu Oct 25 10:09:20 2007
@@ -18,6 +18,11 @@
*/
package org.apache.cxf.aegis.exception;
+import javax.jws.WebMethod;
+import javax.jws.WebService;
+
+@WebService(name = "ExceptionService", serviceName = "ExceptionService")
public interface ExceptionService {
+ @WebMethod
String sayHiWithException() throws HelloException;
}
Modified: incubator/cxf/branches/jliu/rt/databinding/aegis/src/test/java/org/apache/cxf/aegis/exception/ExceptionTest.java
URL: http://svn.apache.org/viewvc/incubator/cxf/branches/jliu/rt/databinding/aegis/src/test/java/org/apache/cxf/aegis/exception/ExceptionTest.java?rev=588283&r1=588282&r2=588283&view=diff
==============================================================================
--- incubator/cxf/branches/jliu/rt/databinding/aegis/src/test/java/org/apache/cxf/aegis/exception/ExceptionTest.java (original)
+++ incubator/cxf/branches/jliu/rt/databinding/aegis/src/test/java/org/apache/cxf/aegis/exception/ExceptionTest.java Thu Oct 25 10:09:20 2007
@@ -18,11 +18,18 @@
*/
package org.apache.cxf.aegis.exception;
+import org.w3c.dom.Document;
+
import org.apache.cxf.aegis.AbstractAegisTest;
+import org.apache.cxf.aegis.databinding.AegisDatabinding;
import org.apache.cxf.endpoint.Server;
import org.apache.cxf.frontend.ClientProxyFactoryBean;
+import org.apache.cxf.jaxws.JaxWsProxyFactoryBean;
+import org.apache.cxf.jaxws.JaxWsServerFactoryBean;
+import org.apache.cxf.service.Service;
import org.apache.cxf.service.invoker.BeanInvoker;
import org.junit.Before;
+import org.junit.Ignore;
import org.junit.Test;
public class ExceptionTest extends AbstractAegisTest {
@@ -30,7 +37,7 @@
public void setUp() throws Exception {
super.setUp();
- Server s = createService(ExceptionService.class, null);
+ Server s = createService(ExceptionService.class, new ExceptionServiceImpl(), null);
s.getEndpoint().getService().setInvoker(new BeanInvoker(new ExceptionServiceImpl()));
}
@@ -50,6 +57,76 @@
} catch (HelloException e) {
// nothing
}
+
+ //check to make sure the fault is an element
+ Document wsdl = getWSDLDocument("ExceptionService");
+ addNamespace("tns", "http://exception.aegis.cxf.apache.org");
+ assertValid("//wsdl:message[@name='HelloException']/wsdl:part[@name='HelloException']"
+ + "[@element='tns:String']",
+ wsdl);
+ }
+
+ @Test(expected = HelloException.class)
+ @Ignore("Not working yet due to namespace things")
+ public void testJaxwsServerSimpleClient() throws Exception {
+ JaxWsServerFactoryBean sfbean = new JaxWsServerFactoryBean();
+ sfbean.setServiceClass(ExceptionService.class);
+ sfbean.setDataBinding(new AegisDatabinding());
+ sfbean.setAddress("local://ExceptionServiceJaxWs1");
+ Server server = sfbean.create();
+ Service service = server.getEndpoint().getService();
+ service.setInvoker(new BeanInvoker(new ExceptionServiceImpl()));
+
+ ClientProxyFactoryBean proxyFac = new ClientProxyFactoryBean();
+ proxyFac.setAddress("local://ExceptionServiceJaxWs1");
+ proxyFac.setServiceClass(ExceptionService.class);
+ proxyFac.setBus(getBus());
+ setupAegis(proxyFac.getClientFactoryBean());
+
+ ExceptionService clientInterface = (ExceptionService)proxyFac.create();
+
+ clientInterface.sayHiWithException();
+ }
+
+ @Test(expected = HelloException.class)
+ public void testJaxwsNoXfireCompat() throws Exception {
+ JaxWsServerFactoryBean sfbean = new JaxWsServerFactoryBean();
+ sfbean.setServiceClass(ExceptionService.class);
+ sfbean.setDataBinding(new AegisDatabinding());
+ sfbean.getServiceFactory().setDataBinding(sfbean.getDataBinding());
+ sfbean.setAddress("local://ExceptionServiceJaxWs");
+ Server server = sfbean.create();
+ Service service = server.getEndpoint().getService();
+ service.setInvoker(new BeanInvoker(new ExceptionServiceImpl()));
+
+ JaxWsProxyFactoryBean proxyFac = new JaxWsProxyFactoryBean();
+ proxyFac.setAddress("local://ExceptionServiceJaxWs");
+ proxyFac.setServiceClass(ExceptionService.class);
+ proxyFac.setBus(getBus());
+ proxyFac.getClientFactoryBean().getServiceFactory().setDataBinding(new AegisDatabinding());
+ ExceptionService clientInterface = (ExceptionService)proxyFac.create();
+
+ clientInterface.sayHiWithException();
+ }
+
+ @Test(expected = HelloException.class)
+ public void testJaxws() throws Exception {
+ JaxWsServerFactoryBean sfbean = new JaxWsServerFactoryBean();
+ sfbean.setServiceClass(ExceptionService.class);
+ setupAegis(sfbean);
+ sfbean.setAddress("local://ExceptionService4");
+ Server server = sfbean.create();
+ Service service = server.getEndpoint().getService();
+ service.setInvoker(new BeanInvoker(new ExceptionServiceImpl()));
+
+ JaxWsProxyFactoryBean proxyFac = new JaxWsProxyFactoryBean();
+ proxyFac.setAddress("local://ExceptionService4");
+ proxyFac.setServiceClass(ExceptionService.class);
+ proxyFac.setBus(getBus());
+ setupAegis(proxyFac.getClientFactoryBean());
+ ExceptionService clientInterface = (ExceptionService)proxyFac.create();
+
+ clientInterface.sayHiWithException();
}
public static class ExceptionServiceImpl implements ExceptionService {
Modified: incubator/cxf/branches/jliu/rt/databinding/aegis/src/test/java/org/apache/cxf/aegis/inheritance/ExceptionInheritanceTest.java
URL: http://svn.apache.org/viewvc/incubator/cxf/branches/jliu/rt/databinding/aegis/src/test/java/org/apache/cxf/aegis/inheritance/ExceptionInheritanceTest.java?rev=588283&r1=588282&r2=588283&view=diff
==============================================================================
--- incubator/cxf/branches/jliu/rt/databinding/aegis/src/test/java/org/apache/cxf/aegis/inheritance/ExceptionInheritanceTest.java (original)
+++ incubator/cxf/branches/jliu/rt/databinding/aegis/src/test/java/org/apache/cxf/aegis/inheritance/ExceptionInheritanceTest.java Thu Oct 25 10:09:20 2007
@@ -63,17 +63,26 @@
client = (WS1) pf.create();
- Server server = createService(WS1.class, "WS1", null);
+ Server server = createService(WS1.class, new WS1Impl(), "WS1", null);
new LoggingFeature().initialize(server, null);
server.getEndpoint().getService().setInvoker(new BeanInvoker(new WS1Impl()));
}
@Override
- protected ServerFactoryBean createServiceFactory(Class serviceClass, String address, QName name) {
- ServerFactoryBean sf = super.createServiceFactory(serviceClass, address, name);
+ protected ServerFactoryBean createServiceFactory(Class serviceClass,
+ Object serviceBean,
+ String address,
+ QName name,
+ AegisDatabinding b) {
+ ServerFactoryBean sf = super.createServiceFactory(serviceClass,
+ serviceBean,
+ address,
+ name,
+ b);
sf.getServiceFactory().setProperties(props);
return sf;
}
+
@Test
public void testClient() throws Exception {
Modified: incubator/cxf/branches/jliu/rt/databinding/aegis/src/test/java/org/apache/cxf/aegis/inheritance/InheritancePOJOTest.java
URL: http://svn.apache.org/viewvc/incubator/cxf/branches/jliu/rt/databinding/aegis/src/test/java/org/apache/cxf/aegis/inheritance/InheritancePOJOTest.java?rev=588283&r1=588282&r2=588283&view=diff
==============================================================================
--- incubator/cxf/branches/jliu/rt/databinding/aegis/src/test/java/org/apache/cxf/aegis/inheritance/InheritancePOJOTest.java (original)
+++ incubator/cxf/branches/jliu/rt/databinding/aegis/src/test/java/org/apache/cxf/aegis/inheritance/InheritancePOJOTest.java Thu Oct 25 10:09:20 2007
@@ -30,7 +30,7 @@
import org.apache.cxf.aegis.AbstractAegisTest;
import org.apache.cxf.aegis.databinding.AegisDatabinding;
-import org.apache.cxf.aegis.util.XmlConstants;
+import org.apache.cxf.common.util.SOAPConstants;
import org.apache.cxf.frontend.ServerFactoryBean;
import org.junit.Before;
import org.junit.Test;
@@ -44,8 +44,11 @@
public void setUp() throws Exception {
super.setUp();
- ServerFactoryBean sf = createServiceFactory(InheritanceService.class, "InheritanceService",
- new QName("urn:xfire:inheritance", "InheritanceService"));
+ ServerFactoryBean sf = createServiceFactory(InheritanceService.class,
+ null, "InheritanceService",
+ new QName("urn:xfire:inheritance",
+ "InheritanceService"),
+ null);
Map<String, Object> props = new HashMap<String, Object>();
props.put(AegisDatabinding.WRITE_XSI_TYPE_KEY, "true");
@@ -68,7 +71,7 @@
// check for Employee as extension
String employeeType = types + "xsd:complexType[@name='Employee']";
assertValid(employeeType, d);
- String extension = "/xsd:complexContent/xsd:extension[@base='ns1:AbstractUser']";
+ String extension = "/xsd:complexContent/xsd:extension[@base='tns:AbstractUser']";
assertValid(employeeType + extension, d);
assertValid(employeeType + extension + "/xsd:sequence/xsd:element[@name='division']", d);
// assertValid("count(" + employeeType + extension +
@@ -91,7 +94,7 @@
@Test
public void testLocalGetEmployee() throws Exception {
Node response = invoke("InheritanceService", "GetEmployee.xml");
- addNamespace("xsi", XmlConstants.XSI_NS);
+ addNamespace("xsi", SOAPConstants.XSI_NS);
addNamespace("w", "urn:xfire:inheritance");
addNamespace("p", "http://inheritance.aegis.cxf.apache.org");
assertValid("//s:Body/w:getEmployeeResponse/w:return/p:division", response);
Modified: incubator/cxf/branches/jliu/rt/databinding/aegis/src/test/java/org/apache/cxf/aegis/integration/WrappedTest.java
URL: http://svn.apache.org/viewvc/incubator/cxf/branches/jliu/rt/databinding/aegis/src/test/java/org/apache/cxf/aegis/integration/WrappedTest.java?rev=588283&r1=588282&r2=588283&view=diff
==============================================================================
--- incubator/cxf/branches/jliu/rt/databinding/aegis/src/test/java/org/apache/cxf/aegis/integration/WrappedTest.java (original)
+++ incubator/cxf/branches/jliu/rt/databinding/aegis/src/test/java/org/apache/cxf/aegis/integration/WrappedTest.java Thu Oct 25 10:09:20 2007
@@ -36,7 +36,7 @@
@Before
public void setUp() throws Exception {
super.setUp();
- createService(BeanService.class, "BeanService", null);
+ createService(BeanService.class, null, "BeanService", null);
createService(ArrayService.class, "Array", new QName("urn:Array", "Array"));
}
@@ -66,7 +66,7 @@
assertValid("//xsd:complexType[@name='getSubmitBean']/xsd:sequence"
+ "/xsd:element[@name='bleh'][@type='xsd:string'][@minOccurs='0']", doc);
assertValid("//xsd:complexType[@name='getSubmitBean']/xsd:sequence"
- + "/xsd:element[@name='bean'][@type='SimpleBean'][@minOccurs='0']", doc);
+ + "/xsd:element[@name='bean'][@type='tns:SimpleBean'][@minOccurs='0']", doc);
assertValid("/wsdl:definitions/wsdl:types"
+ "/xsd:schema[@targetNamespace='http://services.aegis.cxf.apache.org']", doc);
Modified: incubator/cxf/branches/jliu/rt/databinding/aegis/src/test/java/org/apache/cxf/aegis/namespaces/NamespaceConfusionTest.java
URL: http://svn.apache.org/viewvc/incubator/cxf/branches/jliu/rt/databinding/aegis/src/test/java/org/apache/cxf/aegis/namespaces/NamespaceConfusionTest.java?rev=588283&r1=588282&r2=588283&view=diff
==============================================================================
--- incubator/cxf/branches/jliu/rt/databinding/aegis/src/test/java/org/apache/cxf/aegis/namespaces/NamespaceConfusionTest.java (original)
+++ incubator/cxf/branches/jliu/rt/databinding/aegis/src/test/java/org/apache/cxf/aegis/namespaces/NamespaceConfusionTest.java Thu Oct 25 10:09:20 2007
@@ -18,12 +18,16 @@
*/
package org.apache.cxf.aegis.namespaces;
-import javax.wsdl.WSDLException;
+import java.io.StringWriter;
+
+import javax.wsdl.Definition;
+import javax.wsdl.factory.WSDLFactory;
import javax.xml.namespace.QName;
import org.w3c.dom.Attr;
import org.w3c.dom.Element;
import org.w3c.dom.NamedNodeMap;
+import org.w3c.dom.NodeList;
import org.apache.cxf.aegis.AbstractAegisTest;
import org.apache.cxf.aegis.namespaces.data.Name;
@@ -33,11 +37,6 @@
import org.apache.cxf.endpoint.Server;
import org.apache.cxf.service.Service;
-import org.jaxen.JaxenException;
-import org.jaxen.NamespaceContext;
-import org.jaxen.SimpleNamespaceContext;
-import org.jaxen.dom.DOMXPath;
-
import org.junit.Before;
import org.junit.Test;
@@ -52,7 +51,7 @@
private TypeMapping tm;
private Service service;
-
+
@Before
public void setUp() throws Exception {
super.setUp();
@@ -64,12 +63,9 @@
}
private String getNamespaceForPrefix(Element rootElement,
- NamespaceContext namespaceContext,
Element typeElement,
- String prefix) throws JaxenException {
- DOMXPath findSchema = new DOMXPath("ancestor::xsd:schema");
- findSchema.setNamespaceContext(namespaceContext);
- Element schemaElement = (Element)findSchema.selectSingleNode(typeElement);
+ String prefix) throws Exception {
+ Element schemaElement = (Element)assertValid("ancestor::xsd:schema", typeElement).item(0);
NamedNodeMap attributes = schemaElement.getAttributes();
for (int x = 0; x < attributes.getLength(); x++) {
@@ -95,31 +91,30 @@
return null;
}
-
+
@Test
- public void testNameNamespace() throws WSDLException, JaxenException {
- org.w3c.dom.Document wsdlDoc = getWSDLDocument("NameServiceImpl");
- Element rootElement = wsdlDoc.getDocumentElement();
-
- SimpleNamespaceContext namespaceContext = new SimpleNamespaceContext();
- namespaceContext.addNamespace("xsd", "http://www.w3.org/2001/XMLSchema");
- DOMXPath arrayOfNameFinder =
- new DOMXPath("//xsd:complexType[@name='ArrayOfName']/xsd:sequence/xsd:element");
- arrayOfNameFinder.setNamespaceContext(namespaceContext);
+ public void testNameNamespace() throws Exception {
- Element arrayOfNameElement = (Element)arrayOfNameFinder.selectSingleNode(rootElement);
- assertNotNull(arrayOfNameElement);
+ org.w3c.dom.Document doc = getWSDLDocument("NameServiceImpl");
+ Element rootElement = doc.getDocumentElement();
+ Definition def = getWSDLDefinition("NameServiceImpl");
+ StringWriter sink = new StringWriter();
+ WSDLFactory.newInstance().newWSDLWriter().writeWSDL(def, sink);
+ NodeList aonNodes =
+ assertValid("//xsd:complexType[@name='ArrayOfName']/xsd:sequence/xsd:element", doc);
+ Element arrayOfNameElement = (Element)aonNodes.item(0);
+
String typename = arrayOfNameElement.getAttribute("type");
String prefix = typename.split(":")[0];
- String uri = getNamespaceForPrefix(rootElement, namespaceContext,
- arrayOfNameElement, prefix);
+ String uri = getNamespaceForPrefix(rootElement, arrayOfNameElement, prefix);
assertNotNull(uri);
Type nameType = tm.getTypeCreator().createType(Name.class);
QName tmQname = nameType.getSchemaType();
assertEquals(tmQname.getNamespaceURI(), uri);
+
}
Modified: incubator/cxf/branches/jliu/rt/databinding/aegis/src/test/java/org/apache/cxf/aegis/proxy/ProxyTest.java
URL: http://svn.apache.org/viewvc/incubator/cxf/branches/jliu/rt/databinding/aegis/src/test/java/org/apache/cxf/aegis/proxy/ProxyTest.java?rev=588283&r1=588282&r2=588283&view=diff
==============================================================================
--- incubator/cxf/branches/jliu/rt/databinding/aegis/src/test/java/org/apache/cxf/aegis/proxy/ProxyTest.java (original)
+++ incubator/cxf/branches/jliu/rt/databinding/aegis/src/test/java/org/apache/cxf/aegis/proxy/ProxyTest.java Thu Oct 25 10:09:20 2007
@@ -33,7 +33,7 @@
public void setUp() throws Exception {
super.setUp();
- Server s = createService(HelloProxyService.class, null);
+ Server s = createService(HelloProxyService.class, new HelloProxyServiceImpl(), null);
s.getEndpoint().getService().setInvoker(new BeanInvoker(new HelloProxyServiceImpl()));
}
Modified: incubator/cxf/branches/jliu/rt/databinding/aegis/src/test/java/org/apache/cxf/aegis/services/AddNumbers.aegis.xml
URL: http://svn.apache.org/viewvc/incubator/cxf/branches/jliu/rt/databinding/aegis/src/test/java/org/apache/cxf/aegis/services/AddNumbers.aegis.xml?rev=588283&r1=588282&r2=588283&view=diff
==============================================================================
--- incubator/cxf/branches/jliu/rt/databinding/aegis/src/test/java/org/apache/cxf/aegis/services/AddNumbers.aegis.xml (original)
+++ incubator/cxf/branches/jliu/rt/databinding/aegis/src/test/java/org/apache/cxf/aegis/services/AddNumbers.aegis.xml Thu Oct 25 10:09:20 2007
@@ -1,7 +1,26 @@
-<mappings>
- <mapping uri="urn:AddNumbers">
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ 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.
+-->
+<mappings xmlns:anns="urn:AddNumbers">
+ <mapping name="anns:AddNumbers">
<method name="add">
- <parameter index="0" mappedName="value1"/>
+ <parameter index="0" mappedName="value1" />
<parameter index="1" mappedName="value2"/>
<return-type mappedName="sum"/>
</method>
Modified: incubator/cxf/branches/jliu/rt/databinding/aegis/src/test/java/org/apache/cxf/aegis/services/AddNumbers.java
URL: http://svn.apache.org/viewvc/incubator/cxf/branches/jliu/rt/databinding/aegis/src/test/java/org/apache/cxf/aegis/services/AddNumbers.java?rev=588283&r1=588282&r2=588283&view=diff
==============================================================================
--- incubator/cxf/branches/jliu/rt/databinding/aegis/src/test/java/org/apache/cxf/aegis/services/AddNumbers.java (original)
+++ incubator/cxf/branches/jliu/rt/databinding/aegis/src/test/java/org/apache/cxf/aegis/services/AddNumbers.java Thu Oct 25 10:09:20 2007
@@ -22,4 +22,7 @@
public int add(int one, int two) {
return one + two;
}
+ public int unmappedAdd(int one, int two) {
+ return two + one;
+ }
}
Modified: incubator/cxf/branches/jliu/rt/databinding/aegis/src/test/java/org/apache/cxf/aegis/services/SimpleBean.java
URL: http://svn.apache.org/viewvc/incubator/cxf/branches/jliu/rt/databinding/aegis/src/test/java/org/apache/cxf/aegis/services/SimpleBean.java?rev=588283&r1=588282&r2=588283&view=diff
==============================================================================
--- incubator/cxf/branches/jliu/rt/databinding/aegis/src/test/java/org/apache/cxf/aegis/services/SimpleBean.java (original)
+++ incubator/cxf/branches/jliu/rt/databinding/aegis/src/test/java/org/apache/cxf/aegis/services/SimpleBean.java Thu Oct 25 10:09:20 2007
@@ -27,6 +27,16 @@
private String bleh;
private String howdy;
+
+ private int[] numbers;
+
+ public int[] getNumbers() {
+ return numbers;
+ }
+
+ public void setNumbers(int[] numbers) {
+ this.numbers = numbers;
+ }
public String getBleh() {
return bleh;
Modified: incubator/cxf/branches/jliu/rt/databinding/aegis/src/test/java/org/apache/cxf/aegis/type/basic/BeanTest.java
URL: http://svn.apache.org/viewvc/incubator/cxf/branches/jliu/rt/databinding/aegis/src/test/java/org/apache/cxf/aegis/type/basic/BeanTest.java?rev=588283&r1=588282&r2=588283&view=diff
==============================================================================
--- incubator/cxf/branches/jliu/rt/databinding/aegis/src/test/java/org/apache/cxf/aegis/type/basic/BeanTest.java (original)
+++ incubator/cxf/branches/jliu/rt/databinding/aegis/src/test/java/org/apache/cxf/aegis/type/basic/BeanTest.java Thu Oct 25 10:09:20 2007
@@ -32,12 +32,12 @@
import org.apache.cxf.aegis.type.DefaultTypeMappingRegistry;
import org.apache.cxf.aegis.type.Type;
import org.apache.cxf.aegis.type.TypeMapping;
-import org.apache.cxf.aegis.util.XmlConstants;
import org.apache.cxf.aegis.util.jdom.StaxBuilder;
import org.apache.cxf.aegis.xml.jdom.JDOMReader;
import org.apache.cxf.aegis.xml.jdom.JDOMWriter;
import org.apache.cxf.aegis.xml.stax.ElementReader;
import org.apache.cxf.aegis.xml.stax.ElementWriter;
+import org.apache.cxf.common.util.SOAPConstants;
import org.jdom.Document;
import org.jdom.Element;
import org.jdom.output.DOMOutputter;
@@ -52,7 +52,7 @@
addNamespace("b", "urn:Bean");
addNamespace("a", "urn:anotherns");
- addNamespace("xsi", XmlConstants.XSI_NS);
+ addNamespace("xsi", SOAPConstants.XSI_NS);
reg = new DefaultTypeMappingRegistry(true);
mapping = reg.createTypeMapping(true);
@@ -199,8 +199,8 @@
assertValid("/b:root[@b:bleh='bleh']", element);
assertValid("/b:root[@b:howdy='howdy']", element);
- Element types = new Element("types", "xsd", XmlConstants.XSD);
- Element schema = new Element("schema", "xsd", XmlConstants.XSD);
+ Element types = new Element("types", "xsd", SOAPConstants.XSD);
+ Element schema = new Element("schema", "xsd", SOAPConstants.XSD);
types.addContent(schema);
new Document(types);
@@ -272,8 +272,8 @@
assertInvalid("/b:root[@b:howdy]", element);
assertValid("/b:root/b:bleh[@xsi:nil='true']", element);
- Element types = new Element("types", "xsd", XmlConstants.XSD);
- Element schema = new Element("schema", "xsd", XmlConstants.XSD);
+ Element types = new Element("types", "xsd", SOAPConstants.XSD);
+ Element schema = new Element("schema", "xsd", SOAPConstants.XSD);
types.addContent(schema);
new Document(types);
@@ -294,8 +294,8 @@
type.setTypeMapping(mapping);
type.setSchemaType(new QName("urn:Bean", "bean"));
- Element types = new Element("types", "xsd", XmlConstants.XSD);
- Element schema = new Element("schema", "xsd", XmlConstants.XSD);
+ Element types = new Element("types", "xsd", SOAPConstants.XSD);
+ Element schema = new Element("schema", "xsd", SOAPConstants.XSD);
types.addContent(schema);
new Document(types);
@@ -326,8 +326,8 @@
type.setTypeClass(IntBean.class);
type.setTypeMapping(mapping);
- Element types = new Element("types", "xsd", XmlConstants.XSD);
- Element schema = new Element("schema", "xsd", XmlConstants.XSD);
+ Element types = new Element("types", "xsd", SOAPConstants.XSD);
+ Element schema = new Element("schema", "xsd", SOAPConstants.XSD);
types.addContent(schema);
new Document(types);
@@ -375,7 +375,7 @@
type.setSchemaType(new QName("urn:Bean", "bean"));
PropertyDescriptor[] pds = info.getPropertyDescriptors();
- assertEquals(2, pds.length);
+ assertEquals(3, pds.length);
ExtendedBean bean = new ExtendedBean();
bean.setHowdy("howdy");
@@ -413,7 +413,7 @@
// just
// shouldn't be there.
- addNamespace("xsi", XmlConstants.XSI_NS);
+ addNamespace("xsi", SOAPConstants.XSI_NS);
assertValid("/b:root/b:data[@xsi:nil='true']", element);
bean = (ByteBean)type.readObject(new JDOMReader(element), new Context());
Modified: incubator/cxf/branches/jliu/rt/databinding/aegis/src/test/java/org/apache/cxf/aegis/type/basic/ByteDataTest.java
URL: http://svn.apache.org/viewvc/incubator/cxf/branches/jliu/rt/databinding/aegis/src/test/java/org/apache/cxf/aegis/type/basic/ByteDataTest.java?rev=588283&r1=588282&r2=588283&view=diff
==============================================================================
--- incubator/cxf/branches/jliu/rt/databinding/aegis/src/test/java/org/apache/cxf/aegis/type/basic/ByteDataTest.java (original)
+++ incubator/cxf/branches/jliu/rt/databinding/aegis/src/test/java/org/apache/cxf/aegis/type/basic/ByteDataTest.java Thu Oct 25 10:09:20 2007
@@ -23,7 +23,7 @@
import org.apache.cxf.aegis.AbstractAegisTest;
import org.apache.cxf.aegis.services.DataService;
-import org.apache.cxf.aegis.util.XmlConstants;
+import org.apache.cxf.common.util.SOAPConstants;
import org.junit.Test;
/**
@@ -51,9 +51,9 @@
public void testBeanServiceWSDL() throws Exception {
Document doc = getWSDLDocument("DataService");
- addNamespace("wsdl", XmlConstants.WSDL11_NS);
- addNamespace("wsdlsoap", XmlConstants.WSDL11_SOAP_NS);
- addNamespace("xsd", XmlConstants.XSD);
+ addNamespace("wsdl", SOAPConstants.WSDL11_NS);
+ addNamespace("wsdlsoap", SOAPConstants.WSDL11_SOAP_NS);
+ addNamespace("xsd", SOAPConstants.XSD);
assertValid("//xsd:element[@name='data'][@type='xsd:base64Binary']", doc);
}
Modified: incubator/cxf/branches/jliu/rt/databinding/aegis/src/test/java/org/apache/cxf/aegis/type/java5/AnnotatedTypeTest.java
URL: http://svn.apache.org/viewvc/incubator/cxf/branches/jliu/rt/databinding/aegis/src/test/java/org/apache/cxf/aegis/type/java5/AnnotatedTypeTest.java?rev=588283&r1=588282&r2=588283&view=diff
==============================================================================
--- incubator/cxf/branches/jliu/rt/databinding/aegis/src/test/java/org/apache/cxf/aegis/type/java5/AnnotatedTypeTest.java (original)
+++ incubator/cxf/branches/jliu/rt/databinding/aegis/src/test/java/org/apache/cxf/aegis/type/java5/AnnotatedTypeTest.java Thu Oct 25 10:09:20 2007
@@ -30,7 +30,7 @@
import org.apache.cxf.aegis.type.XMLTypeCreator;
import org.apache.cxf.aegis.type.basic.BeanType;
import org.apache.cxf.aegis.type.basic.StringType;
-import org.apache.cxf.aegis.util.XmlConstants;
+import org.apache.cxf.common.util.SOAPConstants;
import org.apache.cxf.endpoint.Server;
import org.apache.cxf.service.Service;
import org.junit.Before;
@@ -143,7 +143,7 @@
public void testWSDL() throws Exception {
Document wsdl = getWSDLDocument("AnnotatedService");
- addNamespace("xsd", XmlConstants.XSD);
+ addNamespace("xsd", SOAPConstants.XSD);
assertValid(
"//xsd:complexType[@name='AnnotatedBean1']/xsd:sequence/xsd:"
+ "element[@name='elementProperty']",
Modified: incubator/cxf/branches/jliu/rt/databinding/aegis/src/test/java/org/apache/cxf/aegis/type/java5/CollectionTest.java
URL: http://svn.apache.org/viewvc/incubator/cxf/branches/jliu/rt/databinding/aegis/src/test/java/org/apache/cxf/aegis/type/java5/CollectionTest.java?rev=588283&r1=588282&r2=588283&view=diff
==============================================================================
--- incubator/cxf/branches/jliu/rt/databinding/aegis/src/test/java/org/apache/cxf/aegis/type/java5/CollectionTest.java (original)
+++ incubator/cxf/branches/jliu/rt/databinding/aegis/src/test/java/org/apache/cxf/aegis/type/java5/CollectionTest.java Thu Oct 25 10:09:20 2007
@@ -172,25 +172,27 @@
@Test
public void testCollectionServiceWSDL() throws Exception {
- createService(CollectionService.class, null);
+
+ createService(CollectionService.class, new CollectionService(), null);
Document wsdl = getWSDLDocument("CollectionService");
- assertValid("//xsd:element[@name='return'][@type='ns1:ArrayOfString']", wsdl);
+ assertValid("//xsd:element[@name='return'][@type='tns:ArrayOfString']", wsdl);
}
@Test
- public void testUnannotatedStrings() throws Exception {
- createService(CollectionService.class, null);
+ public void testUnannotatedStrings() throws Exception {
+ createService(CollectionService.class, new CollectionService(), null);
Document doc = getWSDLDocument("CollectionService");
// printNode(doc);
assertValid(
"//xsd:complexType[@name='getUnannotatedStringsResponse']"
- + "/xsd:sequence/xsd:element[@type='ns1:ArrayOfString']",
+ + "/xsd:sequence/xsd:element[@type='tns:ArrayOfString']",
doc);
}
public class CollectionService {
+
public Collection<String> getStrings() {
return null;
}
Modified: incubator/cxf/branches/jliu/rt/databinding/aegis/src/test/java/org/apache/cxf/aegis/type/java5/DualOutServiceTest.java
URL: http://svn.apache.org/viewvc/incubator/cxf/branches/jliu/rt/databinding/aegis/src/test/java/org/apache/cxf/aegis/type/java5/DualOutServiceTest.java?rev=588283&r1=588282&r2=588283&view=diff
==============================================================================
--- incubator/cxf/branches/jliu/rt/databinding/aegis/src/test/java/org/apache/cxf/aegis/type/java5/DualOutServiceTest.java (original)
+++ incubator/cxf/branches/jliu/rt/databinding/aegis/src/test/java/org/apache/cxf/aegis/type/java5/DualOutServiceTest.java Thu Oct 25 10:09:20 2007
@@ -23,7 +23,7 @@
import org.w3c.dom.Document;
import org.apache.cxf.aegis.AbstractAegisTest;
-import org.apache.cxf.aegis.util.XmlConstants;
+import org.apache.cxf.common.util.SOAPConstants;
import org.apache.cxf.jaxws.JaxWsServerFactoryBean;
import org.junit.Test;
@@ -40,7 +40,7 @@
Document wsdl = getWSDLDocument("DualOutService");
assertNotNull(wsdl);
- addNamespace("xsd", XmlConstants.XSD);
+ addNamespace("xsd", SOAPConstants.XSD);
assertValid(
"//xsd:complexType[@name='getValuesResponse']//xsd:element"
Modified: incubator/cxf/branches/jliu/rt/databinding/aegis/src/test/java/org/apache/cxf/aegis/type/java5/EnumTypeTest.java
URL: http://svn.apache.org/viewvc/incubator/cxf/branches/jliu/rt/databinding/aegis/src/test/java/org/apache/cxf/aegis/type/java5/EnumTypeTest.java?rev=588283&r1=588282&r2=588283&view=diff
==============================================================================
--- incubator/cxf/branches/jliu/rt/databinding/aegis/src/test/java/org/apache/cxf/aegis/type/java5/EnumTypeTest.java (original)
+++ incubator/cxf/branches/jliu/rt/databinding/aegis/src/test/java/org/apache/cxf/aegis/type/java5/EnumTypeTest.java Thu Oct 25 10:09:20 2007
@@ -28,9 +28,9 @@
import org.apache.cxf.aegis.type.CustomTypeMapping;
import org.apache.cxf.aegis.type.Type;
import org.apache.cxf.aegis.type.java5.CurrencyService.Currency;
-import org.apache.cxf.aegis.util.XmlConstants;
import org.apache.cxf.aegis.xml.jdom.JDOMReader;
import org.apache.cxf.aegis.xml.jdom.JDOMWriter;
+import org.apache.cxf.common.util.SOAPConstants;
import org.jdom.Element;
import org.jdom.output.DOMOutputter;
import org.junit.Before;
@@ -101,7 +101,7 @@
type.writeSchema(root);
Document doc = new DOMOutputter().output(wsdl);
- addNamespace("xsd", XmlConstants.XSD);
+ addNamespace("xsd", SOAPConstants.XSD);
assertValid("//xsd:simpleType[@name='test']/xsd:restriction[@base='xsd:string']", doc);
assertValid("//xsd:restriction[@base='xsd:string']/xsd:enumeration[@value='VALUE1']", doc);
assertValid("//xsd:restriction[@base='xsd:string']/xsd:enumeration[@value='VALUE2']", doc);
Modified: incubator/cxf/branches/jliu/rt/databinding/aegis/src/test/java/org/apache/cxf/aegis/type/java5/OperationNSTest.java
URL: http://svn.apache.org/viewvc/incubator/cxf/branches/jliu/rt/databinding/aegis/src/test/java/org/apache/cxf/aegis/type/java5/OperationNSTest.java?rev=588283&r1=588282&r2=588283&view=diff
==============================================================================
--- incubator/cxf/branches/jliu/rt/databinding/aegis/src/test/java/org/apache/cxf/aegis/type/java5/OperationNSTest.java (original)
+++ incubator/cxf/branches/jliu/rt/databinding/aegis/src/test/java/org/apache/cxf/aegis/type/java5/OperationNSTest.java Thu Oct 25 10:09:20 2007
@@ -32,7 +32,7 @@
import org.apache.cxf.aegis.AbstractAegisTest;
import org.apache.cxf.aegis.databinding.AegisDatabinding;
-import org.apache.cxf.aegis.util.XmlConstants;
+import org.apache.cxf.common.util.SOAPConstants;
import org.apache.cxf.helpers.XPathUtils;
import org.apache.cxf.jaxws.JaxWsServerFactoryBean;
import org.junit.Before;
@@ -57,7 +57,7 @@
public void testWSDL() throws Exception {
Collection<Document> wsdls = getWSDLDocuments("NotificationService");
- addNamespace("xsd", XmlConstants.XSD);
+ addNamespace("xsd", SOAPConstants.XSD);
//assertValid("//xsd:element[@name='Notify']", wsdl);
assertTrue(isExist(wsdls, "//xsd:element[@name='Notify']", getNamespaces()));
}
Modified: incubator/cxf/branches/jliu/rt/databinding/aegis/src/test/java/org/apache/cxf/aegis/type/java5/XmlParamTypeTest.java
URL: http://svn.apache.org/viewvc/incubator/cxf/branches/jliu/rt/databinding/aegis/src/test/java/org/apache/cxf/aegis/type/java5/XmlParamTypeTest.java?rev=588283&r1=588282&r2=588283&view=diff
==============================================================================
--- incubator/cxf/branches/jliu/rt/databinding/aegis/src/test/java/org/apache/cxf/aegis/type/java5/XmlParamTypeTest.java (original)
+++ incubator/cxf/branches/jliu/rt/databinding/aegis/src/test/java/org/apache/cxf/aegis/type/java5/XmlParamTypeTest.java Thu Oct 25 10:09:20 2007
@@ -64,7 +64,7 @@
@Test
public void testMapServiceWSDL() throws Exception {
- createService(CustomTypeService.class, null);
+ createService(CustomTypeService.class, new CustomTypeService(), null);
Document wsdl = getWSDLDocument("CustomTypeService");
assertValid("//xsd:element[@name='s'][@type='ns0:custom']", wsdl);
Modified: incubator/cxf/branches/jliu/rt/databinding/aegis/src/test/java/org/apache/cxf/aegis/type/java5/map/Student.java
URL: http://svn.apache.org/viewvc/incubator/cxf/branches/jliu/rt/databinding/aegis/src/test/java/org/apache/cxf/aegis/type/java5/map/Student.java?rev=588283&r1=588282&r2=588283&view=diff
==============================================================================
--- incubator/cxf/branches/jliu/rt/databinding/aegis/src/test/java/org/apache/cxf/aegis/type/java5/map/Student.java (original)
+++ incubator/cxf/branches/jliu/rt/databinding/aegis/src/test/java/org/apache/cxf/aegis/type/java5/map/Student.java Thu Oct 25 10:09:20 2007
@@ -18,6 +18,38 @@
*/
package org.apache.cxf.aegis.type.java5.map;
+/**
+ * Data object used to test Aegis mapping of maps.
+ */
public class Student {
+ private String name;
+ private long id;
+
+ public Student() {
+ name = "";
+ id = Long.valueOf(0);
+ }
+
+ public Student(String name, long id) {
+ this.name = name;
+ this.id = id;
+ }
+
+ public long getId() {
+ return id;
+ }
+
+ public void setId(long id) {
+ this.id = id;
+ }
+
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
}
Modified: incubator/cxf/branches/jliu/rt/databinding/aegis/src/test/java/org/apache/cxf/aegis/type/java5/map/StudentServiceImpl.java
URL: http://svn.apache.org/viewvc/incubator/cxf/branches/jliu/rt/databinding/aegis/src/test/java/org/apache/cxf/aegis/type/java5/map/StudentServiceImpl.java?rev=588283&r1=588282&r2=588283&view=diff
==============================================================================
--- incubator/cxf/branches/jliu/rt/databinding/aegis/src/test/java/org/apache/cxf/aegis/type/java5/map/StudentServiceImpl.java (original)
+++ incubator/cxf/branches/jliu/rt/databinding/aegis/src/test/java/org/apache/cxf/aegis/type/java5/map/StudentServiceImpl.java Thu Oct 25 10:09:20 2007
@@ -18,29 +18,49 @@
*/
package org.apache.cxf.aegis.type.java5.map;
+import java.util.HashMap;
+import java.util.LinkedList;
import java.util.List;
import java.util.Map;
public class StudentServiceImpl implements StudentService {
-
+
+ private Map<Long, Student> studentMap;
+
+ public StudentServiceImpl() {
+ studentMap = new HashMap<Long, Student>();
+ studentMap.put(Long.valueOf(1), new Student("Student1", 1));
+ studentMap.put(Long.valueOf(100), new Student("Student100", 100));
+ studentMap.put(Long.valueOf(-1), new Student("StudentNegative", -1));
+ }
+
public Student findStudent(Long id) {
- // TODO Auto-generated method stub
- return null;
+ return studentMap.get(id);
}
public List<Student> getStudents(Map<String, String> filters) {
- // TODO Auto-generated method stub
- return null;
+ List<Student> returnValue = new LinkedList<Student>();
+ for (Map.Entry<Long, Student> e : studentMap.entrySet()) {
+ if (filters.containsKey(e.getValue())) {
+ returnValue.add(e.getValue());
+ }
+
+ }
+ return returnValue;
}
public List<Student> getStudentsByIds(List<String> ids) {
- // TODO Auto-generated method stub
- return null;
+ List<Student> returnValue = new LinkedList<Student>();
+ for (String id : ids) {
+ Long longId = Long.decode(id);
+ Student s = studentMap.get(longId);
+ returnValue.add(s);
+ }
+ return returnValue;
}
public Map<Long, Student> getStudentsMap() {
- // TODO Auto-generated method stub
- return null;
+ return studentMap;
}
}
Modified: incubator/cxf/branches/jliu/rt/databinding/aegis/src/test/java/org/apache/cxf/aegis/type/java5/map/StudentTest.java
URL: http://svn.apache.org/viewvc/incubator/cxf/branches/jliu/rt/databinding/aegis/src/test/java/org/apache/cxf/aegis/type/java5/map/StudentTest.java?rev=588283&r1=588282&r2=588283&view=diff
==============================================================================
--- incubator/cxf/branches/jliu/rt/databinding/aegis/src/test/java/org/apache/cxf/aegis/type/java5/map/StudentTest.java (original)
+++ incubator/cxf/branches/jliu/rt/databinding/aegis/src/test/java/org/apache/cxf/aegis/type/java5/map/StudentTest.java Thu Oct 25 10:09:20 2007
@@ -18,14 +18,20 @@
*/
package org.apache.cxf.aegis.type.java5.map;
+import java.util.Map;
+
import org.w3c.dom.Document;
import org.apache.cxf.aegis.AbstractAegisTest;
import org.apache.cxf.endpoint.Server;
+import org.apache.cxf.interceptor.LoggingInInterceptor;
+import org.apache.cxf.interceptor.LoggingOutInterceptor;
+import org.apache.cxf.jaxws.JaxWsProxyFactoryBean;
import org.apache.cxf.jaxws.JaxWsServerFactoryBean;
import org.junit.Test;
public class StudentTest extends AbstractAegisTest {
+
@Test
public void testWSDL() throws Exception {
JaxWsServerFactoryBean sf = new JaxWsServerFactoryBean();
@@ -34,9 +40,65 @@
sf.setAddress("local://StudentService");
setupAegis(sf);
Server server = sf.create();
-
Document wsdl = getWSDLDocument(server);
assertValid("//*[@name='string2stringMap']", wsdl);
+ }
+
+ @Test
+ public void testReturnMap() throws Exception {
+
+ JaxWsServerFactoryBean sf = new JaxWsServerFactoryBean();
+ sf.setServiceClass(StudentService.class);
+ sf.setServiceBean(new StudentServiceImpl());
+ sf.setAddress("local://StudentService");
+ setupAegis(sf);
+ Server server = sf.create();
+ server.start();
+
+ JaxWsProxyFactoryBean proxyFac = new JaxWsProxyFactoryBean();
+ proxyFac.setAddress("local://StudentService");
+ proxyFac.setServiceClass(StudentService.class);
+ proxyFac.setBus(getBus());
+ setupAegis(proxyFac.getClientFactoryBean());
+
+ StudentService clientInterface = (StudentService)proxyFac.create();
+ Map<Long, Student> fullMap = clientInterface.getStudentsMap();
+ assertNotNull(fullMap);
+ Student one = fullMap.get(Long.valueOf(1));
+ assertNotNull(one);
+ assertEquals("Student1", one.getName());
+
+ }
+
+ @Test
+ public void testReturnMapDocLiteral() throws Exception {
+
+ JaxWsServerFactoryBean sf = new JaxWsServerFactoryBean();
+ sf.setServiceClass(StudentServiceDocLiteral.class);
+ sf.setServiceBean(new StudentServiceDocLiteralImpl());
+ sf.setAddress("local://StudentServiceDocLiteral");
+ setupAegis(sf);
+ Server server = sf.create();
+ server.getEndpoint().getInInterceptors().add(new LoggingInInterceptor());
+ server.getEndpoint().getOutInterceptors().add(new LoggingOutInterceptor());
+ server.start();
+
+ JaxWsProxyFactoryBean proxyFac = new JaxWsProxyFactoryBean();
+ proxyFac.setAddress("local://StudentServiceDocLiteral");
+ proxyFac.setServiceClass(StudentServiceDocLiteral.class);
+ proxyFac.setBus(getBus());
+ setupAegis(proxyFac.getClientFactoryBean());
+
+ proxyFac.getInInterceptors().add(new LoggingInInterceptor());
+ proxyFac.getOutInterceptors().add(new LoggingOutInterceptor());
+
+ StudentServiceDocLiteral clientInterface = (StudentServiceDocLiteral)proxyFac.create();
+ Map<Long, Student> fullMap = clientInterface.getStudentsMap();
+ assertNotNull(fullMap);
+ Student one = fullMap.get(Long.valueOf(1));
+ assertNotNull(one);
+ assertEquals("Student1", one.getName());
+
}
}
Modified: incubator/cxf/branches/jliu/rt/databinding/aegis/src/test/java/org/apache/cxf/aegis/type/missing/MissingTypeWSDLTest.java
URL: http://svn.apache.org/viewvc/incubator/cxf/branches/jliu/rt/databinding/aegis/src/test/java/org/apache/cxf/aegis/type/missing/MissingTypeWSDLTest.java?rev=588283&r1=588282&r2=588283&view=diff
==============================================================================
--- incubator/cxf/branches/jliu/rt/databinding/aegis/src/test/java/org/apache/cxf/aegis/type/missing/MissingTypeWSDLTest.java (original)
+++ incubator/cxf/branches/jliu/rt/databinding/aegis/src/test/java/org/apache/cxf/aegis/type/missing/MissingTypeWSDLTest.java Thu Oct 25 10:09:20 2007
@@ -31,7 +31,7 @@
@Test
public void testMissingTransliteration() throws Exception {
- Server server = createService(MissingType.class, null);
+ Server server = createService(MissingType.class, new MissingTypeImpl(), null);
Service service = server.getEndpoint().getService();
service.setInvoker(new BeanInvoker(new MissingTypeImpl()));
ClientProxyFactoryBean proxyFac = new ClientProxyFactoryBean();