A getQueryString metódus érvényes konfigurációjának ellenőrzése a JSP üdvözlőfájlokban

A szabály a request.getQueryString() metódushívást ismeri fel a világhálós modulok JSP üdvözlőfájljaiban. Ezek a hívások megjelölésre kerülnek, hogy a felhasználó ellenőrizhesse a helyes használatot és elkerülhesse a nullértékeket a lekérdezési karaktersorozatban.

WebSphere rendszerben a request.getQueryString() metódus nullértéket fog visszaadni, ha az üdvözlőfájlt, közvetlenül vagy továbbítás útján, olyan lekérdezési karaktersorozattal hívják meg, amely nem tartalmazza az üdvözlőfájl nevét az URL címben. Ha például az üdvözlőfájl az index.jsp, és a felhasználó a következő URL címet írja be (vagy másik rendszerkomponens továbbít az URL címre): http://mycompany.com/?param=value, akkor a WebSphere kérést küld az index.jsp fájlnak. A request.getQueryString() hívás azonban az index.jsp fájlban null értéket ad vissza param=value helyett. Ez csak a web.xml telepítésleíróban meghatározott üdvözlőfájlokra vonatkozik.

A felhasználó JSP üdvözlőfájlban szereplő lekérdezési karaktersorozat értéket háromféleképpen kérdezheti le:

  1. Győződjön meg róla, hogy az URL tartalmazza a JSP üdvözlőfájl nevét. Módosítsa például az URL címet erről: http://mycompany.com/?param=value erre: http://mycompany.com/index.jsp?param=value. Ez a megoldás működik olyan komponensek esetében, amelyek továbbítanak a JSP fájlba, de nem működik olyan JSP üdvözlőfájlok esetében, amelyet az külső felhasználók az URL közvetlen beírásával (például világháló-böngésző használatával) elérhetnek.
  2. Lekérdezheti a felhasználó a lekérdezési karaktersorozatot a request.getAttribute("javax.servlet.forward.query_string") hívásával a request.getQueryString() helyett.
  3. A felhasználó beállíthatja a com.ibm.ws.webcontainer.provideQStringToWelcomeFile egyéni WebSphere tulajdonságot true értékre a világhálós tároló tulajdonságai között. A tulajdonság true értékre állítása úgy módosítja a tároló viselkedését, hogy az átadja a lekérdezési karaktersorozatot az üdvözlőfájlnak.

További információkért lásd: