Você está na página 1de 2

Jan.

2021

BUG DO AMBIENTE DE TREINAMENTO

Versão 4.48.9.2

Descrição

Diferenças de resultados em ambientes sob a mesma condição de código e banco de dados.


O ambiente treinasigrh entrega um resultado não esperado, enquanto o ambiente de
produção e o ambiente local (levantado sob as diretrizes de configuração do jboss presentes
no oráculo) entregam um resultado esperado.
Ambiente treinasigrh possui particularidade de utilizar tecnologia Docker.
Investigação da situação em conjunto com a equipe da CQSI.

Validação

Pré-requisitos: acesso ao SIGRH; possuir papel GESTOR_CAPACITACAO

Seguir o passos

1. Logar

2. Acessar ​Módulos​ > ​Capacitação

3. Acessar ​Menu Servidor

4. Acessar ​Módulos​ > ​Capacitação

5. Acessar ​Turmas​ > ​Listar/Alterar

O primeiro link em azul deve conter o texto “Capacitação”, qualquer outro texto
(Administração de Pessoal, Portal do Servidor) é um comportamento não esperado pelo
negócio.
Parecer (CDSAD)

O procedimento de acesso aos módulos utilizado, no código SIGRH, segue os seguintes


passos:

a - Páginas (.jsp) do sistema possuem links (href) com terminações .jsf. A requisição sobre
estes links ativa a classe ​SigrhPhaseListener.java​, processando o método ​beforePhase​.

b - O método ​beforePhase trata o link passado (terminação jsf), traduz a requisição para
uma invocação de método (ex.: ​entrarCapacitacao​) e encaminha a requisição o MBean que
declara o método: ​MenuPrincipalMBean.java​.

c - O método invocado (​entrarCapacitacao)​ parametriza e chama o método de tratamento


geral para acesso a subsistemas, presente no mesmo MBean: ​entrarSubsistema​.

d - O método ​entrarSubsistema utiliza seus parâmentros para invocar um método de sua


superclasse, presente no projeto Arquitetura: classe ​AbstractController​.

e - O método da classe da Arquitetura atualiza o atributo da seção: ​subsistema​.

Após a execução de simulações no ambiente treinasigrh foi constatado que a cadeia de


procedimentos apresentada nos itens (a) à (e) apenas é processada na ​primeira requisição
do usuário​. Em se tratando das requisições subsequentes, o sistema carrega a página de
uma outra forma. O efeito colateral deste carregamento é a não atualização do atributo
subsistema​.

O SIGRH apresenta os seguintes problemas quando utilizado com o atributo ​subsistema


desatualizado: Ativações equivocadas de exceções de segurança; uso comprometido de
algumas funcionalidades de módulo.

Devido ao efeito apenas ser conseguido ser reproduzido em ambientes docker, sugerimos
uma análise do manejo de cache da aplicação, configurações do apache e configurações do
jboss.

Você também pode gostar