http://....?search='aa like %你好%'通过javascript escape函数后变为:http://....?search=%28aa%20like%20%27%25%u4F60%u597D%25%27%29在resin中通过request.getParameter("search")可以正确读出search='aa like %你好%',但在jboss中始终为null。jboss中已经写了filter,public void doFilter(ServletRequest request, ServletResponse response,
FilterChain chain)throws IOException, ServletException {
request.setCharacterEncoding("GBK");
// 传递控制到下一个过滤器
chain.doFilter(request, response);
}
FilterChain chain)throws IOException, ServletException {
request.setCharacterEncoding("GBK");
// 传递控制到下一个过滤器
chain.doFilter(request, response);
}
ps:request.setCharacterEncoding("GBK");这句用来解码javascript.escape()应该是乱码才合理.escape编码出来的形式是unicode形式%uXXXX,而java URLEncoder编码出来的形式GBK应是%XX%XX,UTF8应是%XX%XX%XX.