Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

The paragraphs in this section describe the contents of the package and provide a brief overview of the configuration.

Package

The package itself is divided in several folders:

...

In the root of the package you find the .exe file that runs the component. Next up all the folders are being explained.

Config Folder

Inside the configuration folder, following structure is created:

...

The folders send/receive-pmodes are the folders which configured the PModes (respectively send/receive). Samples of these PModes can be found in the Samples folder. The settings.xml file contains the global configuration of the component and is explained below (2.2).

Database Folder

Default SQLite is used as database. The .db file which contains the SQLite database is stored in this folder. Regardless of the database that is being used, this folder will by default also contain the following folder structure:

...

Inside these folders, the messagebodies of the AS4 messages that have been sent and received are saved. Received messages are saved in the in folder, messages that have been sent are saved in the out folder.

Documentation Folder

Inside the documentation folder, following structure is created:

...

Inside the schemas folder the .xsd files are located of the PModes and messages. In the root of this folder, documentation is added.

Logs

Inside the logs folder, you can find detailed debug and error logs. In order to modify the log configuration, follow the instructions in the section: "Configure Logging".

Messages Folder

Inside the messages folder, following structure is created:

...

These folders are used just to get started with the component. The component can be configured to use other file folders.

Samples Folder

Inside the samples folder, following structure is created:

...

Each folder contains the respectively the samples of send/receive-PModes and messages. Inside the certificates folder, you find sample certificates that can be used for sending (signing/encrypting) and receiving (verifying) messages.

Settings

The settings.xml located inside the config folder contains several global configuration settings used inside the component. Each kind of setting is explained in the following paragraphs.

GUID Format

When creating AS4 Messages, Message Ids are being generated. To configure the format in which this must be done the <IdFormat/> tag is being used inside the settings.xml.

Default: {GUID}@{IPADDRESS}

Payload Service In Process

This setting defines whether or not the (optional) PayloadService should be started in-process with the AS4.NET MessageHandler.

The PayloadService is a REST service that can contain payloads that are referenced by submit-messages. More information regarding the PayloadService can be found in the Technical Analysis document.

FE In Process

This setting defines whether or not the AS4.NET FrontEnd should be started in-process with the AS4.NET MessageHandler. The AS4.NET FrontEnd web-application lets you configure the AS4.NET messagehandler and offers monitoring functionality.

Database Provider

The component can be configured to store messages and exceptions in another datastore. Inside the settings.xml the <Database/> tag is responsible for this. Underneath this tag you define the <Provider/>, which can be SQLite, SQLServer,… any type which is supported in Entity Framework Core; and the which defines the actual connection to the database.

...

  • Default Provider: Sqlite
  • Default Connection String: Filename=database\messages.db

Certificate Store

To support signing and encrypting messages, certificates are needed. The certificate store that’s needed to retrieve this certificates and be set in the <StoreName/> tag.

...

Member Name

Description

AddressBook

The X.509 certificate store for other users.

AuthRoot

The X.509 certificate store for third-party certificate authorities (CAs).

CertificateAuthority

The X.509 certificate store for intermediate certificate authorities (CAs).

Disallowed

The X.509 certificate store for revoked certificates.

My

The X.509 certificate store for personal certificates.

Root

The X.509 certificate store for trusted root certificate authorities (CAs).

TrustedPeople

The X.509 certificate store for directly trusted people and resources.

TrustedPublisher

The X.509 certificate store for directly trusted publishers.

Agents

The AS4 protocol has several operations: Submit, Send, Receive, Deliver and Notify. All of these operations are configured in the settings.xml as Agents. Each agent has three items which defines the agent: Receiver, Transformer and Step(s).

...

Each tag (Receiver, Transformer and Step) has a type attribute which defines the type of which the instance must be created inside the component.

Custom Settings

When creating custom implementations of types, settings can sometimes be useful. For example, an Email Sender by which you configure the SMTP Server in the settings.xml. This can be useful instead of hardcoded each configured value in the implementation itself.

Sending Processing Mode

This contract describes all the properties available in the Sending PMode. The required data fields are marked as mandatory; default values are provided. Some values of the Sending PMode can be overridden by a SubmitMessage. This definition is available as XSD.

...

 (*): M = Mandatory | O = Optional | R = Recommended

Receiving Processing Mode

This contract describes all the properties available in the Receiving PMode.  The required data fields are marked as mandatory; default values are provided.  This definition is available as XSD.

...