|
Axis 2 example source code file (EndpointReferenceHelperTest.java)
The Axis 2 EndpointReferenceHelperTest.java source code/* * 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.axis2.addressing; import junit.framework.TestCase; import org.apache.axiom.om.OMAbstractFactory; import org.apache.axiom.om.OMAttribute; import org.apache.axiom.om.OMElement; import org.apache.axiom.om.OMFactory; import org.apache.axiom.om.OMNamespace; import javax.xml.namespace.QName; import java.util.ArrayList; import java.util.Map; public class EndpointReferenceHelperTest extends TestCase { public void testToAndFromOMForFinalSpecEPR() throws Exception { String address = "http://ws.apache.org/axis2"; EndpointReference epr = new EndpointReference(address); OMFactory omf = OMAbstractFactory.getOMFactory(); OMNamespace ns1 = omf.createOMNamespace("http://uri1", "prefix1"); OMAttribute attr1 = omf.createOMAttribute("attr1", ns1, "attr1value"); OMNamespace ns2 = omf.createOMNamespace("http://uri2", "prefix2"); OMAttribute attr2 = omf.createOMAttribute("attr2", ns2, "attr2value"); epr.addAttribute(attr1); epr.addAttribute(attr2); OMElement md1 = omf.createOMElement("md1", "http://mduri1", "md1prefix"); OMElement md2 = omf.createOMElement("md2", "http://mduri2", "md2prefix"); epr.addMetaData(md1); epr.addMetaData(md2); OMElement ext1 = omf.createOMElement("ext1", "http://exturi1", "ext1prefix"); OMElement ext2 = omf.createOMElement("ext2", "http://exturi2", "ext2prefix"); epr.addExtensibleElement(ext1); epr.addExtensibleElement(ext2); QName rp1Qname = new QName("http://rp1uri", "refParm1", "rp1prefix"); QName rp2Qname = new QName("http://rp2uri", "refParm2", "rp2prefix"); epr.addReferenceParameter(rp1Qname, "rp1"); epr.addReferenceParameter(rp2Qname, "rp2"); ArrayList addressAttributes = new ArrayList(); addressAttributes.add(attr1); addressAttributes.add(attr2); epr.setAddressAttributes(addressAttributes); ArrayList metadataAttributes = new ArrayList(); metadataAttributes.add(attr1); metadataAttributes.add(attr2); epr.setMetadataAttributes(metadataAttributes); OMElement om = EndpointReferenceHelper.toOM(omf, epr, new QName("http://nsurl", "localName", "prefix"), AddressingConstants.Final.WSA_NAMESPACE); //Test deserialize using fromOM(OMElement) EndpointReference deser = EndpointReferenceHelper.fromOM(om); assertEquals(epr.getAddress(), deser.getAddress()); ArrayList addrAttrs = deser.getAddressAttributes(); assertEquals(attr1, addrAttrs.get(0)); assertEquals(attr2, addrAttrs.get(1)); ArrayList attrs = deser.getAttributes(); assertEquals(attr1, attrs.get(0)); assertEquals(attr2, attrs.get(1)); ArrayList metadata = deser.getMetaData(); assertEquals(md1, metadata.get(0)); assertEquals(md2, metadata.get(1)); ArrayList mdAttrs = deser.getMetadataAttributes(); assertEquals(attr1, mdAttrs.get(0)); assertEquals(attr2, mdAttrs.get(1)); ArrayList extelts = deser.getExtensibleElements(); assertEquals(ext1, extelts.get(0)); assertEquals(ext2, extelts.get(1)); Map m = deser.getAllReferenceParameters(); assertEquals("rp1", ((OMElement) m.get(rp1Qname)).getText()); assertEquals("rp2", ((OMElement) m.get(rp2Qname)).getText()); //Test deserialize using fromOM(EndpointReference, OMElement, String) deser = new EndpointReference(""); EndpointReferenceHelper.fromOM(deser, om, AddressingConstants.Final.WSA_NAMESPACE); assertEquals(epr.getAddress(), deser.getAddress()); addrAttrs = deser.getAddressAttributes(); assertEquals(attr1, addrAttrs.get(0)); assertEquals(attr2, addrAttrs.get(1)); attrs = deser.getAttributes(); assertEquals(attr1, attrs.get(0)); assertEquals(attr2, attrs.get(1)); metadata = deser.getMetaData(); assertEquals(md1, metadata.get(0)); assertEquals(md2, metadata.get(1)); mdAttrs = deser.getMetadataAttributes(); assertEquals(attr1, mdAttrs.get(0)); assertEquals(attr2, mdAttrs.get(1)); extelts = deser.getExtensibleElements(); assertEquals(ext1, extelts.get(0)); assertEquals(ext2, extelts.get(1)); m = deser.getAllReferenceParameters(); assertEquals("rp1", ((OMElement) m.get(rp1Qname)).getText()); assertEquals("rp2", ((OMElement) m.get(rp2Qname)).getText()); //Failure test try { deser = new EndpointReference(""); EndpointReferenceHelper.fromOM(deser, om, AddressingConstants.Submission.WSA_NAMESPACE); fail("An exception should have been thrown due to failure to locate a wsa:Address field."); } catch (Exception e) { //pass } } public void testToAndFromOMForSubmissionSpecEPR() throws Exception { String address = "http://ws.apache.org/axis2"; EndpointReference epr = new EndpointReference(address); OMFactory omf = OMAbstractFactory.getOMFactory(); OMNamespace ns1 = omf.createOMNamespace("http://uri1", "prefix1"); OMAttribute attr1 = omf.createOMAttribute("attr1", ns1, "attr1value"); OMNamespace ns2 = omf.createOMNamespace("http://uri2", "prefix2"); OMAttribute attr2 = omf.createOMAttribute("attr2", ns2, "attr2value"); epr.addAttribute(attr1); epr.addAttribute(attr2); OMElement md1 = omf.createOMElement("md1", "http://mduri1", "md1prefix"); OMElement md2 = omf.createOMElement("md2", "http://mduri2", "md2prefix"); epr.addMetaData(md1); epr.addMetaData(md2); OMElement ext1 = omf.createOMElement("ext1", "http://exturi1", "ext1prefix"); OMElement ext2 = omf.createOMElement("ext2", "http://exturi2", "ext2prefix"); epr.addExtensibleElement(ext1); epr.addExtensibleElement(ext2); QName rp1Qname = new QName("http://rp1uri", "refParm1", "rp1prefix"); QName rp2Qname = new QName("http://rp2uri", "refParm2", "rp2prefix"); epr.addReferenceParameter(rp1Qname, "rp1"); epr.addReferenceParameter(rp2Qname, "rp2"); ArrayList addressAttributes = new ArrayList(); addressAttributes.add(attr1); addressAttributes.add(attr2); epr.setAddressAttributes(addressAttributes); OMElement om = EndpointReferenceHelper.toOM(omf, epr, new QName("http://nsurl", "localName", "prefix"), AddressingConstants.Submission.WSA_NAMESPACE); //Add some reference properties. QName p1Qname = new QName("http://p1uri", "refProp1", "p1prefix"); QName p2Qname = new QName("http://p2uri", "refProp2", "p2prefix"); QName qname = new QName(AddressingConstants.Submission.WSA_NAMESPACE, "ReferenceProperties", AddressingConstants.WSA_DEFAULT_PREFIX); OMElement referenceProperties = omf.createOMElement(qname, om); OMElement prop1 = omf.createOMElement(p1Qname, referenceProperties); OMElement prop2 = omf.createOMElement(p2Qname, referenceProperties); prop1.setText("p1"); prop2.setText("p2"); //Test deserialize using fromOM(OMElement) EndpointReference deser = EndpointReferenceHelper.fromOM(om); assertEquals(epr.getAddress(), deser.getAddress()); ArrayList addrAttrs = deser.getAddressAttributes(); assertEquals(attr1, addrAttrs.get(0)); assertEquals(attr2, addrAttrs.get(1)); ArrayList attrs = deser.getAttributes(); assertEquals(attr1, attrs.get(0)); assertEquals(attr2, attrs.get(1)); //Metadata will be lost unless it is saved as an extensibility element. ArrayList metadata = deser.getMetaData(); assertNull(metadata); ArrayList extelts = deser.getExtensibleElements(); assertEquals(ext1, extelts.get(0)); assertEquals(ext2, extelts.get(1)); //All reference properties are returned as reference parameters. Map m = deser.getAllReferenceParameters(); assertEquals(4, m.size()); assertEquals("rp1", ((OMElement) m.get(rp1Qname)).getText()); assertEquals("rp2", ((OMElement) m.get(rp2Qname)).getText()); assertEquals("p1", ((OMElement) m.get(p1Qname)).getText()); assertEquals("p2", ((OMElement) m.get(p2Qname)).getText()); //Test deserialize using fromOM(EndpointReference, OMElement, String) deser = new EndpointReference(""); EndpointReferenceHelper.fromOM(deser, om, AddressingConstants.Submission.WSA_NAMESPACE); assertEquals(epr.getAddress(), deser.getAddress()); addrAttrs = deser.getAddressAttributes(); assertEquals(attr1, addrAttrs.get(0)); assertEquals(attr2, addrAttrs.get(1)); attrs = deser.getAttributes(); assertEquals(attr1, attrs.get(0)); assertEquals(attr2, attrs.get(1)); //Metadata will be lost unless it is saved as an extensibility element. metadata = deser.getMetaData(); assertNull(metadata); extelts = deser.getExtensibleElements(); assertEquals(ext1, extelts.get(0)); assertEquals(ext2, extelts.get(1)); //All reference properties are returned as reference parameters. m = deser.getAllReferenceParameters(); assertEquals(4, m.size()); assertEquals("rp1", ((OMElement) m.get(rp1Qname)).getText()); assertEquals("rp2", ((OMElement) m.get(rp2Qname)).getText()); assertEquals("p1", ((OMElement) m.get(p1Qname)).getText()); assertEquals("p2", ((OMElement) m.get(p2Qname)).getText()); //Failure test try { deser = new EndpointReference(""); EndpointReferenceHelper.fromOM(deser, om, AddressingConstants.Final.WSA_NAMESPACE); fail("An exception should have been thrown due to failure to locate a wsa:Address field."); } catch (Exception e) { //pass } } } Other Axis 2 examples (source code examples)Here is a short list of links related to this Axis 2 EndpointReferenceHelperTest.java source code file: |
... this post is sponsored by my books ... | |
#1 New Release! |
FP Best Seller |
Copyright 1998-2024 Alvin Alexander, alvinalexander.com
All Rights Reserved.
A percentage of advertising revenue from
pages under the /java/jwarehouse
URI on this website is
paid back to open source projects.