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

📄 rmiprovider.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.providers.java;import org.apache.axis.Constants;import org.apache.axis.Handler;import org.apache.axis.MessageContext;import org.apache.axis.components.logger.LogFactory;import org.apache.commons.logging.Log;import java.rmi.Naming;import java.rmi.RMISecurityManager;/** * A basic RMI Provider * * @author Davanum Srinivas (dims@yahoo.com) */public class RMIProvider extends RPCProvider {    protected static Log log =            LogFactory.getLog(RMIProvider.class.getName());    // The enterprise category is for stuff that an enterprise product might    // want to track, but in a simple environment (like the AXIS build) would    // be nothing more than a nuisance.    protected static Log entLog =            LogFactory.getLog(Constants.ENTERPRISE_LOG_CATEGORY);    public static final String OPTION_NAMING_LOOKUP = "NamingLookup";    public static final String OPTION_INTERFACE_CLASSNAME = "InterfaceClassName";    /**     * Return a object which implements the service.     *      * @param msgContext the message context     * @param clsName The JNDI name of the EJB home class     * @return an object that implements the service     */    protected Object makeNewServiceObject(MessageContext msgContext,                                          String clsName)            throws Exception {        // Read deployment descriptor options        String namingLookup = getStrOption(OPTION_NAMING_LOOKUP, msgContext.getService());        if (System.getSecurityManager() == null) {            System.setSecurityManager(new RMISecurityManager());        }        Object targetObject = Naming.lookup(namingLookup);        return targetObject;    }    /**     * Return the option in the configuration that contains the service class     * name.       */    protected String getServiceClassNameOptionName() {        return OPTION_INTERFACE_CLASSNAME;    }    /**     * Get a String option by looking first in the service options,     * and then at the Handler's options.  This allows defaults to be     * specified at the provider level, and then overriden for particular     * services.     *     * @param optionName the option to retrieve     * @return String the value of the option or null if not found in     *                either scope     */    protected String getStrOption(String optionName, Handler service) {        String value = null;        if (service != null)            value = (String) service.getOption(optionName);        if (value == null)            value = (String) getOption(optionName);        return value;    }}

⌨️ 快捷键说明

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