关于JSP生成XML文件的问题!!急。在线等。

KuKluxKlan 2005-08-06 02:02:42
我写了一个页面生成XML。使用的是JDOM1.0包,在页面上却无法调用
Format format0 = Format.getCompactFormat();
format0.setEncoding("gb2312"); //设置xml文件的字符为gb2312
format0.setIndent(" ");

我需要在XML文件中设置为
<?xml version="1.0" encoding="GB2312"?>
请问有人解决过这样的问题么?
...全文
357 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
KuKluxKlan 2005-08-08
  • 打赏
  • 举报
回复
哦。我试试。谢谢楼上的兄弟先。
KuKluxKlan 2005-08-08
  • 打赏
  • 举报
回复
呵呵。生成XML没问题了。不过我是用的别的方法。还是谢谢楼上的2位~
KuKluxKlan 2005-08-08
  • 打赏
  • 举报
回复
不好意思。楼上的兄弟。还是有问题。。
jFresH_MaN 2005-08-07
  • 打赏
  • 举报
回复
原来你是这个异常。这个和JDOM就真的没有关系了。

你到TOMCAT_HOME/logs里面看一下日志,看看真正的异常是什么。

确定你写其他JSP是否有问题,如果简单的页面也出现这个问题,就需要把JAVA_HOME/lib/tools.jar放在TOMCAT_HOME/lib里面

crazycy 2005-08-07
  • 打赏
  • 举报
回复
Result result = new StreamResult(file);
Transformer xformer = TransformerFactory.newInstance().newTransformer();
Properties properties = xformer.getOutputProperties();
properties.setProperty(OutputKeys.ENCODING, "GB2312");
xformer.setOutputProperties(properties);
xformer.transform(source, result);


一般都是这样来处理的
KuKluxKlan 2005-08-07
  • 打赏
  • 举报
回复
顶上去。有没有朋友能帮忙解答一下啊。
KuKluxKlan 2005-08-07
  • 打赏
  • 举报
回复
呵呵。谢谢上面的兄弟。异常是这样的。
Compile failed; see the compiler error output for details.
at org.apache.tools.ant.taskdefs.Javac.compile(Javac.java:844)
at org.apache.tools.ant.taskdefs.Javac.execute(Javac.java:682)
at org.apache.jasper.compiler.Compiler.generateClass(Compiler.java:317)
at org.apache.jasper.compiler.Compiler.compile(Compiler.java:370)
at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:473)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:190)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:295)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:241)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:247)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:193)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:256)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
at org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2416)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:180)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
at org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherValve.java:171)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:172)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:174)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
at org.apache.coyote.tomcat4.CoyoteAdapter.service(CoyoteAdapter.java:223)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:601)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:392)
at org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:565)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:619)
at java.lang.Thread.run(Thread.java:534)
jFresH_MaN 2005-08-06
  • 打赏
  • 举报
回复
你一直说一调用就有问题,你得把具体的异常贴出来啊
不然怎么都解决不了啊。。。
KuKluxKlan 2005-08-06
  • 打赏
  • 举报
回复
XMLOutputter XMLOut = new XMLOutputter(format0);
这行代码我知道的。但是我只要把Format format0 = Format.getCompactFormat();加入到jsp代码中就不能用了。编译的时候没问题。但只要一调用页面就出问题。
是不是我的JDOM包有问题呢?
我是在http://jdom.org上下载的jdom1.0版。
jFresH_MaN 2005-08-06
  • 打赏
  • 举报
回复
XMLOutputter XMLOut = new XMLOutputter(format0);
你的没有把Format传进去怎么按照你的格式打印呢?

我看代码上没什么其他问题啊,是报编译错误?
那么我刚才试了一下,没有编译错误啊。。
KuKluxKlan 2005-08-06
  • 打赏
  • 举报
回复
代码入下:
<%@ page contentType="text/html; charset=gb2312" %>
<%@page import="org.jdom.*"%>
<%@page import="org.jdom.output.*"%>
<%@page import="org.jdom.input.*"%>
<%@page import="java.*"%>
<%@page import="java.sql.*"%>
<%@page import="java.io.*"%>
<jsp:useBean id="bean" scope="page" class="test.test1">
</jsp:useBean>
<%
String ids="";
try{ids=request.getParameter("ids");ids=null==ids?"":ids;}catch(Exception e){ids="";}
ResultSet rs=null;
Element root, UploadType, Table;
root = new Element("Delete");
Table = new Element("Table");
Document doc = new Document(root);
rs=bean.getRs(ids);
while(rs.next()){
Element Record = new Element("Record");
Element _1_CLZTXX = new Element("_1_CLZTXX").setText(txfs);
Element _2_ZCHGZBH = new Element("_2_ZCHGZBH").setText(rs.getString("hgzbh"));
......
Record.addContent(_1_CLZTXX);
Record.addContent(_2_ZCHGZBH);
......
Table.addContent(Record);
}
root.addContent(Table);
try{
Format format0 = Format.getCompactFormat();
format0.setEncoding("gb2312"); //设置xml文件的字符为gb2312
format0.setIndent(" ");
XMLOutputter XMLOut = new XMLOutputter();
XMLOut.output(doc, new FileOutputStream("c:\\data.xml"));
}
catch(Exception e){
e.printStackTrace();
}
if(rs!=null){rs.close();}
......
%>
<html>
<head>
.
.
.
.

只要调用Format format0 = Format.getCompactFormat();编译没问题。但是当打开这个页面就会报编译错误了。
jFresH_MaN 2005-08-06
  • 打赏
  • 举报
回复
从你的代码上来看是没有问题的啊

你出现的是什么异常?我觉得跟这个没有关系

67,513

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