Tenho uma aplicação utilizando struts 1.3, um servidor tomcat 5.5 e estou 
utilizando java 5 update 11.

 

 Estou enfrentando o seguinte problema:

 

 Para acesso a minha aplicação existe um proxy reverso, por motivos de regras 
de segurança... pois bem

 

 1- Atualmente temos alguns gargalos em algumas consultas que a equipe de DBAs 
estão resolvendo...

 

 2- Nesse proxy reverso temos um timeout, por motivos de segurança é de 5 
min... e pronto

    Apos os 5 min o proxy finaliza a conexão com minha aplicação, e exibe sua 
tela padrão de erro

    502 BAD GATEWAY 

   Ao exibir esta msg minha aplicação nem sabe disso ela faz o dela mas quando 
temina seu processo

   o proxy ja finalizou a conexão a ela...

  

 3- No meio esta minha aplicação, e meu problema como finalizar
qualquer processo que ela esteja fazendo dentro de um tempo limite, no
qual eu determinho menor do que o timeout do proxy, exibindo uma msg
agradavel para meu usuário, "SUA CONSULTA EXCEDEU O TEMPO LIMITE DE
NOSSO SERVIDOR"

 

   Nessa empreitada eu implementei um controle de transação 
javax.transaction.UserTransaction

 

     UserTransaction utx = null;

       try {

          Context ic = new InitialContext();

           utx = (UserTransaction) ic.lookup("java:comp/UserTransaction");

            utx.setTransactionTimeout(4000); // definido para 4 minutos

            utx.begin();

            //MEU PROCESSO

            utx.commit();

       }catch (Exception e) {   

            utx.rollback();

            e.printStackTrace();

       }            

 

 Este controle funciona em parte, pois bem:

    Ele funciona mas aguarda a execução do processo,

   e so na finalização deste processo que ele gera exceção do timeout definido 
na aplicação

 

   No caso processo demorar 6 min, o msg de erro do proxy já foi ativada em 5 
min, de nada mais adianta controle algum.

 

    PERGUNTA:

 É possível implementar algo para contornar esse timeout do proxy
reverso na minha aplicação java, finalizando um processo em um tempo
menor que o timeout do proxy?

 

 Grato em quem puder ajudar!
 
Rogério [rs]




      Flickr agora em português. Você clica, todo mundo vê.
http://www.flickr.com.br/

Atrašyti