0 0

jsp页面抓取request里的参数是乱码5

在一个表单里面输入汉字,然后在请求页面通过request.getParameter()得到的是乱码
String name = request.getParameter("username");
name = new String(name.getBytes("ISO-8859-1"),"big5");//这句如果注释掉,name可以抓到值,只不过是乱码,如果不注释,就抱错

下面是后台报错信息

严重的:Servlet.service() for Servlet ISP threw exception
java.lang.NullPointerException
               at org.apache.jsp.ecn.select_005fuser_jsp._jspService(select_005fuser_jsp.java:116)
               at......

以前都是这样处理乱码的,这次却不行,真纠结
我们公司用的都是繁体系统,我所有的页面pageEncoding="utf-8"
请大家帮看下,非常感谢
2012年8月22日 08:32

7个答案 按时间排序 按投票排序

0 0

采纳的答案

1、从你的错误可以看到是空指针,如果你用tomcat,请到:
apache-tomcat-6.0.20\work\Catalina\localhost\web应用\org\apache\jsp\jsp\

下找到 select_005fuser_jsp.java    定位 116行 看看到底哪个造成的空指针。

2012年8月22日 08:49
0 0

NullPointerException 的情况,建议去看看Tomca编译后的java文件。

2012年8月23日 09:03
0 0

估计前台和后台发送的格式不统一
加个过滤器吧

@Override
	protected void doFilterInternal(
			HttpServletRequest request, HttpServletResponse response, FilterChain filterChain)
			throws ServletException, IOException {
		if (StringUtils.contains(request.getRequestURI(), "/pay/refundReturn/")) {
			request.setCharacterEncoding("GBK");
		} else {
			if (this.encoding != null && (this.forceEncoding || request.getCharacterEncoding() == null)) {
				request.setCharacterEncoding(this.encoding);
				if (this.forceEncoding) {
					response.setCharacterEncoding(this.encoding);
				}
			}
		}
		filterChain.doFilter(request, response);
	}

2012年8月22日 17:53
0 0

1.用utf-8..
2.乱码是什么形式的?没猜错的话用utf后是??????这样的乱码..
3.你确定是post?


4.<Connector port="80" protocol="HTTP/1.1"
               connectionTimeout="20000"
               redirectPort="8443" URIEncoding="utf-8"/>

5.换个tomcat试试....你看看你定义的编码拦截器是否正确...struts2..自己有个拦截器


2012年8月22日 13:47
0 0

这种诡异的问题,果断换个web容器试试

2012年8月22日 10:44
0 0

你注释掉重新构建一下你的项目,要clean一下。

2012年8月22日 09:43
0 0

1. IE 字体编码是否是GB2312 工具栏-查看-编码
2. 换成utf-8试了吗?
name = new String(name.getBytes("ISO-8859-1"),"utf-8");

3. 如果是get 方式提交 ,Tomcat  server.xml  最好 加一个URIEncoding 属性:

<Connector port="80" protocol="HTTP/1.1"
               connectionTimeout="20000"
               redirectPort="8443" URIEncoding="utf-8"/>

2012年8月22日 08:55

