⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 defaultsoapencodingtypemappingimpl.java

📁 Java有关XML编程需要用到axis 的源代码 把里面bin下的包导入相应的Java工程 进行使用
💻 JAVA
字号:
/* * Copyright 2001-2004 The Apache Software Foundation. *  * Licensed 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.axis.encoding;import org.apache.axis.Constants;import org.apache.axis.MessageContext;import org.apache.axis.encoding.ser.Base64SerializerFactory;import org.apache.axis.encoding.ser.Base64DeserializerFactory;import org.apache.axis.encoding.ser.ArraySerializerFactory;import org.apache.axis.encoding.ser.ArrayDeserializerFactory;/** * * This is the implementation of the axis Default JAX-RPC SOAP Encoding TypeMapping * See DefaultTypeMapping for more information. *  * @author Rich Scheuerle (scheu@us.ibm.com) */public class DefaultSOAPEncodingTypeMappingImpl extends DefaultTypeMappingImpl {    private static DefaultSOAPEncodingTypeMappingImpl tm = null;    /**     * Construct TypeMapping     */    public static synchronized TypeMappingImpl getSingleton() {        if (tm == null) {            tm = new DefaultSOAPEncodingTypeMappingImpl();        }        return tm;    }    public static TypeMappingDelegate createWithDelegate() {        TypeMappingDelegate ret = new TypeMappingDelegate(new DefaultSOAPEncodingTypeMappingImpl());        MessageContext mc = MessageContext.getCurrentContext();        TypeMappingDelegate tm = null;        if (mc != null) {            tm = (TypeMappingDelegate)mc.getTypeMappingRegistry().getDefaultTypeMapping();        } else {            tm = DefaultTypeMappingImpl.getSingletonDelegate();        }        ret.setNext(tm);        return ret;    }    protected DefaultSOAPEncodingTypeMappingImpl() {        super(true);        registerSOAPTypes();    }    /**     * Register the SOAP encoding data types.  This is split out into a     * method so it can happen either before or after the XSD mappings.     */    private void registerSOAPTypes() {        // SOAP Encoded strings are treated as primitives.        // Everything else is not.        myRegisterSimple(Constants.SOAP_STRING, java.lang.String.class);        myRegisterSimple(Constants.SOAP_BOOLEAN, java.lang.Boolean.class);        myRegisterSimple(Constants.SOAP_DOUBLE, java.lang.Double.class);        myRegisterSimple(Constants.SOAP_FLOAT, java.lang.Float.class);        myRegisterSimple(Constants.SOAP_INT, java.lang.Integer.class);        myRegisterSimple(Constants.SOAP_INTEGER, java.math.BigInteger.class);        myRegisterSimple(Constants.SOAP_DECIMAL, java.math.BigDecimal.class);        myRegisterSimple(Constants.SOAP_LONG, java.lang.Long.class);        myRegisterSimple(Constants.SOAP_SHORT, java.lang.Short.class);        myRegisterSimple(Constants.SOAP_BYTE, java.lang.Byte.class);        myRegister(Constants.SOAP_BASE64,     byte[].class,                   new Base64SerializerFactory(byte[].class,                                               Constants.SOAP_BASE64),                   new Base64DeserializerFactory(byte[].class,                                                 Constants.SOAP_BASE64)        );        myRegister(Constants.SOAP_BASE64BINARY,     byte[].class,                   new Base64SerializerFactory(byte[].class,                                               Constants.SOAP_BASE64BINARY),                   new Base64DeserializerFactory(byte[].class,                                                 Constants.SOAP_BASE64BINARY)        );        myRegister(Constants.SOAP_ARRAY12,     java.util.Collection.class,                   new ArraySerializerFactory(),                   new ArrayDeserializerFactory()        );        myRegister(Constants.SOAP_ARRAY12,     java.util.ArrayList.class,                   new ArraySerializerFactory(),                   new ArrayDeserializerFactory()        );        myRegister(Constants.SOAP_ARRAY12,     Object[].class,                   new ArraySerializerFactory(),                   new ArrayDeserializerFactory()        );        myRegister(Constants.SOAP_ARRAY,     java.util.ArrayList.class,                   new ArraySerializerFactory(),                   new ArrayDeserializerFactory()        );        // All array objects automatically get associated with the SOAP_ARRAY.        // There is no way to do this with a hash table,        // so it is done directly in getTypeQName.        // Internally the runtime uses ArrayList objects to hold arrays...        // which is the reason that ArrayList is associated with SOAP_ARRAY.        // In addition, handle all objects that implement the List interface        // as a SOAP_ARRAY        myRegister(Constants.SOAP_ARRAY,     java.util.Collection.class,                   new ArraySerializerFactory(),                   new ArrayDeserializerFactory()        );        myRegister(Constants.SOAP_ARRAY,     Object[].class,                   new ArraySerializerFactory(),                   new ArrayDeserializerFactory()        );    }}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -