Por que o firewall desconecta a sessão? O firewall está configurado para fechar as conexões que estão ativas há muito tempo? Ou para fechar conexões que ficaram inativas por muito tempo? Se o firewall estiver configurado para não permitir conexões que persistam por mais de uma hora, provavelmente não há nada que você possa fazer na configuração de rede - você precisaria alterar a configuração do firewall.
Do ponto de vista de arquitetura, você realmente precisa executar processos de uma hora de seu servidor de aplicativos? Normalmente, faria mais sentido para o servidor de aplicativos fazer uma solicitação que faz com que um processo de banco de dados seja executado de forma assíncrona (ou seja, gerar uma tarefa usando DBMS_SCHEDULER
ou DBMS_JOB
) e fazer com que o servidor de aplicativos monitore o andamento da tarefa. Dessa forma, você não tem uma conexão que fica aberta continuamente por uma hora. E você pode dar ao usuário algum tipo de indicador de progresso (particularmente se o trabalho for instrumentado usando, digamos, DBMS_APPLICATION_INFO
).