基于OpenAS2 V2.3.0的使用心得 二 之配置

来源:互联网 发布:中信银行软件 编辑:程序博客网 时间:2024/06/11 17:46

我们接着昨天的说,昨天我们完成了openas2 2.3.0的环境搭建和启动!

       今天我们讲一讲基于我们自定义的openas2的配置!
1.首先我们讲讲启动脚本,start.bat的配置,我们在一个机器上不可能只有一个java版本,当我们不想改变系统的环境变量为1.8的时候,我们可以通过如下的更改完成Openas2的启动:

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 基本的配置讲解完了 如果大家有别的问题请评论讨论!!!!!!!!!!!!


原创粉丝点击