Можно получить желаемые двоичные данные через канал RPC несколькими способами ... например, с помощью uuencode. Однако вам все равно придется заставить браузер обрабатывать файл как загрузку.
И, исходя из вашего кода, кажется, что вы пытаетесь запустить стандартный механизм браузера для обработки данного типа MIME, изменяя ответ на сервере, чтобы браузер распознал его как загрузку ... открыть сохранить диалог, например. Для этого вам нужно, чтобы браузер сделал запрос для вас, и вам нужен сервлет для обработки запроса. Это можно сделать с помощью остальных URL, но в конечном итоге вам понадобится сервис, чтобы сделать это.
По сути, вам нужно установить URL-адрес окна браузера на URL, который отправляет обратно измененный объект ответа.
Так что этот вопрос (о потоковой передаче) не совсем совместим с примером кода. Необходимо скорректировать один или другой подход (протоколы связи или измененный сервером объект ответа).
Самый простой способ настройки - это способ связи.