Servlet responses to upload/download requests
if (info.isUpload()) {
        if (result.isValid()) {
            wrap = new InfoWrapperImpl1(info, result);
        } else {
            wrap = new InfoWrapperImpl2(info, result);
        }
    } else {
        wrap = new InfoWrapperImpl1(info, result);
    }


Can be written as:

   if (!info.isUpload() || result.isValid()) {
        wrap = new InfoWrapperImpl1(info, result);
    } else {
        wrap = new InfoWrapperImpl2(info, result);
    }


Also InfoWrapperImpl1 and InfoWrapperImpl2 are not very good names, as they are not expressive and look quite similar to each other.