| career | drupal | java | mac | mysql | perl | scala | uml | unix  

Commons IO example source code file (

This example Commons IO source code file ( is included in the "Java Source Code Warehouse" project. The intent of this project is to help you "Learn Java by Example" TM.

Java - Commons IO tags/keywords

class, class, classloader, classloader, classloaderobjectinputstream, classloaderobjectinputstream, classnotfoundexception, inputstream, io, ioexception, ioexception, objectinputstream, override, streamcorruptedexception

The Commons IO 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
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * See the License for the specific language governing permissions and
 * limitations under the License.


 * A special ObjectInputStream that loads a class based on a specified
 * <code>ClassLoader rather than the system default.
 * <p>
 * This is useful in dynamic container environments.
 * @author Paul Hammant
 * @version $Id: 736890 2009-01-23 02:02:22Z niallp $
 * @since Commons IO 1.1
public class ClassLoaderObjectInputStream extends ObjectInputStream {

    /** The class loader to use. */
    private final ClassLoader classLoader;

     * Constructs a new ClassLoaderObjectInputStream.
     * @param classLoader  the ClassLoader from which classes should be loaded
     * @param inputStream  the InputStream to work on
     * @throws IOException in case of an I/O error
     * @throws StreamCorruptedException if the stream is corrupted
    public ClassLoaderObjectInputStream(
            ClassLoader classLoader, InputStream inputStream)
            throws IOException, StreamCorruptedException {
        this.classLoader = classLoader;

     * Resolve a class specified by the descriptor using the
     * specified ClassLoader or the super ClassLoader.
     * @param objectStreamClass  descriptor of the class
     * @return the Class object described by the ObjectStreamClass
     * @throws IOException in case of an I/O error
     * @throws ClassNotFoundException if the Class cannot be found
    protected Class<?> resolveClass(ObjectStreamClass objectStreamClass)
            throws IOException, ClassNotFoundException {
        Class<?> clazz = Class.forName(objectStreamClass.getName(), false, classLoader);

        if (clazz != null) {
            // the classloader knows of the class
            return clazz;
        } else {
            // classloader knows not of class, let the super classloader do it
            return super.resolveClass(objectStreamClass);

Other Commons IO examples (source code examples)

Here is a short list of links related to this Commons IO source code file:

... this post is sponsored by my books ...

#1 New Release!

FP Best Seller


new blog posts


Copyright 1998-2021 Alvin Alexander,
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.