Verifica la presenza di una configurazione valida del metodo getQueryString nei file di benvenuto JSP

Questa regola rileva la chiamata al metodo request.getQueryString() nei file di benvenuto JSP di un modulo web. Tali chiamate sono contrassegnate in modo che l'utente possa verificarne il corretto utilizzo ed evitare valori null per le stringhe di query.

In WebSphere il metodo request.getQueryString() restituisce null se il file di benvenuto viene richiamato, direttamente o tramite un inoltro, con una stringa di query che non contiene il nome del file di benvenuto nell'URL. Ad esempio, se il file di benvenuto è index.jspe l'utente immette l'URL (o un altro componente del sistema inoltra all'URL): http://mycompany.com/?param=value quindi WebSphere invierà la richiesta a index.jsp. La chiamata request.getQueryString() in index.jsp tuttavia restituirà null invece di param=value . Ciò è applicabile solo ai file di benvenuto come definito nel descrittore di distribuzione web.xml .

L'utente può ottenere il valore della stringa di query in un file di benvenuto JSP in tre modi:

  1. Accertarsi che l'URL contenga il nome del file di benvenuto JSP. Ad esempio, modificare l'URL da: http://mycompany.com/?param=value a http://mycompany.com/index.jsp?param=value . Questa soluzione funzionerà per i componenti che inoltrano al JSP, ma non funzionerà per i file di benvenuto JSP a cui possono accedere direttamente gli utenti esterni che possono immettere l'URL direttamente, ad esempio, utilizzando un browser Web.
  2. L'utente può ottenere la stringa di query richiamando request.getAttribute("javax.servlet.forward.query_string") invece di request.getQueryString() .
  3. L'utente può impostare la proprietà personalizzata WebSphere com.ibm.ws.webcontainer.provideQStringToWelcomeFile su true nelle proprietà del contenitore Web. Impostando questa proprietà su true, il comportamento del contenitore viene modificato in modo da passare la stringa di query al file di benvenuto.

Per ulteriori informazioni, consultare: