首页 ESB部署WebService接口(统一用户和待办)

ESB部署WebService接口(统一用户和待办)

举报
开通vip

ESB部署WebService接口(统一用户和待办)统一待办(WebService方式)概述门户系统做为用户访问各集成应用系统的统一入口,用户访问企业内部信息资源时只需要登录到门户系统,就可使用门户系统集成的各个应用,而待办做为各系统中用户需要处理的工作,门户系统需要提供收集建投内部应用系统中产生的待办信息,并且进行统一展现的功能,即统一待办功能。统一待办应用业务涉及到的系统其中包括本期门户系统建设过程中所需集成的OA、WCM、EAM系统。为保证门户系统接入各应用系统待办信息的规范性,现就各应用系统接入实现做统一要求,以确保门户系统统一待办功能实现的规范性、重用性及...

ESB部署WebService接口(统一用户和待办)
统一待办(WebService方式)概述门户系统做为用户访问各集成应用系统的统一入口,用户访问企业内部信息资源时只需要登录到门户系统,就可使用门户系统集成的各个应用,而待办做为各系统中用户需要处理的工作,门户系统需要提供收集建投内部应用系统中产生的待办信息,并且进行统一展现的功能,即统一待办功能。统一待办应用业务涉及到的系统其中包括本期门户系统建设过程中所需集成的OA、WCM、EAM系统。为保证门户系统接入各应用系统待办信息的规范性,现就各应用系统接入实现做统一 要求 对教师党员的评价套管和固井爆破片与爆破装置仓库管理基本要求三甲医院都需要复审吗 ,以确保门户系统统一待办功能实现的规范性、重用性及安全性。不满足本技术方案提供的接入规则的相关应用系统,应参考本文档完成对应用系统改造后方可进行门户系统统一待办接入工作。统一待办实现共分为以下部分:系统待办信息获取系统待办信息展示系统待办信息处理待办信息获取 设计 领导形象设计圆作业设计ao工艺污水处理厂设计附属工程施工组织设计清扫机器人结构设计 思路:应用系统通过门户系统提供的webservice接口向门户系统统一待办系统库写入代表信息,如下图数据获取设计示意图步骤如下:1.应用系统需获得最新的待办信息。2.应用系统通过门户接口,将获得的最新待办信息发送到门户系统。3.统一待办系统将应用系统提供的待办信息展示给用户。4.应用系统通过调用集成接口后获得信息,可以判断发送信息操作是否正常。待办信息展示设计思路:应用系统将最新的待办信息发送到统一待办系统中,并最终展示到门户首页上的待办栏目上,如下图待办集中展示设计示意图场景如下:在所有的待办类标 快递公司问题件快递公司问题件货款处理关于圆的周长面积重点题型关于解方程组的题及答案关于南海问题 前加上”请办理”,待阅类标题前加上”请审阅”。此外,如果信息是未办或者未阅,用红色表示待办信息处理设计思路:用户点击门户系统上“待办栏目”里的一条待办时,弹出一个新页面,首先同应用系统实现SSO,然后跳转到应用系统的待办页面,完成待办处理后,由应用系统调用门户接口通知门户系统,并关闭弹出的待办处理页面,门户系统负责即时刷新门户待办页。如下图:待办信息集中处理设计示意图系统待办规范WebService服务端服务地址:http://域名:8080/jicpending/services/IPandingInterfaceWebservice?wsdl服务文件:服务方法:方法1.putPandingInfo:新待办方法2.changePangdingStatus:当OPTTYPE值为2时,则表示修改待办,当为3时,则表示删除待办方法3.仅供OA系统使用.putOaPandingInfo:新待办,方法4.仅供OA系统使用changeOaPangdingStatus:当OPTTYPE值为2时,则表示修改待办,当为3时,则表示删除待办,仅供OA系统使用服务参数:具体定义如下表表描述1新待办第一步:应用系统有新待办信息时,调用门户系统接口,将数据传送给门户系统提供的接口, 流程 快递问题件怎么处理流程河南自建厂房流程下载关于规范招聘需求审批流程制作流程表下载邮件下载流程设计 如下:WebService接口图在此过程中,各个应用系统以传递对象的形式传递参数,提供的参数自身包括的值为以下表说明,另外,OA系统传递参数的时候不用传递对象,只要依次传入以下表说明即可。属性名说明类型长度备注OPTTYPE待办操作类型String10只出现数值型字符,分别代表1:add2:modify3:delete,此外,修改操作时只修改pstatus一个字段PSCODE待办对应的应用系统编号String10由门户系统事先编制,参考应用系统统一编码表(1.3)PCODE待办编码String50待办编码,各应用系统待办的唯一标识PTITLE待办标题String200待办标题PDATE待办时间String20待办时间,日期格式如下:yyyy-MM-ddHH:mm:ssPPRINCIPAL待办人标示String100待办负责人标示,即用户登录名PURLURL地址String400待办信息URL,应用系统提供相对的URLPSTATUS待办状态String2待办状态0:待办(阅),1已阅,2:已办PORANIGER待办发起人标示String100待办发起人标示,不要PTYPE待办类别:是待办类还是待阅类String2待办类别:1.待办类(包括0、1、2三个状态):2待阅类(包括0、1两个状态)PSCODEZH应用系统编号对应的中文名称String30Eg:oa—oa系统Eam—企业资产管理系统NGRERSON拟稿人String20拟稿人NGDEPT拟稿部门String40拟稿部门WENHAO文号String60文号eg:中建投发文XX号NGDATE拟稿日期String20日期格式如下:yyyy-MM-dd表描述1WebService应用系统样例OA应用系统:publicstaticvoidmain(String[]args){Stringurl=null;try{url=java.net.Inet4Address.getLocalHost().getHostAddress().toString();}catch(UnknownHostExceptione1){//TODOAuto-generatedcatchblocke1.printStackTrace();}StringBufferserviceURL=newStringBuffer();serviceURL.append("http://").append(url).append(":8080/jicpending/services/IPandingInterfaceWebservice");try{IPandingInterfaceWebserviceservice=XfireClientFactory.getClient(serviceURL.toString(),IPandingInterfaceWebservice.class);//新待办,应用系统调用该接口进行待办数据插入操作,/**方法名:putPandingInfo()参数名:optType,psCode,pCode,pTitle,pDate,pOraniger,pPrincipal,pURL,pStatus,Ptype等各个参数具体定义如上图说明**/StringaddValue=service.putPandingInfo(optType,psCode,pCode,pTitle,pDate,pOraniger,pPrincipal,pURL,pStatus,Ptype);System.out.println("新增待办成功吗?:"+addValue);}catch(Exceptione){e.printStackTrace();}}非OA应用系统:publicstaticvoidmain(String[]args){Stringurl=null;try{url=java.net.Inet4Address.getLocalHost().getHostAddress().toString();}catch(UnknownHostExceptione1){//TODOAuto-generatedcatchblocke1.printStackTrace();}StringBufferserviceURL=newStringBuffer();serviceURL.append("http://").append(url).append(":8080/jicpending/services/IPandingInterfaceWebservice");try{IPandingInterfaceWebserviceservice=XfireClientFactory.getClient(serviceURL.toString(),IPandingInterfaceWebservice.class);//新增待办RPendingVovo=newRPendingVo();vo.setOptType("");vo.setPCode("");vo.setPscode("");vo.setPTitle("");vo.setPstatus("");vo.setPOraniger("");vo.setPPrincipal("");vo.setPDate("");vo.setPURL("");vo.setPtype("");StringaddValue=service.putPandingInfo(vo);System.out.println("新增待办成功吗?:"+addValue);}catch(Exceptione){e.printStackTrace();}}修改、删除待办第一步:应用系统需要修改待办信息时,调用门户系统接口,将数据传递给门户系统提供的接口,流程如下:传输数据方式在此过程中,需要从应用系统获得的值包括以下几个:属性名说明类型长度备注optType操作类型String10只出现数值型字符,分别代表1:add2:modify3:delete,此外,修改操作时只修改pstatus一个字段psCode待办对应的应用系统编号String10待办对应的应用系统编号,由门户系统事先编制,并在集成时提供给各应用系统pCode待办编码String50各应用系统待办的唯一标识Ptype待办类别String2待办类别:1.待办类(包括0、1、2三个状态):2待阅类(包括0、1两个状态)PPRINCIPAL待办人标示String100待办负责人标示,即用户登录名表描述2WebService应用系统样例应用系统:publicstaticvoidmain(String[]args){Stringurl=null;try{url=java.net.Inet4Address.getLocalHost().getHostAddress().toString();}catch(UnknownHostExceptione1){//TODOAuto-generatedcatchblocke1.printStackTrace();}StringBufferserviceURL=newStringBuffer();serviceURL.append("http://").append(url).append(":8080/jicpending/services/IPandingInterfaceWebservice");try{IPandingInterfaceWebserviceservice=XfireClientFactory.getClient(serviceURL.toString(),IPandingInterfaceWebservice.class);//修改、删除待办,应用系统调用该接口进行待办数据修改、插入操作,/**方法名:changePangdingStatus()参数名:optType,psCode,pCode,pTitle,pDate,pOraniger,pPrincipal,pURL,pStatus,Ptype等各个参数具体定义如上图说明**///修改待办,当optType=2StringmodifyValue=service.changePangdingStatus(optType,psCode,pCode,Ptype);System.out.println("修改待办成功吗?:"+modifyValue);//删除待办,当optType=3StringdeleteValue=service.changePangdingStatus(optType,psCode,pCode,Ptype);System.out.println("删除待办成功吗?:"+deleteValue);}catch(Exceptione){e.printStackTrace();}}统一代办新增:putOaPandingInfo、putPandingInfo属性名说明类型长度备注OPTTYPE待办操作类型,不能为NullString10只出现数值型字符,分别代表1:add2:modify3:deletePSCODE待办对应的应用系统编号,不能为NullString10由门户系统事先编制,参考应用系统统一编码表PCODE待办编码,不能为NullString50待办编码,各应用系统待办的唯一标识PTITLE待办标题,不能为NullString200待办标题PDATE待办时间,不能为NullString20待办时间,日期格式如下:yyyy-MM-ddHH:mm:ssPPRINCIPAL待办人标示,不能为NullString100待办负责人标示,即用户登录名PURLURL地址,不能为NullString400待办信息URL,应用系统提供相对的URLPSTATUS待办状态,不能为NullString2待办状态0:待办(阅),1已阅,2:已办PTYPE待办类别:是待办类还是待阅类,不能为NullString2待办类别:1.待办类(包括0、1、2三个状态):2待阅类(包括0、1两个状态)PSCODEZH应用系统编号对应的中文名称,不能为NullString30Eg:oa—oa系统EAM—企业资产管理系统NGRERSON拟稿人,不能为NullString20拟稿人NGDEPT拟稿部门,不能为NullString40拟稿部门WENHAO文号String60文号eg:中建投发文XX号NGDATE拟稿日期,不能为NullString20日期格式如下:yyyy-MM-ddPNOTE备用,当做待办所属模块String255Eg:发文管理修改、删除:changeOaPangdingStatus、changePangdingStatus属性名说明类型长度备注optType操作类型String10只出现数值型字符,分别代表1:add2:modify3:deletepsCode待办对应的应用系统编号String10待办对应的应用系统编号,由门户系统事先编制,并在集成时提供给各应用系统pCode待办编码String50待办编码,各应用系统待办的唯一标识Ptype待办类别String2待办类别:1.待办类(包括0、1、2三个状态):2待阅类(包括0、1两个状态)PPRINCIPAL待办人标示String100待办负责人标示,即用户登录名统一用户管理统一用户管理的必要性在门户系统建设之前,各应用系统分别具有各自独立的用户账户和权限管理体系,企业内部不同的用户群体在访问不同的应用系统时,需要分别进行身份的认证和授权,用户与应用系统之间相互交叉形成了一个网状的身份管理架构,如下图所示。用户在访问不同的系统时需要输入不同的账号和口令,不仅不方便,而且有安全隐患。门户系统的建成和投入使用,使用户能够通过Portal这个统一的入口、利用单点登录(SingleSign-On)技术实现对后台多个应用系统的统一访问,解决了上述的网状身份架构带来的问题。这是门户系统的一项重要功能和收益。但是对于IT系统管理和维护人员来说,目前并没有带来方便。甚至经常为门户与后台各应用系统身份信息不能自动保持一致等一系列问题而感到头疼。其原因在于虽然通过门户实现了用户的统一登录,但是对身份信息的维护和管理仍然是分散的,如下图所示。用一句话来概括就是:用户可以通过门户实现统一登录,但是用户信息的维护和管理仍然是分散的,即“统一登录,分散管理”。分散的用户管理必将带来以下各种弊端:系统之间无法共享用户基本数据,造成信息冗余用户的身份信息不能在系统间自动保持一致和同步用户管理分散,维护工作量巨大存在安全隐患缺乏用户管理流程保障难以量化管理用户身份信息,不能满足身份安全审计的要求用户信息同步设计按照各应用系统及应用使用数据库类型进行区分,数据同步设计分为如下几种同步方式:邮件系统用户数据同步和J2EE类应用系统用户数据同步一致,调用门户中间数据库接口。DominoOA用户数据同步通过邮件系统同步用户到dominoOA的names.nsf库,但是如果OA系统需要同步部门的话,则调用门户提供的部门同步服务接口。J2EE类应用系统用户数据同步对于J2EE类通过JAVA开发实现的应用系统,统一安全层的用户数据采用“主动”方式与应用系统进行用户数据交互,如下图所示:主动方式说明应用系统通过中间数据库提供的JAVA应用API接口,按照一定时间规则通过轮寻方式读取中间用户数据库中的用户数据,并同步到应用系统对应用户数据库表中。设计步骤如下图所示具体步骤:TDI脚本通过LDAPChangelog读取变化的用户或者组织机构数据TDI脚本将数据写到TIM中完成 标准 excel标准偏差excel标准偏差函数exl标准差函数国标检验抽样标准表免费下载红头文件格式标准下载 动作,同时也将数据写到中间数据库中。各应用系统按照一定时间规则通过轮寻方式调用门户的webservice接口请求从中间数据库中读取有变化的用户或组织机构数据。门户webservice接口将获得的数据返回给各应用系统,各应用系统将数据同步到对应的用户或机构数据库表中门户用户数据源门户系统用户分为两类,第一是:实名用户,第二是:虚拟用户1.实名用户:此类用户可以同时存在多个部门,产生自OA流程,在OA流程审批后,调用门户系统提供的WebService接口,把数据放入门户系统中间数据库。WebService服务端服务地址:http://域名:8080/jicdsource/services/IDsInterfaceWebservice?wsdl服务参数:具体定义如下表NameTypeNullable属性描述C_CODEVARCHAR2(10)Y员工编号C_NAMEVARCHAR2(200)Y员工姓名C_UNITCODEVARCHAR2(200)Y员工所属部门唯一标识,可以有多值,以#分开C_UNITNAMEVARCHAR2(200)Y员工所属部门名称,可以有多值,因为一个员工可以同时在多个部门,以#分开C_GENDERVARCHAR2(2)Y性别:1男2女CUIDENTITYNUMBERVARCHAR2(20)Y身份证号码,只针对实名用户MAILVARCHAR2(50)Y个人内网电子邮件CUEXECPOSITIONLEVELVARCHAR2(10)Y行政职务级别MOBILEVARCHAR2(20)Y手机号码TELEPHONENUMBERVARCHAR2(20)Y办公电话PHYSICALDELIVERYOFFICENAMEVARCHAR2(200)Y办公地点CUORDERVARCHAR2(20)Y部门内人员排序,无排序写"50000"CUPOSTVARCHAR2(50)Y现从事岗位CUEXECPOSITIONVARCHAR2(50)Y行政职务CUFORMALVARCHAR2(10)Y当前用户是实名还是虚拟,1:实名2:虚拟CHANGETYPEVARCHAR2(20)Y修改类型,1:add,2:modify,3:deleteCHANGETIMEVARCHAR2(20)Y修改时间,格式如:20090922151118PRINCIPAIDVARCHAR2(10)Y虚拟用户:负责人唯一标识TUSERIDVARCHAR2(10)Y虚拟用户:使用人唯一标识PRINCIPANAMEVARCHAR2(10)Y虚拟用户:负责人姓名TUSERNAMEVARCHAR2(10)Y虚拟用户:使用人姓名SYSTEMCODEVARCHAR2(50)Y业务系统编号SYSTEMNAMEVARCHAR2(100)Y业务系统名称2.虚拟用户:即临时用户。包括负责人和使用人两个属性,负责人必须从实名用户中选择,使用人可以是多人,来自于文本填写,或者也可以提供选择非实名的用户。具体信息如实名用户表说明门户部门数据源门户部门数据来自于OA流程。WebService服务端服务地址:http://域名:8080/jicpending/services/DSInterfaceWebservice?wsdl服务参数:具体定义如下表NameTypeNullable属性描述C_CODEVARCHAR2(20)N部门唯一标识C_UNITNAMEVARCHAR2(200)Y部门全称C_PARENTUNITIDVARCHAR2(200)Y上级部门编码,真实的直属上级CUORDERVARCHAR2(200)Y排序号,若无排序号写1000CUFORMALVARCHAR2(10)Y是否是临时部门:1.正式2.临时CHANGETYPEVARCHAR2(10)N部门操作类型:1表示添加2表示修改3表示删除CHANGETIMEVARCHAR2(20)N修改时间,格式如:20090922151118DEPTLEVERVARCHAR2(100)Y部门级别DEPTLEADERVARCHAR2(100)Y部门领导CUBAK3VARCHAR2(100)Y备用字段CUBAK4VARCHAR2(100)Y备用字段CUBAK5VARCHAR2(100)Y备用字段CUBAK6VARCHAR2(100)Y备用字段CUBAK7VARCHAR2(100)Y备用字段同步用户、部门到应用系统服务地址:http://域名:8080/jicpending/services/IPandingInterfaceWebservice?wsdl服务文件:服务方法:方法1.putDsDeptInfo:新增部门方法2.modifyDsDeptInfo:修改部门方法3..deleteDsDeptInfo:删除部门方法4.putDsUserInfo:新增用户方法5.modifyDsUserInfo:修改用户方法6.deleteDsUserInfo:删除用户同步方式如1.3.3J2EE类应用系统用户数据同步所述。//同步用户serviceURL.append("http://").append(url).append(":8080/jicamp/services/DSInterfaceWebservice");try{DSInterfaceWebserviceservice=XfireClientFactory.getClient(serviceURL.toString(),DSInterfaceWebservice.class);//新增用户DsUserInfoVovo=newDsUserInfoVo();vo.setCCode("");vo.setCName("");vo.setCUnitcode("");vo.setCUnitname("");vo.setCGender("");vo.setCuidentitynumber("");vo.setMail("");vo.setCuexecpositionlevel("");vo.setMobile("");vo.setTelephonenumber("");vo.setPhysicaldeliveryofficename("");vo.setCuorder("");vo.setCupost("");vo.setCuexecposition("");vo.setChangetime("");vo.setChangetype("");vo.setCuformal("");//vo.setPrincipaid("");//vo.setTuserid("");//vo.setPrincipaname("");//vo.setTusername("");vo.setSysId("");vo.setSystemcode("");vo.setSystemname("");//新增用户StringaddValue=service.putDsUserInfo(vo);System.out.println("新增用户成功吗?:"+addValue);//同步部门StringBufferserviceURL=newStringBuffer();serviceURL.append("http://").append(url).append(":8080/jicamp/services/DSInterfaceWebservice");try{DSInterfaceWebserviceservice=XfireClientFactory.getClient(serviceURL.toString(),DSInterfaceWebservice.class);Jicdeptinfojicdeptinfo=newJicdeptinfo();jicdeptinfo.setCOid(10);jicdeptinfo.setCCode("");jicdeptinfo.setCUnitname("");jicdeptinfo.setCParentunitid("");jicdeptinfo.setCuorder("");jicdeptinfo.setCuformal("");jicdeptinfo.setChangetype("");jicdeptinfo.setChangetime("");//新增部门StringaddValue=service.putDsDeptInfo(jicdeptinfo);System.out.println("新增部门成功吗?:"+addValue);需要的其它服务这些服务提供的是验证用户或修改密码的服务。如下:应用系统用户认证服务:应用系统在单独访问自己系统的时候,调用门户系统提供的访问ldap接口,根据用户登录ID,密码,所登录系统的标识,来判断该登录系统的用户是否在,如果存在则登录成功,否则返回。loginid为用户名,pwd为密码(密文),sysidentify(系统标识).publicStringuserValidate(Stringloginid,Stringpwd,Stringsysidentify)输出样例:返回值为true,则认证通过用户,返回出错时,则根据返回的结果进行友好提示。1.提示用户名不存在2.提示密码不对3.提示该用户没有访问系统权限.门户密码修改服务:该服务提供修改门户系统密码功能,可以使用IBM的itim_expi.war来实现这个功能。该功能会提供一张修改密码页面,只要输入门户系统用户名、旧密码、新密码,则修改成功。验证应用系统用户是否存在根据用户登录ID,查询该用户在ldap上是否存在,loginid为用户名publicStringisExistUserInfo(Stringloginid)输出样例:返回值为true,则存在此用户,false,则不存在此用户。获取应用系统用户信息根据用户登录ID、系统标识取出用户的信息,loginid为用户名publicStringgetSpecifyUserInfo(Stringloginid,Stringsysidentify)输出样例:getSpecifyUserInfo1成功zhangxiaomingadmin1000000000000000管理员11OA系统输出XML文件说明method元素:处理操作的方法名code元素:1(登录成功)、2(用户已注销)3(用户名或密码不正确)4(系统标识错误)message元素:登录说明信息loginid元素:登录名Empnumber:员工编号identify元素:身份证号username元素:用户姓名status元素:0(已注销)、1(已激活)systemcode元素:系统编号Systemname元素:系统名称Systemurl元素:系统URL调用服务示例Stringendpoint="http://域名:9080/jicds/webservice/Authenticate.jws"Serviceservice=newService();Callcall=(Call)service.createCall();call.setTargetEndpointAddress(newjava.net.URL(endpoint));call.setOperationName("getSpecifyUserInfo");//填写要调用的方法名称byte[]key="JxO092?#08xjx?Qsb1|a2008".getBytes();Stringret=(String)call.invoke(newObject[]{"admin",DESFunction.EnycrptDes("888888",key)});System.out.println(""+ret);映射表设计和维护门户系统建立用户映射对照关系采取如下的方式:1、用户自助对照关系维护:员工可以在登录门户系统后,在门户系统中提供的页面上对个人已经集成的用户映射进行维护,用户可以根据实际工作情况修改个人在各应用系统中进行单点登录时使用的用户角色,在经过应用系统提供的webservice接口校验信息正确性后,信息将写入对方应用系统用户映射表,以便应用系统进行后续认证工作。业务流程如下:应用系统需按照如下方式提供信息验证返回信息:WebService服务名服务名:CheckUserService公共接口定义CheckUser处理验证用户名及密码是否正确输入参数名称描述数据类型username应用系统登录名户名StringPassword应用系统登录密码String输出参数名称描述数据类型result返回字符串,0:失败1:成功。String应用系统统一编码表规范定义:对于有英文简称的系统采用该英文简称,对于没有英文简称的系统,采用系统中文拼音首字母组成系统编码。对于本次门户的所有接口开发,如果涉及到系统编码都必需遵照此编码表内系统编码定义。系统名称系统编码OA系统oa邮件系统mailTRSWCM系统wcmEAM系统eam
本文档为【ESB部署WebService接口(统一用户和待办)】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
个人认证用户
筱希
暂无简介~
格式:doc
大小:997KB
软件:Word
页数:30
分类:
上传时间:2022-07-12
浏览量:0