Ne használjon WebLogic kiszolgálókisalkalmazás-attribútumokat az XML értelmezéshez

Ez a szabály az XML elemzésre szolgáló setAttribute és getAttribute WebLogic attribútumok használatát ismeri fel. A szabály felismeri a Java kódot. Egy külön szabály ismeri fel a szolgáltatást engedélyező WebLogic weblogic.servlet.XMLParsingHelper szűrő használatát.

A szabály a következő eseteket ismeri fel:
  1. A setAttribute metódus minden hívását, ahol az első argumentum az alábbi értékek egyikével rendelkező karaktersorozat-literál:
    • org.xml.sax.helpers.DefaultHandler
    • org.xml.sax.HandlerBase
    • org.w3c.dom.Document

    Példa:
    request.setAttribute("org.xml.sax.helpers.DefaultHandler", someObject)

  2. A setAttribute metódus minden hívását, ahol az első argumentum egy karaktersorozat-változóra mutató hivatkozás vagy karaktersorozat típusú mező, továbbá a kérdéses változó vagy mező a következő értékek egyikére kerül inicializálásra:
    • org.xml.sax.helpers.DefaultHandler
    • org.xml.sax.HandlerBase
    • org.w3c.dom.Document

    Példa:
      String handler = "org.xml.sax.helpers.DefaultHandler";
      request.setAttribute(handler, someObject);

  3. A getAttribute metódus minden hívását, ahol az argumentum az alábbi értékek egyikével rendelkező karaktersorozat-literál:
    • org.xml.sax.helpers.DefaultHandler
    • org.xml.sax.HandlerBase
    • org.w3c.dom.Document

    Például: Document myDocument = request.getAttribute("org.w3c.dom.Document")

  4. A getAttribute metódus minden hívását, ahol az argumentum egy karaktersorozat-változóra mutató hivatkozás vagy karaktersorozat típusú mező, továbbá a kérdéses változó vagy mező a következő értékek egyikére kerül inicializálásra:
    • org.xml.sax.helpers.DefaultHandler
    • org.xml.sax.HandlerBase
    • org.w3c.dom.Document

    Példa:
      String handler = "org.w3c.dom.Document";
      Document myDoc = request.getAttribute(handler);


A forráselemzőben rendelkezésre áll egy gyorsjavítás ehhez a szabályhoz. A kód strukturálási módjától függően a gyorsjavítás az alábbi lehetőségeket kínálja:
  1. A metódushívás törlése.

    Példák:
      request.setAttribute("org.xml.sax.helpers.DefaultHandler", myHandler);
      request.getAttribute("org.w3c.dom.Document");
    A gyorsjavítás előző sorokra való alkalmazásakor a kérdéses sorok törlésre kerülnek.
    Megjegyzés: Ellenőrizze, hogy a myHandler objektum inicializálása más módon végbemegy, ha az objektum a kódon belül később felhasználásra kerül.

  2. A változóinicializáló szakasz törlése.

    Példák:
      Document myDocument = request.getAttribute("org.w3c.dom.Document");
    A gyorsjavítás alkalmazásakor az előző kód a következőre módosul:
      Document myDocument;
    Megjegyzés: Ellenőrizze, hogy a myDocument objektum inicializálása más módon végbemegy, ha az objektum a kódon belül később felhasználásra kerül.