起步软件技术论坛
搜索
 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 8156|回复: 17

[结贴] bizDate调用自定义ACTION NULL指针

  [复制链接]

67

主题

279

帖子

434

积分

中级会员

Rank: 3Rank: 3

积分
434
QQ
发表于 2014-8-14 10:53:39 | 显示全部楼层 |阅读模式
版本: 小版本号:
数据库: 服务器操作系统: 应用服务器:
客户端操作系统: 浏览器:
本帖最后由 zsj5237 于 2014-8-14 10:54 编辑

在做流程查询时,需要做人员权限限制,选用自定义ACTION,调用如图,只是修改了reader的ACTION为自定义ACTION。JS传参:
noticeActivity.model1Load = function(event){
        queryData();
};

function queryData() {
        var personId = justep.Context.getCurrentPersonID();
        var deptName = justep.Context.getCurrentDeptName();
       
        var data = justep.xbl("dataMain");
        // 设置数据过滤条件
        data.setStringVar("personId", personId);
        data.setStringVar("deptName", deptName);

        // 刷新
        justep.xbl("gridMain").refresh();
}


加载页面报错:2014-08-14 10:46:50 开始-WINDOW生成中间文件: /UI/OA/finance/process/financeLoanApply/noticeActivity.w
2014-08-14 10:46:51 null
javax.servlet.ServletException: java.lang.NullPointerException
        at com.justep.ui.servlet.MainServlet.service(Unknown Source)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
        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:102)
        at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
        at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:298)
        at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:857)
        at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:588)
        at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
        at java.lang.Thread.run(Thread.java:595)
Caused by: java.lang.NullPointerException
        at BizData.processData(BizData.java:339)
        at BizData.execute(BizData.java:59)
        at com.justep.xbl.runtime.TemplateEngine.computeJavaTemplate(Unknown Source)
        at com.justep.xbl.runtime.TemplateEngine.exeucte(Unknown Source)
        at com.justep.xbl.runtime.XBLEngine.parserBinding(Unknown Source)
        at com.justep.xbl.runtime.XBLEngine.parser(Unknown Source)
        at com.justep.xbl.runtime.XBLEngine.parser(Unknown Source)
        at com.justep.xbl.runtime.XBLEngine.parser(Unknown Source)
        at com.justep.xbl.runtime.XBLEngine.excute(Unknown Source)
        at com.justep.ui.util.UIUtils.xbl(Unknown Source)
        at com.justep.ui.WindowCompiler.w2Middle(Unknown Source)
        at com.justep.ui.WindowCompiler.compile(Unknown Source)
        at com.justep.ui.WindowServer.getWindow(Unknown Source)
        at com.justep.ui.WindowServer.service(Unknown Source)
        ... 14 more
2014-8-14 10:46:51 org.apache.catalina.core.StandardWrapperValve invoke
严重: Servlet.service() for servlet main-servlet threw exception
java.lang.NullPointerException
        at BizData.processData(BizData.java:339)
        at BizData.execute(BizData.java:59)



action.jpg

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
35942
发表于 2014-8-14 11:41:36 | 显示全部楼层
自定义的action关系reader属性,那么queryAction标准的参数不能少,你可以自己添加新的参数
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



如按照该方法解决,请及时跟帖,便于版主结贴
回复 支持 反对

使用道具 举报

67

主题

279

帖子

434

积分

中级会员

Rank: 3Rank: 3

积分
434
QQ
 楼主| 发表于 2014-8-14 11:54:20 | 显示全部楼层
jishuang 发表于 2014-8-14 11:41
自定义的action关系reader属性,那么queryAction标准的参数不能少,你可以自己添加新的参数 ...

能说明下基本参数有哪些么
回复 支持 反对

使用道具 举报

45

主题

4492

帖子

3960

积分

论坛元老

Rank: 8Rank: 8

积分
3960
QQ
发表于 2014-8-14 12:42:07 | 显示全部楼层
zsj5237 发表于 2014-8-14 11:54
能说明下基本参数有哪些么

参数 《模仿queryAction》 这个贴子
http://bbs.justep.com/thread-38364-1-1.html
向前进,向前进,我们……
回复 支持 反对

使用道具 举报

38

主题

829

帖子

1656

积分

金牌会员

过客

Rank: 6Rank: 6

积分
1656
QQ
发表于 2014-8-14 12:47:54 | 显示全部楼层
本帖最后由 daniel007 于 2014-8-14 12:52 编辑
zsj5237 发表于 2014-8-14 11:54
能说明下基本参数有哪些么


你可以打开ontolgy,里面就有标准Action,可以看到.你可以参考acion扩展.http://bbs.justep.com/thread-38364-1-1.html

