这是我的xml文件
<?xml version="1.0" encoding="utf-8"?>
<settings></settings>
我的方法如下所示
public void load( String fileName ) {
...
Document xmlDocument = null;
DocumentBuilderFactory dbFactory = DocumentBuilderFactory.newInstance();
DocumentBuilder builder = null;
try
{
builder = dbFactory.newDocumentBuilder();
xmlDocument = builder.parse(new File (fileName));
}
catch( Exception e )
{
Log.write(e);
}
...
}
当我调用我的方法时,我收到以下内容:
[task] org.xml.sax.SAXParseException: Premature end of file.
[task] at com.sun.org.apache.xerces.internal.parsers.DOMParser.parse(DOMParser.java:249)
[task] at com.sun.org.apache.xerces.internal.jaxp.DocumentBuilderImpl.parse(DocumentBuilderImpl.java:284)
[task] at javax.xml.parsers.DocumentBuilder.parse(DocumentBuilder.java:208)
[task] at MyClass.load(MyClass.java:49)
我完全糊涂了。
感谢任何想法。
-Cyril
答案 0 :(得分:2)
问题。 struts.xml文件中必须包含以下行。
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
"http://struts.apache.org/dtds/struts-2.0.dtd">
必须在sturts.xml文件中的<package>
标记内写入和<struts>
标记。
答案 1 :(得分:0)
确保内容类型content-type:text/xml; charset=utf-8