通過jsf事件轉(zhuǎn)向后的頁面中文亂碼
那個轉(zhuǎn)向后的頁面已經(jīng)有用gb2312的編碼了可能原因是在java類里面調(diào)用了((HttpServletResponse)FacesContext.getCurrentInstance().getExternalContext().getResponse()).getWriter().write("");
然后再轉(zhuǎn)向某個頁面,這樣可能導(dǎo)致編碼格式?jīng)_突,導(dǎo)致亂碼
可以先給resonse設(shè)置下編碼格式,然后在write
HttpServletResponse httpServletResponse = (HttpServletResponse)FacesContext.getCurrentInstance().getExternalContext().getResponse();
httpServletResponse.setContentType("text/html; charset=gb2312");
httpServletResponse.setCharacterEncoding("gb2312");
httpServletResponse.getWriter().write("");
這樣應(yīng)該就可以解決了