基于OpenAS2 V2.3.0的使用心得 二 之配置 一时失言乱红尘 2022-06-15 06:06 943阅读 1赞 ## 我们接着昨天的说,昨天我们完成了openas2 2.3.0的环境搭建和启动! ## 今天我们讲一讲基 于我们自定义的openas2的配置! 1. 首先我们讲讲启动脚本,start.bat的配置,我们在一个机器上不可能只有一个java版本,当我们不想改变系统的环境变量为1.8的时候,我们可以通过如下的更改完成Openas2的启动: ![Center][] ## 2.config.xml的配置说明 ## <openas2> <properties sql_timestamp_format="yyyy-MM-dd HH:mm:ss.SSS" as2_message_id_format="OPENAS2-$date.ddMMyyyyHHmmssZ$-$rand.UUID$@$msg.sender.as2_id$_$msg.receiver.as2_id$" /> <certificates classname="org.openas2.cert.PKCS12CertificateFactory" filename="%home%/as2_certs.p12" 我们的秘钥:包含对方的数字证书和我们的秘钥。合成方法下一节会讲 password="testas2" 秘钥的密码 interval="300"/> <partnerships classname="org.openas2.partner.XMLPartnershipFactory" filename="%home%/partnerships.xml"/> <!--partnerships.xml是对应关系的配置--> <loggers> <!--日志的配置 可以参考log4j的部分配置 --> <logger classname="org.openas2.logging.ConsoleLogger"/> <!-- Remove this comment to enable emailing of exceptions<logger classname="org.openas2.logging.EmailLogger"show="terminated"javax.mail.properties.file="%home%/java.mail.properties"from="openas2"to="your email address"smtpserver="your smtp server"smtpauth="true"smtpuser="mySmtpUserId"smtppwd="mySmtpPwd"subject="$exception.name$: $exception.message$"bodytemplate="%home%/emailtemplate.txt"/>--><logger classname="org.openas2.logging.FileLogger"filename="%home%/../logs/log-$date.MMddyyyy$.txt"/> <!-- Remove this comment to enable socket logging<logger classname="org.openas2.logging.SocketLogger" ipaddr="127.0.0.1"portid="19999"/>--></loggers><commands classname="org.openas2.cmd.XMLCommandRegistry"filename="%home%/commands.xml"/> <!--不用变动 --><commandProcessors> <commandProcessor classname="org.openas2.cmd.processor.StreamCommandProcessor"/> <commandProcessor classname="org.openas2.cmd.processor.SocketCommandProcessor" portId="14321" userid="userID" password="pWd"/> <!--如果本机要启动多个openas2 改变portid不一样--> </commandProcessors> <processor classname="org.openas2.processor.DefaultProcessor" pendingMDN="%home%/../data/pendingMDN3" pendingMDNinfo="%home%/../data/pendinginfoMDN3" > 不变 <module classname="org.openas2.processor.sender.AS2SenderModule"> </module> <module classname="org.openas2.processor.sender.AsynchMDNSenderModule"> </module><!-- This will parse the filename to get a sender and receiver. For instance a filenamed OpenAS2A_OID-OpenAS2B_OID.1234 would be sent from OpenAS2A to OpenAS2B. --><module classname="org.openas2.processor.receiver.AS2DirectoryPollingModule"outboxdir="%home%/../data/toAny"errordir="%home%/../data/toAny/error"interval="5"delimiters="-." sendfilename="true"format="sender.as2_id, receiver.as2_id, attributes.filename"mimetype="application/EDI-X12" /><module classname="org.openas2.processor.receiver.AS2DirectoryPollingModule"outboxdir="%home%/../data/toOpenAS2A/"errordir="%home%/../data/toOpenAS2A/error"interval="5"defaults="sender.as2_id=OpenAS2B_OID, receiver.as2_id=OpenAS2A_OID"sendfilename="true"mimetype="application/EDI-X12"/><module classname="org.openas2.processor.receiver.AS2DirectoryPollingModule"outboxdir="%home%/../data/toOpenAS2B"errordir="%home%/../data/toOpenAS2B/error"interval="5"defaults="sender.as2_id=OpenAS2A_OID, receiver.as2_id=OpenAS2B_OID"sendFilename="true"mimetype="application/EDI-X12"/><module classname="org.openas2.processor.msgtracking.DbTrackingModule" use_embedded_db="true" force_load_jdbc_driver="false" db_user="sa" db_pwd="OpenAS2" db_name="openas2" db_directory="%home%/DB"jdbc_driver="org.h2.Driver"jdbc_connect_string="jdbc:h2:$component.db_directory$/$component.db_name$"sql_escape_character="'"tcp_server_start="true"tcp_server_port="9092"tcp_server_password="openas2"/><module classname="org.openas2.processor.storage.MDNFileModule"filename="%home%/../data/$mdn.msg.sender.as2_id$-$mdn.msg.receiver.as2_id$/mdn/$date.yyyy-MM-dd$/$mdn.msg.content-disposition.filename$-$mdn.msg.headers.message-id$"protocol="as2"tempdir="%home%/../data/temp"/><module classname="org.openas2.processor.storage.MessageFileModule"filename="%home%/../data/$msg.sender.as2_id$-$msg.receiver.as2_id$/inbox/$msg.content-disposition.filename$-$msg.headers.message-id$"去掉 $msg.headers.message-id$ 可以直接得到文件名header="%home%/../data/$msg.sender.as2_id$-$msg.receiver.as2_id$/msgheaders/$date.yyyy-MM-dd$/$msg.content-disposition.filename$-$msg.headers.message-id$"protocol="as2"tempdir="%home%/../data/temp"/><module classname="org.openas2.processor.receiver.AS2ReceiverModule"port="10080"errordir="%home%/../data/inbox/error"errorformat="sender.as2_id, receiver.as2_id, headers.message-id"/><!--<module classname="org.openas2.processor.receiver.AS2ReceiverModule"port="10443"protocol="https"ssl_protocol="TLS"ssl_keystore="%home%/ssl_certs.jks"ssl_keystore_password="testas2"errordir="%home%/../data/inbox/error"errorformat="sender.as2_id, receiver.as2_id, headers.message-id"/>--><module classname="org.openas2.processor.receiver.AS2MDNReceiverModule"port="10081"/> <!--<module classname="org.openas2.processor.receiver.AS2MDNReceiverModule"port="10444"protocol="https"ssl_protocol="TLS"ssl_keystore="%home%/ssl_certs.jks"ssl_keystore_password="testas2"/>--><module classname="org.openas2.processor.resender.DirectoryResenderModule"resenddir="%home%/../data/resend"errordir="%home%/../data/resend/error"resenddelay="60"/></processor></openas2> 其余的不需要变动 3.partnerships.xml 的配置 <partnerships> <partner name="OpenAS2A" as2_id="OpenAS2A_OID" <!-- as_id最好和秘钥中的名称一样--> x509_alias="openas2a" email="as2msgs@openas2a.com"/> <partner name="OpenAS2B" as2_id="OpenAS2B_OID" x509_alias="openas2b" email="as2msgs@openas2b.com"/> <partnership name="OpenAS2A-to-OpenAS2B"> <sender name="OpenAS2A"/> <receiver name="OpenAS2B"/> <attribute name="protocol" value="as2"/> <attribute name="content_transfer_encoding" value="8bit"/> <attribute name="compression_type" value="ZLIB"/> <attribute name="subject" value="From OpenAS2A to OpenAS2B"/> <attribute name="mdnsubject" value="Your requested MDN response from $receiver.as2_id$"/> <attribute name="as2_url" value="http://localhost:10080"/><!-- sender的url 和端口--> <attribute name="as2_mdn_to" value="edi@openas2b.org"/><!--receiver 的url和端口--> <!-- <attribute name="as2_receipt_option" value="http://localhost:10080"/> ...for async MDN--> <attribute name="as2_mdn_options" value="signed-receipt-protocol=optional, pkcs7-signature; signed-receipt-micalg=optional, SHA256"/> <attribute name="encrypt" value="3DES"/> <attribute name="sign" value="SHA1"/> <!--加密方式支持多种如sha256等等--> <attribute name="resend_max_retries" value="3"/> <attribute name="prevent_canonicalization_for_mic" value="false"/> <attribute name="no_set_transfer_encoding_for_signing" value="false"/> <attribute name="no_set_transfer_encoding_for_encryption" value="false"/> <attribute name="rename_digest_to_old_name" value="false"/> <attribute name="remove_cms_algorithm_protection_attrib" value="false"/> </partnership> <partnership name="OpenAS2B-to-OpenAS2A"> <sender name="OpenAS2B"/> <receiver name="OpenAS2A"/> <attribute name="protocol" value="as2"/> <attribute name="content_transfer_encoding" value="8bit"/> <attribute name="subject" value="From OpenAS2B to OpenAS2A"/> <attribute name="as2_url" value="http://localhost:10080"/> <attribute name="as2_mdn_to" value="edi@openas2a.org"/> <!-- <attribute name="as2_receipt_option" value="http://localhost:10080"/> ...for async MDN--> <attribute name="as2_mdn_options" value="signed-receipt-protocol=optional, pkcs7-signature; signed-receipt-micalg=optional, SHA256"/> <attribute name="encrypt" value="3DES"/> <attribute name="sign" value="SHA256"/> <attribute name="prevent_canonicalization_for_mic" value="false"/> <attribute name="remove_cms_algorithm_protection_attrib" value="false"/> <!-- Example for adding static custom headers to Mime body part and additionally add to HTTP <attribute name="custom_mime_headers" value="X-CustomHeader: shift-shape ; X-CustomShape: oblong"/> <attribute name="add_custom_mime_headers_to_http" value="true"/> --> <!-- Example for adding dynamic custom headers to Mime body part using delimiters where filename is of form XXX-YYY-ZZZ or XXX_YYY-ZZZ etc <attribute name="custom_mime_header_names_from_filename" value="header.X-CustomRouteId,header.X-CustomCenter, junk.extraStuff"/> <attribute name="custom_mime_header_name_delimiters_in_filename" value="-_"/> Example for adding dynamic custom headers to Mime body part where filename is of form XXX-YYY.msg <attribute name="custom_mime_header_names_from_filename" value="X-CustomRouteId,X-CustomCenter"/> <attribute name="custom_mime_header_names_regex_on_filename" value="([^-]*)-([^.]*).msg"/> Example for parsing filename into parameters that can be referenced this is a file name of the form XXXNNNN.edi where X is alphabetic and N are numerics <attribute name="attribute_names_from_filename" value="P-DynamicParm1,P-DynamicParm2"/> <attribute name="attribute_values_regex_on_filename" value="([A-Za-z]*)([^.]*).edi"/> --> </partnership> </partnerships> ok 基本的配置讲解完了 如果大家有别的问题请评论讨论!!!!!!!!!!!! [Center]: /images/20220615/eeb77364c6094c489db13e1e144391a5.png
相关 ECharts使用心得总结(二) 前言: 前一段时间一直都挺忙的,各种事,也没来得及每周的总结,趁着晚上的一点时间把项目中用的Echart中常用的各种图表给抽象总结了一下,趁着周末跟大家分享一下。之前写过 刺骨的言语ヽ痛彻心扉/ 2022年08月17日 14:22/ 0 赞/ 376 阅读
相关 iOS 心得二 UICollectionView的基本使用 自从ios6之后,苹果给出了这个类,可以使我们快速的块状布局。 废话不多说,直接上代码: 控制器.h \import <UIKit/UIKit.h> 偏执的太偏执、/ 2022年08月08日 14:55/ 0 赞/ 288 阅读
相关 JSnack使用心得(二) 如何在存储过程中进行split操作 原理:循环调用SPLIT\_SUB\_STR 示例代码如下: sp\_SaveRole 参数IN \`myrolen 分手后的思念是犯贱/ 2022年06月15日 12:43/ 0 赞/ 279 阅读
相关 基于OpenAS2 V2.3.0的使用心得 二 之配置 我们接着昨天的说,昨天我们完成了openas2 2.3.0的环境搭建和启动! 今天我们讲一讲基 于我们自定义的openas2的配置! 1. 首先我们讲讲启 一时失言乱红尘/ 2022年06月15日 06:06/ 1 赞/ 944 阅读
相关 基于OpenAS2 V2.3.0的使用心得 一 环境搭建及启动 简介 openAS2 是做什么的?它是一个优秀的加密传送文件的开源框架!支持windows和Unix操作系统 OpenAS2应用程序允许您通过 小鱼儿/ 2022年06月15日 05:59/ 0 赞/ 288 阅读
相关 基于前端layui框架使用心得 layui框架是一款快速创建后台管理系统的框架,最大的好处就是便利快捷引入项目中 下载:点击http://www.layui.com/官网下载最新的安装包 如何引入:下载好 超、凢脫俗/ 2022年05月26日 00:56/ 0 赞/ 333 阅读
相关 使用代理同步Chromium代码的心得(V2.0) 先参看 [http://www.chromium.org/developers/how-tos/build-instructions-windows][http_www.chr 逃离我推掉我的手/ 2022年05月21日 01:05/ 0 赞/ 617 阅读
相关 PHP LOG使用心得(2) <?php / create by :xiaojiang PHP log 类 日志入库功能 仅供交流学习 / c 迈不过友情╰/ 2022年03月28日 06:54/ 0 赞/ 160 阅读
相关 配置动态路由:基于RIP v2 这篇博客小编将给大家讲解一下我在东北大学学习互联网课程的时候实验课上学习到的通过RIP v2 来配置动态路由。 (一)实验目的: 掌握在路由器上配置 ╰+哭是因爲堅強的太久メ/ 2021年09月22日 07:44/ 0 赞/ 419 阅读