Der AS4 Message Service persistiert die Nachrichten und Bestätigungen, um eine spätere Nachverfolgbarkeit zu ermöglichen. Dieser Service erhält die AS4-Nachrichten und Bestätigungen über den Message Broker, bietet aber über REST eine Abfragemöglichkeit an.
Einfache Konfiguration der as4-message-service.properties
#=== JDBC Settings ==='
datasource.url=jdbc:postgresql://as4-database:5432/as4_messages
datasource.username=postgres
datasource.password=${DB_PASSWORD}
datasource.schema=as4_messages
spring.jpa.hibernate.ddl-auto=update
spring.jpa.properties.hibernate.dialect=org.hibernate.dialect.PostgreSQLDialect
Diese speziellen Datenbankparameter können je nach Bedarf verändert werden. Das Passwort wird als Environment Variable mit übergeben. Die spring.jpa.hibernate.ddl-auto Property ist eine Spring Data JPA Spezifikation und sollte für produktive Zwecke entfernt oder zumindest auskommentiert werden.
#=== RabbitMQ Configuration ===#
rabbitmq.host=rabbitmq3
rabbitmq.port=5672
rabbitmq.username=guest
rabbitmq.password=guest
Der AS4 Message Server empfängt über die Queue as4.message.default die Business Message vom AS4 Outbound Sender und dem AS4 Inbound Endpoint. Die Queue muss daher bei allen drei Microservices den gleichen Namen haben. Und auch an dieser Stelle wird für den Consumer der Name gesetzt.
businessMessageExchangeName=as4.messages
Mit diesem Parameter wird der Name für die Queue “as4.receipt.default” gesetzt, welcher gleich lautend mit den Queue Namen der Producer aus dem AS4 Receipt Service und dem AS4 Inbound Endpoint ist.
receiptExchangeName=as4.receipt
Routing Konfiguration der as4-message-service.properties
Da die Filterung bzw. das Routing vom Producer bestimmt wird, muss dem Consumer nur mitgeteilt werden, worauf er warten soll. Der Business Message Consumer empfängt über den Message Broker Nachrichten vom AS4 Outbound Sender und vom AS4 Inbound Endpoint.
businessMessageExchangeName=as4.messages
businessMessageGroup=9900051000004
Der Receipt Consumer empfängt über den Message Broker Nachrichten vom AS4 Receipt Service und vom AS4 Inbound Endpoint
receiptExchangeName=as4.receipt
receiptGroup=9900051000004
REST API Dokumentation
Die Beschreibung der REST API lässt sich, im Fall einer Docker Installation, unter
http://host.docker.internal:8086/aep-as4-message-service/swagger-ui/index.html#/
oder unter
http://localhost:8080/aep-as4-message-service/swagger-ui/index.html#/
finden.
View Me Edit Me