Mas que raios de JS é esse?

Uma das duvidas de nossa equipe quanto ao Gerenciador de Layout sempre foi a estranha importação de um js e um css que é inserido sem consentimento. Esses arquivos, com nomes como 0,,IDSESSAO,00.js e 0,,IDSESSAO-xhtmls.css, podem causar problemas bizarros no momento de transferência entre ambientes.

Um exemplo disso é o problema que tivemos hoje em QA1. A página de Catálogo do GloboVideos 4.2 que está em homologação começou a acusar um erro de javascript que no ambiente local e no ambiente de desenvolvimento não apareciam.

Analisando o problema descobrimos que a fonte do problema era um erro de sintaxe encontrado no 0,,9448,00.js. Esse erro era causado pelo comentário na declaração de uma função cujo corpo e fechamento não estavam comentados. Apartir daí foi só descobrir como esse arquivo é gerado. Acabamos por descobrir que ele é gerado mesclando todas as funções genéricas, cadastradas no Gerenciador de Layout.

Foi então que percebemos um bug nessa geração, o comentário da declaração de função na verdade é o comentário de finalização de uma outra função colocada logo acima. Ou seja, entre uma e outra função mesclada para gerar o estranho arquivo js, o gerenciador não coloca nenhuma quebra de linha.

Para resolver isso bastou então inserir essa quebra de linha e limpar o cache.

2 Responses to “Mas que raios de JS é esse?”

  1. Muanis Says:

    Esse é o classico problema de querer controlar o código de todos os sites a partir de um ponto único.

    Se você pudesse subir sua aplicação com tudo dela (e ninguem mais colocasse codigo lá) seria o fim desse tipo de problema.

    Mas aí alguem inventa que quer trocar todos os sites do portal a partir de um cadastro do cma …

  2. Guilherme Chapiewski Says:

    Será que isso já foi usado alguma vez? Será que também não é um daquelas clássicas situações que se faz alguma coisa para “se um dia for necessário mudar”?

    :)

Leave a Reply