Skip to Main Content

Java EE (Java Enterprise Edition) General Discussion

Announcement

For appeals, questions and feedback about Oracle Forums, please email oracle-forums-moderators_us@oracle.com. Technical questions should be asked in the appropriate category. Thank you!

SAXParseException: The entity "eacute" was referenced, but not

843834Feb 14 2008 — edited Feb 20 2008
Hello,

I can't seem to get the following to work:

I have the following code:

==========
MyParser.java
==========
package parser;

import org.jdom.input.SAXBuilder;
import org.jdom.Document;

public class MyParser{
  public void startFileParsing(String filename){
    Document document;

    SAXBuilder builder = new SAXBuilder();

    builder.setEntityResolver(new MyEntityResolver());

    try {
      document = builder.build(file);
    } catch (JDOMException e) {
      e.printStacktrace();
    }
  }

  public static void main(String[] args) {
    MyParser mp = new MyParser();
    
    mp.startFileParsing(args[0]);
  }
}
==========
MyEntityResolver.java
==========
package parser;

import org.xml.sax.EntityResolver;
import org.xml.sax.InputSource;

public class MyEntityResolver implements EntityResolver {
  public NTFREntityResolver() {
  }

  public InputSource resolveEntity(String publicId, String systemId) {
    return new InputSource(this.getClass().getClassLoader().getResource("MyDTD.dtd").toString());
  }
}
==========
MyXML.xml
==========
<?xml version='1.0' encoding='ISO-8859-1'?>
<ROOT>
  <ART>
      <AL>H&eacute;</AL>
  </ART>
</ROOT>
==========
MyDTD.dtd (Placed in the bin-directory)
==========
<?xml version="1.0" encoding="UTF-8"?>
...
<!ENTITY % ISOLAT1 SYSTEM "ISOlat1.ent">
%ISOLAT1;
==========
ISOlat1.ent (Placed in the bin-directory)
==========
    <!ENTITY eacute  "&#233;" ><!-- small e, acute accent -->
==========
Error message
==========
org.jdom.JDOMException: Error on line 4 of document file:/C:/MyXML.xml: The entity "eacute" was referenced, but not declared.
  at org.jdom.input.SAXBuilder.build(SAXBuilder.java:296)
  at org.jdom.input.SAXBuilder.build(SAXBuilder.java:617)
  at org.jdom.input.SAXBuilder.build(SAXBuilder.java:599)
  at parser.MyParser.startFileParsing(MyParser.java:15)
  at parser.MyParser.main(NTFRParser.java:24)
Root cause: org.xml.sax.SAXParseException: The entity "eacute" was referenced, but not declared.
  at org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown Source)
  at org.jdom.input.SAXBuilder.build(SAXBuilder.java:287)
  at org.jdom.input.SAXBuilder.build(SAXBuilder.java:617)
  at org.jdom.input.SAXBuilder.build(SAXBuilder.java:599)
  at parser.MyParser.startFileParsing(MyParser.java:15)
  at parser.MyParser.main(MyParser.java:24)

  at parser.MyParser.startFileParsing(MyParser.java:15)
  at parser.MyParser.main(MyParser.java:24)
Exception in thread "main" 
And when I use MyXML2.xml:
<?xml version='1.0' encoding='ISO-8859-1'?>
<!DOCTYPE MYDT PUBLIC "-//MyDT//DTD MYDTD-XML//MYDTD" "MyDTD.dtd">
<ROOT>
  <ART>
      <AL>H&eacute;</AL>
  </ART>
</ROOT>
==========
Error message
==========
org.jdom.JDOMException: Error on line 2 of document file:/C:/parser/bin/MyDTD.dtd: Recursive entity reference "%ISOLAT1". (Reference path: %ISOLAT1 -> %ISOLAT1 -> %ISOLAT1),
  at org.jdom.input.SAXBuilder.build(SAXBuilder.java:296)
  at org.jdom.input.SAXBuilder.build(SAXBuilder.java:617)
  at org.jdom.input.SAXBuilder.build(SAXBuilder.java:599)
  at parser.MyParser.startFileParsing(MyParser.java:15)
  at parser.MyParser.main(MyParser.java:24)
Root cause: org.xml.sax.SAXParseException: Recursive entity reference "%ISOLAT1". (Reference path: %ISOLAT1 -> %ISOLAT1 -> %ISOLAT1),
  at org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown Source)
  at org.jdom.input.SAXBuilder.build(SAXBuilder.java:287)
  at org.jdom.input.SAXBuilder.build(SAXBuilder.java:617)
  at org.jdom.input.SAXBuilder.build(SAXBuilder.java:599)
  at parser.MyParser.startFileParsing(MyParser.java:15)
  at parser.MyParser.main(MyParser.java:24)

  at parser.MyParser.startFileParsing(MyParser.java:15)
  at parser.MyParser.main(MyParser.java:24)
Exception in thread "main" 
Can anybody give me some pointers?
Comments
Locked Post
New comments cannot be posted to this locked post.
Post Details
Locked on Mar 19 2008
Added on Feb 14 2008
8 comments
3,935 views