struts2接收json数据时出现问号?

我在编写移动端网站,前台使用jqm,后台使用ssh框架。
现在的问题是:
后台向前台发送json数据,格式正常。
前台向后台发送json数据,出现?乱码。

前台代码:
$("#submit").on("tap", function() {
$.ajax({
cache: false,
type: "POST",
url: "http://localhost:8080/oa/addMeetingRoomOrderAJAX.action?callback=?",
data: $('#form1').serialize(),
dataType: "json",
success: function(data) {
alert(data.msg);
}
});
});
前台表单元素的命名都是用:order.roomId、order.roomName的格式。

后台代码:
@ParentPackage("json-default")

@Results({
@Result(name = "addMeetingRoomOrderAJAXOK", type = "json", params = {
"includeProperties", "msg", "callbackParameter", "callback" }) })
public class MeetingRoomOrderAction extends ActionSupport {
private static final long serialVersionUID = 1L;
private String msg;
private MeetingRoomOrder order;
@Resource
private MeetingRoomOrderBiz meetingRoomOrderBiz;

@Action(value = "addMeetingRoomOrderAJAX")
public String addMeetingRoomOrderAJAX() {
    try {
        meetingRoomOrderBiz.add(order);
        msg = "保存成功!";
    } catch (Exception e) {
        e.printStackTrace();
        msg = "保存失败!";
    }
    return "addMeetingRoomOrderAJAXOK";
}

数据已正常写入数据库,就是格式是乱码,问题出在哪里呢?

前台字符编码charset是utf-8吗?还有用的服务器字符编码设置了没

统一网页、服务器和框架的默认编码

在ajax里面用 params: { callback:? },传递值看看。直接用url、传确实有时候回出现乱码

1、在客户端用escape(encodeURIComponent(fieldValue))方法编码,例如:
复制代码 代码如下:

title=escape(encodeURIComponent(title)); //这是js里的函数
url="<%=request.getContextPath()%>/print/printList!printTable.action?title="+title;

2、在服务端用java.net.URLDecoder.decode(getRequest().getParameter("title"),"UTF-8"),进行解码。

后来找到原因了,是tomcat的编码设置问题,己解决,谢谢大家。