1. Нужно еще понимать, что какой поток данных, то таков и запрос. Если во freePascal напишите поток outputStreamData, а на сервере укажите inputStreamFile, то на выходе пакет не долетит.
Принцип примерно такой:
Поле [Имя]: Александр
Поле [Фамилия]: Петренко
Поле [Возраст]: 11
Чекбокс [Пионер]: Да (ну или галочка)
Запрос строкой:
[name] Александр;
[family] Петренко;
[age] 11;
[pioner] true;
А в Java сканируйте строки на наличие того или иного аргумента и в каком он положении true/false/произвольное.