i am developing a project using jsp & servlet.
i want*create a xml from result set using document builder but when the servlet is executed it displays the Http Status 500 error
*
tell me what to do . where to place that xml file
*
is there other for writing result set data as xml
below is the code that* does not work
*
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
Document mapDoc;
Document dataDoc=null;
String XmlFileName=request.getParameter("filename");
DocumentBuilder db;
DocumentBuilderFactory dbf=DocumentBuilderFactory.newInstance();
System.out.println(XmlFileName);
try {
db=dbf.newDocumentBuilder();
mapDoc=db.parse(XmlFileName);
dataDoc=db.newDocument();
} catch (ParserConfigurationException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (SAXException e) {
// TODO Auto-generated catch block
System.out.println("sax");
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
System.out.println("IO ->");
e.printStackTrace();
}
Connection con;
Statement st;
ResultSet rs;
ResultSetMetaData rsd=null;
Element DocRoot=null;
String query="select * from StationarRequest";
try {
Class.forName(DbConnect.getDriverName());
con=DriverManager.getConnection(DbConnect.getDsnName(),DbConnect.getUid(),DbConnect.getPwd ());
st=con.createStatement();
rs=st.executeQuery(query);
rsd=rs.getMetaData();
DocRoot=dataDoc.createElement("StationaryDb");
while(rs.next())
{
Element row=dataDoc.createElement("Stationary");
for(int i=0;i<rsd.getColumnCount();i++)
{
String colName=rsd.getColumnName(i);
String colType=rsd.getColumnTypeName(i);
System.out.println(colType);
String colValue="";
if(colType.equals("String"))
{
colValue=rs.getString(i);
}
else if(colType.equals("int"))
{
colValue=rs.getInt(i)+"";
}
else if(colType.equals("float"))
{
colValue=rs.getFloat(i)+"";
}
else if(colType.equals("double"))
{
colValue=rs.getDouble(i)+"";
}
Element DataCol=dataDoc.createElement(colName);
DataCol.appendChild(dataDoc.createTextNode(colValue));
row.appendChild(DataCol);
}
DocRoot.appendChild(row);
}
} catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
System.out.println("class");
e.printStackTrace();
} catch (SQLException e) {
// TODO Auto-generated catch block
System.out.println("sql");
e.printStackTrace();
}
dataDoc.appendChild(DocRoot);
System.out.println("The Result Set is written into XML File");
}