IP地址适配。
若业务系统客户端IP地址为外网网段,应设置电子凭证库与电子印章服务的外网地址;
若业务系统客户端IP地址为内网网段,应设置电子凭证库与电子印章服务的内网地址;
2.1.2 函数名
int SetEvoucherServiceUrl (String url);
2.1.3 输入参数
序号 1 英文名 url 数据类型 String 参数说明 电子凭证服务器url http://地址:端口/realware/services/OCXService?wsdl 2
2.1.4 输出
序号 1 英文名 数据类型 Int 参数说明 0成功、大于0错误编码 2.1.5 代码示例
String evoucherUrl =null;//电子凭证库服务地址 String estampUrl =null;//电子印章服务地址 Int a=0;//返回结果
//读取业务系统客户端IP地址,并根据网段判断IP地址是内外网 boolean isInner=this. decisionNetwork(客户端IP); If(isInner){
//客户端为内网地址,获取电子凭证库与电子印章内网地址
evoucherUrl =this.getInnerEVoucherUrl(); estampUrl =this. getInnerEStampUrl(); }else{
//客户端为外网地址,获取电子凭证库与电子印章外网地址
evoucherUrl =this.getOuterEVoucherUrl(); estampUrl =this. getOuterEStampUrl(); }
//设置电子凭证库服务地址
a=OCX. SetEvoucherServiceUrl(evoucherUrl); if(a!=0)
throw new RuntimeException(“初始化电子凭证库服务地址失败,”+ OCX. GetLastErr()); //设置电子印章服务地址
a= OCX. SetEstampServiceUrl (estampUrl); if(a!=0)
throw new RuntimeException(“初始化电子印章库服务地址失败,”+ OCX. GetLastErr()); // OCX初始化 // OCX其他操作
2.2 设置电子印章服务地址 2.2.1 功能说明
设置电子印章服务器地址,用于与电子印章服务器通讯。
电子凭证库客户端签章与验章操作都需要访问电子印章服务,若通过电子凭
3
证库服务访问电子印章,大大的降低了客户端签章与验章的性能。采用电子凭证库客户端直连电子印章服务的模式使签章、验章更加的高效。
2.2.2 函数名
int SetEstampServiceUrl (String url);
2.2.3 输入参数
序号 1 英文名 url 数据类型 String 参数说明 电子印章服务器url 吉大印章:http://地址:端口 科友印章:http://地址:端口/realware/services/AsspEStampService 2.2.4 输出
序号 1 英文名 数据类型 Int 参数说明 0成功、大于0错误编码 2.3 生成电子签章报文 2.3.1 功能说明
业务系统客户端调用此接口生成电子签章结果报文传至服务端,再由业务系统服务端调用电子凭证服务接口“写入客户端签章的凭证”保存电子凭证,完成客户端电子签章操作。
客户端签章依赖UKEY,电子印章类型分为公章与私章两类。 私章烧制入UKEY,公章需要与UKEY的证书绑定。
2.3.2 函数名
String GetVoucherStamp(String certID, String admDivCode, int stYear, String
4
vtCode, String stamp, String voucherXML)
2.3.3 输入参数
序号 1 2 3 4 5 6 英文名 certID admDivCode stYear vtCode stamp 数据类型 String String int String String String 参数说明 用户证书ID(登录用户证书id) 行政区划,最大长度15位 业务年度,4位数字,2012 凭证类型,4位字符,参见报文规范 位置信息 凭证签名(章)位置报文 voucherXML 客户端待签名 (章)凭证报文 2.3.4 输出参数
序号 1 英文名 数据类型 String 参数说明 凭证签名(章)结果报文 2.4 生成电子签名报文 2.4.1 功能说明
业务系统客户端调用此接口获取电子签名结果报文传至服务端,再由业务系统服务端调用电子凭证服务接口“写入客户端签名的凭证”保存电子凭证,完成客户端电子签名操作。
2.4.2 函数名
String GetVoucherSign(string certID, string admDivCode, int stYear, string vtCode, string certInfo,string voucherXML );
2.4.3 输入参数
序号 1 2 3 4
英文名 certID admDivCode stYear vtCode 数据类型 String String int String 参数说明 用户证书ID(登录用户证书id) 行政区划,最大长度15位 业务年度,4位数字,2012 凭证类型,4位字符,参见报文规范 5
5 6
String String certInfo voucherXML 凭证签名(章)位置报文 客户端待签名 (章)凭证报文 2.4.4 输出参数
序号 1 英文名 数据类型 String 参数说明 凭证签名(章)结果报文(NULL或者长度为0,表示失败)
2.5 凭证显示控件(OCX)
查询打印控件用于实现对电子凭证的可视化显示打印。
包括控件初始化、加载凭证和设置需要显示的凭证3个主要接口; 加载凭证:增加不带报文的接口。 辅助接口包括凭证打印接口。
2.5.1 初始化
2.5.1.1 功能说明
用于初始化显示控件,从电子凭证服务端加载电子凭证的模板。
2.5.1.2 函数名
int Initialize(String certID, String admDivCode, int stYear, String vtCode, String reserver1, int displayMode, int ParamValue, int defaultPage);
2.5.1.3 输入参数:
序号 1 2 3 4
英文名 certID admDivCode stYear vtCode 数据类型 String String int String 参数说明 用户证书ID(登录用户证书id) 行政区划,最大长度15位 业务年度,4位数字 凭证类型,4位字符,参见报文规范 6