Uploaded image for project: 'JDK'
  1. JDK
  2. JDK-8139941

Could not parse log4j's dtd url with chinese character

XMLWordPrintable

    • x86_64
    • windows_7

      FULL PRODUCT VERSION :
      java version "1.7.0_80"
      Java(TM) SE Runtime Environment (build 1.7.0_80-b15)
      Java HotSpot(TM) 64-Bit Server VM (build 24.80-b11, mixed mode)

      ADDITIONAL OS VERSION INFORMATION :
      Microsoft Windows [版本 6.1.7601]

      EXTRA RELEVANT SYSTEM CONFIGURATION :

      <!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">

      A DESCRIPTION OF THE PROBLEM :
      log4j.xml's url contains chinese character, and i import log4j.dtd in the same path like this:
      "<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">".



      REGRESSION. Last worked in version 6u43

      STEPS TO FOLLOW TO REPRODUCE THE PROBLEM :
      can not start web server


      ERROR MESSAGES/STACK TRACES THAT OCCUR :
      com.sun.org.apache.xerces.internal.util.URI$MalformedURIException: Path contains invalid character: 租
      at com.sun.org.apache.xerces.internal.util.URI.initializePath(URI.java:1109)
      at com.sun.org.apache.xerces.internal.util.URI.initialize(URI.java:582)
      at com.sun.org.apache.xerces.internal.util.URI.<init>(URI.java:335)
      at com.sun.org.apache.xerces.internal.util.URI.<init>(URI.java:298)
      at com.sun.org.apache.xerces.internal.impl.XMLEntityManager.expandSystemIdStrictOff1(XMLEntityManager.java:2220)
      at com.sun.org.apache.xerces.internal.impl.XMLEntityManager.expandSystemId(XMLEntityManager.java:2052)
      at com.sun.org.apache.xerces.internal.impl.XMLEntityManager.resolveEntityAsPerStax(XMLEntityManager.java:962)
      at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl$DTDDriver.dispatch(XMLDocumentScannerImpl.java:1154)
      at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl$DTDDriver.next(XMLDocumentScannerImpl.java:1050)
      at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl$PrologDriver.next(XMLDocumentScannerImpl.java:964)
      at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:606)
      at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:510)
      at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:848)
      at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:777)
      at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:141)
      at com.sun.org.apache.xerces.internal.parsers.DOMParser.parse(DOMParser.java:243)
      at com.sun.org.apache.xerces.internal.jaxp.DocumentBuilderImpl.parse(DocumentBuilderImpl.java:347)
      at javax.xml.parsers.DocumentBuilder.parse(DocumentBuilder.java:177)
      at org.apache.log4j.xml.DOMConfigurator$2.parse(DOMConfigurator.java:690)
      at org.apache.log4j.xml.DOMConfigurator.doConfigure(DOMConfigurator.java:789)
      at org.apache.log4j.xml.DOMConfigurator.doConfigure(DOMConfigurator.java:696)
      at org.apache.log4j.helpers.OptionConverter.selectAndConfigure(OptionConverter.java:471)
      at org.apache.log4j.LogManager.<clinit>(LogManager.java:125)
      at org.apache.log4j.Logger.getLogger(Logger.java:118)
      at com.rb.jrzl.cpsvr.filemonitor.FileModifyListener.<init>(FileModifyListener.java:27)
      at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
      at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)
      at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
      at java.lang.reflect.Constructor.newInstance(Constructor.java:526)
      at java.lang.Class.newInstance(Class.java:383)
      at org.apache.catalina.core.DefaultInstanceManager.newInstance(DefaultInstanceManager.java:116)
      at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4919)
      at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5517)
      at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
      at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1574)
      at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1564)
      at java.util.concurrent.FutureTask.run(FutureTask.java:262)
      at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
      at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
      at java.lang.Thread.run(Thread.java:745)
      log4j:WARN No appenders could be found for logger (com.rb.jrzl.cpsvr.spring.JrzlClassPathXmlApplicationContext).
      log4j:WARN Please initialize the log4j system properly.


      REPRODUCIBILITY :
      This bug can be reproduced always.

            pardesha Pardeep Sharma
            webbuggrp Webbug Group
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated:
              Resolved: