Keine WebLogic-Servletattribute für XML-Parsing verwenden

Diese Regel erkennt die Verwendung der WebLogic-Attribute "setAttribute" und "getAttribute" für XML-Parsing. Diese Regel erkennt den Java-Code. Eine gesonderte Regel erkennt die Verwendung des WebLogic-Helpers weblogic.servlet.XMLParsingHelper, der dieses Feature aktiviert.

Die folgenden Fälle werden erkannt:
  1. Alle Methodenaufrufe von setAttribute , wobei das erste Argument ein Zeichenfolgeliteral mit einem der folgenden Werte ist:
    • org.xml.sax.helpers.DefaultHandler
    • org.xml.sax.HandlerBase
    • org.w3c.dom.Document

    Beispiel:
    request.setAttribute("org.xml.sax.helpers.DefaultHandler", someObject)

  2. Alle Methodenaufrufe von setAttribute Dabei ist das erste Argument ein Verweis auf eine Zeichenfolgevariable oder ein Zeichenfolgefeld und diese Variable bzw. dieses Feld wird mit einem der folgenden Werte initialisiert:
    • org.xml.sax.helpers.DefaultHandler
    • org.xml.sax.HandlerBase
    • org.w3c.dom.Document

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

  3. Alle Methodenaufrufe von getAttribute , wobei das Argument ein Zeichenfolgeliteral mit einem der folgenden Werte ist:
    • org.xml.sax.helpers.DefaultHandler
    • org.xml.sax.HandlerBase
    • org.w3c.dom.Document

    Beispiel: Document myDocument = request.getAttribute("org.w3c.dom.Document")

  4. Alle Methodenaufrufe von getAttribute , wobei das Argument ein Verweis auf eine Zeichenfolgevariable oder ein Zeichenfolgefeld ist und diese Variable oder dieses Feld mit einem der folgenden Werte initialisiert wird:
    • org.xml.sax.helpers.DefaultHandler
    • org.xml.sax.HandlerBase
    • org.w3c.dom.Document

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


. Je nachdem wie der Code strukturiert ist, wird die automatische Korrektur eine der folgenden Optionen anbieten:
  1. Methodenaufruf löschen.

    Beispiele:
       request.setAttribute("org.xml.sax.helpers.DefaultHandler", myHandler);
       request.getAttribute("org.w3c.dom.Document");
    Wenn die automatische Korrektur auf die vorherigen Zeilen angewendet wird, werden diese Zeilen gelöscht.
    Anmerkung: Stellen Sie sicher, dass das Objekt myHandler wird auf andere Weise initialisiert, wenn er später im Code verwendet wird.

  2. Abschnitt für den Initialisierungsoperator für Variablen löschen.

    Beispiele:
       Document myDocument = request.getAttribute("org.w3c.dom.Document");
    Wenn die automatische Korrektur angewendet wird, wird der vorherige Code geändert:
       Document myDocument;
    Anmerkung: Stellen Sie sicher, dass das Objekt myDocument wird auf andere Weise initialisiert, wenn er später im Code verwendet wird.