• easyui+struts2:datagrid无法不能得到数据


    转自:https://bbs.csdn.net/topics/390980437

    easyui+struts2:datagrid无法访问到指定action:

    userlist.jsp部分代码:

    XML/HTML code
     
    ?
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
        <script type="text/javascript" src="libs/easyui-1.3.5/jquery.min.js"></script>
        <script type="text/javascript" src="libs/easyui-1.3.5/jquery.easyui.min.js"></script>
        <script type="text/javascript" src="libs/easyui-1.3.5/locale/easyui-lang-zh_CN.js"></script>
        <link rel="stylesheet" type="text/css" href="libs/easyui-1.3.5/themes/default/easyui.css" >
        <link rel="stylesheet" type="text/css" href="libs/easyui-1.3.5/themes/icon.css">
     
        <script type="text/javascript">
        $(function() {
            $('#mydatagrid').datagrid({
                title : '用户管理',
                iconCls : 'icon-ok',
                width : 600,
                pageSize : 5,//默认选择的分页是每页5行数据
                pageList : [ 5, 10, 15, 20 ],//可以选择的分页集合
                nowrap : true,//设置为true,当数据长度超出列宽时将会自动截取
                striped : true,//设置为true将交替显示行背景。
                collapsible : true,//显示可折叠按钮
                toolbar:"#tb",//在添加 增添、删除、修改操作的按钮要用到这个
                url:'userList.action',//url调用Action方法
                loadMsg : '数据装载中......',
                singleSelect:true,//为true时只能选择单行
                fitColumns:true,//允许表格自动缩放,以适应父容器
                //sortName : 'xh',//当数据表格初始化时以哪一列来排序
                //sortOrder : 'desc',//定义排序顺序,可以是'asc'或者'desc'(正序或者倒序)。
                remoteSort : false,
                  frozenColumns : [ [ {
                    field : 'user',
                    checkbox : true
                } ] ], 
                pagination : true,//分页
                rownumbers : true//行数
            });    
             
        });
         
    </script>    
     
    </head>
    <body>
     
     
        <table id="mydatagrid">
     
           <thead>
                 <tr>
     
                    <th data-options="field:'user',100,align:'center'">用户名</th>
                    <th data-options="field:'name',100,align:'center'">姓名</th>
     
                </tr>
            </thead>
     
        </table>
        
    </body>
    </html>



    struts.xml配置:

    XML/HTML code
     
    ?
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
         
    <package name="struts2" extends="json-default">
            
            <action name="userList" class="com.xforce.login.action.UserListAction"  method="getUsers">
                <result type="json" >
                    <param name="root">rows</param>
                </result>
            </action>
             
        </package>



    UserListAction.java代码:

    Java code
     
    ?
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    package com.xforce.login.action;
     
    import java.util.ArrayList;
    import java.util.HashMap;
    import java.util.List;
     
    import org.hibernate.engine.spi.RowSelection;
     
    import com.opensymphony.xwork2.ActionSupport;
    import com.xforce.login.dao.impl.UserDaoImpl;
    import com.xforce.login.entity.User;
    //import com.alibaba.fastjson.JSON;  
    //import com.alibaba.fastjson.JSONObject;
    import net.sf.json.JSONArray;
    import net.sf.json.JSONObject;
     
     
    import com.xforce.login.entity.User;
    import com.xforce.login.dao.UserDao;
    import com.xforce.login.dao.impl.UserDaoImpl;
     
    public class UserListAction extends ActionSupport {
         
        private JSONObject rows = new JSONObject();
     
        public String getUsers() throws Exception{  
            UserDaoImpl udi = new UserDaoImpl();
            List<User> users = udi.listUser();
            HashMap<String, Object> maps = new HashMap<String, Object>();  
            List<HashMap<String, Object>> list = new ArrayList<HashMap<String, Object>>();  
             for (User user :users) {  
                  HashMap<String, Object> hashMap = new HashMap<String, Object>();  
                  hashMap.put("name",user.getName());  
                  hashMap.put("user",user.getUser());
                  list.add(hashMap);  
            }  
            maps.put("Rows", list);  
            //rows = JSONObject.parseObject(JSON.toJSONString(maps));  
            rows = JSONObject.fromObject(maps);  
            System.out.println(rows);
            return SUCCESS;   
        }  
        
        public JSONObject getRows() {  
                 return rows ;  
        }  
        
        public void setRows(JSONObject rows) {  
                 this.rows = rows;  
        }  
     
    }



    调试时无法显示数据,在UserListAction中设置断点,发现未进入,(JSP页面利用LigerUI可正常访问UserListAction返回json显示数据),chrome调试审查元素,network中显示如下图:

    不能访问http://localhost:8080/FixOnline/userList.action
    但在地址栏中输入该url,返回结果:

    XML/HTML code
     
    ?
    1
    {"Rows":[{"name":"管理员","user":"admin"},{"name":"李四","user":"ls"}]}


    项目添加的包如下图:

     
     
     
     
     
     
     
     
     
     
     
     
    Bbs1
     
     
     
  • 相关阅读:
    每日博客
    每日博客之十一月读书笔记1
    每日博客
    今日收获
    今日收获
    今日收获
    动手动脑10.21
    今日收获
    今日收获
    8月21日
  • 原文地址:https://www.cnblogs.com/sharpest/p/9802496.html
Copyright © 2020-2023  润新知