This is a strange one that I have seen Conor address on the mailing list but i'm not sure what the resolution was. I am compiling ejbs using Ant 1.4/WL 5.1 SP8 (NT on dev Solaris on Prod and same happens on both) and am behind a firewall. Further I am using the dtd publicId tags: <dtd publicId="-//Sun Microsystems, Inc.//DTD Enterprise JavaBeans 1.1//EN" location="${project.home}/dtd/ejb-jar_1_1.dtd"/> <dtd publicId="-//BEA Systems, Inc.//DTD WebLogic 5.1.0 EJB RDBMS Persistence//EN" location="${project.home}/dtd/weblogic-rdbms-persistence.dtd"/> <dtd publicId="-//BEA Systems, Inc.//DTD WebLogic 5.1.0 EJB//EN" location="${project.home}/dtd/weblogic-ejb-jar.dtd"/> I receive an "Unrecognized publicId...." exception but it can find the file! I know this because if I change the file by adding say .fff to the filename I receive the "Could not resolve ..... to a local entity" exception so I am assuming it finds the local dtd file. I have also checked the publicIds in my deployment descriptors to ensure that the names match exactly. BTW I have tried using Ant 1.3 and a few 1.4 betas with the same results. Here is the error that I receive: [ejbjar] Unrecognized publicId -//BEA Systems, Inc.//DTD WebLogic 5.1.0 EJB R DBMS Persistence//EN - using EJB 1.1 compiler [ejbc] org.xml.sax.SAXException: Could not locate a local resource correspo nding to public Id -//BEA Systems, Inc.//DTD WebLogic 5.1.0 EJB RDBMS Persistenc e//EN. [ejbc] Is the XML DOCTYPE header correct? [ejbc] at weblogic.ejb.deployment.xml.EJBEntityResolver.resolveEntity(E JBEntityResolver.java:55) [ejbc] at com.sun.xml.parser.ExternalEntity.getInputSource(ExternalEnti ty.java:46) [ejbc] at com.sun.xml.parser.Parser.pushReader(Parser.java:2748) [ejbc] at com.sun.xml.parser.Parser.externalParameterEntity(Parser.java :2500) [ejbc] at com.sun.xml.parser.Parser.maybeDoctypeDecl(Parser.java:1136) [ejbc] at com.sun.xml.parser.Parser.parseInternal(Parser.java:480) [ejbc] at com.sun.xml.parser.Parser.parse(Parser.java:283) [ejbc] at weblogic.xml.dom.SunDOMParser.getDocument(SunDOMParser.java:6 9) [ejbc] at weblogic.xml.dom.DOMParser.getDocument(DOMParser.java:102) [ejbc] at weblogic.ejb.deployment.dd.DescriptorLoader.<init>(Descriptor Loader.java:152) [ejbc] at weblogic.ejbc.runBody(ejbc.java:310) [ejbc] at weblogic.utils.compiler.Tool.run(Tool.java:80) [ejbc] at weblogic.ejbc.main(ejbc.java:365) [ejbc] --------------- nested within: ------------------ [ejbc] Received SAXException from Sun Parser: org.xml.sax.SAXException: Cou ld not locate a local resource corresponding to public Id -//BEA Systems, Inc.// DTD WebLogic 5.1.0 EJB RDBMS Persistence//EN. [ejbc] Is the XML DOCTYPE header correct? [ejbc] at weblogic.xml.dom.SunDOMParser.getDocument(SunDOMParser.java:7 2) [ejbc] at weblogic.xml.dom.DOMParser.getDocument(DOMParser.java:102) [ejbc] at weblogic.ejb.deployment.dd.DescriptorLoader.<init>(Descriptor Loader.java:152) [ejbc] at weblogic.ejbc.runBody(ejbc.java:310) [ejbc] at weblogic.utils.compiler.Tool.run(Tool.java:80) [ejbc] at weblogic.ejbc.main(ejbc.java:365) [ejbc] ERROR: Received SAXException from Sun Parser: org.xml.sax.SAXExcepti on: Could not locate a local resource corresponding to public Id -//BEA Systems, Inc.//DTD WebLogic 5.1.0 EJB RDBMS Persistence//EN. [ejbc] Is the XML DOCTYPE header correct? BUILD FAILED E:\projects\Allogis\build.xml:197: Exception while calling weblogic.ejbc. Detail s: Ejbc reported an error