文档编号
文档版本
密级
MT-FA-2013-12-09-001
1.0
公开
产品名称:Free AS2
共 页
Free AS2
用户手册
目录
6.2 系统启动时停止在Initializing c3p0. 21
1 引言
1.1 文档目的
本文档描述Free AS2产品的使用,目标读者包括产品实施人员和客户技术人员.
1.2 作者
姓名
公司
电话
邮件
Jamie
旻天信息
1.3 文档历史
版本
日期
修改者
描述
1.0
2013/12/6
原始版本
1.4 相关约定
无
1.5 联系方法
如有任何问题,请email到info@mttk.com.cn
公司网站 http://www.mttk.com.cn (中文)
2 概述
2.1 简介
Free AS2是一个开源的软件, 实现了EDIINT AS2 1.1标准,包括加密,数字签名,压缩,同步和异步(部分支持)MDN。
本软件完全基于Java技术开发,支持Windows和Linux平台(Unix未测试).
关于AS2协议请参考相关文档.
限制
– 部分支持异步MDN
– 不支持Cluster安装
2.2 产品组成
组成
功能
Free AS2
系统运行环境
可作为Windows服务或Linux/Unix后台程序
Admin Console
Web界面,主要包括配置和监控的功能
2.3 名词
名词
说明
EDIINT AS2
是由IETF工作组定义的通过互联网传输EDI报文的协议,由RFC 4130描述。
MDN
Message Disposition Notification,说明收到AS2消息的回执
AS2 ID
AS2编号,每个AS2参与方用于标识自身的唯一编号,可以是DUNS码,也可以是其他任意字符
本地
Owner,本文中指安装Free AS2的站点对应的AS2 ID
对于发送,指的是发送方;对于接收,指的是接收方
合作伙伴
Partner,本文中指安装Free AS2的站点对应的外部合作伙伴的AS2 ID
对于发送,指的是接收方;对于接收,指的是发送方
3 安装
3.1 硬件环境
无特殊要求,能够运行对应的Java虚拟机即可。
3.2 软件环境
类型
产品
结果
操作系统
Windows
Windows 7 ,Windows XP, Windows 2008测试通过
其他版本按客户需要测试
Linux
Cent OS (2.6.xx核心) 测试通过
其他版本按客户需要测试
Unix
未测试
数据库
HSQL DB
测试通过(内置)
My SQL
测试
Microsoft SQL
Server
未测试
Oracle
未测试
其他DB
未测试
Java
Oracle JRE
1.5不支持
1.6,1.7测试通过
其他JRE
未测试
注意:系统缺省支持HSQL DB, 开发时使用My SQL数据.
如果需要其他数据库支持请与我联系.
3.3 安装步骤
3.3.1 安装前的检查工作
编号
项目
要求
结果
1.1
硬件
符合硬件环境章节要求
1.2
操作系统
符合软件环境章节要求
1.3
数据库
系统缺省使用HSQL DB,无需安装
如需使用其他数据库请与我联系
1.4
Java
符合软件环境章节要求
1.5
网络
如本系统需要被外部系统访问,需要稳定的网络连接和固定IP外部地址(或IP地址映射)
3.3.2 数据库安装
无
3.3.3 软件安装
用解压软件(winrar, winzip等)解压FreeAS2.zip到某目录,如c:\FreeAS2.目录名中不要包含特殊字符,空格.
3.3.4 后续安装
*修改Tomcat***端口(**可选)
缺省的系统管理界面运行在828端口,外部HTTP监听运行在825端口.如需要修改,打开文件conf\tomcat.xml并修改相应位置。
分开两个端口好处是外部端口肯定会对外部开放,管理界面运行的端口可以不对外开放,从而获得更好的安全性。
**注意**tomcat.xml是标准的tomcat配置文件(tomcat中标准名称为server.xml),如果需要其他设置,如HTTPS、用户验证也可以实现。
安装Java****虚拟机
系统缺省带了64位的Windows版本Java运行环境,如果不匹配,请下载对应操作系统系统的Java运行环境(JRE),并安装或解压到目录runtime\jre下,替换当前已安装JRE.
设置Java****虚拟机参数
Windows环境下,在文件chub.bat取消如下注释(去掉第二行的rem),
Linux/Windows下,在文件chub.sh中取消如下注释(去掉第二行的#)
Java虚拟机参数含义请参考对应Java文档
注意,如果安装程序windows服务,修改内存不在此处,请参考”安装成Windows服务”章节.
由于32位Java最大内存限制(命令行执行为3.2G,Windows服务执行为1G),强烈推荐使用64位Java虚拟机.
设置日志级别
conf/ log4j.xml是标准的log4j日志配置文件。详细配置请参考log4j相关文档.
3.3.5 安装测试
在浏览器中输入 http://yourip:828/admin/
Yourip是你安装服务器的IP,如在本地可以访问http://localhost:828/admin/
缺省登录 用户:admin 密码:123456
当看到登录页面时安装成功
3.3.6 目录结构
安装完成后,安装目录下目录结构如下
目录
说明
bin
脚本目录
startup.sh(startup.bat) 启动本产品
shutdown.sh(startup.bat) 停止本产品
installService(64).bat 安装成windows服务
uninstallService(64).bat 卸载windows服务
子目录jsl为安装成windows服务需要的代码和配置
conf
配置目录
data
数据目录
子目录payload下为报文库,分别存放在不同目录下
子目录db下存放hsqldb数据库的数据
doc
文档目录
lib
Jar包存放目录,其下以及子目录下的所有文件都会在启动时加载
log
日志目录
runtime
运行需要的一些第三方程序
jre java运行环境
tomcat Tomcat服务器
temp
临时目录,用户可定期清除
Test
存放测试配置和数据,正式运行可删除
webapps
Web 应用存放目录
子目录internal下存放内部Web应用,如Admin Console,缺省在828端口监听
子目录public下存放外部Web应用,如供外部系统调用的HTTP监听,缺省在825端口监听
3.3.7 安装成Windows服务
本步骤仅仅对Windows有效。
运行bin\installService.bat(针对32位Windows)或bin\installService64.bat(针对64位Windows)安装服务,安装成功后能看到如下服务
如需高级配置,请编辑文件jsl.ini(针对32位Windows)或jsl64.ini(针对64位Windows),虚拟机内存配置请在此配置文件中设置相应启动项.
卸载Windows服务运行bin\uninstallService.bat(针对32位Windows)或bin\uninstallService64.bat(针对64位Windows)
注意:
Windows 7下可能会发生”OpenSCManager failed”的错误.这是需要使用管理员运行,可能的解决方法为:
– runas /user:administrator cmd (输入管理员密码)
– cd c:\FreeAS2 \bin (进入FreeAS2安装目录的bin目录)
– installService64.bat (运行)
3.3.8 软件卸载
本系统安装和运行不会访问任何注册表或其他系统目录,卸载过程只需要删除对应的文件和数据库
s 卸载Windows service
s 删除系统目录
3.4 数据备份
系统管理界面中提供配置备份/恢复功能,可用于快速备份和恢复。具体包括合作伙伴数据,发送配置,接收配置,全局参数,用户。
另外还可以采用简单的备份目录的方法,所有数据都存放在安装目录下的data目录,可以根据需要备份或恢复。
3.5 外部访问URL
AS2消息接收URL
http://yourip:825/listener/AS2Listener
AS2 MDN接收URL
http://yourip:825/listener/AS2MDNListener
注意:yourip是Free AS2安装服务器的外部IP.如果有防火墙,可能做了IP地址或端口的映射,此时URL请联系网络管理员。
4 快速开始
4.1 说明
本章节通过一个发送和接收的场景演示AS2的配置.
4.2 演示场景
Your company
MTTK
目录: test\yourcompany\outbound
目录: test\mttk\inbound
AS2 发送
AS2 接收
AS2发送和接收需要两套AS2系统,本文档为了方便,使用一套系统模拟发送和接收.
系统有两个AS2 ID:yourcompany和mttk. Yourcompany用于发送,发送的数据来自目录Free AS2 安装目录下的test\yourcompany\outbound.mttk接收数据后存放数据到test\mttk\inbound.
4.3 导入配置
Free AS2正确安装后,除了管理员用户外没有其他配置数据。本步骤添加应用于以上测试场景的配置。
进入管理界面后,在菜单中选择实用工具/配置迁移
在导入中选择文件 test\config\ migration_loop_test.zip后点击导入按钮。
激活发送配置。
下章节描述导入的配置。
4.4 配置详解
4.4.1 合作伙伴
包括两个合作伙伴的配置
yourcompany
mttk
4.4.2 发送配置
发送配置每10秒轮询目录${serverHome}/test/yourcompany/outbound,并发送
注意:一定要记得激活发送配置。
4.4.3 接收配置
所有接收到的AS2报文都会保存到目录test/mttk/inbound下
4.5 其他配置
本次导入还会导入警告配置,内容为空。
4.6 测试
拷贝任意文件到目录test\yourcompany\outbound
等待10秒,发送成功的文件会移动到目录test\yourcompany\outbound\ok下
注意:如果文件较大,发送会花费较多时间.
接收的文件会存放到test\mttk\inbound
在管理界面中能够看到一条发送记录和一条接收记录
5 管理控制台Admin Console
5.1 浏览器支持
Admin Console基于jQuery2.x技术开发,支持主流浏览器IE 9或以上版本, Firefox, Safari, Opera.
5.2 URL
http://your server ip:828/ChubAdmin
把your server ip替换成Free AS2产品安装服务器的IP地址即可访问.
如本地访问,URL为
http://localhost:828/ChubAdmin
5.3 替换词汇
部分字段录入时支持使用替换词汇,从而获得较好的灵活性。
替换词汇格式为: ${替换词汇}
词汇
描述
owner
AS2本地
partner
AS2合作伙伴
subject
AS2标题
messageId
AS2消息编号
payloadFileName
报文文件名
localFileName
本地文件名
serverHome
Free AS2安装目录
uuid
UUID,唯一
serial
日期+序号,唯一
yyyymmdd
4位年份,两位月份,两位日期,如20131207
yymmdd
2位年份,两位月份,两位日期,如131207
hhmm
2位小时,两位分钟,如1503
hhmmss
2位小时,两位分钟,两位秒,如150334
注意:灰色底纹的词汇对所有支持替换词汇的字段都适用.
5.4 登录
登陆界面可以选择中文和英文如需其他语言支持请与我联系.
输入用户名和密码后点击”登录”按钮登录.
修改主题可以修改页面风格和布局。
5.5 主界面
主界面右上方是”登出”按钮,单击后回退到登录界面.
左面上方是当前登录用户名;中部是菜单区域;最下面是版权信息.
右边是内容区域.
单击左边菜单可以在右边区域显示对应内容。也可以在菜单上按右键,选择在新窗口或新选择项打开对应的菜单项。
注意:选择不同的主题,界面会有所不同。
5.6 仪表盘
分类
项目
含义
服务器信息
服务器目录
本产品安装的目录
服务器信息
服务器版本
版本号
服务器信息
启动时间
服务器启动时间
服务器信息
内部Web监听端口
本端口用于Admin Console的访问
服务器信息
外部Web监听端口
本端口用于外部系统的访问
Java虚拟机信息
处理器数量
运行的硬件的处理器(内核)数量
Java虚拟机信息
未使用内存
Java虚拟机内未使用内存
Java虚拟机信息
总内存
Java虚拟机的当前总占用内存
Java虚拟机信息
最大内存
Java虚拟机试图使用的最大内存(不是硬件的最大内存)
Java虚拟机内存占用设置参考安装章节
Java虚拟机信息
Java版本
Java版本号
Java虚拟机信息
Java位数
32位或64位
Java虚拟机信息
用户目录
取自环境变量user.dir
5.7 事务查看
事务监控是系统监控的核心,显示所有接收和发送的报文.
最上面是查询条件,字段含义参考流程详细章节.部分输入字段都支持模糊查询.
查询条件
含义
本地
本地
合作伙伴
合作伙伴
方向
全部/发送/接收
状态
成功:数据发送/接收成功
失败:数据发送/接收失败
等待回执:发送且设置为异步MDN时,发送成功但MDN未接收的状态
标题
AS2标题
AS2消息编号
AS2消息编号
日志时间开始
记录日志时间开始,缺省是今天零点
日志时间结束
记录日志时间结束
本地完整文件名
对于发送,指本地发送的文件名;对于接收,是本地保存的文件名
支持模糊查询
报文文件名
发送方设置的报文文件名
支持模糊查询
最下面是列表显示框,显示查询结果.列表框下部工具栏可以选择每页包含记录数量以及在页面间导航.
双击或单击日志时间后可以打开详细界面
整个界面包括基础信息和错误详细。错误详细在出错时给出详细的java错误堆栈。
5.8 日志查看
列出所有日志并可下载
5.9 合作伙伴
主界面列出所有的合作伙伴。
工具栏可以增加,修改和删除合作伙伴。也可以在列表中单击“AS2编号“栏直接编辑。
合作伙伴详细界面包含如下字段
字段
可用性
描述
AS2编号
全部
每个AS2合作伙伴的唯一标识
合作伙伴类型
全部
本地/合作伙伴/都是:
都是代表既可以是本地,又可以是合作伙伴,往往用于测试
名称
全部
可选
描述
全部
可选
加密证书
全部
证书或私钥需要输入完整的路径,可以使用如下替换词汇:owner,partner,subject,serverHome
证书支持二级制格式以及base64格式,不支持pcks7格式。
不支持keystore.
仅仅是AS2发送时选择了加密或签名或接收了加密或签名的AS2消息时才需要填写对应的数据。
签名证书
全部
加密私钥
类型为“全是“或“本地“时
签名私钥
类型为“全是“或“本地“时
加密私钥密码
类型为“全是“或“本地“时
签名私钥密码
类型为“全是“或“本地“时
强制签名消息
类型为“全是“或“ 合作伙伴“时
未实现,请忽略
强制签名回执
类型为“全是“或“ 合作伙伴“时
未实现,请忽略
5.10 接收配置
列出了所有的接收配置,系统收到AS2消息后会按照从上到下的顺序匹配接收配置。可以通过上移和下移按钮调整顺序。
接收配置详细包含如下字段
字段
描述
序号
从1开始,数字越小越先匹配
名称
必填
描述
可选
本地
“*“代表匹配全部,用于匹配接收的AS2消息
合作伙伴
“*“代表匹配全部,用于匹配接收的AS2消息
标题
“*“代表匹配全部,用于匹配接收的AS2消息
激活
没有激活的不参加匹配
目录
接收文件存放的目录,如果不存在,系统会自动创建。
文件名
接收文件存放的文件名。
覆盖
如果目标文件存在,是否覆盖。
注意:目录和文件名支持如下的替换词汇: partner, owner, subject, messageId, payloadFileName, serverHome
5.11 发送配置
列出所有的发送配置,按钮区域可以激活或禁用。只有激活的配置才开始轮询操作。
字段含义如下
基本部分
字段
描述
名称
必填
描述
可选
轮询目录
支持如下替换词汇:partner, owner, serverHome
搜索深度
数字,轮询子目录的层次
文件名过滤(包含)
文件名匹配,空代表匹配所有
文件名过滤(不包含)
不匹配的文件名,空代表不匹配任何文件
后续处理
发送成功后的对发送文件的处理方式
删除:
备份:移动到备份目录
添加后缀:添加给定后缀。下次发送时需要过滤掉添加后缀的文件,否则会发生重复发送的情形。由于可能导致目录下文件很多,影响效率,不推荐使用。
备份目录
当后续处理为备份时有意义,给出备份的目录。
支持如下替换词汇:partner, owner, serverHome
后缀
当后续处理为添加后缀时有意义,给出添加的后缀
处理错误目录
发送错误时文件存放目录。
支持如下替换词汇:partner, owner, serverHome
最多每次处理文件数
每次轮询最多处理的文件数。
轮询周期(秒)
系统会根据此时间间隔检查目录下是否有需要发送的文件。
激活
激活标记,通过列表界面按钮激活或禁用。
AS2部分
字段
描述
本地
发送方
合作伙伴
接收方
标题
支持如下替换词汇:partner,owner,subject,localFileName,serverHome
报文文件名
支持如下替换词汇:partner,owner,subject,localFileName,serverHome
报文文件类型
报文对应的content type,如application/octet-stream
压缩
是否压缩
签名
是否签名
签名算法
列表选择
加密
是否加密
加密算法
列表选择
回执模式
支持“无”,“同步”和“异步”三种模式
回执签名
是否要求回执签名
回执URL
仅仅针对异步回执,给出异步回执发送到的URL
回执过期时间(秒)
仅仅针对异步回执,从AS2消息发出到接收到回执的最长允许时间
HTTP部分
字段
描述
URL
对方接收AS2消息的URL
基本认证
对方URL是否需要基本认证
用户名
仅仅选择基本认证后有意义
密码
仅仅选择基本认证后有意义
连接超时
单位为秒
读取超时
单位为秒
保持活跃
对应HTTP参数 keepAlive
使用缓存
对应HTTP参数 useCache
5.12 警告配置
配置使用SMTP发送报警邮件
字段
描述
启用
是否启动错误报警
邮件接收方
报警邮件接收方,允许使用分号分割多个邮件地址
邮件发送方
邮件发送方邮件地址
邮件服务器
邮件服务器IP或域名
邮件服务器端口
端口,缺省为25
用户
登录邮件服务器的用户名。如果不需要身份认证,设置为空
密码
5.13 用户管理
设置用户信息.
新建或修改用户时可以输入“密码“和“重复密码“用来设置或修改密码.
5.14 配置迁移
导出配置
单击 后选择希望保存的位置。
导入配置
首先浏览希望导入的配置文件(以前通过导出功能生成)
单击
配置说明
导入导出配置包括合作伙伴、发送配置、接收配置、全局配置和用户。
5.15 数据清理
选择希望清理的数据后单击
字段
描述
启动清理日志
清理所有类型的事务日志
清理时限(天)
超过多少天的数据会被清理
启动清理错误日志
清理出错类型的事务日志
清理时限(天)
超过多少天的数据会被清理
启动清理报文
保存在data\payload目录下的报文
清理时限(天)
超过多少天的数据会被清理
5.16 帮助
旻天信息科技信息
Cloud Hub产品信息
6 常见问题和解答
6.1 如何进行性能优化
本产品设计不是针对流量非常大的应用场景设计,不推荐在流量非常大的场景下使用本系统。
系统性能可以从如下方面优化系统
n 设置Java虚拟机内存站用
具体设置参考安装章节.当Free AS2作为服务器单独运行时,推荐最大内存使用为硬件内存的1/2或2/3.
6.2 系统启动时停止在Initializing c3p0
画面如下
A: 本错误是由于数据库服务器没有启动,不可访问或数据库连接字符串配置错误。此时系统正在尝试重试连接。
6.3 Linux/Unix端口无法绑定
A:Linux或Unix下小于1024的端口需要root权限才能绑定,可以使用root启动或修改端口号大于1024.
6.4 如何替换JRE(Java 运行环境)
系统下载时已经带了64位的Windows版本JRE,如果希望替换按照如下步骤操作:
– 下载符合目标操作系统的Java JRE (1.6或以上版本)
– 删除当前runtime/jre下文件
– 用下载的JRE替换,与删除前目录结果相同
– 升级JCE .从Java官方网站下载JCE包并按照说明安装.(如未升级JCE在使用某些协议和超过一定长度证书时会出错)
6.5 如何升级tomcat
A:删除runtime/tomcat下所有文件并用新版本替换
[修改日志使用LOG4J]
从tomcat官网下载文件tomcat-juli-adapters.jar并拷贝到runtime\tomcat\lib目录下
从tomcat官网下载文件tomcat-juli.jar并拷贝到lib目录下
7 旻天公司和Cloud Hub
7.1 旻天公司
旻天信息科技(上海)有限公司是专业的商务集成提供商.
公司业务涵盖企业内部应用系统集成(Enterprise Application Integration, EAI), 合作伙伴应用系统集成(Business to Business Integration,B2Bi和Electronic Data Interchange, EDI)以及智能设备集成(Internet of Things, IOT, 物联网), 包含产品销售,专业服务,解决方案以及云服务.
7.2 Cloud Hub
Cloud Hub Cloud Hub是旻天信息科技的旗舰产品,是一个通用的商务集成平台,能够涵盖EAI(Enterprise Application Integration,企业内部应用系统集成)、B2Bi(Business to Business Integration, 企业实体间的电子数据交换)的需求,对于IOT(Internet of Things,物联网)的设备集成也提供很好的支持.
如果希望就Cloud Hub进行合作,请与我联系 info@mttk.com.cn
7.3 Cloud Hub vs Free AS2
与Free AS2相比,Cloud Hub是一个完整的集成平台,具体包括如下方面的增强
– 协议支持:支持更多的外部和内部集成协议,并支持定制新的协议
– 数据映射:支持任意格式到任意格式的数据映射
– 流程:通过流程编排实现复杂的处理
– 路由:支持对消息的路由,从而实现不同的处理流程
– 稳定性:支持24*7的运行和大流量数据的支持;支持通过通道实现不同优先级报文的分流处理;永不丢消息
– 重试:内置完善的自动重试机制
– 更多...
8 下一步
开源计划
下载量越大,开源的代码越多
下载量(年)
开源
1000
Free AS2 管理界面部分
5000
Free AS2后台程序
10000
实现AS2的核心代码库
更多
可能会考虑开源部分或全部cloud hub代码
开发计划
Free AS2的下一步开发重点如下
– 支持异步MDN
– 实现对AS2 1.2的支持
– 实现证书管理器统一管理所有的证书
– (可能)使用Jetty替换Tomcat,从而减少安装包大小
– (可能)去掉Spring从而减少安装包大小
如果有任何意见和建议,请与我联系 info@mttk.com.cn