User session expired,please re login!(2)

在多个集成项目中,原本正常运行的代码突然出现'User session expired, please re-login!'错误。通过对比发现,该问题在NCC和NC63版本未出现,但在NC65版本中普遍发生。解决办法是将模拟登录的操作调整到代码执行的最后,这样可以避免session错误,恢复正常运行。" 113006070,10546751,Flutter RotationTransition动画实践:点击与无限循环旋转,"['Flutter开发', 'UI动画']

出现上面报错一般是没有设置datasource,但是在多个集成项目里都正常用着的,同样的代码突然就都报这个错误了。
原因如下:

/**
	 * 设置上下文
	 * 模拟登陆
	 */
	protected void LoginDefault(){
		//模拟登陆
		NCLocator.getInstance().lookup(ISecurityTokenCallback.class).token("NCSystem".getBytes(), "pfxx".getBytes());
		//集团上下文
		InvocationInfoProxy.getInstance().setGroupId(OA2NcDeal.PK_GROUP);
		//默认数据源
		InvocationInfoProxy.getInstance().setUserDataSource(OA2NcDeal.DATA_SOURCE);
		//默认用户编码
		InvocationInfoProxy.getInstance().setUserCode(OA2NcDeal.DEF_USER_CODE);
		//默认用户ID
		InvocationInfoProxy.getInstance().setUserId(OA2NcDeal.DEF_USER_ID);
		
		
	}

同样的以上代码 NCC和NC63里都没有报session的错误,但是65里都报了
调整如下

/**
	 * 设置上下文
	 * 模拟登陆
	 */
	protected void LoginDefault(){
		
		//集团上下文
		InvocationInfoProxy.getInstance().setGroupId(OA2NcDeal.PK_GROUP);
		//默认数据源
		InvocationInfoProxy.getInstance().setUserDataSource(OA2NcDeal.DATA_SOURCE);
		//默认用户编码
		InvocationInfoProxy.getInstance().setUserCode(OA2NcDeal.DEF_USER_CODE);
		//默认用户ID
		InvocationInfoProxy.getInstance().setUserId(OA2NcDeal.DEF_USER_ID);
		//模拟登陆NCLocator.getInstance().lookup(ISecurityTokenCallback.class).token("NCSystem".getBytes(), "pfxx".getBytes());
	}

把模拟登陆的位置调换下 放到最后 一切正常!

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值