diff options
author | Mark Spruiell <mes@zeroc.com> | 2009-06-26 14:59:11 -0700 |
---|---|---|
committer | Mark Spruiell <mes@zeroc.com> | 2009-06-26 14:59:11 -0700 |
commit | 3a5f968f8487eb1f91769ab8704a9609dcbe9efe (patch) | |
tree | 469fc394f1e1e9ba0ef615c991faa524af4a21d0 /java/src/IceInternal/ObjectInputStream.java | |
parent | updating CHANGES for bug 4126 (diff) | |
download | ice-3a5f968f8487eb1f91769ab8704a9609dcbe9efe.tar.bz2 ice-3a5f968f8487eb1f91769ab8704a9609dcbe9efe.tar.xz ice-3a5f968f8487eb1f91769ab8704a9609dcbe9efe.zip |
more fixes for bug 4126
Diffstat (limited to 'java/src/IceInternal/ObjectInputStream.java')
-rw-r--r-- | java/src/IceInternal/ObjectInputStream.java | 45 |
1 files changed, 45 insertions, 0 deletions
diff --git a/java/src/IceInternal/ObjectInputStream.java b/java/src/IceInternal/ObjectInputStream.java new file mode 100644 index 00000000000..e5fa8e0b45a --- /dev/null +++ b/java/src/IceInternal/ObjectInputStream.java @@ -0,0 +1,45 @@ +// ********************************************************************** +// +// Copyright (c) 2003-2009 ZeroC, Inc. All rights reserved. +// +// This copy of Ice is licensed to you under the terms described in the +// ICE_LICENSE file included in this distribution. +// +// ********************************************************************** + +package IceInternal; + +// +// We need to override the resolveClass method of ObjectInputStream so +// that we can use the same class-lookup mechanism as elsewhere in the +// Ice run time. +// + +public class ObjectInputStream extends java.io.ObjectInputStream +{ + public + ObjectInputStream(java.io.InputStream in) + throws java.io.IOException + { + super(in); + } + + protected Class<?> + resolveClass(java.io.ObjectStreamClass cls) + throws java.io.IOException, ClassNotFoundException + { + try + { + Class<?> c = Util.findClass(cls.getName()); + if(c != null) + { + return c; + } + throw new ClassNotFoundException("unable to resolve class" + cls.getName()); + } + catch(Exception ex) + { + throw new ClassNotFoundException("unable to resolve class " + cls.getName(), ex); + } + } +} |