XML 구문 분석에 대해 WebLogic 서블릿 속성 사용 안함

이 규칙은 XML을 구문 분석하는 데 필요한 WebLogic setAttribute 및 getAttribute 속성의 사용을 발견합니다. 이 규칙은 Java 코드를 발견합니다. 독립 규칙은 이 기능을 사용할 수 있는 WebLogic weblogic.servlet.XMLParsingHelper의 사용을 발견합니다.

다음 경우가 발견됩니다.
  1. setAttribute의 모든 메소드 호출에서 첫 번째 인수는 다음 값 중 하나가 있는 문자열 리터럴입니다.
    • org.xml.sax.helpers.DefaultHandler
    • org.xml.sax.HandlerBase
    • org.w3c.dom.Document

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

  2. setAttribute의 모든 메소드 호출에서 첫 번째 인수는 문자열 변수 또는 문자열 필드에 대한 참조이고 해당 변수 또는 필드는 다음 값 중 하나로 초기화됩니다.
    • org.xml.sax.helpers.DefaultHandler
    • org.xml.sax.HandlerBase
    • org.w3c.dom.Document

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

  3. getAttribute의 모든 메소드 호출에서 인수는 다음 값 중 하나가 있는 문자열 리터럴입니다.
    • org.xml.sax.helpers.DefaultHandler
    • org.xml.sax.HandlerBase
    • org.w3c.dom.Document

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

  4. getAttribute의 모든 메소드 호출에서 인수는 문자열 변수 또는 문자열 필드에 대한 참조이며 해당 변수 또는 필드는 다음 값 중 하나로 초기화됩니다.
    • org.xml.sax.helpers.DefaultHandler
    • org.xml.sax.HandlerBase
    • org.w3c.dom.Document

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


소스 스캐너에서 이 규칙에 대한 빠른 수정사항을 사용할 수 있습니다. 코드가 어떻게 구조화되는지에 따라 빠른 수정사항은 다음 옵션 중 하나를 제공합니다.
  1. 메소드 호출을 삭제하십시오.

    예제:
      request.setAttribute("org.xml.sax.helpers.DefaultHandler", myHandler);
      request.getAttribute("org.w3c.dom.Document");
    빠른 수정사항이 이전 행에 적용되는 경우, 이러한 행이 삭제됩니다.
    참고: 오브젝트(myHandler)가 나중에 코드 내에서 사용되는 경우 기타 방식으로 초기화되는지 확인하십시오.

  2. 변수 초기자 섹션을 삭제하십시오.

    예제:
      Document myDocument = request.getAttribute("org.w3c.dom.Document");
    빠른 수정사항이 적용되는 경우, 이전 코드가 다음과 같이 변경됩니다.
      Document myDocument;
    참고: 오브젝트(myDocument)가 나중에 코드 내에서 사용되는 경우 기타 방법으로 초기화되는지 확인하십시오.