Verificar configuração válida do método getQueryString nos arquivos de boas-vindas JSP

Esta regra detecta a chamada de método request.getQueryString() nos arquivos de boas-vindas JSP de um módulo da web. Essas chamadas são sinalizadas para que o usuário possa verificar o uso correto e evitar os valores nulos para a sequência de consultas.

No WebSphere, o método request.getQueryString() será retornado nulo se o arquivo de boas-vindas for chamado, seja diretamente ou através de um encaminhamento, com uma sequência de consultas que não contém o nome do arquivo de boas-vindas no URL. Por exemplo, se o arquivo de boas-vindas for index.jsp, e o usuário inserir a URL (ou outro componente do sistema encaminhar para a URL): http://mycompany.com/?param=value, em seguida, o WebSphere enviará a solicitação para index.jsp. A chamada request.getQueryString() em index.jsp, no entanto, retornará null em vez de param=value. Isso é aplicável apenas para os arquivos de boas-vindas conforme definido no descritor de implementação web.xml.

O usuário pode obter o valor da sequência de consultas em um arquivo de boas-vindas JSP de três maneiras:

  1. Certifique-se de que a URL inclui o nome do arquivo de boas-vindas JSP. Por exemplo, altere a URL de: http://mycompany.com/?param=value para http://mycompany.com/index.jsp?param=value. Esta solução funcionará para os componentes que são encaminhados para JSP, mas não funcionará para os arquivos de boas-vindas JSP que podem ser acessados diretamente pelos usuários externos que podem inserir a URL diretamente, por exemplo, usando um navegador da web.
  2. O usuário pode obter a sequência de consultas chamando request.getAttribute("javax.servlet.forward.query_string") em vez de request.getQueryString().
  3. O usuário pode configurar a propriedade customizada do WebSphere com.ibm.ws.webcontainer.provideQStringToWelcomeFile para true nas propriedades do contêiner de web. Configurar essa propriedade para true vai alterar o comportamento do contêiner para passar a sequência de consultas para o arquivo de boas-vindas.

Para obter informações adicionais, consulte: