我的jsp代码遇到了一些问题。这是代码[Get_Values.java]:
public class Get_values {
public void doPost(HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException {
response.setContentType("text/html");
PrintWriter out = response.getWriter();
String msisdn = request.getParameter("msisdn");
temp = new Test().parseXml();
out.println("<b><font color='blue'>MSISDN :</font></b>" + "<b>" + temp[0] + "</b>" + "<br>");
}
}
这是Test.java的代码
public class Test {
public String [] temp= new String [50];
public String [] parseXml() {
SAXParser sp = factory.newSAXParser();
sp.parse("test.xml", handler);
DefaultHandler handler = new DefaultHandler() {
public void startElement(String uri, String localName, String qName, Attributes attributes) throws SAXException {
if (qName.equalsIgnoreCase("location")) {
nodeName = attributes.getValue(qName);
}
}
public void endElement(String uri, String localName, String qName) throws SAXException {
if (qName.equalsIgnoreCase("x")) {
temp[0] = value;
} else if (qName.equalsIgnoreCase("y")) {
temp[1] = value;
} else if (qName.equalsIgnoreCase("z")) {
temp[2] = value;
}
}
public void characters(char ch[], int start, int length) throws SAXException {
value = new String(ch, start, length);
}
};
return temp;
}
}
但是当我执行“Get_values.war”文件时,temp的值总是返回null。但是当我执行java程序时,它的工作正常。我认为执行war文件时没有正确读取“test.xml”。可能是什么原因?我应该在我的jsp程序中明确包含该文件吗?
答案 0 :(得分:0)
终于有效了。这是因为路径问题。我必须给出完整的路径。
C:\\xampp\\tomcat\\webapps\\Location_API\\WEB-INF\\classes\\location\\test.xml
它有点像魅力。谢谢你宝贵的时间。 :)