I serialized a WebRespose object to file. After loading it back, I found response.getContentCharset() returns null. I tracked the problem and found it's because of transient defaultResponseContentCharset_ in WebRequest. Why is this transient? The same question maybe apply on WebRequest.charset_ too.