public class ConfigurableObjectInputStream extends ObjectInputStream
CodebaseAwareObjectInputStream
.ObjectInputStream.GetField
baseWireHandle, PROTOCOL_VERSION_1, PROTOCOL_VERSION_2, SC_BLOCK_DATA, SC_ENUM, SC_EXTERNALIZABLE, SC_SERIALIZABLE, SC_WRITE_METHOD, STREAM_MAGIC, STREAM_VERSION, SUBCLASS_IMPLEMENTATION_PERMISSION, SUBSTITUTION_PERMISSION, TC_ARRAY, TC_BASE, TC_BLOCKDATA, TC_BLOCKDATALONG, TC_CLASS, TC_CLASSDESC, TC_ENDBLOCKDATA, TC_ENUM, TC_EXCEPTION, TC_LONGSTRING, TC_MAX, TC_NULL, TC_OBJECT, TC_PROXYCLASSDESC, TC_REFERENCE, TC_RESET, TC_STRING
Constructor and Description |
---|
ConfigurableObjectInputStream(InputStream in,
ClassLoader classLoader)
Create a new ConfigurableObjectInputStream for the given InputStream and ClassLoader.
|
ConfigurableObjectInputStream(InputStream in,
ClassLoader classLoader,
boolean acceptProxyClasses)
Create a new ConfigurableObjectInputStream for the given InputStream and ClassLoader.
|
Modifier and Type | Method and Description |
---|---|
protected ClassLoader |
getFallbackClassLoader()
Return the fallback ClassLoader to use when no ClassLoader was specified
and ObjectInputStream's own default ClassLoader failed.
|
protected Class |
resolveClass(ObjectStreamClass classDesc) |
protected Class |
resolveFallbackIfPossible(String className,
ClassNotFoundException ex)
Resolve the given class name against a fallback class loader.
|
protected Class |
resolveProxyClass(String[] interfaces) |
available, close, defaultReadObject, enableResolveObject, read, read, readBoolean, readByte, readChar, readClassDescriptor, readDouble, readFields, readFloat, readFully, readFully, readInt, readLine, readLong, readObject, readObjectOverride, readShort, readStreamHeader, readUnshared, readUnsignedByte, readUnsignedShort, readUTF, registerValidation, resolveObject, skipBytes
mark, markSupported, read, reset, skip
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
read, skip
public ConfigurableObjectInputStream(InputStream in, ClassLoader classLoader) throws IOException
in
- the InputStream to read fromclassLoader
- the ClassLoader to use for loading local classesIOException
ObjectInputStream.ObjectInputStream(java.io.InputStream)
public ConfigurableObjectInputStream(InputStream in, ClassLoader classLoader, boolean acceptProxyClasses) throws IOException
in
- the InputStream to read fromclassLoader
- the ClassLoader to use for loading local classesacceptProxyClasses
- whether to accept deserialization of proxy classes
(may be deactivated as a security measure)IOException
ObjectInputStream.ObjectInputStream(java.io.InputStream)
protected Class resolveClass(ObjectStreamClass classDesc) throws IOException, ClassNotFoundException
resolveClass
in class ObjectInputStream
IOException
ClassNotFoundException
protected Class resolveProxyClass(String[] interfaces) throws IOException, ClassNotFoundException
resolveProxyClass
in class ObjectInputStream
IOException
ClassNotFoundException
protected Class resolveFallbackIfPossible(String className, ClassNotFoundException ex) throws IOException, ClassNotFoundException
The default implementation simply rethrows the original exception, since there is no fallback available.
className
- the class name to resolveex
- the original exception thrown when attempting to load the classnull
)IOException
ClassNotFoundException
protected ClassLoader getFallbackClassLoader() throws IOException
The default implementation simply returns null
.
IOException