private void readObject(ObjectInputStream in) throws IOException, ClassNotFoundException
	{
		// this should set servlet...
		in.defaultReadObject();
		try
		{
			init();
		}
		catch(ServletException e)
		{	// This could happen if it is deserialized in
			// a container where the name or path does not
			// exist. I can't see this happening unless the
			// container itself is screwed up though.
			throw new IllegalStateException("Unable to reinitialize dispatcher after deserialization.", e);
		}
	}
private void readObject ( ObjectInputStream in ) throws IOException , ClassNotFoundException { in . defaultReadObject ( ) ; try { init ( ) ; } catch ( ServletException e ) { throw new IllegalStateException ( "Unable to reinitialize dispatcher after deserialization." , e ) ; } }
Custom deserialization. This handles setting transient fields
through @{link #init()}.