Imprimindo automaticamente PDF - diversão

Pessoal,

Estou com um problema muito capcioso…

Era uma vez uma nota fiscal que precisava ser imprimida num browser. O usuário iria passar as informações da nota numa página e receberia como resposta um preview da nota a ser impresso. Um botão imprimir mataria o problema, se não fosse dos seguintes problemas:

  1. A nota será impressa num formulário que já contém os título de campos e grades _ Esse problema foi resolvido com uso de muito CSS.
  2. A nota possui um posicionamento muito bem definido. _ Esse problema foi parcialmente resolvido com muito CSS. Isso depende da compatibilidade com os padrões W3C (CSS, HTML), não são garantidos nesse ambiente.
  3. Cada browser adiciona elementos especiais de impressão, como margem, cabeçalho e rodapé.

Devido ao problema 3, resolvi renderizar o html (na verdade o xhtml + css) com algum conversor para pdf.
Primeiro eu tentei xhtml = xslt => fo = FOP => pdf. Essa solução não deu muito certo devido a imaturidade do projeto FOP.
Nova tentativa: flying saucer + Request.include. Funcionou joinha para gerar o pdf.

Mas agora eu tenho o seguinte problema… Tenho um PDF e preciso imprimi-lo diretamente (nada de solicitar ao cliente que imprima o pdf pelo adobe). Já tentei a seguinte abordagem:

Adicionar um Javascript ao PDF através do itext, com comando de autoimpressão _ Não funcionou: o iText lançava um NullPointerException durante a criação do PDF gerado pelo flying saucer.

Estou pensando em outra abordagem, mas não sei como implementar:
Utilizar um applet e talvez um javascript para imprimir o documento gerado no servidor. Claro que não dá para (simplesmente) colocar um applet e abrir uma URLConnection, porque então eu teria que repetir toda conversão entre o cliente e o servidor (como autenticação, envio dos dados da nota fiscal, etc). Minha idéia é utilizar um serviço tipo ajax para obter o objeto pdf e enviar esse objeto para o applet imprimir. É possível? Alguém sabe como implementar?

Grato!