Applet, perdendo foco da janela após redirect... [RESOLVIDO]

1 resposta
ricardospinoza

Bom dia Pessoal,

Desenvolvi um applet simples para impressão de um extrato na máquina do cliente.

No meu formulário tenho a tag:

<APPLET classid=‘clsid:8AD9C840-044E-11D1-B3E9-00805F499D93’  CODE=‘apps.Principal.class’ ARCHIVE=’/sert/impressao/print.jar’ HEIGHT=1 WIDTH=1>

<param name=‘msg’ value=<%=Extrato%>>

<param name=‘service’ value=‘auto’>

</APPLET>

e após alguns segundos a página faz um redirect (vide abaixo)

<SCRIPT LANGUAGE=“JavaScript”>

window.setTimeout(“msg.innerHTML = ‘Retire o papel impresso.’;”,2000);

window.setTimeout(“document.location=’/sert/autoatendimento/’”,7000);

</SCRIPT>

Tenho nesta mesma página uma função para tentar dar o foco na janela (vide abaixo)

<script language=“JavaScript”>

function toBackOnLoad(){

window.focus();

}

window.onfocus=toBackOnLoad

</script>

Minha pergunta é como garantir o foco na janela, pois percebi que em alguns casos a janela faz o redirect em o focus. Estou desconfiado que o applet está causando está situação, pois comentei o código do applet na página e não tive o problema.

Gostaria de saber se algum dos companheiros passou por isto e se possível como conseguiu resolve-lo.

Grato

1 Resposta

ricardospinoza

Pessoal,

Martelando, martelando e martelando, consegui resolver o problema da perda do foco na página onde está o meu applet.

Criei uma função em JavaScript para gerar a tag’s que invocam o applet em tempo de execução:

&lt;script language="JavaScript"&gt;
   &lt;!--
      function criaApplet(){

         var JVRscript = document.createElement('APPLET');
         JVRscript.setAttribute('archive', '/sert/impressao/print.jar');
         JVRscript.setAttribute('code', 'apps.Principal.class');
         JVRscript.setAttribute('width', '1');
         JVRscript.setAttribute('height', '1');

         var JVRparam1 = document.createElement('param');
         JVRparam1.setAttribute('name', 'service');
         JVRparam1.setAttribute('value', 'auto');
         
         var JVRparam2 = document.createElement('param');
         JVRparam2.setAttribute('name', 'msg');
         JVRparam2.setAttribute('value', '&lt;%=Extrato%&gt;');
         
         JVRscript.appendChild(JVRparam1);
         JVRscript.appendChild(JVRparam2);

         document.getElementById("div_applet").appendChild(JVRscript);
         }
   //--&gt;
   &lt;/script&gt;

Dentro do body faço a chamada a função criaApplet()

&lt;script language="JavaScript"&gt;
 &lt;!--
     criaApplet();
     setTimeout('document.getElementById("div_applet").innerHTML = ""',350);
     setTimeout('window.focus()',550);
 //--&gt;
 &lt;/script&gt;
Criado 8 de maio de 2008
Ultima resposta 9 de mai. de 2008
Respostas 1
Participantes 1