大家好 我是一个新手 如题框架我遇到了一点问题
    这是我的struts.xml配置
     <package name="ssh2" extends="json-default">
         <action name="saveUser" class="saveUserAction">
              <result name="success" type="redirect">listUser.action</result>
</action>

<action name="findAllUsers" class="finAllUsers">
     <result type="json" name="success">/ajaxShowUsers.jsp</result>
</action>
    </package>这是我的action
    public class ListAllUsersAction extends ActionSupport{
private UserService userService;

public void setUserService(UserService userService) {
this.userService = userService;
}

public String execute()throws Exception{
Map request = (Map) ActionContext.getContext().get("request");
request.put("list", this.userService.findAllUsers());
System.out.println(this.userService.findAllUsers());
return SUCCESS;
}
}jsp页面调用
     $(document).ready(function(){
$.ajax({
url:"findAllUsers",
dataType:"json",  
                                     success:function(responseText){                                alert(responseText);
}
});
     });
但是前台获取不到数据,请各位高手指教,小弟非常感谢!!!在线等待

解决方案 »

  1.   

    1、<result type="json" name="success">/ajaxShowUsers.jsp</result>
    ---》
    <result type="json" name="success">
       <param name="root">result</param>
    </result>
    2、action中  request  写上get、set
      

  2.   

    1.你说前台取不到数据,我想问的是,后台的代码执行了没有呢?在配置package的时候extends="json-default"这里缺少了struts2自身的拦截器,(呵呵,这里只是我个人的疑问,仔细向来代码应该是执行了,只是没有调用struts2框架自身默认的拦截器而已)。2.你想让它返回json格式的数据,json数据的格式是形如{key:‘value’},按照我的理解,你的写法如果是返回json的话,应该是{list:"[所有的用户]"},不知道你现在alert(responseText)打印出来是啥内容呢
      

  3.   

    你是想显示出responsText? 这样写肯定是为空的
    你在action里要调用response对象的write方法,在这个方法里写东西。