评分

参与人数 1 +4 收起 理由
jishuang + 4 赞一个!

查看全部评分

回复 支持 反对

使用道具 举报

67

主题

279

帖子

434

积分

中级会员

Rank: 3Rank: 3

积分
434
QQ
 楼主| 发表于 2014-8-14 15:31:56 | 显示全部楼层
daniel007 发表于 2014-8-14 12:47
你可以打开ontolgy,里面就有标准Action,可以看到.你可以参考acion扩展.http://bbs.justep.com/thread-383 ...

参数,rowid,count也都加上了:
action

<action name="queryLoanApply" procedure="queryLoanApplyProcedure" global="false">
    <label language="zh_CN">借款信息</label>  
    <public name="personId" type="String"/>  
    <public name="deptName" type="String"/>
    <public name="concept" type="String" value="OA_FC_LoanApply"/>  
    <private name="select" type="String" value="OA_FC_LoanApply.*"/>  
    <private name="from" type="String" value="OA_FC_LoanApply OA_FC_LoanApply"/>  
    <private name="aggregate" type="String"/>  
    <private name="dataModel" type="String" value="/OA/finance/data"/>  
    <private name="fnModel" type="String"/>  
    <protected name="condition" type="String"/>  
    <permission name="range" type="List"/>  
    <public name="distinct" type="Boolean" value="false"/>  
    <public name="idColumn" type="String" value="OA_FC_LoanApply"/>  
    <public name="filter" type="String"/>  
    <public name="limit" type="Integer"/>  
    <public name="offset" type="Integer"/>  
    <public name="columns" type="String"/>  
    <public name="orderBy" type="String"/>  
    <public name="aggregateColumns" type="String"/>  
    <public name="variables" type="Map"/>
  </action>

class:
public static Table queryLoanApplyInfo(String personId, String deptName) {
                String personIds = getPersonIds(personId, deptName);
               
                StringBuffer sbSql = new StringBuffer();
                sbSql.append("SELECT ");
                sbSql.append("FID,FNO,FBIZSTATENAME,FLOANDEPTNAME,FLOANDATE,FLOANAMT,FLOANTYPE,FLOANPURPOSE,FREMARK  ");
                sbSql.append("FROM OA_FC_LOANAPPLY ");
                sbSql.append("WHERE FLOANPSNFULLID IN (");
                sbSql.append(personIds);
                sbSql.append(")");

                HashMap<String, String> sqlMap = new HashMap<String, String>();
                sqlMap.put(SQL.DEFAULT_DB_NAME, sbSql.toString());
                sqlMap.put(DatabaseProduct.MSSQL.name(), sbSql.toString());
                sqlMap.put(DatabaseProduct.SYBASE.name(), sbSql.toString());

                Table tab = SQL.select(sqlMap, null, "/OA/finance/data");
                Iterator<Row> rows = tab.iterator();
                int count=0;
                while (rows.hasNext()) {
                        count++;
                }
                // 设置rowid
                tab.getProperties().put(Table.PROP_NAME_ROWID, "FID");
                // 设置count
                tab.getProperties().put(Table.PROP_DB_COUNT, count);
                return tab;
        }

加载还是报错:
Error: {"code":"JUSTEP281003","message":"biz action 请求参数准备失败,action参数是必须的"}
回复 支持 反对

使用道具 举报

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
35942
发表于 2014-8-14 16:11:21 | 显示全部楼层
public static Table queryLoanApplyInfo(String personId, String deptName)
这个参数定义的不对

参考/BIZ/system/logic/action/opm.action.m中的queryOrgCommonGroupAction
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



如按照该方法解决,请及时跟帖,便于版主结贴
回复 支持 反对

使用道具 举报

67

主题

279

帖子

434

积分

中级会员

Rank: 3Rank: 3

积分
434
QQ
 楼主| 发表于 2014-8-14 16:57:32 | 显示全部楼层
jishuang 发表于 2014-8-14 16:11
public static Table queryLoanApplyInfo(String personId, String deptName)
这个参数定义的不对

public static Table queryLoanApplyInfo(String personId, String deptName, String concept, String idColumn, String select, String from,
                        String condition, List<DataPermission> range, String filter, Boolean distinct, int offset, int limit, String columns, String orderBy,
                        String aggregate, String aggregateColumns, Map<String, Object> variables, String dataModel, String fnModel)

参数这么全家,还是一样的错误
回复 支持 反对

使用道具 举报

发表于 2014-8-14 16:59:32 | 显示全部楼层
楼主最好调试一下看看是哪个对象null了
回复 支持 反对

使用道具 举报

67

主题

279

帖子

434

积分

中级会员

