操作失败,没有该服务权限![ 机构号:99 ,用户ID:50000009 ,服务号:0101030112 ]
操作失败,没有该服务权限![ 机构号:99 ,用户ID:50000009 ,服务号:0101030112 ]
此时我们可以把代码 SERVICE_NO 改成 10个0 即 0000000000 ,就可以进行权限查看.
然后把response响应大对象打印出来看看,就知道连到哪里去了
package com.isoftstone.common; import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; import org.apache.log4j.Logger; import com.isoftstone.core.common.tools.XmlTool; import com.isoftstone.core.dto.RequestBusinessObject; import com.isoftstone.core.dto.ResponseBusinessObject; import com.isoftstone.fwk.dao.DaoException; import com.isoftstone.fwk.util.SpringUtils; import com.isoftstone.httpclient.ESBClient; import com.isoftstone.platform.constants.PltmConstants; import com.isoftstone.platform.service.PltmPacketService; import com.isoftstone.platform.vo.PltmPacketVO; public class JavaCTool {//需要晓飞最新esb.jar支持 /** 创建一个logger对象 **/ private static Logger logger = Logger.getLogger(JavaCTool.class); /** * 在进行特殊判断以后 , 调用javac保存与平台通信报文 * 当前特殊判断只针对投保查询检验是不进行核心同步保存的,而是返回false * @param recvOutMap * @param pltmPacketVO * @param sendOutMap * @return */ public static boolean callJavaCAfterJudgement(Map<String, List<Map<String, Object>>> recvOutMap ,PltmPacketVO pltmPacketVO,Map sendOutMap){ // boolean flag = true; // if(sendOutMap != null){//此处的判断主是要因为 投保查询检验时,核心不需要第一次平台返回的提问报文,只需要第二次和平台通信的报文即可.所以如果是查询检验问题,那么return false,从而不发送报文给核心 // List list = (List) sendOutMap.get("CHECKCODE"); // if(list != null && list.size() > 0){//判断投保查询校验list是否存在 // Map innerMap = (Map) list.get(0); // String renewalFlag = (String) innerMap.get("RENEWAL_FLAG") ; // if( renewalFlag != null ){ // if( "1".equals( renewalFlag ) ){ // flag = false ; // } // } // } // } // if(flag == true){ return callJavaC(recvOutMap,pltmPacketVO,sendOutMap); // }else{ // return false; // } } /* * @param recvOutMap 接收外围map * @param pltmPacketVo 本系统返回的大日志对象,包含接收外围,上平台,平台返回,发送外围,成功失败等内容. * @param sendOutMap 发送给外围map */ public static boolean callJavaC(Map<String, List<Map<String, Object>>> recvOutMap ,PltmPacketVO pltmPacketVO,Map sendOutMap){ PltmPacketService pltmPacketService = (PltmPacketService) SpringUtils.getSpringBean("pltmPacketService"); ResponseBusinessObject responseBO = null; Map<String, List<Map<String, Object>>> sendV5Map = new HashMap<String, List<Map<String, Object>>>();//发送V5的通信 map try { List<Map<String, Object>> recvOutBaseList = recvOutMap.get("BASE"); List<Map<String, Object>> recvOutVhlList = recvOutMap.get("VHL"); if( (recvOutVhlList == null)||(recvOutVhlList.size()== 0) ) return false; String dptcde = (String) recvOutBaseList.get(0).get("DPT_CDE");//8位出单机构 List headList = (List) sendOutMap.get("HEAD");//ERROR_CODE start if( (headList == null)||(headList.size()== 0) ) return false; Map headMap = (Map)headList.get(0); List vhlList = (List) sendOutMap.get("VHL");//QUERY_SEQUENCE_NO start if( (vhlList == null)||(vhlList.size()== 0) ) return false; Map vhlmap = (Map)vhlList.get(0); Map<String, Object> recvOutVhlMap = recvOutVhlList.get(0); //错误码如果是0000表示平台通信完全正常,此时才继续往下走和v5通信 if("0000".equals(headMap.get("ERROR_CODE")) &&PltmConstants.FOUR.equals(pltmPacketVO.getCSucMrk()) && PltmConstants.V5FAIL_MRK.equals(pltmPacketVO.getCSendV5Mrk()) ){ //如果和平台交互标志为4 //准备javaC通信,将数据填充到sendV5Map List<Map<String, Object>> baseList = Map<String,Object> baseMap = new HashMap<String,Object>(); String cQueryCde = (String)vhlmap.get("QUERY_CDE"); String cCarMark = (String)recvOutVhlMap.get("CAR_MARK"); String cEngineNo = (String)recvOutVhlMap.get("ENGINE_NO"); String cRackNo = (String)recvOutVhlMap.get("RACK_NO"); baseMap.put("DPT_CDE",dptcde);//DPT_CDE end baseMap.put("CAR_MARK",cCarMark);//CAR_MARK end baseMap.put("ENGINE_NO",cEngineNo);//ENGINE_NO end baseMap.put("RACK_NO",cRackNo);//RACK_NO end baseMap.put("QUERY_SEQUENCE_NO",cQueryCde);//QUERY_SEQUENCE_NO end baseMap.put("REQUESTXML", pltmPacketVO.getCSendPltm().replace("</", "$($").replace("/>", "$)$").replace("<", "#(#").replace(">", "#)#")); baseMap.put("RESPONSEXML", pltmPacketVO.getCRecvPltm().replace("</", "$($").replace("/>", "$)$").replace("<", "#(#").replace(">", "#)#")); baseList.add(baseMap); sendV5Map.put("BASE",baseList); //填充完毕 //开始调用javaC通信,v5通信成功后 logger.info("同步查询码为 "+cQueryCde+" 的[请求与返回]报文给核心,开始"); SaveQueryInfoService(recvOutMap,sendV5Map); logger.info("同步查询码为 "+cQueryCde+" 的[请求与返回]报文给核心,结束"); //v5通信成功后,置通信成功标志 pltmPacketService.updateSendV5Mrk(pltmPacketVO.getCPkId(),PltmConstants.V5SUCC_MRK); logger.info("把 查询码为 "+cQueryCde+" 的与核心通信成功标志修改为1"); }else{ return false; } } logger.warn("[生成V5交互报文失败] : "+npE); return false; } logger.warn("[更新日志失败]:"+daoE); return false; } logger.error(e.getMessage()); logger.error("与核心数据同步失败,可能原因:超时"); return false; } return true; } /* * @author * @param recvOutMap 用于提取部分Head信息到sendV5Map中云 * @param sendV5Map 缺少Head信息的map,在设置完Head之后,转成requestBO,用于和V5进行通信 */ public static ResponseBusinessObject SaveQueryInfoService(Map<String, List<Map<String, Object>>> recvOutMap ,Map sendV5Map )throws Exception{ ESBClient esbClient = new ESBClient(); List list = new ArrayList(); Map head = new HashMap(); head.put("REQUEST_TYPE", ""); head.put("SYSNAME", "platproxy"); head.put("SYSCODE", "02"); head.put("USERCDE", "100009999"); head.put("DPTCDE", recvOutMap.get("HEAD").get(0).get("DPTCDE")); head.put("TYPE", "Q"); head.put("DATA", "A"); head.put("SERVICE_NO","0000000000"); head.put("SERVICENAME","SaveQueryInfo"); head.put("USERID", "50000009"); list.add(head); sendV5Map.put("HEAD", list); //esb设置连接超时 ESBClient client = new ESBClient(30*1000,30*1000,30*1000); RequestBusinessObject requestBO = null; ResponseBusinessObject responseObject = null; try { requestBO = XmlTool.getFromCoreMap(sendV5Map); // String s = XmlTool.convertToXml(requestBO); responseObject = client.invoke(requestBO); String s = XmlTool.convertToXml(responseObject); System.out.println("核心返回信息________________+:\n"+s); } catch (Exception e) { throw e; } return responseObject; } // }
操作失败,没有该服务权限![ 机构号:99 ,用户ID:50000009 ,服务号:0101030112 ]的更多相关文章
- Linux下文件权限(一)用户ID和用户组ID
最近在读<unix环境高级编程>,看到文件权限这里比较糊涂,主要设计多个用户ID和用户组ID,包括下面两个: (1)实际用户ID和实际用户组ID:这一部分表示我们究竟是谁.这两个字段在登录 ...
- win7 提升windows服务权限使非管理员用户可以控制windows服务的开启和关闭
#include <windows.h>#include <tchar.h>#include <strsafe.h>#include <aclapi.h> ...
- 解决在iOS8环境下,当用户关闭定位服务总开关时,无法将APP定位子选项加入定位权限列表的问题
关键点:- (void)locationManager:(CLLocationManager *)manager didChangeAuthorizationStatus:(CLAuthorizati ...
- 如何排查sharepoint2010用户配置文件同步服务启动问题
用户配置文件同步服务与 Microsoft Forefront Identity Manager (FIM) 交互,以与外部系统(如目录服务和业务系统)同步配置文件信息.启用用户配置文件同步服务时,将 ...
- UNIX文件的权限之“设置用户ID位”
用stat函数可以获取一个文件的状态信息,原型是这样的: int stat(const char *path, struct stat *buf); 其中结构体stat的结构: struct stat ...
- php 微信登录 公众号 获取用户信息 微信网页授权
php 微信登录 公众号 获取用户信息 微信网页授权 先自己建立两个文件: index.php 和 getUserInfo.php index.php <?php //scope=snsap ...
- 用户id,组id和文件访问权限
实际用户ID和实际组ID:标示了我们究竟是谁,这两个字段在登录时取自口令文件中的登录项 有效用户ID和有效组ID以及附属组ID:决定了我们的文件的访问权限(通常有效用户ID等于实际用户ID,有效组ID ...
- paip.花生壳 服务启动失败 以及不能安装服务,权限失败的解决
paip.花生壳 服务启动失败 以及不能安装服务,权限失败的解决 系统win7 NewPhDDNS_1.0.0.30166.exe 作者Attilax 艾龙, EMAIL:1466519819@ ...
- (2.2)学习笔记之mysql基础操作(登录及账户权限设置)
本系列学习笔记主要讲如下几个方面: 本文笔记[三:mysql登录][四:账户权限设置][五:mysql数据库安全配置] 三.mysql登录 常用登录方式如下: 四.账户权限设置 (4.1)查看用户表, ...
随机推荐
- 为Gradle添加tomcat插件,调试WEB应用
Gradle提供了不输于maven的依赖管理 提供了强大的test功能,输出优美的测试报告 并且提供war插件,使用内置的jetty调试WEB应用 因为博主偏偏钟情于tomcat,所以希望使用tomc ...
- mysql大数据导出导入
1)导出 select * from users into outfile '/tmp/users.txt';或 select * from users where sex=1 into outfil ...
- decorate装饰模式
package com.decorate; public class Iphone implements Phone{ @Override public void call() { System.ou ...
- 插件svn简单使用
首先安装服务器Server 傻瓜式样操作.下一步下一步就这样完成了,选择的是个人版. 然后打开Server的图形化界面:VisualSVN Server Manager Repositories:资源 ...
- 信息熵 Information Theory
信息论(Information Theory)是概率论与数理统计的一个分枝.用于信息处理.信息熵.通信系统.数据传输.率失真理论.密码学.信噪比.数据压缩和相关课题.本文主要罗列一些基于熵的概念及其意 ...
- 【转】Eclipse编辑shell的插件(shellEd)
原文网址:http://blog.sina.com.cn/s/blog_a42d507e01019mlp.html Eclipse官方网站:http://download.eclipse.org/ 1 ...
- Eclipse将android项目打包jar文件
Eclipse+android打包jar文件 蔡建良 2016-3-12 以Android-SlideExpandableListView开源框架为例,将源码Library打包成jar文件并包含R.c ...
- 插件五之滚动条jquery.slimscroll.js
前言 slimscroll.js用于模拟传统的浏览器滚动条(竖向),原理为原内容内置于一个仅可视区域显示层,使用2个div层用于模拟滚动条和滚动条背景轨道监听滚动条div高度变化来控制内容层位置(猜测 ...
- delphi TeeChart保存3种图片文件
var vForm: Tfrm_ChemaShowMainChild;begin vForm := GetActiveForm; vForm.cht_Edit.SaveToMetafile('C:\1 ...
- Delphi 保存写字板程序, 并进行打印
wDoc := docapp1.Documents.open(ExtractFilePath(Paramstr(0)) + 'abc.doc'); wDoc.SaveAs(ExtractFilePat ...