浏览 10170 次
该帖已经被评为新手帖
|
|
---|---|
作者 | 正文 |
发表时间:2007-02-28
PageContext pageContext=(PageContext)getServlet().getServletContext(); 这样获取老是出错,不明白。 我的意图是想在后台处理后,在前台显示提示信息。 从而写了一个showMessage方法: public static void showMessage( Writer out, String msg ) throws IOException { out.write( "<script language=\"javascript\">" ); out.write( "alert(\"" + msg + "\");" ); out.write( "</script>" ); } Action调用 PageContext pageContext=(PageContext)getServlet().getServletContext(); HtmlUtil.showMessage(pageContext.getOut(), "hello"); 问题是pageContext获取不到,请教解决? 如何有别的方法,希望给点意见。 现在pageContext已经获得 JspFactory _jspxFactory = null; PageContext pageContext = null; _jspxFactory = JspFactory.getDefaultFactory(); pageContext = _jspxFactory.getPageContext(getServlet(), request, response, "", true, 8192, true); HtmlUtil.showMessage(pageContext.getOut(), "hello"); 但是没有达到预期的效果,脚本没有输出到页面上? 为什么呢? 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |
发表时间:2007-02-28
ServletContext和PageContext是两个不同的概念吧……
pageContext是用在jsp中,主要是用到标签类中,PageContext extends JspContext to provide useful context information for when JSP technology is used in a Servlet environment 而ServletContext则是servlet中使用,它只是一个接口。Defines a set of methods that a servlet uses to communicate with its servlet container, for example, to get the MIME type of a file, dispatch requests, or write to a log file。 The ServletContext object is contained within the ServletConfig object, which the Web server provides the servlet when the servlet is initialized |
|
返回顶楼 | |
发表时间:2007-02-28
你好像根本没明白PageContext 是什么东西吧???
HtmlUtil.showMessage(response.getWriter(), "hello"); |
|
返回顶楼 | |
发表时间:2007-02-28
可能是我理解错了,我的想法是获得那个page里面的writer,写入脚本。
现在问题是如果我想后台向前台输出一段javascript脚本,如何实现那? 类似asp.net中的Response.write("script"); |
|
返回顶楼 | |
发表时间:2007-02-28
输入脚本不如转向那个包含错误信息脚本的页面,然后再从那个页面转向别的页面
|
|
返回顶楼 | |
发表时间:2007-02-28
恩,实在没办法也只能这样了
|
|
返回顶楼 | |
发表时间:2007-02-28
楼主的意思是在action中判断后发送信息到客户端吧
我是这样在Action中实现的 StringBuilder js = new StringBuilder("<script language='JavaScript' type='text/JavaScript'>") .append("alert('请先登录.');") .append("window.history.back();") .append("</script>"); response.setContentType("text/plain;charset=UTF-8"); response.getWriter().write(js.toString()); return null; |
|
返回顶楼 | |
发表时间:2007-02-28
页面就是页面,就算只有脚本也是页面,我还是推崇转向页面的方法。可以把message和转向地址写到request里面,然后在那个script页面上判断一下
|
|
返回顶楼 | |
发表时间:2007-02-28
刑天战士 写道 页面就是页面,就算只有脚本也是页面,我还是推崇转向页面的方法。可以把message和转向地址写到request里面,然后在那个script页面上判断一下
用ajax就好办了撒,不用ajax转向页面可能需要做一些“多余”的初始化操作,用了就干净了,该怎么提示就怎么提示,呵呵 |
|
返回顶楼 | |
发表时间:2007-02-28
谢谢各位支持
|
|
返回顶楼 | |