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 mediante 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.jsp e l'utente immette l'URL (o un altro componente del sistema inoltra all'URL): http://mycompany.com/?param=value, WebSphere invierà la richiesta a index.jsp. La chiamata request.getQueryString() in index.jsp tuttavia restituirà null invece di param=value. Questo è 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 funziona per i componenti che eseguono l'inoltro al JSP, ma non per i file di benvenuto JSP a cui è possibile accedere direttamente da parte di 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: