Tag: 请求

jsp:useBean范围

JSP代码是: Name : Surname : 虽然我在request范围中设置了java对象,而不是在Controller Servlet中的session范围中,我将请求转发给此Servlet。 虽然标记中提到的作用域是会话,但如何获取请求属性? 如果它使用pageContext.findAttribute()来获取属性,那么在标记中使用scope属性有什么用?

在java中使用request.getParameter()时为什么字符被破坏?

我在JSP页面中有这样一个链接,编码为big5 http:// hello / world?name =婀ㄉ当我在浏览器的URL栏中输入它时,它将被改为http:// hello / world?name = %23%24%23当我们想在jsp页面中获取此参数时,所有字符都已损坏。 我们设置了这个:request.setCharacterEncoding(“UTF-8”),因此所有请求都将转换为UTF8。 但为什么在这种情况下,它不起作用? 提前致谢!。

IllegalStateException:AsyncContext.startAsync(req,res)不支持

我创建了一个servlet 3.0来探索异步请求处理: @WebServlet(name=”MyTest”, urlPatterns={“/MyTest”}, asyncSupported=true) public class MyTest extends HttpServlet { @Override public void doGet(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException { AsyncContext tmp = req.startAsync(req, res); … } } 但是当.startAsync(…)时,我得到一个IllegalStateException 。 我知道Javadoc提到了exception,但我明确地启用了异步(cf WebServlet注释)。 我正在使用随NetBeans提供的Tomcat 7.0.11.0。 我可以确认req.isAsyncSupported()返回false。 我究竟做错了什么? 我还需要做什么来启用异步处理? 编辑: 我试图实现以下示例并得到相同的问题。

java tomcat utf-8编码问题

我正在使用java / jsp / tomcat / mysql开发一个简单的Web应用程序,最大的问题在于字符编码,因为我需要处理UTF-8编码而不是默认的8851。 首先,我想描述一下我的程序结构。 我正在使用一个名为Controller.java的Servlet来处理所有请求。 所以在web.xml中,我有一个Controller servlet,它接受来自* .do的所有请求。 然后,此Controller将根据请求的URL分派请求,例如,如果客户端要求register.do,Controller将把请求分派给Register.java。 在Register.java中,有一个方法将请求作为参数,即: public String perform(HttpServletRequest request) { do something with the request… } 所以问题是如果我想在这个方法中用UTF-8打印一些东西,它会给出随机字符。 例如,我有一个存储几个常量的枚举,其中一个属性是Enum在繁体中文中的名称。 如果我打印出来的话 public static void main(Stirng[] args{ System.out.println(MyEnum.One.getChn()); logger.info(MyEnum.One.getChn()); } 这是用中文正确打印的。 但是,如果我将确切的代码放在处理HttpServletRequest的方法中: public String perform(HttpServletRequest request) { System.out.println(MyEnum.One.getChn()); logger.info(MyEnum.One.getChn()); } 它们作为随机字符打印,但我可以从调试窗口(eclipse)看到变量保存正确的中文字符。 因此,当我想存储来自request.getParameter()的值时,会发生同样的情况。 在调试窗口中,我可以看到变量保存了正确的字符,但我将其打印出来或尝试将其存储在数据库中,它是随机字符。 我不知道为什么行为会像这样,这阻止我阅读提交的表单值并将它们存储到数据库中。 有人可以给出一些暗示吗? 万分感谢。

如何在java中发送带有post参数的简单http post请求

我需要一个简单的代码示例,发送带有从表单输入获得的post参数的http post请求。 我找到了Apache HTTPClient,它有很多API和许多复杂的例子,但我找不到一个简单的例子,用输入参数发送http post请求并获得文本响应。 更新:我对Apache HTTPClient v.4.x感兴趣,因为不推荐使用3.x.

如何避免请求设置ASYNC_SUPPORTED = true以在Tomcat 7上启用异步servlet 3.0处理?

在报告此问题后 ,找到了一个解决方案: req.setAttribute(“org.apache.catalina.ASYNC_SUPPORTED”, true); 这看起来有点奇怪,并不是真正的“便携式”代码(它不会受到伤害,但……)。 它似乎特定于Tomcat 7.我使用的是NetBeans 7.0.1提供的Tomcat 7.0.14。 我找不到文档,表明有必要在servlet 3.0中使用catalina属性启用异步请求处理。 我找不到文档,表明在Tomcat配置级别也需要特殊的东西。 有没有办法避免在每个请求中设置ASYNC_SUPPORTED=true以在Tomcat 7中启用异步servlet 3.0处理?

通过重定向到Action保留所有请求参数

在更新页面中的记录后,我需要使用更新的消息(成功/失败)填充记录。 这两个动作来自同一页面。 我已将代码添加为,在完成Update操作后,将结果类型添加为Chain,并显示成功消息。 但是在更新操作完成后立即点击搜索(第一次)时它不会消失。 帮助我在点击搜索操作时清除消息。 由于上述问题,我在结果类型中使用了重定向选项。 但我可以在重定向的操作中获取请求参数。 除了硬编码之外,还有什么办法可以将所有请求参数都放在重定向的动作中吗? STORE RETRIEVE hierUpdateMDA true hierarchyUpdate{1} hierarchyUpdate{1} 有没有办法动态地将参数发送到下一个动作而无需在struts.xml中进行硬编码?

struts2文件上传松动参数

使用Struts 2.3.15.1 在struts2中实现文件上传。 这是我已经多次做过的事情,但是,我试图包括一些健全性检查(主要是最大文件大小)。 我将fileUpload拦截器作为我的堆栈中的最后一个拦截器(即struts.xml )。 我的堆栈包括一些内部拦截器以及validationWorkflowStack 。 我在struts.properties文件中设置了以下属性: struts.multipart.maxSize = 2000000 除了文件上传之外,我还在表单中传递了一些其他参数。 表格定义为: …. 我相信大家都知道, validationWorkflowStack包含了params拦截器,它将请求参数设置为动作。 这是问题,当上传的文件超过maxSize时 , params拦截器没有设置的参数 。 我已经介入了,而actionContext中没有任何内容。 这不好,因为我需要那些参数来处理将导致的INPUT错误。 我错过了什么吗?