在Struts2中我建立了一個(gè)簡(jiǎn)單的表單,也就是大家熟知的"Say hello".
在s:textfield中輸入英文然后提交沒(méi)問(wèn)題,但是輸入中文后提交,就變成亂碼.
在struts1.x中可以通過(guò)自定義的filter來(lái)進(jìn)行設(shè)置轉(zhuǎn)換.但在struts2中如何設(shè)置呢?
期待能者解答..
已經(jīng)解決了.
原來(lái)把JSP中的字符編碼設(shè)為UTF-8,再把整個(gè)工程的編碼設(shè)為UTF-8就可以了.
在tomcat5.5中已經(jīng)好了.不知道其它的服務(wù)器怎么樣.
還以為需要在攔截器或filter中設(shè)置呢.
做項(xiàng)目都應(yīng)該加上字符編碼的filter:
例如:(下面是用到spring里面的filter)
<!-- 用于解決請(qǐng)求編碼亂碼問(wèn)題 -->
<filter>
<filter-name>encodingFilter</filter-name>
<filter-class>
org.springframework.web.filter.CharacterEncodingFilter
</filter-class>
<init-param>
<param-name>encoding</param-name>
<param-value>UTF-8</param-value>
</init-param>
<init-param>
<param-name>forceEncoding</param-name>
<param-value>true</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>encodingFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>