Rank: 3Rank: 3

积分
434
QQ
 楼主| 发表于 2014-8-15 15:35:05 | 显示全部楼层
jishuang 发表于 2014-8-14 16:11
public static Table queryLoanApplyInfo(String personId, String deptName)
这个参数定义的不对

action,class相应的参数都已经加入,依然报错:
excute stream action, params:{executeContext=, action=queryLoanApply, parameters={"limit":20,"variables":{},"columns":"version,fNO,fBizState,fBizStateName,fLoanOgnID,fLoanOgnName,fLoanDeptID,fLoanDeptName,fLoanPosID,fLoanPosName,fLoanPsnID,fLoanPsnName,fLoanPsnFullID,fLoanPsnFullName,fLoanDate,fCreatePsnID,fCreatePsnName,fCreatePsnFID,fCreatePsnFName,fCreateTime,fUpdatePsnID,fUpdatePsnName,fUpdateTime,fClienter,fLoanAmt,fLoanType,fLoanTypeName,fLoanTypeCode,fReturnDate,fLoanPurpose,fRemark,fCreateOgnID,fCreateOgnName,fCreateDeptID,fCreateDeptName,fCreatePosID,fCreatePosName,fCreateDate,fFactAmount,fStatus,fStatusName,fCurrentActivities,fCurrentExecutors,fExtendStr1,fExtendStr2,fExtendStr3,fExtendStr4,fExtendStr5,fExtendStr6,fExtendStr7,fExtendStr8,fExtendStr9,fExtendDate1,fExtendDate2,fExtendDate3,fExtendDate4,fExtendDate5,fExtendNum1,fExtendNum2,fExtendNum3,fExtendNum4,fExtendNum5,OA_FC_LoanApply","offset":0}, executor=, activity=noticeActivity, process=/OA/finance/process/financeLoanApply/financeLoanApplyProcess, translateParameter={"transformIdcolumn":true,"rowsConfig":{"concept":"OA_FC_LoanApply","sequence":"fNO,fBizStateName,fLoanDeptName,fLoanPsnName,fLoanDate,fLoanAmt,fLoanType,fLoanPurpose,fRemark,space-column,version,fBizState,fLoanOgnID,fLoanOgnName,fLoanDeptID,fLoanPosID,fLoanPosName,fLoanPsnID,fLoanPsnFullID,fLoanPsnFullName,fCreatePsnID,fCreatePsnName,fCreatePsnFID,fCreatePsnFName,fCreateTime,fUpdatePsnID,fUpdatePsnName,fUpdateTime,fClienter,fLoanTypeName,fLoanTypeCode,fReturnDate,fCreateOgnID,fCreateOgnName,fCreateDeptID,fCreateDeptName,fCreatePosID,fCreatePosName,fCreateDate,fFactAmount,fStatus,fStatusName,fCurrentActivities,fCurrentExecutors,fExtendStr1,fExtendStr2,fExtendStr3,fExtendStr4,fExtendStr5,fExtendStr6,fExtendStr7,fExtendStr8,fExtendStr9,fExtendDate1,fExtendDate2,fExtendDate3,fExtendDate4,fExtendDate5,fExtendNum1,fExtendNum2,fExtendNum3,fExtendNum4,fExtendNum5,recNO"},"dataType":"row-list","cellnameByRelation":false,"useNamespace":true}, actionFlag=__action_0__}
java.lang.reflect.InvocationTargetException
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:592)
        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.BusinessServerServlet.execService(Unknown Source)
        at com.justep.business.server.BusinessServerServlet.service(Unknown Source)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
        at com.justep.x.bs.BusinessServerServlet.service(Unknown Source)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
        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:102)
        at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
        at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:298)
        at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:857)
        at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:588)
        at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
        at java.lang.Thread.run(Thread.java:595)
Caused by: java.util.NoSuchElementException
        at java.util.LinkedHashMap$LinkedHashIterator.nextEntry(LinkedHashMap.java:367)
        at java.util.LinkedHashMap$KeyIterator.next(LinkedHashMap.java:376)
        at com.justep.system.data.impl.TableImpl$TableIterator.next(Unknown Source)
        at com.justep.system.data.impl.TableImpl$TableIterator.next(Unknown Source)
        at LoanApplyInfo.getRoleById(LoanApplyInfo.java:54)
        at LoanApplyInfo.getPersonIds(LoanApplyInfo.java:62)
        at LoanApplyInfo.queryLoanApplyInfo(LoanApplyInfo.java:17)
        ... 26 more
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|X3技术论坛|Justep Inc.    

GMT+8, 2024-5-18 19:29 , Processed in 0.090696 second(s), 32 queries .

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表