如何将Glassfish服务器输出重定向到HttpServletResponse.out?我在NetBeans中制作servlet。将Glassfish输出写入servlet html页面
回答
所以..只打印这似乎调用脚本我做了这样的代码后行:
BufferedReader reader = new BufferedReader(new FileReader("/path/to/server/log/server.log"));
int lines = 0;
while (reader.readLine() != null) {
lines++;
}
reader.close();
BufferedReader reader2 = new BufferedReader(new FileReader("/path/to/server/log/server.log"));
String strLine;
int i = 0;
while (i != lines) {
reader2.readLine();
i++;
}
while ((strLine = reader2.readLine()) != null) {
out.println(stringToHTMLString(strLine));
out.println("<br>");
}
reader2.close();
当servlet的开始它计算在服务器日志行(将其保存在变量i),然后点击动作表单后,它会读取索引高于i的行并将其显示在html页面上。我用函数stringToHTMLString,我发现在stackoverflow上的某处。
迎接。
这里是一个工作的例子,只是暴露此作为一个servlet
public class ReadLogs extends HttpServlet {
private static final String CONTENT_TYPE = "text/html; charset=UTF-8";
public void init(ServletConfig config) throws ServletException {
super.init(config);
}
public void service(HttpServletRequest request,
HttpServletResponse response) throws ServletException,
IOException {
response.setContentType(CONTENT_TYPE);
PrintWriter out = response.getWriter();
out.append("<html>\n<head>\n\n");
out.append("<script>function toBottom()" + "{"
+ "window.scrollTo(0, document.body.scrollHeight);" + "}");
out.append("\n</script>");
out.append("\n</head>\n<body onload=\"toBottom();\">\n<pre>\n");
try {
File file = new File("C:\\pathToServerLogFile");
BufferedReader in = new BufferedReader(new FileReader(file));
StringBuilder sb = new StringBuilder();
while (in.ready()) {
String x = in.readLine();
sb.append(x).append("<br/>");
}
in.close();
out.append("\n</pre>\n</body>\n</html>");
out.close();
} catch (FileNotFoundException fnfe) {
fnfe.printStackTrace();
} catch (IOException ioe) {
ioe.printStackTrace();
}
}
}
UPDATE
如果需要只打印文件使用的最后一部分这一行后“in.close ();”
//print only 1MB Oof data
if(sb.length()>1000000){
out.append(sb.substring(sb.length()-1000000, sb.length()));
}else{
out.append(sb.toString());
}
谢谢。我在我的主要java文件中粘贴了这段代码,然后在doPost方法的末尾,我写了 ReadLogs read = new ReadLogs(); read.service(request,response); 但是在jsp/servlet页面没有新的输出。第二件事是我不想打印整个.log文件,因为它会打印多天来的所有信息,而我只想从调用servlet的momemnt获取信息。映入眼帘。 – user15683854875644328975643872 2012-08-17 09:53:00
把它部署为Servlet – MaVRoSCy 2012-08-17 16:08:04
好吗?你做到了吗? – MaVRoSCy 2012-08-22 21:08:26
- 1. 将google的结果写入html页面
- 2. 从servlet打印/输出jsp页面
- 3. 将ASP.NET aspx页面输出写入服务器端磁盘
- 4. 使用servlet将Javascript注入到每个HTML页面中Filter
- 5. 将新行写入输出
- 6. 将JSON输出到页面
- 7. Java Servlet写入CSV格式的输入
- 8. document.write in html/php doc写入新页面
- 9. HTML页面中的数组输出
- 10. 将外部页面html插入页面html
- 11. 将MySQL输出写入文件
- 12. 的Servlet 3.0包含HTML页面
- 13. 导入从HTML页面JSONP数据,然后输出到CSV
- 14. 在asp.net中将html页面写入pdf文件
- 15. 使用Javascript将文件内容写入HTML页面
- 16. 将WPF输出写入图像文件
- 17. 将Nokogiri输出写入文本文件
- 18. 在每个页面的html输入中添加页面编号
- 19. 如何将此代码的输出写入HTML文件?
- 20. 将Smarty模板输出写入静态HTMl文件
- 21. python BeautifulSoup如何将输出写入html文件
- 22. 将python脚本的输出写入到CGI的HTML
- 23. 寻找.net记录器,将输出保存为html页面
- 24. 不知道如何将Javascript的输出定位到HTML页面
- 25. 在页面加载时将焦点设置为HTML输入框
- 26. 无法将输入字段集中在HTML页面中
- 27. 将输入写入节点js中的输出文本
- 28. 将Spark Streaming输出写入套接字
- 29. 将输出流写入新窗口
- 30. Symfony将进程输出写入文件
你想在jsp/servlet页面中显示服务器日志文件吗? – MaVRoSCy 2012-08-16 14:39:37