qsub
envia seu programa java para um sistema de enfileiramento em lote e, eventualmente, ele é executado em um dos nós de computação no cluster - como você espera poder inserir dados interativamente nessa situação? não há tty ou tela ou teclado.
Você precisa modificar seu programa para obter argumentos de linha de comando e fornecer o nome de arquivo e o nome de usuário na linha de comando quando usar qsub
para enviar o trabalho.