相关推荐

    解决jsp页面乱码

    解决jsp页面乱码,页面信息配置,tomcat配置以及各种信息配置

    JSP利用过滤器解决request中文乱码问题.docx

    在上面的JSP页面中,我们设置了页面的字符编码为GB2312,并使用request.getParameter()方法读取参数。如果过滤器正确地设置了字符编码,那么中文字符将被正确地读取。 使用过滤器解决request中文乱码问题是JSP中...

    JSP页面中文乱码几个解决办法

    当通过POST方式提交表单数据到JSP或Servlet时,如果接收的中文参数值乱码,可以在处理请求的代码之前,使用`request.setCharacterEncoding("GBK")`来设置请求参数的编码格式。这通常应在读取参数之前进行,以确保...

    JSP用过滤器解决request getParameter中文乱码问题.docx

    在这个JSP页面中,我们使用`request.getParameter("data")`获取名为"data"的参数,并将其打印出来。如果过滤器配置正确,那么中文参数应该能够正确显示,而不会出现乱码。 总的来说,通过在过滤器中设置合适的字符...

    对jsp两个页面间传递变量出现变量乱码的解决

    在JSP开发中,数据的传递是常见的操作,但当涉及不同页面间的变量传递时,可能会遇到乱码问题,这主要是由于字符编码不一致导致的。本文将详细介绍如何解决JSP页面间传递变量时出现的乱码问题。 首先,我们来看方案...

    jsp页面传值中文乱码问题处理.docx

    jsp页面传值中文乱码问题处理 在 JSP 页面中传值时,中文字符可能会出现乱码问题,这...JSP 页面传值中文乱码问题可以通过修改编码方式、设置输出编码、接收参数编码、Get 提交编码和数据库连接参数编码等方式来解决。

    jsp页面提交乱码问题

    ### jsp页面提交乱码问题解析 #### 一、乱码问题概述 在进行Web开发时,特别是使用Java Server Pages (JSP)技术时,经常会遇到表单提交数据出现乱码的问题。这个问题主要出现在从客户端(如浏览器)提交的数据到...

    如何解决JSP页面显示乱码问题

    ### 如何解决JSP页面显示乱码问题 在JSP(Java Server Pages)开发中,中文乱码问题一直是开发者常见的挑战之一。这类问题通常源于不同的编码格式不一致导致的字符集冲突。本文将针对JSP页面显示乱码、表单提交中文...

    jsp页面乱码处理

    ### jsp页面乱码处理全解析 在进行Web开发时,尤其是使用JSP技术栈时,乱码问题是一个常见的困扰,它可能出现在页面显示、表单提交或数据库交互等多个环节。本文将根据“jsp页面乱码处理”的标题与描述,深入解析...

    jsp编码 jsp乱码

    jsp编码 jsp乱码解决方案 ...通过设置pageEncoding参数、contentType参数、request.setCharacterEncoding方法和response.setCharacterEncoding方法等,可以解决jsp页面中的乱码问题,提高Web应用程序的用户体验。

    Jsp页面在URL中传递参数会出现乱码问题解决

    本文将详细介绍两种解决JSP页面URL参数乱码的方法,虽然不能保证100%有效,但它们是实践中常用且有效的解决方案。 **方法一:修改Tomcat配置** 1. 首先,我们需要进入Tomcat服务器的配置目录,通常是`$CATALINA_...

    解决jsp页面中文乱码问题

    在开发Web应用时,我们经常会遇到JSP页面中文乱码的问题。这主要涉及到字符编码的设置和处理。本文将深入探讨如何解决这个问题,确保在JSP页面中正确显示中文字符。 首先,我们需要理解字符编码的基本概念。在...

    jsp中request中的使用获取参数

    假设你的JSP页面接收了一个名为`username`的参数,你可以如下所示获取它: ```jsp String username = request.getParameter("username"); ``` 如果`username`参数不存在,`getParameter()`将返回`null`。如果你期望...

    5种JSP页面显示为乱码的解决方法

    3. JSP接收Form/Request参数时显示为乱码 解决方法与Servlet类似,同样需要在JSP页面中处理请求的编码: ```jsp &lt;% request.setCharacterEncoding("GBK"); %&gt; ``` 或者在Servlet中处理后再转发到JSP页面。 4. ...

    j2ee13:jsp02,request对象,中文乱码处理,url传参

    这段代码设置了JSP页面的字符集为UTF-8,确保输出不会出现乱码。对于`request`对象,可以使用`setCharacterEncoding()`方法来指定请求的字符编码,如: ```java request.setCharacterEncoding("UTF-8"); ``` 这个...

    jsp页面调用js,弹出信息乱码

    ### jsp页面调用js,弹出信息乱码 #### 问题概述 在JSP页面中调用JavaScript进行弹窗提示时出现乱码问题是一种常见的现象。这种情况通常发生在需要显示中文或其他非ASCII字符的情况下。本篇文章将深入探讨该问题的...

    Jsp页面中的字符编码方式与乱码解决方法

    JSP 页面中的字符编码方式与乱码解决方法 在 JSP 中,字符编码方式的设置是非常重要的,因为它直接影响着页面的显示效果。如果不正确地设置字符编码方式,可能会出现乱码问题。下面我们将详细介绍 JSP 中的字符编码...

    JSP页面传参出现中文乱码的解决方案

    - **设置Servlet接收参数编码**:在Servlet中,通过`request.setCharacterEncoding("UTF-8")`来设定请求的字符编码,确保与页面编码一致。 - **修改Tomcat配置**:正如描述中提到的方法,打开Tomcat的`server.xml`...

    JSP几种页面间传递参数实现的方法

    "JSP页面间传递参数实现的方法" JSP页面间传递参数是Web开发中的一项重要技术,以下是几种常见的JSP页面间传递参数实现的方法: 1. 直接在 URL 请求后添加参数 可以在 URL 请求后添加参数,如:&lt;a href="thexuan....

Global site tag (gtag.js) - Google Analytics