你看看你的堆栈里面说明是使用weblogic.ejb20,使用ejb2.0解析,
但是你的dtd却是使用1.1版本的,改为:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE ejb-jar PUBLIC "-//Sun Microsystems, Inc.//DTD Enterprise JavaBeans 2.0//EN" "http://java.sun.com/dtd/ejb-jar_2_0.dtd">

解决方案 »

  1.   

    又出现这个错误
    C:\work\hello>java weblogic.ejbc -compiler javac build\std_myfirstejb_hello.jar
    build\myfirstejb_hello.jar
    org.xml.sax.SAXParseException: The up in the document preceding the root ele
    ment must be well-formed.
            at weblogic.apache.xerces.framework.XMLParser.reportError(XMLParser.java
    :1008)
            at weblogic.apache.xerces.framework.XMLDocumentScanner.reportFatalXMLErr
    or(XMLDocumentScanner.java:625)
            at weblogic.apache.xerces.framework.XMLDocumentScanner$XMLDeclDispatcher
    .dispatch(XMLDocumentScanner.java:804)
            at weblogic.apache.xerces.framework.XMLDocumentScanner.parseSome(XMLDocu
    mentScanner.java:380)
            at weblogic.apache.xerces.framework.XMLParser.parse(XMLParser.java:900)
            at weblogic.xml.process.ProcessorDriver.process(ProcessorDriver.java:128
    )
            at weblogic.ejb20.dd.xml.EjbJarLoader_EJB20.process(EjbJarLoader_EJB20.j
    ava:919)
            at weblogic.ejb20.dd.xml.DDUtils.loadDeploymentDescriptor(DDUtils.java:7
    4)
            at weblogic.ejb20.dd.xml.DDUtils.loadDeploymentDescriptor(DDUtils.java:4
    7)
            at weblogic.ejb20.dd.xml.DDUtils.loadDeploymentDescriptor(DDUtils.java:3
    8)
            at weblogic.ejbc20.runBody(ejbc20.java:665)
            at weblogic.utils.compiler.Tool.run(Tool.java:81)
            at weblogic.ejbc.main(ejbc.java:20)
    --------------- nested within: ------------------
    weblogic.xml.process.XMLParsingException: The up in the document preceding t
    he root element must be well-formed. - with nested exception:
    [org.xml.sax.SAXParseException: The up in the document preceding the root el
    ement must be well-formed.] Line: 1 Column: 1
            at weblogic.xml.process.ProcessorDriver.process(ProcessorDriver.java:132
    )
            at weblogic.ejb20.dd.xml.EjbJarLoader_EJB20.process(EjbJarLoader_EJB20.j
    ava:919)
            at weblogic.ejb20.dd.xml.DDUtils.loadDeploymentDescriptor(DDUtils.java:7
    4)
            at weblogic.ejb20.dd.xml.DDUtils.loadDeploymentDescriptor(DDUtils.java:4
    7)
            at weblogic.ejb20.dd.xml.DDUtils.loadDeploymentDescriptor(DDUtils.java:3
    8)
            at weblogic.ejbc20.runBody(ejbc20.java:665)
            at weblogic.utils.compiler.Tool.run(Tool.java:81)
            at weblogic.ejbc.main(ejbc.java:20)
    ERROR: weblogic.xml.process.XMLParsingException: The up in the document prec
    eding the root element must be well-formed. - with nested exception:
    [org.xml.sax.SAXParseException: The up in the document preceding the root el
    ement must be well-formed.] Line: 1 Column: 1
      

  2.   

    兄弟,看看你的xml文件写齐了吗或者夹着其他字符或标签
      

  3.   

    去下载这个文件
    http://java.sun.com/dtd/ejb-jar_2_0.dtd
    用文本编辑器打开
    然后你可以看看,是不是按照上面要求的格式去写的部署文件