Skip to content

Instantly share code, notes, and snippets.

@csyversen
Created May 21, 2024 21:00
Show Gist options
  • Save csyversen/02578a11677ebf0d461908ce28ec24ef to your computer and use it in GitHub Desktop.
Save csyversen/02578a11677ebf0d461908ce28ec24ef to your computer and use it in GitHub Desktop.
<?xml version="1.0" encoding="UTF-8"?>
<openas2>
<properties storageBaseDir="%home%/../data"
log_date_format="yyyy-MM-dd HH:mm:ss.SSS"
sql_timestamp_format="yyyy-MM-dd HH:mm:ss.SSS"
as2_message_id_format="$date.yyyyMMddHHmmssZ$-$rand.123$-$msg.sender.as2_id$_$msg.receiver.as2_id$_$msg.attributes.filename$"
as2_receive_message_filename_fallback="$rand.shortUUID$"
console.logger.enabled="true"
file.logger.enabled="true"
socket.logger.enabled="false"
socket.logger.ipaddr="127.0.0.1"
socket.logger.portid="19999"
email.logger.enabled="false"
email.logger.only_active_msg_transfer_errors="false"
email.logger.properties.log_exception_trace="false"
console.command.processor.enabled="true"
socket.command.processor.enabled="false"
restapi.command.processor.enabled="true"
restapi.command.processor.baseuri="http://localhost:8080"
restapi.command.processor.userid="userID"
restapi.command.processor.password="pWd"
processor.resend_max_retries="5"
module.AS2SenderModule.enabled="true"
module.AS2SenderModule.readtimeout="60000"
module.MDNSenderModule.enabled="true"
module.DbTrackingModule.enabled="true"
module.MDNFileModule.enabled="true"
module.MDNFileModule.filename="$properties.storageBaseDir$/$mdn.msg.sender.as2_id$-$mdn.msg.receiver.as2_id$/mdn/$date.yyyy-MM-dd$/$mdn.msg.headers.message-id$"
module.MDNFileModule.tempdir="$properties.storageBaseDir$/temp"
module.MessageFileModule.enabled="true"
module.MessageFileModule.filename="$properties.storageBaseDir$/$msg.sender.as2_id$-$msg.receiver.as2_id$/inbox/$msg.headers.message-id$"
module.MessageFileModule.header="$properties.storageBaseDir$/$msg.sender.as2_id$-$msg.receiver.as2_id$/msgheaders/$date.yyyy-MM-dd$/$msg.headers.message-id$"
module.MessageFileModule.tempdir="$properties.storageBaseDir$/temp"
module.DirectoryResenderModule.enabled="true"
module.DirectoryResenderModule.resenddelay="60"
module.AS2ReceiverModule.http.enabled="true"
module.AS2ReceiverModule.http.port="10080"
module.AS2MDNReceiverModule.http.enabled="true"
module.AS2MDNReceiverModule.http.port="10081"
module.AS2ReceiverModule.https.enabled="false"
module.AS2ReceiverModule.https.port="10443"
module.AS2MDNReceiverModule.https.enabled="false"
module.AS2MDNReceiverModule.https.port="10444"
module.HealthCheckModule.enabled="false"
module.HealthCheckModule.port="10099"
async_mdn_receiver_port="$properties.module.AS2MDNReceiverModule.http.port$"
as2_async_mdn_url="http://localhost:$properties.async_mdn_receiver_port$"
as2_keystore="%home%/as2_certs.p12"
as2_keystore_password="testas2"
ssl_keystore="%home%/ssl_certs.jks"
ssl_keystore_password="testas2"
partnership_file="%home%/partnerships.xml"
javax.mail.properties.file="%home%/java.mail.properties"
email.from="Open AS2 Server&lt;as2msgs@openas2.org&gt;"
email.to="your email address"
email.smtpserver="mail.openas2.org"
email.smtpport="25"
email.smtpauth="true"
email.smtpuser="mySmtpUserId"
email.smtppwd="mySmtpPwd"
email.subject="$exception.name$: $exception.message$"
email.bodytemplate="%home%/emailtemplate.txt"
file.logger.filename="%home%/../logs/log-$date.yyyyMMdd$.txt"
msg_tracking.use_embedded_db="true"
msg_tracking.force_load_jdbc_driver="false"
msg_tracking.db_user="sa"
msg_tracking.db_pwd="OpenAS2"
msg_tracking.db_name="openas2"
msg_tracking.table_name="msg_metadata"
msg_tracking.db_directory="%home%/DB"
msg_tracking.jdbc_driver="org.h2.Driver"
msg_tracking.jdbc_connect_string="jdbc:h2:$component.db_directory$/$component.db_name$"
msg_tracking.sql_escape_character="'"
msg_tracking.tcp_server_start="true"
msg_tracking.tcp_server_port="9092"
msg_tracking.tcp_server_password="openas2"
reject_unsigned_messages="false"
pollerConfigBase.outboxdir="$properties.storageBaseDir$/outbox/$partnership.receiver.as2_id$"
pollerConfigBase.errordir="$properties.storageBaseDir$/outbox/error/$date.YYYY$-$date.MM$-$date.dd$/$partnership.receiver.as2_id$"
pollerConfigBase.interval="5"
pollerConfigBase.defaults="sender.as2_id=$partnership.sender.as2_id$, receiver.as2_id=$partnership.receiver.as2_id$"
pollerConfigBase.sendfilename="true"
pollerConfigBase.mimetype="application/EDI-X12"
pollerConfigBase.process_files_in_paralllel="false"
pollerConfigBase.max_parallel_files="20"
partnerships.polling.interval="120"
messages.polling.interval="120"
/>
<certificates classname="org.openas2.cert.PKCS12CertificateFactory"
filename="$properties.as2_keystore$"
password="$properties.as2_keystore_password$"
interval="300"/>
<loggers>
<logger classname="org.openas2.logging.ConsoleLogger"
enabled="$properties.console.logger.enabled$"/>
<logger classname="org.openas2.logging.EmailLogger"
enabled="$properties.email.logger.enabled$"
only_active_msg_transfer_errors="$properties.email.logger.only_active_msg_transfer_errors$"
log_exception_trace="properties.email.logger.log_exception_trace$"
javax.mail.properties.file="$properties.javax.mail.properties.file$"
from="$properties.email.from$"
to="$properties.email.to$"
smtpserver="$properties.email.smtpserver$"
smtpport="$properties.email.smtpport$"
smtpauth="$properties.email.smtpauth$"
smtpuser="$properties.email.smtpuser$"
smtppwd="$properties.email.smtppwd$"
subject="$properties.email.subject$"
bodytemplate="$properties.email.bodytemplate$"/>
<logger classname="org.openas2.logging.FileLogger"
enabled="$properties.file.logger.enabled$"
filename="$properties.file.logger.filename$"/>
<logger classname="org.openas2.logging.SocketLogger"
enabled="$properties.socket.logger.enabled$"
ipaddr="$properties.socket.logger.ipaddr$"
portid="$properties.socket.logger.portid$"/>
</loggers>
<commands classname="org.openas2.cmd.XMLCommandRegistry"
filename="%home%/commands.xml"/>
<commandProcessors>
<commandProcessor classname="org.openas2.cmd.processor.StreamCommandProcessor"
enabled="$properties.console.command.processor.enabled$"/>
<commandProcessor classname="org.openas2.cmd.processor.SocketCommandProcessor"
enabled="$properties.socket.command.processor.enabled$"
portId="14321"
userid="userID"
password="pWd"
response_format="xml"/>
<commandProcessor classname="org.openas2.cmd.processor.RestCommandProcessor"
enabled="true"
baseuri="http://0.0.0.0:8443"
userid="userID"
password="pWd" />
</commandProcessors>
<processor classname="org.openas2.processor.DefaultProcessor"
pendingMDN="$properties.storageBaseDir$/pendingMDN3"
pendingMDNinfo="$properties.storageBaseDir$/pendinginfoMDN3"
resend_max_retries="$properties.processor.resend_max_retries$">
<module enabled="$properties.module.AS2SenderModule.enabled$"
classname="org.openas2.processor.sender.AS2SenderModule"
readtimeout="$properties.module.AS2SenderModule.readtimeout$" />
<module enabled="$properties.module.MDNSenderModule.enabled$"
classname="org.openas2.processor.sender.MDNSenderModule"/>
<!-- This directory polling module will parse the filename to get a sender, receiver and name of file to send to partner.
For instance, a file named MyComapny_OID-PartnerB_OID-OrderID-745634.edi would be sent from MyCompany to PartnerB.
The name of the file sent to the partner will be "OrderID-745634.edi" -->
<!--
<module classname="org.openas2.processor.receiver.AS2DirectoryPollingModule"
outboxdir="$properties.storageBaseDir$/toAny"
errordir="$properties.storageBaseDir$/toAny/error"
interval="5"
delimiters="-"
mergeextratokens="true"
sendfilename="true"
format="sender.as2_id, receiver.as2_id, attributes.filename"
mimetype="application/EDI-X12"/>
-->
<!-- This directory polling module is dedicated to sending to partner PartnerA_OID -->
<!-- NOTE: This mechanism is no longer the preferred way to add pollers. Use the partnership config as of 3.0.0
See "Partnerships XML Defined Directory Poller" in the OpenAS2HowTo for details.
<module classname="org.openas2.processor.receiver.AS2DirectoryPollingModule"
outboxdir="$properties.storageBaseDir$/toPartnerA/"
errordir="$properties.storageBaseDir$/toPartnerA/error/$date.YYYY$/$date.MM$"
stored_error_filename="$msg.attributes.filename$-$date.YYYY$-$date.MM$-$msg.headers.message-id$"
sentdir="$properties.storageBaseDir$/$msg.sender.as2_id$-$msg.receiver.as2_id$/sent/$date.YYYY$/$date.MM$"
stored_sent_filename="$msg.attributes.filename$-$msg.headers.message-id$"
interval="5"
defaults="sender.as2_id=MyCompany_OID, receiver.as2_id=PartnerA_OID"
sendfilename="true"
mimetype="application/EDI-X12"/>
-->
<module enabled="$properties.module.DbTrackingModule.enabled$"
classname="org.openas2.processor.msgtracking.DbTrackingModule"
use_embedded_db="$properties.msg_tracking.use_embedded_db$"
force_load_jdbc_driver="$properties.msg_tracking.force_load_jdbc_driver$"
db_user="$properties.msg_tracking.db_user$"
db_pwd="$properties.msg_tracking.db_pwd$"
db_name="$properties.msg_tracking.db_name$"
table_name="$properties.msg_tracking.table_name$"
db_directory="$properties.msg_tracking.db_directory$"
jdbc_driver="$properties.msg_tracking.jdbc_driver$"
jdbc_connect_string="$properties.msg_tracking.jdbc_connect_string$"
sql_escape_character="$properties.msg_tracking.sql_escape_character$"
tcp_server_start="$properties.msg_tracking.tcp_server_start$"
tcp_server_port="$properties.msg_tracking.tcp_server_port$"
tcp_server_password="$properties.msg_tracking.tcp_server_password$"/>
<module enabled="$properties.module.MDNFileModule.enabled$"
classname="org.openas2.processor.storage.MDNFileModule"
filename="$properties.module.MDNFileModule.filename$"
protocol="as2"
tempdir="$properties.module.MDNFileModule.tempdir$"/>
<module enabled="$properties.module.MessageFileModule.enabled$"
classname="org.openas2.processor.storage.MessageFileModule"
filename="$properties.module.MessageFileModule.filename$"
header="$properties.module.MessageFileModule.header$"
protocol="as2"
tempdir="$properties.module.MessageFileModule.tempdir$"/>
<module enabled="$properties.module.AS2ReceiverModule.http.enabled$"
classname="org.openas2.processor.receiver.AS2ReceiverModule"
port="$properties.module.AS2ReceiverModule.http.port$"
errordir="$properties.storageBaseDir$/inbox/error"
errorformat="sender.as2_id, receiver.as2_id, headers.message-id"/>
<module enabled="$properties.module.AS2ReceiverModule.https.enabled$"
classname="org.openas2.processor.receiver.AS2ReceiverModule"
port="$properties.module.AS2ReceiverModule.https.port$"
protocol="https"
ssl_protocol="TLS"
ssl_keystore="$properties.ssl_keystore$"
ssl_keystore_password="$properties.ssl_keystore_password$"
errordir="$properties.storageBaseDir$/inbox/error"
errorformat="sender.as2_id, receiver.as2_id, headers.message-id"/>
<module enabled="$properties.module.AS2MDNReceiverModule.http.enabled$"
classname="org.openas2.processor.receiver.AS2MDNReceiverModule"
port="$properties.async_mdn_receiver_port$"/>
<module enabled="$properties.module.AS2MDNReceiverModule.https.enabled$"
classname="org.openas2.processor.receiver.AS2MDNReceiverModule"
port="$properties.module.AS2MDNReceiverModule.https.port$"
protocol="https"
ssl_protocol="TLS"
ssl_keystore="$properties.ssl_keystore$"
ssl_keystore_password="$properties.ssl_keystore_password$"/>
<module enabled="$properties.module.DirectoryResenderModule.enabled$"
classname="org.openas2.processor.resender.DirectoryResenderModule"
resenddir="$properties.storageBaseDir$/resend"
errordir="$properties.storageBaseDir$/resend/error"
resenddelay="$properties.module.DirectoryResenderModule.resenddelay$"/>
<module enabled="$properties.module.HealthCheckModule.enabled$"
classname="org.openas2.processor.receiver.HealthCheckModule"
port="$properties.module.HealthCheckModule.port$"/>
</processor>
<!-- The pollerConfigBase provides the base config for the partnership directory pollers. It must be placed at the top of the file -->
<pollerConfigBase classname="org.openas2.processor.receiver.AS2DirectoryPollingModule"
outboxdir="$properties.pollerConfigBase.outboxdir$"
errordir="$properties.pollerConfigBase.errordir$"
interval="$properties.pollerConfigBase.interval$"
defaults="$properties.pollerConfigBase.defaults$"
sendfilename="$properties.pollerConfigBase.sendfilename$"
mimetype="$properties.pollerConfigBase.mimetype$"
process_files_in_paralllel="$properties.pollerConfigBase.process_files_in_paralllel$"
max_parallel_files="$properties.pollerConfigBase.max_parallel_files$"/>
<partnerships classname="org.openas2.partner.XMLPartnershipFactory"
filename="$properties.partnership_file$"
interval="$properties.partnerships.polling.interval$"/>
<messages classname="org.openas2.message.XMLMessageFactory"
filename="%home%/messages.xml"
interval="$properties.messages.polling.interval$"/>
</openas2>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment