001: /*
002: * Licensed to the Apache Software Foundation (ASF) under one
003: * or more contributor license agreements. See the NOTICE file
004: * distributed with this work for additional information
005: * regarding copyright ownership. The ASF licenses this file
006: * to you under the Apache License, Version 2.0 (the
007: * "License"); you may not use this file except in compliance
008: * with the License. You may obtain a copy of the License at
009: *
010: * http://www.apache.org/licenses/LICENSE-2.0
011: *
012: * Unless required by applicable law or agreed to in writing,
013: * software distributed under the License is distributed on an
014: * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
015: * KIND, either express or implied. See the License for the
016: * specific language governing permissions and limitations
017: * under the License.
018: */
019: package org.apache.axis2.schema.defaultnamespaces;
020:
021: import org.tempuri.defaultnamepaces.TestElement1;
022: import org.tempuri.defaultnamepaces.TestChildType;
023: import org.tempuri.defaultnamepaces.TestSimpleUnion;
024: import org.apache.axiom.om.OMElement;
025: import org.apache.axiom.om.OMAbstractFactory;
026: import org.apache.axiom.om.util.StAXUtils;
027: import org.apache.axis2.databinding.utils.writer.MTOMAwareXMLStreamWriter;
028: import org.apache.axis2.databinding.utils.writer.MTOMAwareXMLSerializer;
029:
030: import javax.xml.stream.XMLStreamException;
031: import javax.xml.stream.XMLStreamReader;
032: import javax.xml.stream.XMLStreamWriter;
033: import javax.xml.namespace.QName;
034:
035: import junit.framework.TestCase;
036:
037: import java.io.ByteArrayInputStream;
038: import java.io.StringWriter;
039:
040: public class DefaultNamespacesTest extends TestCase {
041:
042: public void testTestElement1() {
043:
044: TestElement1 testElement1 = new TestElement1();
045:
046: TestChildType testChildType = new TestChildType();
047: testChildType.setParam1(new QName(
048: "http://tempuri.org/defaultnamepaces", "param1"));
049: testChildType.setParam2("Param2");
050: testChildType.setParam3(new QName(
051: "http://tempuri.org/defaultnamepaces", "param3"));
052: testChildType.setParam4("Param4");
053:
054: TestSimpleUnion testSimpleUnion1 = new TestSimpleUnion();
055: testSimpleUnion1.setObject(new QName(
056: "http://tempuri.org/defaultnamepaces", "param5"));
057:
058: testChildType.setParam5(testSimpleUnion1);
059:
060: testChildType.setAttribute1("attribute1");
061: testChildType.setAttribute2(new QName(
062: "http://tempuri.org/defaultnamepaces", "attribute2"));
063:
064: TestSimpleUnion testSimpleUnion2 = new TestSimpleUnion();
065: testSimpleUnion2.setObject(new QName(
066: "http://tempuri.org/defaultnamepaces", "attribute3"));
067:
068: testElement1.setTestElement1(testChildType);
069: StringWriter stringWriter = new StringWriter();
070:
071: try {
072:
073: XMLStreamWriter xmlStreamWriter = StAXUtils
074: .createXMLStreamWriter(stringWriter);
075: MTOMAwareXMLStreamWriter mtomAwareXMLStreamWriter = new MTOMAwareXMLSerializer(
076: xmlStreamWriter);
077: testElement1.getTestElement1().serialize(
078: new QName("http://tempuri.org/defaultnamepaces",
079: "TestElement1", "ns1"),
080: OMAbstractFactory.getSOAP11Factory(),
081: mtomAwareXMLStreamWriter);
082: xmlStreamWriter.flush();
083: xmlStreamWriter.close();
084: String omElementString = stringWriter.toString();
085: System.out.println("OM String ==> " + omElementString);
086: XMLStreamReader xmlReader = StAXUtils
087: .createXMLStreamReader(new ByteArrayInputStream(
088: omElementString.getBytes()));
089: TestElement1 result = TestElement1.Factory.parse(xmlReader);
090: assertTrue(result.getTestElement1() instanceof TestChildType);
091: TestChildType resultType = (TestChildType) result
092: .getTestElement1();
093: assertEquals(resultType.getParam1(), new QName(
094: "http://tempuri.org/defaultnamepaces", "param1"));
095: assertEquals(resultType.getParam2(), "Param2");
096: assertEquals(resultType.getParam3(), new QName(
097: "http://tempuri.org/defaultnamepaces", "param3"));
098: assertEquals(resultType.getParam4(), "Param4");
099: assertEquals(resultType.getAttribute1(), "attribute1");
100: assertEquals(resultType.getAttribute2(),
101: new QName("http://tempuri.org/defaultnamepaces",
102: "attribute2"));
103: } catch (XMLStreamException e) {
104: fail();
105: } catch (Exception e) {
106: e.printStackTrace();
107: fail();
108: }
109:
110: }
111: }
|