|

楼主 |
发表于 2017-3-28 16:19:58
|
显示全部楼层
下面是我的代码,页面初始化时已经不会报错 但显示不正确 点击节点报错
代码如下:
- private static final String TABLE_LIBRARY = "SAM_LIBRARY";
- private static final String TABLE_ASSET = "SAM_ASSET";
- public static Table querySAM_AssetTree(String concept,String select,String from,
- String aggregate,String dataModel,String fnModel,String condition,
- List range,Boolean distinct,String idColumn,String filter,Integer limit,
- Integer offset,String columns,String orderBy,String aggregateColumns,
- Map variables){
- int level = (Integer) variables.get("level");
- System.out.println(level);
- String parent = (variables.get("parent")+"");
- System.out.println("parent:"+parent);
- // 当查询资产的时候,需要得到数据库中真正的fID。
- if (level > 2) {
- parent = parent.split("-")[1];
- }
- String sql = null, sqlWhere = null, showTable = null;
- System.out.println("11111111");
- // 根据级别判断,来决定访问那个数据库,返回值中返回自定义列fLevel和fIsLeaves
- switch (level) {
- case 1:
- System.out.println("2222222222");
- sql = "select null as fParentID,1 as fLevel,'false' as fIsLeaves,fID,fName from "
- + TABLE_LIBRARY+" ";
- sqlWhere = " where fParentID is null";
- showTable = TABLE_LIBRARY;
- System.out.println("3333333333333333");
- break;
- case 2:
- sql = "select fID as fParentID,2 as fLevel,'false' as fIsLeaves,"
- +"concat_ws('-','"+parent+"',CONVERT(fID,char)) as fID,fName from "
- + TABLE_LIBRARY+" where fID = "+parent+" GROUP BY fID limit "+offset+","+limit;
- sqlWhere = " where fID = "+parent;
- showTable = TABLE_LIBRARY;
- break;
- case 3:
- sql = "select fID as fParentID,3 as fLevel,'true' as fIsLeaves,"
- + "concat_ws('-','"+parent+"',CONVERT(fID,char)) as fID,fName from "
- + TABLE_ASSET+" where fID = "+parent+" GROUP BY fID limit "+offset+","+limit;
- sqlWhere = " where fID = "+parent+" and fApprovedState='已发布'";
- showTable = TABLE_ASSET;
- break;
- }
- System.out.println("sql:"+sql);
- HashMap<String,String> sqlMap = new HashMap<String,String>();
- System.out.println("444444444444444444");
- sqlMap.put(DatabaseProduct.ORACLE.toString(),sql);
- System.out.println("555555555555555");
- Table table = SQL.select(sqlMap, null, "/SAM/assetManage/data");
- System.out.println("66666666666666666666666");
- table.getProperties().put(Table.PROP_NAME_ROWID, "FID");
- // 设置table的总行数,bizData分页需要
- System.out.println("7777777777777777777");
- String countSql = "select count(*) from "+showTable+" "+sqlWhere;
- System.out.println("8888888888888888888888");
- HashMap<String,String> countSqlMap = new HashMap<String,String>();
- System.out.println("999999999999999999999");
- countSqlMap.put(DatabaseProduct.ORACLE.toString(),countSql);
- System.out.println("11111111111111111111111");
- Table countTable = SQL.select(countSqlMap, null, "/SAM/assetManage/data");
- System.out.println("222222222222222222222");
- Iterator<Row> rows = countTable.iterator();
- Row row = rows.next();
- System.out.println("33333333333333333333333333333");
- BigDecimal count = row.getDecimal(0);
- System.out.println(row.getDecimal(0));
- System.out.println("count:"+count);
-
- table.getProperties().put(Table.PROP_DB_COUNT,count);
- return table;
- }
复制代码
Model.prototype.treeDataRefreshCreateParam = function(event){
var data = event.source;
// event.options.parent - 父节点的row
var parent = event.options && event.options.parent;
// event.options.append - 数据是否增量加载
var append = event.options && event.options.append;
var level = 1;
//如果存在父,就加载父的下级数据,不存在父加载第一级的数据
if(parent){
level = data.getValue('fLevel',parent) + 1;
}
var mapParam = new biz.Request.MapParam();
mapParam.put("parent", parent && parent.getID());
mapParam.put("level", level);
event.param.setMap("variables", mapParam);
};
Model.prototype.treeDataBeforeRefresh = function(event){
var data = event.source;
// event.options.parent - 父节点的row
var parent = event.options && event.options.parent;
//判断如果是叶子节点就返回,不执行查询
if(data.getValue('fIsLeaves',parent)){
event.cancel = true;
}
};
点击节点,错误信息如下:
2017-03-28 16:18:28 excute stream action, params:{"accept":"application/json","action":"querySAM_AssetTreeAction","actionFlag":"__action_0__","activity":"mainActivity","contentType":"json","executeContext":"","executor":"","parameters":{"columns":"SAM_AssetTree,fID,fIsLeaves,fLevel,fName,fParentID,version","filter":"(SAM_AssetTree.fParentID='CCAB04C0D59B491282D83ED76C8C92E5')","limit":-1,"offset":0,"variables":{"parent":"CCAB04C0D59B491282D83ED76C8C92E5"}},"process":"/SAM/assetManage/process/newPortal/newPortalProcess","translateParameter":{"cellnameByRelation":false,"dataType":"row-tree","includeState":true,"rowsConfig":{"concept":"SAM_AssetTree","sequence":"SAM_AssetTree,fID,fIsLeaves,fLevel,fName,fParentID,version"},"transformIdcolumn":true,"useNamespace":true}}
java.lang.reflect.InvocationTargetException
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:497)
at com.justep.system.action.Engine.invokeActions(Native Method)
at com.justep.system.action.Engine.invokeActions(Unknown Source)
at com.justep.business.server.BusinessServer.doAction(Unknown Source)
at com.justep.business.server.BusinessServer.doExcute(Unknown Source)
at com.justep.business.server.BusinessServer.excute(Unknown Source)
at com.justep.business.server.BusinessServer.excute(Unknown Source)
at com.justep.business.server.BusinessServerServlet.execService(Unknown Source)
at com.justep.business.server.BusinessServerServlet.service(Unknown Source)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:723)
at com.justep.x.bs.BusinessServerServlet.service(Unknown Source)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:723)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:293)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:861)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:606)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
at java.lang.Thread.run(Thread.java:745)
Caused by: java.lang.NullPointerException
at AssetManage.querySAM_AssetTree(AssetManage.java:232)
... 27 more
|
-
|