找回密码
 注册成为天翎用户
查看: 2479|回复: 11

在任务的脚本中getUserIdByLoginno()方法没用

[复制链接]
wangzisong1987 发表于 2012-7-17 08:53:40 | 显示全部楼层 |阅读模式
本帖最后由 bess 于 2012-7-25 10:23 编辑

在任务中或是库中编写脚本,用到getUserIdByLoginno()方法时,返回的值是“”,而在操作脚本中使用是正常的,为何??
bess 发表于 2012-7-17 09:31:40 | 显示全部楼层
您好,我这边测试是没有问题的哦,请问您写在函数里面,函数中是否有return语句呢?比如您最后要返回用户id,请问您是否有用到rerurn语句将结果返回?
我们的函数都是需要用return语句返回结果的哦,请悉知。
回复

使用道具 举报

 楼主| wangzisong1987 发表于 2012-7-17 09:46:04 | 显示全部楼层
我写一个任务,任务功能是每小时发一封邮件,任务脚本如下:
        var sendid = getUserIdByLoginno("dubanyuan");
       
        println("print  :"+sendid);
        执行发送邮件的方法。。。
在上面的脚本中sendid的值是空,打印出来是“”;
如果我把上面的代码随便找个按钮的执脚本放进去,则是正常的
回复

使用道具 举报

bess 发表于 2012-7-17 09:53:01 | 显示全部楼层
您好,请问您的任务是否有执行呢。因为如果方法在其他的地方能执行,那么在任务里面就一定能执行的。
回复

使用道具 举报

 楼主| wangzisong1987 发表于 2012-7-17 10:03:10 | 显示全部楼层
任务执行了,  我用了println("print  :"+sendid);,都打印出来了的,只是sendid是空的
回复

使用道具 举报

purple 发表于 2012-7-17 10:28:51 | 显示全部楼层
您好,我这边用定时任务测试之后再回复您。
回复

使用道具 举报

purple 发表于 2012-7-17 10:47:29 | 显示全部楼层
您好,我这边在任务测试了,确实获取不到,现已作为bug提交至研发那边,带来不便,敬请见谅。
回复

使用道具 举报

purple 发表于 2012-7-24 18:19:14 | 显示全部楼层
您好,研发反馈回来,该功能是正常的。getUserIdByLoginno方法在平台最后执行的是如下的方法。在定时任务那里拿不到当前登录用户的对应的域ID。其值是存储在session中。
public UserVO findByLoginno(String account, String domainid) throws Exception {
       String hql = "FROM " + _voClazzName + " vo WHERE vo.loginno ='" + account + "'" + " AND vo.domainid='"
              + domainid + "'";
       return (UserVO) getData(hql);
    }
不支持该种使用方法。
回复

使用道具 举报

 楼主| wangzisong1987 发表于 2012-7-25 09:26:50 | 显示全部楼层
你意思是如果我在定时任务中可以用findByLoginno()方法来获取userVO然后再获取userID,
也就是用该方法代替getUserIdByLoginno方法,是吗?
回复

使用道具 举报

irene 发表于 2012-7-25 09:48:36 | 显示全部楼层
您好,是的。如果您想用findByLoginno这个方法,您需要手动设置account和domainid这两个参数。accout是用户的登陆账号。即给findByLoginno这个方法传两个死的参数。
回复

使用道具 举报

本版积分规则

手机版|天翎MyApps技术社区 ( 粤ICP备11093750号 )

GMT+8, 2026-8-14 00:58

Powered by Discuz! X5.0

© 2001-2026 Discuz! Team.

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