(DomiSMP FAQ) General

(DomiSMP FAQ) Technical

How can I deploy the DomiSMP .war file?

Deploying the .war file involves generating the database, configuring the database JNDI settings on the server, and placing the file in the correct folder (for example, the webapps folder on Tomcat) or uploading it via the WebLogic administration console. After deployment, you can verify the application by going to its URL. If everything was set up correctly, you will see the DomiSMP landing page. For details, check DomiSMP documentation.

How does the keystore work in DomiSMP?

The keystore is essential for storing signing keys and mTLS authentication keys. If the keystore is not automatically created during setup, it must be generated manually and saved in the security folder specified in the configuration file. Once configured, the keystore properties are stored in the database after the first startup, and the settings should be removed from the configuration file for security purposes.

How do I configure the database for DomiSMP?

Database configuration involves using the provided scripts to create the necessary tables and initial data. For MySQL, this requires creating a schema, user and privileges, followed by running the supplied SQL scripts. In the case of Oracle, a user must be created and the database configured using the provided DDL scripts.

What database does DomiSMP require?

DomiSMP has been tested with the following databases:

  • MySQL 8: Future versions may also be compatible.
  • Oracle 19c: Other versions might work as well.

What is a ServiceGroup in DomiSMP?

A ServiceGroup is a logical entity in DomiSMP that links a participant's identifier to their associated metadata. It is used to group and manage the metadata related to a specific participant, such as their processes and endpoints. Each ServiceGroup is uniquely identified by a combination of the participant's identifier and its scheme. This structure ensures the organisation and retrieval of participant-related information within the SMP.

What software is required to install DomiSMP 5.0?

DomiSMP 5.0 is a Java web application that uses the Hibernate library for database integration. You will need:

  • A supported Java Runtime Environment, either Java 8 or Java 11.
  • A supported database management system, such as MySQL 8.0.x or Oracle 11g/19c.
  • An application server, for example Tomcat 9.x or WebLogic 12.2.x.

Extra files (including binaries and database scripts) are available in the setup package. For details, check DomiSMP documentation.

Where can I find the database JDBC drivers for DomiSMP?

You can download the JDBC drivers from the official websites of the respective manufacturers:

What is DomiSMP?

DomiSMP (Domain Interoperability Service Metadata Publisher) is a sample implementation provided by the European Commission as part of the eDelivery Building Block. It is responsible for capability lookup, allowing a sender to retrieve necessary metadata about a receiver's location and capabilities once the receiver's SMP address is discovered. DomiSMP acts as a register of message exchange capabilities and locations of participants within a distributed network. It is based on the eDelivery SMP profile.

Where can I download DomiSMP?

You can freely download the SMP artifacts from the DomiSMP release page.

Can I use DomiSMP freely for professional use?

Yes, DomiSMP is released under the European Union Public Licence 1.2.

Can access control be implemented on look-ups in DomiSMP?

The eDelivery specifications do not require restricting access to metadata hosted on SMPs. By default, all metadata is accessible without restrictions.

Starting from DomiSMP version 5.0, users can manage access by setting the visibility flag for each resource:

  • Private: Only authenticated and authorised users can access the resource.
  • Public: The resource is accessible to all users.

Additionally, access to DomiSMP metadata can be secured using HTTPS/Basic Authentication with access tokens and mutual TLS authentication. Note: Authentication must also be supported on the Access Point side.

For more information, refer to Domain, Group and Resources.

Can I configure the DomiSMP log level?

DomiSMP uses the Logback framework for logging, configured in the embedded ./WEB-INF/classes/logback.xml file within the SMP .war file.

You can modify the logging configuration by:

  • Editing the embedded logback.xml file
  • Defining a new Logback file in the smp.config.properties file. For example: log.configuration.file=/opt/apache-tomcat-8.5.30/smp/logback.xml

For more details on configuring Logback, including setting the logging level, visit the Logback documentation.

How is the receiving DomiSMP's address retrieved in the Dynamic Discovery process?

The receiving DomiSMP's address is retrieved through the following steps:

  1. Generate DNS query: Use the receiving party's Participant ID to create a DNS domain query.
  2. Perform DNS lookup: Execute a standard DNS lookup with the generated query.
  3. Retrieve U-NAPTR record: Obtain the DNS U-NAPTR record, which contains the receiving DomiSMP's URL address.

How to replace an expiring DomiSMP certificate?

If your DomiSMP certificate is about to expire and you have a new one, follow these steps to replace it:

  1. Access the DomiSMP UI.
  2. Navigate to User Settings.
  3. Click on the Certificate section.
  4. Import the new certificate.

What are the different application servers supported by DomiSMP?

Supported application servers vary based on the DomiSMP version you are using. To determine which application server versions are compatible with your product version, visit the DomiSMP release page.

Which operating system platforms are supported by DomiSMP?

DomiSMP has been successfully deployed and tested on Windows and Linux. Since DomiSMP is fully developed in Java, it is portable to any platform that supports the Oracle Java JRE/JDK 8 and 11. For more details on supported platforms for specific DomiSMP versions, please visit the DomiSMP release page.

What is the DomiSMP source code located?

The DomiSMP source code is available in the SMP project Git repository.

What is the difference between DomiSMP and DomiSML?

DomiSMP, the eDelivery sample implementation of Service Metadata Publisher (SMP), stores and provides information about service endpoints, making it easier to discover who can exchange specific messages. DomiSML, the eDelivery sample implementation of Service Metadata Locator (SML), helps route SMP lookups to the right server so that the correct information about endpoints can be found.

Essentially, DomiSML points to DomiSMP, while DomiSMP holds the detailed metadata. Think of DomiSMP as a place where information about message senders and receivers (like phone numbers in a phone book) is stored. DomiSML is like a signpost that points you to the right phone book. In other words, DomiSML tells you which DomiSMP server holds the details you need.

edel-soft
For full FAQ, see DomiSMP FAQ.