Tag: servlet

在提交响应后,是否可以从servletfilter转发或重定向?

逻辑是filter被击中,条件不成立,因此它通过filter链。 提交响应后,filter被命中,条件现在为真(设置了请求属性)。 它进入执行转发,但页面永远不会转发。 我知道这与提交的响应有关,因为我测试了它在第一次到达链之前转发的不同逻辑,并且它确实成功转发。 public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException { HttpServletRequest httpServletRequest = (HttpServletRequest)request; if (some condition equals true) { httpServletRequest.getRequestDispatcher(“/home.jsp”).forward(request, response); return; } else { chain.doFilter(request, response); } } 我的部署描述符示例: MyFilter com.filters.MyFilter MyFilter *.jsp REQUEST FORWARD

有没有办法从Java中的响应对象中读取cookie?

似乎HttpServletResponse没有公开任何方法来执行此操作。 现在,我正在为一个狡猾且不易理解的servlet添加一堆日志代码,试图找出它究竟是做什么的。 我知道它设置了一堆cookies,但我不知道何时,为什么或什么。 在servlet执行结束时只记录HttpServletResponse对象中的所有cookie会很好。 我知道cookie通常是浏览器的责任,我记得在.NET中无法做到这一点。 只是希望Java可能会有所不同…… 但如果这是不可能的 – 任何其他想法如何完成我正在尝试做的事情? 谢谢,一如既往。

RequestDispatcher.forward()和HttpServletResponse.sendRedirect()之间有什么区别?

RequestDispatcher的forward()和HttpServletResponse的sendRedirect()方法有什么区别? 任何人都可以用实时例子解释这些方法的示例和最佳用法吗?

servlet会话,注销后,当按下浏览器的后退按钮时,再次显示安全页面

我有一个servlet和一个HTML页面。 如何在注销后阻止用户点击浏览器的后退按钮? 我在stackoverflow中读过相同的问题,但答案是使用浏览器历史记录禁用java脚本或使用页面 – 在http标头中没有缓存。 我们如何使用阻止返回操作的servlet实现它,http-header没有缓存是无用的,因为Firefox表示页面在刷新安全页面两次后再次过期。 我已经完成了一个方法,示例方法只是为了尝试(不是真实的)我的用户名和密码从HTML页面发布到servlet,如果密码和用户名是正确的,servlet将其存储在会话中。 再次请求安全页面时,如果存在会话,则显示安全页面并且用户从登录页面显示的会话中注销所有正在工作的ID,除非用户点击浏览器的后退按钮时注销失败。 如何阻止安全servlet在注销后显示内容,然后在浏览器中按下后退按钮? welcome.html的src Username Password       servlet的src public class Sessionexample extends HttpServlet implements Servlet , Filter { private static final long serialVersionUID = 1L; public String username =null, password=null; public HttpSession session ; public PrintWriter pw; int do_get =0 ; /** * Default constructor. */ public […]

标准表单身份validationJava servlet

使用Java Servlets进行表单身份validation的标准方法是什么? 从现在开始,我使用一个简单的POST HTML表单实现了自己: 检查发送的参数对数据库 如果存在,将User对象保存到HttpSession中 检查每个Servlet是否存在此对象 如果不是:重定向到登录页面,并显示错误消息 但现在我偶然发现了如何使用Embedded Jetty配置安全性,现在我想我可以重用已经实现的解决方案来解决这个问题,但这里的标准方法是什么? 我自己在使用Jetty,但是Tomcat或其他Web服务器呢? 我还读到了j_security_check ,那是什么? 这是遗留方法吗?

使用Java在不同域上单一登录

我们正在跨多个应用程序实施单点登录[SSO],这些应用程序托管在不同的域和不同的服务器上。 现在如图所示,我们引入了一个Authenticate Server,它实际上与LDAP交互并对用户进行身份validation。 将使用/与Authenticate Server通信的应用程序托管在不同的服务器和域之间。 对于SSO,我不能使用会话变量,因为有不同的服务器和不同的应用程序,不同的域,域级cookie /会话变量没有帮助。 我正在寻找一个更好的解决方案,可用于跨越他们的SSO。 任何已证实的实施都存在? 如果是这样,请发布或指出我正确的方向。

是否可以从Java HTTPServletRequest中检索表单名称?

我想获取用于从Java HTTPServletRequest对象发布参数的表单的名称。 这可能吗。 我没有看到任何看起来会将它返回给我的方法。

servlet中的threadlocal变量

threadlocals变量是否对拥有变量的servlet的所有请求都是全局的? 我在服务器上使用树脂。 谢谢awnser。 我想我可以让自己更清楚。 具体案例: 我要: 请求开始执行时初始化静态变量。 能够以线程安全的方式在从servlet调用的方法的进一步执行中查询变量的值,直到请求结束执行

用于浏览器缓存的Servletfilter?

有谁知道如何编写一个servletfilter,它将在给定文件/内容类型的响应上设置缓存头? 我有一个提供大量图像的应用程序,我想通过让浏览器缓存那些不经常更改的浏览器来减少托管它的带宽。 理想情况下,我希望能够指定内容类型,并在内容类型匹配时设置适当的标头。 有谁知道怎么做这个? 或者,更好的是,他们愿意分享示例代码? 谢谢!

为什么(javax.servlet。)不推荐使用SingleThreadModel?

为什么不推荐使用javax.servlet.SingleThreadModel ?