code: private Deserializer optimizedGetDeserializer(String type)
              throws HessianProtocolException {
          if (missingTypes.contains(type)) {
              return null;
          }
          Deserializer answer = super.getDeserializer(type);
          if (answer == null) {
              missingTypes.add(type);
          }
          return answer;
      }
docs: If a Cougar server response contains a class the client doesn't know about (which is legal and backwards compatible
  in cases) then the default behavior of Hessian is to perform a lookup, fail, throw an exception and log it.
  This has been measured at about 25 times slower than the happy path, and Hessian does not negatively cache 'misses',
  so this is a per-response slowdown. This implementation caches type lookup misses, and so eradicates the problem.