利用ActionServlet来处理中文编码问题
web.xml中的配置
import javax.servlet.http.*;
import org.apache.struts.action.ActionServlet;
public class ActionServletAndSetcode extends ActionServlet {
protected String encoding = "";
// org.apache.struts.action.ActionServlet
public ActionServletAndSetcode() {
this.encoding = "gbk"; // ok
}
protected void process(HttpServletRequest request, HttpServletResponse response) throws java.io.IOException, javax.servlet.ServletException {
request.setCharacterEncoding(encoding);// "MS950");
super.process(request, response);
}
}
web.xml中的配置
<!-- Standard Action Servlet Configuration (with debugging) -->
<servlet>
<servlet-name>action</servlet-name>
<servlet-class>
<!--org.apache.struts.action.ActionServlet-->
ActionServletAndSetcode
</servlet-class>
<init-param>
<param-name>application</param-name>
<param-value>application</param-value>
</init-param>
<init-param>
<param-name>config</param-name>
<param-value>
/WEB-INF/struts-config-comm.xml
<!-- 这里可以配多个struts-config文件的
,/WEB-INF/struts-config-base.xml
,/WEB-INF/struts-config-hr.xml
,/WEB-INF/struts-config-oa.xml
,/WEB-INF/struts-config-sale.xml
,/WEB-INF/struts-config-train.xml
,/WEB-INF/struts-config-statistic.xml
,/WEB-INF/struts-config-fn.xml
,/WEB-INF/struts-config-talent.xml
,/WEB-INF/struts-config-depot.xml
-->
</param-value>
</init-param>
<init-param>
<param-name>debug</param-name>
<param-value>2</param-value>
</init-param>
<init-param>
<param-name>detail</param-name>
<param-value>2</param-value>
</init-param>
<load-on-startup>2</load-on-startup>
</servlet>
<!-- Standard Action Servlet Mapping -->
<servlet-mapping>
<servlet-name>action</servlet-name>
<url-pattern>*.do</url-pattern>
</servlet-mapping>