5.1 Releases
Upgrading to 5.1.7
From 5.1.6
-
Replace the Domibus war and the default plugin(s) config file(s), property file(s) and jar(s).
-
Replace the default DSS extension jar in
/domibus/conf/domibus/extensions/lib
. -
In the file
conf/domibus/logback.xml
, following theorg.apache.cxf
logger, add the lines below:<!-- Fix for known issue in CXF library --> <logger name="org.apache.cxf.io.DelayedCachedOutputStreamCleaner" level="ERROR"> <appender-ref ref="file"/> </logger>
-
No SQL updates required of the database schemas for both mySQL and Oracle.
Upgrading to 5.1.6
From 5.1.5
-
Replace the Domibus war and the default plugin(s) config file(s), property file(s) and jar(s).
-
Replace the default DSS extension jar in
/domibus/conf/domibus/extensions/lib
. -
No SQL updates required of the database schemas for both mySQL and Oracle.
Upgrading to 5.1.5
From 5.1.4
-
Replace the Domibus war and the default plugin(s) config file(s), property file(s) and jar(s).
-
Replace the default DSS extension jar in
/domibus/conf/domibus/extensions/lib
. -
No SQL updates required of the database schemas for both mySQL and Oracle.
-
For Weblogic only:
-
Execute the WLST API script
remove.py
(from/conf/domibus/scripts/upgrades
)5.1.4-to-5.1.5-WeblogicRemoveJDBCDatasource.properties
to remove the eDeliveryDs datasource:lstapi.cmd ../scripts/remove.py --property ../5.1.4-to-5.1.5-WeblogicRemoveJDBCDatasource.properties
-
Execute the WLST API script
import.py
(from/conf/domibus/scripts/upgrades
)5.1.4-to-5.1.5-WeblogicSingleServer.properties
or5.1.4-to-5.1.5-WeblogicCluster.properties
to add the eDeliveryDs datasource with new the configuration:wlstapi.cmd ../scripts/import.py --property ../5.1.4-to-5.1.5-WeblogicCluster.properties
-
Upgrading to 5.1.4
From 5.1.3
-
Replace the Domibus war and the default plugin(s) config file(s), property file(s) and jar(s).
-
Run the appropriate DB upgrade script:
-
mysql-5.1.2-to-5.1.4-upgrade.ddl
for MySQL or -
oracle-5.1.2-to-5.1.4-upgrade.ddl
for Oracle.
-
-
Update the property name from
domibus.cacerts.validation.enabled
todomibus.cacerts.download.enabled
. -
The
mustUnderstand
attribute from Domibus MSH Default WS Plugin Stubs V2webservicePlugin-header.xsd
was marked as deprecated.NoteThis attribute is planned to be removed in 6.0.
-
Update the roles in the pull processes to reflect the correct matching of From party role matches the initiatorRole and To party role matches the responderRole. If you are using the sample pModes,
replace:<process name="tc2Process" mep="oneway" binding="pull" initiatorRole="defaultInitiatorRole" responderRole="defaultResponderRole">
with:
<process name="tc2Process" mep="oneway" binding="pull" initiatorRole="defaultResponderRole" responderRole="defaultInitiatorRole">
A workaround for this change is to disable the roles validation by setting domibus.partyinfo.roles.validation.enabled
to false
in the domibus.properties
file.
-
In case default values are not suitable, see bellow a configuration suggestion for the the Quartz data source properties:
# Name of the DataSource class provided by the JDBC driver domibus.quartz.datasource.driverClassName=${domibus.datasource.driverClassName} # JDBC URL for the DB domibus.quartz.datasource.url=${domibus.datasource.url} # Default authentication username used when # obtaining Connections from the underlying driver domibus.quartz.datasource.user=${domibus.datasource.user} # Default authentication password used when # obtaining Connections from the underlying driver domibus.quartz.datasource.password=${domibus.datasource.password} # # HikariCP specific # # Controls the maximum lifetime of a connection # in the pool (in seconds) domibus.quartz.datasource.maxLifetime=1800 # Controls the maximum amount of time (in seconds) # that a client will wait for a connection from the pool domibus.quartz.datasource.connectionTimeout=30 # Controls the maximum amount of time (in seconds) # that a connection is allowed to sit idle in the pool domibus.quartz.datasource.idleTimeout=600 # Controls the maximum size that the pool # is allowed to reach, including both idle and in-use connections domibus.quartz.datasource.maxPoolSize=10 # Controls the minimum number of idle connections # that HikariCP tries to maintain in the pool domibus.quartz.datasource.minimumIdle=1
-
Execute the WLST API script
remove.py
(from/conf/domibus/scripts/upgrades
)5.0-to-5.0.8-Weblogic-removeObsoleteJDBCDatasource.properties
to remove the edeliveryNonXA datasource:wlstapi.cmd ../scripts/remove.py --property ../5.0-to-5.0.8-Weblogic-removeObsoleteJDBCDatasource.properties
-
Execute the WLST API script
import.py
(from/conf/domibus/scripts/upgrades
)5.0-to-5.0.8-WeblogicCluster.properties
or5.0-to-5.0.8-WeblogicSingleServer.properties
to add the eDeliveryQuartzDs datasource:wlstapi.cmd ../scripts/import.py --property ../5.0-to-5.0.8-WeblogicCluster.properties
-
In the file
cef_edelivery_path/domibus/standalone/configuration/standalone-full.xml
replace the following datasource and pool names:
Upgrading to 5.1.3
From 5.1.2
-
Replace the Domibus war and the default plugin(s) config file(s), property file(s) and jar(s).
-
In all domain specific
logback.xml
files (i.e. all*-logback.xml
files under the domain folders found inconf/domibus/domains
) delete the element:<property name="<domainName>" value="<your_domain_name>" scope="local" />
and replace all occurrences of the string ${domainName} with your_domain_name.
Upgrading to 5.1.2
From 5.1.1
-
Replace the Domibus war and the default plugin(s) config file(s), property file(s) and jar(s).
-
Replace the default DSS extension jar in
/domibus/conf/domibus/extensions/lib
. -
Update the
domibus.pmode.validation.action.pattern
anddomibus.pmode.validation.service.value.pattern properties
in case of backward compatibility issues regarding the action and service values. -
Run the appropriate DB upgrade script:
-
mysql-5.1.1-to-5.1.2-upgrade.ddl
for MySQL or -
oracle-5.1.1-to-5.1.2-upgrade.ddl
for Oracle.
-
-
Remove the
domibus.dynamicdiscovery.peppolclient.mode
property. -
Any custom
dss-cache
settings should be moved from/conf/domibus/internal/ehcache.xml
to/conf/domibus/extensions/config/dss-extension-ehcache.xml
. -
It is now possible to specify also the hardcoded algorithm suite name (e.g
Basic128GCMSha256
) instead of the placeholder:${algorithmSuitePlaceholder}
in order to keep backward compatibility.NoteThe use of the placeholder is required for the new security profiles configuration.
Upgrading to 5.1.1
From 5.1
-
Replace the Domibus war and the default plugin(s) config file(s), property file(s) and jar(s).
-
Replace the default DSS extension jar into
/domibus/conf/domibus/extensions/lib
. -
Run the appropriate DB migration script.
-
mysql-5.1-to-5.1.1-migration.ddl
for MySQL or -
oracle-5.1-to-5.1.1-migration.ddl
for Oracle.
-
-
Remove
property domibus.fourcornermodel.enabled
if configured. -
In all
eDeliveryAS4Policy
XML files, the hardcoded algorithm suite name defined inAsymmetricBinding/Policy/AlgorithSuite/
(e.g.Basic128GCMSha256MgfSha256
) was replaced with the placeholder:${s}
which will be automatically replaced in code according to the security setup. -
Replace/update all policy files that have the
AsymmetricBinding/Policy/AlgorithSuite
tag defined.For example:
eDeliveryAS4Policy.xml
,
eDeliveryAS4Policy_BST.xml
,
eDeliveryAS4Policy_BST_PKIP.xml
,
eDeliveryAS4Policy_IS.xml
,
signOnly.xml
, etc., to accommodate this change.The policy XML config files can be found in the Domibus distribution inside the file
domibus-msh-distribution-5.1.1-application_server_name-configuration.zip
under the/policies
folder or inside the filedomibus-msh-distribution-5.1.1-application_server_name-full.zip
under the folderdomibus/conf/domibus/policies
. -
Update all the
domibus.UI.title.name
domain property names todomibus.ui.title.name
. -
Update all the property names prefixed with
domibus.metrics.sl4j
todomibus.metrics.slf4j
.
Upgrading to 5.1
From 5.0.6
-
Update the file
cef_edelivery_path/domibus/conf/domibus/internal/activemq.xml
and make sure the<property-placeholder>
section has the attributesystem-properties-mode="ENVIRONMENT".
Ideally the line should look exactly like this:<context:property-placeholder system-properties-mode="ENVIRONMENT" ignore-resource-not-found="false" ignore-unresolvable="false"/>
-
Update the cache definitions file,
/conf/domibus/internal/ehcache.xml
, by removingdomainValidity
if it exists. -
Update your
logback.xml
configuration so that logs contain the correct origin line number.-
At the beginning of your
<configuration>
declare the conversion worddomibusLine
:<conversionRule conversionWord="domibusLine" converterClass="eu.domibus.logging.DomibusLineOfCallerConverter" />
-
Next change your log pattern layouts by replacing
%L
and%line
with%domibusLine
. For example, the pattern:<property name="encoderPattern" value="%d{ISO8601} [%X{d_user}] [%X{d_domain}] [%X{d_messageId}] [%X{d_messageEntityId}] [%thread] %5p %c{1}:%L - %m%n" scope="global"/>
-
Should become:
<property name="encoderPattern" value="%d{ISO8601} [%X{d_user}] [%X{d_domain}] [%X{d_messageId}] [%X{d_messageEntityId}] [%thread] %5p %c{1}:%domibusLine - %m%n" scope="global"/>
-
-
Change the MySQL dialect property value from
MySQL5InnoDBDialect
toMySQL8Dialect
in thedomibus.properties
file:domibus.entityManagerFactory.jpaProperty.hibernate.dialect=org.hibernate.dialect.MySQL8Dialect
.
-
Multitenant scenario
-
Regarding domain schemas:
-
Grant privileges to the general schema using
oracle-5.1-multi-tenancy-rights.sql
, updating the schema names before execution.
NOTE: This script execution is required even though it may have been executed previously.
-
-
-
Regarding Custom Plugins
For custom plugins the interface to Domibus has changed:-
getErrorsForMessage(String messageId)
became @deprecated and now throwsMessageNotFoundException
andDuplicateMessageException
-
getStatus(String messageId)
became@deprecated
and now throwsDuplicateMessageException
-
DuplicateMessageException
is thrown in the self sending scenario, when two messagesACKNOWLEDGED
andRECEIVED
have the samemessageId
. -
Both methods should be replaced with the equivalent method that receives also the AP Role as parameter to differentiate between sent and received messages.
-
The default list of message statuses for which notifications are sent has changed. As a consequence, the plugins that rely on notifications should customize this list of statuses in their properties file. For example, FS-Plugin should also include
PAYLOAD_PROCESSED
in the propertyfsplugin.messages.notifications
fromfs-plugin.properties
. -
Regarding the status which trigger notifications,
-
The new list of statuses (in 5.1) that trigger push notifications is:
MESSAGE_RECEIVED
,MESSAGE_SEND_FAILURE
,MESSAGE_RECEIVED_FAILURE
,MESSAGE_SEND_SUCCESS
,MESSAGE_STATUS_CHANGE
MESSAGE_DELETED
,MESSAGE_DELETE_BATCH
,PAYLOAD_SUBMITTED
,PAYLOAD_PROCESSED
-
The previous list of statuses that trigger push notifications is:
MESSAGE_RECEIVED
,MESSAGE_SEND_FAILURE
,MESSAGE_RECEIVED_FAILURE
,MESSAGE_SEND_SUCCESS
,MESSAGE_STATUS_CHANGE
-
-
-
Follow the upgrade procedures described bellow to upgrade to the latest version of Domibus 5.0.x.
For example,-
upgrade to Domibus 5.0.4 (from 5.0.3),
-
then upgrade to Domibus 5.0.5,
-
then upgrade to Domibus 5.0.6, etc.
-
-
Run the appropriate DB migration script:
-
Oracle (only)
-
Single Tenancy:
oracle-5.0-to-5.1-migration.ddl
,oracle-5.1-data-migration.ddl
-
Multitenancy:
-
General schema:
oracle-5.0-to-5.1-multi-tenancy-migration.ddl
-
Domain schemas:
oracle-5.0-to-5.1-migration.ddl
,oracle-5.1-data-migration.ddl
-
-
-
Partitioning the Database:
-
If your database is not partitioned then run
@oracle-5.0.5-to-5.0.6-partitioning-migration.ddl
-
-
MySQL (only)
-
Use the scripts below can be run using either (please adapt to your local configuration (i.e. users, database names):
-
The root user, specifying the target databases as part of the command.
For example, for single tenancy:
mysql -u root -p domibus < mysql-5.0-to-5.1-migration.ddl mysql -u root -p domibus < mysql-5.1-data-migration.ddl
or, for multitenancy:
mysql -u root -p domibus_general < mysql-5.0-to-5.1-multi-tenancy-migration.ddl mysql -u root -p domibus_domain_1 < mysql-5.0-to-5.1-migration.ddl mysql -u root -p domibus_domain_1 < mysql-5.1-data-migration.ddl
-
The non-root user: (for e.g. edelivery) for which the root user must first relax the conditions on function creation by granting the
SYSTEM_VARIABLES_ADMIN
right to the non-root user:GRANT SYSTEM_VARIABLES_ADMIN ON *.* TO 'edelivery'@'localhost';
And then specifying the target databases as part of the command.
For example, for single tenancy:
mysql -u edelivery -p domibus < mysql-5.0-to-5.1-migration.ddl mysql -u edelivery -p domibus < mysql-5.1-data-migration.ddl
or, for multitenancy:
mysql -u edelivery -p domibus_general < mysql-5.0-to-5.1-multi-tenancy-migration.ddl mysql -u edelivery -p domibus_domain_1 < mysql-5.0-to-5.1-migration.ddl mysql -u edelivery -p domibus_domain_1 < mysql-5.1-data-migration.ddl.
-
-
-
5.0 Releases
Upgrading to 5.0.6
From 5.0.5
-
Replace the Domibus war and the default plugin(s) config file(s), property file(s) and jar(s)
-
Replace the default DSS extension jar into
/domibus/conf/domibus/extensions/lib
If the database was not partitioned, run as edelivery_user
:
@oracle-5.0.5-to-5.0.6-partitioning-migration.ddl
Upgrading to 5.0.5
From 5.0.4
-
Replace the Domibus war and the default plugin(s) config file(s), property file(s) and jar(s)
-
Replace the default DSS extension jar into
/conf/domibus/extensions/lib
-
Run the appropriate DB migration script:
-
MySQL→
mysql-5.0.4-to-5.0.5-migration.ddl
-
Oracle →
5.0.4-to-5.0.5-migration-fix.ddl
-
-
Situation A: upgrading an existing 5.0.4 database, that contains user messages and was partitioned:
-
Run as
edelivery_user
:@oracle-5.0-partition-migration-procedures.sql EXECUTE MIGRATE_5_0_4_PARTITIONED_TO_5_0_5;
-
-
Situation B: upgrading an existing 5.0.4 database, that contains user messages and was not partitioned:
-
Run as
edelivery_user
:@oracle-5.0.4-to-5.0.5-migration-fix.ddl @oracle-5.0.5-partitioning-fix.ddl
-
Upgrading to 5.0.4
From 5.0.3
-
Replace the Domibus war
-
Replace the default plugin(s) property file(s) and jar(s) into
/domibus/conf/domibus/plugins/config
respectively into /domibus/conf/domibus/plugins/lib
-
Situation A: upgrading an existing 5.0.3 database, that contains user messages and was partitioned, no changes needed.
-
Situation B: upgrading an existing 5.0.3 database, that contains user messages and was not partitioned:
-
Run as
sys
:GRANT EXECUTE ON DBMS_LOCK TO
; -
Run as
edelivery_user
:@oracle-5.0-partition-migration-procedures.sql EXECUTE MIGRATE_5_0_3_UNPARTITIONED_TO_5_0_4; @oracle-5.0-partition-detail-tables.sql @oracle-5.0-create-partitions-job.sql
-
Upgrading to 5.0.3
From 5.0.2
-
Replace the Domibus war
-
Situation A: Upgrading an existing 5.0.2 database, that contains user messages and was partitioned:
-
Run as
edelivery_user
:@oracle-5.0-partition-migration-procedures.sql EXECUTE MIGRATE_5_0_2_PARTITIONED_TO_5_0_3;
-
-
Situation B: upgrading an existing 5.0.2 database, that contains user messages and was not partitioned:
-
Run as sys:
GRANT EXECUTE ON DBMS_LOCK TO
; -
Run as
edelivery_user
:@oracle-5.0-partition-migration-procedures.sql EXECUTE MIGRATE_5_0_2_UNPARTITIONED_TO_5_0_3; @oracle-5.0-partition-detail-tables.sql @oracle-5.0-create-partitions-job.sql
-
Upgrading to 5.0.2
From 5.0.1
-
Replace the Domibus war
-
Run the appropriate DB migration:
-
MySQL → script
mysql-5.0.1-to-5.0.2-migration.ddl
or or -
Oracle → script
oracle-5.0.1-to-5.0.2-migration.ddl
-
-
Situation A: partitioning an existing 5.0.2 database, that contains user messages and was not partitioned:
-
Run as sys:
GRANT EXECUTE ON DBMS_LOCK TO
; -
Run as
edelivery_user
:@oracle-5.0-partition-migration-procedures.sql EXECUTE MIGRATE_5_0_1_PARTITIONED_TO_5_0_2; @oracle-5.0-partition-detail-tables.sql @oracle-5.0-create-partitions-job.sql
-
-
Situation B: partitioning an empty 5.0.2 database that was not partitioned:
-
Run as
edelivery_user
:@oracle-5.0.2-partitioning.ddl
-
Upgrading to 5.0.1
From 5.0
-
Replace the Domibus war
-
Run the appropriate DB migration script(mysql-5.0-to-5.0.1-migration.ddl for MySQL or oracle-5.0-to-5.0.1-migration.ddl for Oracle)
Upgrading to 5.0
From 4.2.9
For specific instructions for:
-
Tomcat server, see this section , and this section.
-
Wildfly server, see this section, and this section.
-
Weblogic see this section and this section.
-
MySQL, see JDB connection.
Multitenancy only
-
domibus.security.keystore
anddomibus.security.truststore
properties are used only the first time domibus starts and persisted in the DB to be used from there on; -
Create a folder named
domains
inconf/domibus
and, inside it, create a new folder for every domain (e.g. conf/domibus/domains/domain1) -
Move the super-domibus.properties file into
conf/domibus/domains
-
For each domain:
-
move its properties file into the domain folder (e.g. move domain1-domibus.properties into conf/domibus/domains/domain1/)
-
Move its logback file into the domain folder (e.g. move domain1-logback.xml into conf/domibus/domains/domain1/) and then update the reference to the domain logback file in the main logback.xml file, in the multitenancy section
-
Move domain_name_clientauthentication.xml file into the domain folder (e.g. move conf/domibus/domain1_clientauthentication.xml into conf/domibus/domains/domain1/domain1_clientauthentication.xml)
-
Create a
keystores
folder (e.g. conf/domibus/domains/domain1/keystores) and move inside it the keystores used by that domain; update thedomibus.security.keystore.location
anddomibus.security.truststore.location
paths in the domain properties file
-
-
Create a folder named
domains
inconf/domibus/plugins/config
and, inside it, create a new folder for every domain (e.g.conf/domibus/plugins/config/domains/domain1
) -
FS-Plugin multitenancy installation:
-
Move any domain specific properties from
fs-plugin.properties
to a domain specific property file (e.g.conf/domibus/plugins/config/domains/domain1/domain1-fs-plugin.properties
)
-
-
WS-Plugin multitenancy installation:
-
Move any domain specific properties from ws-plugin.properties to a domain specific property file (e.g.
conf/domibus/plugins/config/domains/domain1/domain1-ws-plugin.properties
)
-
-
JMS-Plugin multitenancy installation:
-
Move any domain specific properties from jms-plugin.properties to a domain specific property file (e.g.
conf/domibus/plugins/config/domains/domain1/domain1-jms-plugin.properties
)
-
Note
|
These changes need to be done for the default domain too, and that the properties in the properties files are still prefixed with the domain name.
|
Tomcat only
-
Update the
domibus.datasource.url
properties:domibus.datasource.url=jdbc:mysql://$\{domibus.database.serverName}:$\{domibus.database.port}/$\{domibus.database.schema}?useSSL=false&useLegacyDatetimeCode=false&serverTimezone=UTC
-
In file
cef_edelivery_path/domibus/conf/domibus/internal/activemq.xml
: -
In the destinations' section, add the following queues:
<!-- --> <destinations> <!-- --> <queue id="wsPluginSendQueue" physicalName="${wsplugin.send.queue:domibus.wsplugin.send.queue}"/> <!-- --> </destinations> <!-- -->
-
In the
redeliveryPolicyEntries
section add the following entries:<!-- --> <redeliveryPolicyEntries> <!-- --> <redeliveryPolicy queue="${wsplugin.send.queue:domibus.wsplugin.send.queue}" maximumRedeliveries="0"/> <!-- --> </redeliveryPolicyEntries> <!-- -->
-
If you use custom queues please update the following in the file
cef_edelivery_path/domibus/conf/domibus/internal/activemq.xml
. -
If you don’t use custom queues just replace the old file with the new file version: in the policies section add the following:
<!-- --> <policyEntries> <!-- --> <policyEntry queue="domibus.internal.earchive.notification.queue"> <deadLetterStrategy> <!--<individualDeadLetterStrategy queuePrefix="DLQ."/>--> <sharedDeadLetterStrategy processExpired="false"> <deadLetterQueue> <queue physicalName="domibus.internal.earchive.notification.dlq"/> </deadLetterQueue> </sharedDeadLetterStrategy> </deadLetterStrategy> <dispatchPolicy> <priorityDispatchPolicy/> </dispatchPolicy> </policyEntry>
-
In the destinations section add the following queues:
<!-- --> <destinations> <!-- --> <queue id="eArchiveQueue" physicalName="domibus.internal.earchive.queue"/> <queue id="eArchiveNotificationQueue" physicalName="domibus.internal.earchive.notification.queue"/> <queue id="eArchiveNotificationDLQ" physicalName="domibus.internal.earchive.notification.dlq"/>
-
In the
redeliveryPolicyEntries
section add the following entries:<!-- --> <redeliveryPolicyEntries> <!-- --> <redeliveryPolicy queue="domibus.internal.earchive.queue" maximumRedeliveries="0"/> <redeliveryPolicy queue="domibus.internal.earchive.notification.queue" maximumRedeliveries="6" redeliveryDelay="1800000"/> <redeliveryPolicy queue="domibus.internal.earchive.notification.dlq" maximumRedeliveries="0"/>
-
in the
discardingDLQBrokerPlugin
update the dropOnly parameter value as below:original:<discardingDLQBrokerPlugin dropAll="false" dropOnly="domibus.internal.dispatch.queue domibus.internal.pull.queue domibus.internal.alert.queue" reportInterval="10000"/>
new configuration:<discardingDLQBrokerPlugin dropAll="false" dropOnly="domibus.internal.dispatch.queue domibus.internal.pull.queue domibus.internal.alert.queue domibus.internal.earchive.queue domibus.internal.earchive.notification.dlq" reportInterval="10000"/>
Wildfly only
-
In file
cef_edelivery_path/domibus/standalone/configuration/standalone-full.xml
, add the following queues in the destination section:<!-- --> <jms-destinations> <jms-queue name="DomibusEArchiveQueue" entries="java:/jms/domibus.internal.earchive.queue java:/jms/queue/DomibusEArchiveQueue" durable="true"/> <jms-queue name="DomibusEArchiveNotificationQueue" entries="java:/jms/domibus.internal.earchive.notification.queue java:/jms/queue/DomibusEArchiveNotificationQueue" durable="true"/> <jms-queue name="DomibusEArchiveNotificationDLQ" entries="java:/jms/domibus.internal.earchive.notification.dlq java:/jms/queue/DomibusEArchiveNotificationDLQ" durable="true"/> <!-- --> </jms-destinations> <!-- -->
-
In the address-settings section, add the following address-setting configurations:
<!-- --> <address-settings> <!-- --> <address-setting name="jms.queue.DomibusEArchiveQueue" expiry-address="jms.queue.ExpiryQueue" max-delivery-attempts="0"/> <address-setting name="jms.queue.DomibusEArchiveNotificationQueue" expiry-address="jms.queue.DomibusEArchiveNotificationDLQ" max-delivery-attempts="6"/> <address-setting name="jms.queue.DomibusEArchiveNotificationDLQ" expiry-address="jms.queue.ExpiryQueue" max-delivery-attempts="0"/> <!-- --> </address-settings> <!-- -->
-
Execute the WLST API script
remove.py
(from/conf/domibus/scripts/upgrades
)4.2-to-5.0-Weblogic-removeJDBCDatasources.properties
to remove the two datasources of 4.2 (wlstapi.cmd ../scripts/remove.py --property ../deleteDatasources.properties
). -
Execute the WLST API script
import.py
(from/conf/domibus/scripts/upgrades
)4.2-to-5.0-WeblogicSingleServer.properties
for single server deployment or4.2-to-5.0-WeblogicCluster.properties
for cluster deployment.
-
Update the JDBC connection URL value in the Admin Console for your data sources by appending
&useLegacyDatetimeCode=false&serverTimezone=UTC
(without surrounding quotes) to their end:-
Change
jdbc:mysql://localhost:3306/domibus?autoReconnect=true&useSSL=false
tojdbc:mysql://localhost:3306/domibus?autoReconnect=true&useSSL=false&useLegacyDatetimeCode=false&serverTimezone=UTC
-
-
Run the appropriate DB migration script:
-
Oracle only
-
Single tenancy:
oracle-4.2.9-to-5.0-migration.ddl
-
Multitenancy:
-
general schema →
oracle-4.2.9-to-5.0-multi-tenancy-migration.ddl
-
domain schemas →
oracle-4.2.9-to-5.0-migration.ddl
-
-
-
MySQL only
ImportantAdapt the scripts below to match your local configuration (i.e. users, database names. -
You can run the migration script by using either:
-
the root user, specifying the target databases as part of the command. For example,
for single tenancy:
mysql -u root -p domibus < mysql-4.2.9-to-5.0-migration.ddl
or, for multitenancy:
mysql -u root -p domibus_general < mysql-4.2.9-to-5.0-multi-tenancy-migration.ddl mysql -u root -p domibus_domain_1 < mysql-4.2.9-to-5.0-migration.ddl
-
the non-root user: (e.g. edelivery) for which the root user must first relax the conditions on function creation by granting the
SYSTEM_VARIABLES_ADMIN
right to the non-root user:GRANT SYSTEM_VARIABLES_ADMIN ON *.* TO 'edelivery'@'localhost';
and then specifying the target databases as part of the command. For example,
for single tenancy:
mysql -u edelivery -p domibus < mysql-4.2.9-to-5.0-migration.ddl
or, for multitenancy:
mysql -u edelivery -p domibus_general < mysql-4.2.9-to-5.0-multi-tenancy-migration.ddl mysql -u edelivery -p domibus_domain_1 < mysql-4.2.9-to-5.0-migration.ddl.
-
-
-
-
Data migration scripts should be run in order to migrate data from old tables to the new tables:
-
Oracle only
-
Domibus application (.war) should be stopped while running the scripts mention below.
-
Single tenancy
-
Step 1:
oracle-4.2.9-to-5.0-data-migration-step1.ddl
(it will drop and then recreate new version of the tables * errors which appear during dropping could be ignored). -
UTC date migration step: execute the migrate procedure from the
MIGRATE_42_TO_50_utc_conversion
package providing the correctTIMEZONE
parameter. I.e. the timezone ID in which the date time values have been previously saved (e.g. 'Europe/Brussels'). -
Step 2: oracle-4.2.9-to-5.0-data-migration-step2.ddl (it will create the package for data migration, run the migration procedure).
If migration procedure fails step 1 and step 2 could be run again. Once migration procedure ends successfully we could proceed to step 3.
-
Step 3:
oracle-4.2.9-to-5.0-data-migration-step3.ddl
(this step will finish the migration. During this step 4.2 version of the tables will be renamed toOLD_
). This step isn’t reversible so it must be executed once step 1 and step 2 are successful. -
Step 4 (Optional):
oracle-4.2.9-to-5.0-data-migration-step4.ddl
(during this step the original tables and the migration subprograms are dropped).This step isn’t reversible so it must be executed once step 1, step 2 and step3 are successful.
-
Partitioning (Optional): oracle-5.0-partitioning.ddl (if you further plan on using Oracle partitions in an Enterprise Editions database).
-
-
Multitenancy
-
General schema:
-
Step 1: oracle-4.2.9-to-5.0-data-migration-multi-tenancy-step1.ddl (it will drop and then recreate new version of the tables * errors which appear during dropping could be ignored).
-
UTC date migration step: execute the migrate_multitenancy procedure from the MIGRATE_42_TO_50_utc_conversion package providing the correct TIMEZONE parameter. I.e. the timezone ID in which the date time values have been previously saved (e.g. 'Europe/Brussels').
-
Step 2: oracle-4.2.9-to-5.0-data-migration-multi-tenancy-step2.ddl (it will create the package for data migration, run the migration procedure).
If migration procedure fails step 1 and step 2 could be run again. Once migration procedure ends successfully we could proceed to step 3.
-
Step 3:
oracle-4.2.9-to-5.0-data-migration-multi-tenancy-step3.ddl
(this step will finish the migration. During this step 4.2 version of the tables will be renamed toOLD_
).This step isn’t reversible so it must be executed once step 1 and step 2 are successful.
-
Step 4 (Optional): oracle-4.2.9-to-5.0-data-migration-multi-tenancy-step4.ddl (during this step the original tables and the migration subprograms are dropped).
This step isn’t reversible so it must be executed once step 1, step 2 and step3 are successful.
-
-
Domain schemas:
-
Step 1: oracle-4.2.9-to-5.0-data-migration-step1.ddl (it will drop and then recreate new version of the tables * errors which appear during dropping could be ignored)
-
UTC date migration step: execute the migrate procedure from the MIGRATE_42_TO_50_utc_conversion package providing the correct TIMEZONE parameter * i.e. the timezone ID in which the date time values have been previously saved (e.g. 'Europe/Brussels') -;
-
Step 2: oracle-4.2.9-to-5.0-data-migration-step2.ddl (it will create the package for data migration, run the migration procedure). If migration procedure fails step 1 and step 2 could be run again. Once migration procedure ends successfully we could proceed to step 3.
-
Step 3:
oracle-4.2.9-to-5.0-data-migration-step3.ddl
(this step will finish the migration; during this step 4.2 version of the tables will be renamed toOLD_
).This step isn’t reversible so it must be executed once step 1 and step 2 are successful.
-
Step 4 (Optional):
oracle-4.2.9-to-5.0-data-migration-step4.ddl
(during this step the original tables and the migration subprograms are dropped).This step isn’t reversible so it must be executed once step 1, step 2 and step3 are successful.
-
Partitioning (Optional):
oracle-5.0-partitioning.ddl
(if you further plan on using Oracle partitions in an Enterprise Editions database).
-
-
-
Grant privileges to the general schema using
oracle-5.0-multi-tenancy-rights.sql
, updating the schema names before execution
-
-
MySQL only
NoteAdapt the scripts below to your local configuration (i.e. users, database names). The scripts can be run using either:
-
the root user, specifying the target databases as part of the command. For example,+ for single tenancy:
mysql -u root -p domibus < mysql-4.2.9-to-5.0-data-migration-step1.ddl
or, for multitenancy:
mysql -u root -p domibus_general < mysql-4.2.9-to-5.0-data-migration-multi-tenancy-step1.ddl mysql -u root -p domibus_domain_1 < mysql-4.2.9-to-5.0-data-migration-step1.ddl
-
the non-root user: (e.g. edelivery) for which the root user must first relax the conditions on function creation by granting the
SYSTEM_VARIABLES_ADMIN
right to the non-root user:GRANT SYSTEM_VARIABLES_ADMIN ON *.* TO 'edelivery'@'localhost';
and then specifying the target databases as part of the command. For example,
for single tenancy:mysql -u edelivery -p domibus < mysql-4.2.9-to-5.0-data-migration-step1.ddl
or, for multitenancy:
mysql -u edelivery -p domibus_general < mysql-4.2.9-to-5.0-data-migration-multi-tenancy-step1.ddl mysql -u edelivery -p domibus_domain_1 < mysql-4.2.9-to-5.0-data-migration-step1.ddl.
-
-
Domibus application (.war) should be stopped while running the scripts below.
-
Single tenancy
-
Step 1:
mysql-4.2.9-to-5.0-data-migration-step1.ddl
(it will drop and then recreate new version of the tables - errors which appear during dropping could be ignored) -
UTC date migration step:
-
Identify your current named time zone such as 'Europe/Brussels', 'US/Eastern', 'MET' or 'UTC' (e.g. issue
SELECT @@GLOBAL.time_zone
,@@SESSION.time_zone
;) -
Populate the MySQL time zone tables if not already done:
https://dev.mysql.com/doc/refman/8.0/en/time-zone-support.html#time-zone-installation
-
call the
MIGRATE_42_TO_50_utc_conversion
procedure providing the correctTIMEZONE
named time zone parameter identified above, i.e. the timezone ID in which the date time values have been previously saved.
-
-
Step 2:
mysql-4.2.9-to-5.0-data-migration-step2.ddl
(it will create the package for data migration, run the migration procedure).If migration procedure fails step 1 and step 2 could be run again. Once migration procedure ends successfully we could proceed to step 3.
-
-
Step 3:
mysql-4.2.9-to-5.0-data-migration-step3.ddl
(this step will finish the migration - during this step 4.2 version of the tables will be renamed toOLD_
).This step isn’t reversible so it must be executed once step 1 and step 2 are successful.
-
Step 4 (Optional): mysql-4.2.9-to-5.0-data-migration-step4.ddl (during this step the original tables and the migration subprograms are dropped).
This step isn’t reversible so it must be executed once step 1, step 2 and step3 are successful.
-
Multitenancy
-
General database:
-
Step 1: mysql-4.2.9-to-5.0-data-migration-multi-tenancy-step1.ddl (it will drop and then recreate new version of the tables - errors which appear during dropping could be ignored).
-
UTC date migration step:
-
Identify your current named time zone such as 'Europe/Brussels', 'US/Eastern', 'MET' or 'UTC' (e.g. issue
SELECT @@GLOBAL.time_zone
,@@SESSION.time_zone
;) -
Populate the MySQL time zone tables if not already done:
https://dev.mysql.com/doc/refman/8.0/en/time-zone-support.html#time-zone-installation
. -
call the
MIGRATE_42_TO_50_utc_conversion_multitenancy
procedure providing the correct TIMEZONE named time zone parameter identified above, i.e. the timezone ID in which the date time values have been previously saved;
-
-
Step 2:
mysql-4.2.9-to-5.0-data-migration-multi-tenancy-step2.ddl
(it will create the package for data migration, run the migration procedure).If migration procedure fails step 1 and step 2 could be run again. Once migration procedure ends successfully we could proceed to step 3.
-
Step 3:
mysql-4.2.9-to-5.0-data-migration-multi-tenancy-step3.ddl
(this step will finish the migration, during this step 4.2 version of the tables will be renamed toOLD_
).This step isn’t reversible so it must be executed once step 1 and step 2 are successful
-
Step 4 (Optional):
`mysql-4.2.9-to-5.0-data-migration-multi-tenancy-step4.ddl
(during this step the original tables and the migration subprograms are dropped).This step isn’t reversible so it must be executed once step 1, step 2 and step3 are successful.
-
-
Domain databases:
-
Step 1:
mysql-4.2.9-to-5.0-data-migration-step1.ddl
(it will drop and then recreate new version of the tables - errors which appear during dropping could be ignored). -
UTC date migration step
-
Identify your current named time zone such as 'Europe/Brussels', 'US/Eastern', 'MET' or 'UTC' (e.g. issue
SELECT @@GLOBAL.time_zone
,@@SESSION.time_zone
;) -
Populate the MySQL time zone tables if not already done:
https://dev.mysql.com/doc/refman/8.0/en/time-zone-support.html#time-zone-installation
-
call the
MIGRATE_42_TO_50_utc_conversion
procedure providing the correctTIMEZONE
named time zone parameter identified above, i.e. the timezone ID in which the date time values have been previously saved.
-
-
Step 2:
mysql-4.2.9-to-5.0-data-migration-step2.ddl
(it will create the package for data migration, run the migration procedure).If migration procedure fails step 1 and step 2 could be run again. Once migration procedure ends successfully we could proceed to step 3.
-
Step 3:
mysql-4.2.9-to-5.0-data-migration-step3.ddl
(this step will finish the migration. During this step 4.2 version of the tables will be renamed toOLD_
).This step isn’t reversible so it must be executed once step 1 and step 2 are successful.
-
Step 4 (Optional):
mysql-4.2.9-to-5.0-data-migration-step4.ddl
(during this step the original tables and the migration subprograms are dropped).This step isn’t reversible so it must be executed once step 1, step 2 and step3 are successful.
-
-
Cache
-
Update the
/conf/domibus/internal/ehcache.xml
cache definitions file. If you use custom caches definitions defined in this file replace the old file with the new file and perform the following steps.Replace:
<cache alias="policyCache"> <expiry> <ttl>3600</ttl> </expiry> <heap unit="MB">5</heap> </cache>
With:
<cache alias="policyCache"> <expiry> <ttl>3600</ttl> </expiry> <heap unit="entries">5000</heap> </cache>
Or with
<cache alias="policyCache" uses-template="ttl-3600-heap-5000"/>
If you want to reuse cache-template
ttl-3600-heap-5000
already defined by Domibus.If you don’t use custom caches just replace the old file with the new file version, add a new cache key named
domibusPropertyMetadata
.
Wildfly only
-
MySQL only
-
In
standalone-full.xml
, update theconnectionUrl
element for your data sources by appending&useLegacyDatetimeCode=false&serverTimezone=UTC
to their end:<connection-url> jdbc:mysql://localhost:3306/domibus?autoReconnect=true&useSSL=false </connection-url>
Should be changed to
<connection-url> jdbc:mysql://localhost:3306/domibus?autoReconnect=true&useSSL=false&useLegacyDatetimeCode=false&serverTimezone=UTC </connection-url>
-
In file
cef_edelivery_path/domibus/standalone/configuration/standalone-full.xml
, add the following queues:<!-- --> <subsystem xmlns="urn:jboss:domain:messaging-activemq:3.0"> <server name="default"> <!-- --> <address-setting name="jms.queue.DomibusWSPluginSendQueue" expiry-address="jms.queue.ExpiryQueue" max-delivery-attempts="0"/> <jms-queue name="DomibusWSPluginSendQueue" entries="java:/jms/domibus.wsplugin.send.queue java:/jms/queue/DomibusWSPluginSendQueue" durable="true"/> <!-- --> </server> </subsystem> <!-- -->
-
Tomcat only
-
Domibus properties changes:
-
Modify the Domibus properties file
\conf\domibus\domibus.properties
:-
Rename the
domibus.jms.XAConnectionFactory.maxPoolSize
property todomibus.jms.connectionFactory.maxPoolSize
(if present) -
Remove these properties:
-
domibus.datasource.xa.*
-
domibus.entityManagerFactory.jpaProperty.hibernate.transaction.factory_class
-
domibus.entityManagerFactory.jpaProperty.hibernate.transaction.jta.platform
-
all properties starting with
domibus.ui.replication.enabled
-
domibus.jms.queue.ui.replication
-
-
Replace the value of the
domibus.entityManagerFactory.jpaProperty.hibernate.connection.driver_class
property as follows:-
Set the value to
com.mysql.cj.jdbc.Driver
if it wascom.mysql.cj.jdbc.MysqlXADataSource
. -
Set the value to
oracle.jdbc.driver.OracleDriver
if it wasoracle.jdbc.xa.client.OracleXADataSource
.
-
-
Rename the
domibus.dynamicdiscovery.partyid.responder.role
and thedomibus.dynamicdiscovery.partyid.type
properties with Oasis and Peppol specific ones:-
domibus.dynamicdiscovery.peppolclient.partyid.responder.role
-
domibus.dynamicdiscovery.oasisclient.partyid.responder.role
-
domibus.dynamicdiscovery.peppolclient.partyid.type
-
domibus.dynamicdiscovery.oasisclient.partyid.type
-
-
-
Remove all properties under the "Atomikos" section ( all
com.atomikos.*
properties).
-
WebLogic only
-
In the WebLogic console, change the eDeliveryConnectionFactory JMS connection factory from XA to non-XA (section eDeliveryConnectionFactory→Configuration→Transactions: uncheck "XA Connection Factory Enabled").
Wildfly only
-
In the file
cef_edelivery_path/domibus/standalone/configuration/standalone-full.xml
:-
Remove the
<xa-datasource jndi-name="java:/jdbc/cipaeDeliveryDs"…>
datasource -
Clone the
<datasource jndi-name="java:/jdbc/cipaeDeliveryNonXADs"…>
datasource and set the jndi-name attribute tojava:/jdbc/cipaeDeliveryDs
and the pool-name attribute to eithereDeliveryMysqlDS
oreDeliveryOracleDS
.
-
Other general changes
-
Replace the Domibus war
-
The minimum password length for users has increased to 16 and it is recommended to change them for the existing users
-
Rename
conf/domibus/default_clientauthentication.xml
toconf/domibus/clientauthentication.xml
-
Replace the default plugins property files and jars into
conf/domibus/plugins/config
respectively into/conf/domibus/plugins/lib
-
Custom 4.2.x plugins are no longer compatible with Domibus 5.0 and must be adapted to use the new plugin api. For more details please check the Plugin Cookbook.
-
The following API has been removed:
-
Classes:
eu.domibus.submission.WeblogicNotificationListenerService
eu.domibus.plugin.NotificationListener
eu.domibus.plugin.NotificationListenerService
eu.domibus.common.JMSConstants
eu.domibus.plugin.QueueMessageLister
eu.domibus.plugin.MessageLister
eu.domibus.core.plugin.notification.QueueMessageListerConfiguration -
Methods:
eu.domibus.plugin.BackendConnector.listPendingMessages()
eu.domibus.plugin.AbstractBackendConnector.listPendingMessages()
eu.domibus.plugin.BackendConnector.messageSendFailed(java.lang.String)
eu.domibus.plugin.BackendConnector.messageSendSuccess(java.lang.String)
eu.domibus.plugin.BackendConnector.deliverMessage(java.lang.String)
eu.domibus.ext.services.DomibusPropertyManagerExt.setKnownPropertyValue(java.lang.String, java.lang.String, java.lang.String)
eu.domibus.common.DeliverMessageEvent.setFinalRecipient(java.lang.String)
eu.domibus.common.DeliverMessageEvent.getFinalRecipient(java.lang.String)
eu.domibus.common.DeliverMessageEvent.getProperties()
eu.domibus.common.MessageDeletedBatchEvent.getMessageIds
eu.domibus.common.MessageDeletedBatchEvent.setMessageIds
eu.domibus.common.MessageSendFailedEvent.getProperties
eu.domibus.common.MessageSendSuccessEvent.getProperties
eu.domibus.common.MessageStatusChangeEvent.getProperties
eu.domibus.common.PayloadAbstractEvent.getProperties
eu.domibus.ext.services.DomibusPropertyExtService.getDomainProperty(eu.domibus.ext.domain.DomainDTO, java.lang.String)
eu.domibus.ext.services.DomibusPropertyExtService.setDomainProperty
eu.domibus.ext.services.DomibusPropertyExtService.getDomainProperty
eu.domibus.ext.services.DomibusPropertyExtService.getDomainResolvedProperty
eu.domibus.ext.services.DomibusPropertyExtService.getResolvedProperty
eu.domibus.ext.services.PModeExtService.updatePModeFile(byte[], java.lang.String)
-
Archive
This archive holds upgrading instructions provided for end-of-life releases, including migration guides regarding the 4.1 which is an LTS.
4 Releases
4.2 Releases
Upgrading to 4.2.12
-
Replace the Domibus war.
-
Replace the default DSS extension jar into
/conf/domibus/extensions/lib
.
Upgrading to 4.2.11
-
Replace the Domibus war
Upgrading to 4.2.10
-
Replace the Domibus war
Upgrading to 4.2.9
-
Replace the Domibus war
Upgrading to 4.2.8
-
Replace the Domibus war.
Upgrading to 4.2.7
-
Replace the Domibus war.
Upgrading to 4.2.6
-
Please remove the following properties from the file /conf/domibus/extensions/config/authentication-dss-extension.properties:
-
domibus.authentication.dss.custom.trusted.lists.list1.code
-
domibus.authentication.dss.lotl.country.code=EU
-
domibus.dss.data.loader.connection.request.timeout
-
Ehcache has been upgraded to version 3.8.1 affecting "/conf/domibus/internal/ehcache.xml" cache definitions file:
-
If you use custom caches definitions defined in this file replace the old file with the new file and perform the following steps, replace:
<cache name="policyCache" maxBytesLocalHeap="5m" timeToLiveSeconds="3600" overflowToDisk="false" > </cache>
With:
<cache alias="policyCache"> <expiry> <ttl>3600</ttl> </expiry> <heap unit="MB">5</heap> </cache>
Or with <cache alias="policyCache" uses-template="ttl-3600-heap-5mb"/> if you want to reuse cache-template "ttl-3600-heap-5mb" already defined by Domibus. Configure dss-cache with:
<cache alias="dss-cache"> <expiry> <ttl>3600</ttl> </expiry> <heap unit="MB">50</heap> </cache>
-
If you don’t use custom caches just replace the old file with the new file version.
-
Replace the Domibus war and the default plugin(s) config file(s), property file(s) and jar(s) into "/conf/domibus/plugins/config" respectively into "/conf/domibus/plugins/lib".
Upgrading to 4.2.5
-
Replace the Domibus war.
-
Replace the default DSS extension jar into
/conf/domibus/extensions/lib
. -
Remove all revoked certificates from /conf/domibus/keystores/dss-tls-truststore.p12.
Upgrading to 4.2.4
-
Replace the Domibus war.
Upgrading to 4.2.3
-
Run the appropriate DB migration script(mysql-4.2.2-to-4.2.3-migration.ddl for MySQL or oracle-4.2.2-to-4.2.3-migration.ddl for Oracle).
-
Replace the Domibus war.
-
Replace the default plugins property files and jars into "conf/domibus/plugins/config" respectively into "/conf/domibus/plugins/lib".
-
Replace the default DSS extension jar into "/conf/domibus/extentions/lib".
Upgrading to 4.2.2
-
MySQL8 only
-
Grant XA_RECOVER_ADMIN privilege to the user:
In MySQL 8.0, XA_RECOVER is permitted only to users who have the XA_RECOVER_ADMIN privilege. Prior to MySQL 8.0, any user could execute this and discover the XID values of XA transactions by other users. This privilege requirement prevents users from discovering the XID values for outstanding prepared XA transactions other than their own. -
GRANT XA_RECOVER_ADMIN ON . TO 'edelivery_user'@'localhost';
-
Execute below command to flush privileges:
When we grant some privileges for a user, running this command will reloads the grant tables in the mysql database enabling the changes to take effect without reloading or restarting mysql service. -
FLUSH PRIVILEGES;
-
Run the appropriate DB migration script(mysql-4.2.1-to-4.2.2-migration.ddl for MySQL or oracle-4.2.1-to-4.2.2-migration.ddl for Oracle)
-
Replace the Domibus war.
-
Replace the default plugins property files and jars into "conf/domibus/plugins/config" respectively into "/conf/domibus/plugins/lib".
-
Change the name of 'domibus.ui.resend.action.enabled.received.minutes' property to 'domibus.action.resend.wait.minutes' in domibus.properties file.
Upgrading to 4.2.1
-
Oracle only
-
Grant access to your user to create stored procedures: Open a command line session and log in (edelivery_user and password are the ones assigned during the Oracle installation):
$ sqlplus sys as sysdba
Once logged in Oracle execute:
GRANT CREATE PROCEDURE TO <edelivery_user>
-
Run the appropriate DB migration script(mysql-4.2-to-4.2.1-migration.ddl for MySQL or oracle-4.2-to-4.2.1-migration.ddl for Oracle)
-
Replace the Domibus war
-
Replace the default plugins property files and jars into "conf/domibus/plugins/config" respectively into "/conf/domibus/plugins/lib"
-
Replace the default DSS extension jar into
/conf/domibus/extensions/lib
Upgrading to 4.2
Domibus 4.2 supports newer version of application servers and databases. Support for Oracle OpenJDK 11 has been also introduced on top of Oracle JDK 8 which was already supported.
-
It is mandatory to update to one of the below supported servers and databases. Servers: Tomcat 9.x, WildFly 20.0.x, WebLogic 12.2.1.4 Database: MySQL 8, Oracle 12c, Oracle 19c
-
If you are upgrading to a new application server, the JMS messages that are not consumed in the previous server installation must be migrated to the new server installation.
-
It is optional to upgrade to Oracle OpenJDK 11, you can still use Domibus 4.2 with Oracle JDK 8.
-
Run the appropriate DB migration script(mysql-4.1.5-to-4.2-migration.ddl for MySQL or oracle-4.1.5-to-4.2-migration.ddl for Oracle).
-
Replace the Domibus war.
-
Delete the default plugins config files(ws-plugin.xml, jms-plugin.xml and fs-plugin.xml) from "conf/domibus/plugins/config".
-
Replace the default plugins property files and jars into "conf/domibus/plugins/config" respectively into "/conf/domibus/plugins/lib".
-
PMode payload profile maxSize re-enabled: remove the comment about maxSize <payloadProfile name="MessageProfile" maxSize="40894464"> <!-- maxSize is currently ignored -→ and replace the value with maxSize="2147483647" in the PMode file.
-
Change the name of domibus.ui.csv.max.rows property to domibus.ui.csv.rows.max in domibus.properties file.
Tomcat only
-
if Oracle database is used, change oracle database configuration property domibus.datasource.xa.property.URL to domibus.datasource.xa.property.url in domibus.properties.
-
in file "conf/domibus/internal/activemq.xml"
-
remove properties-ref="domibusProperties" from the line <context:property-placeholder properties-ref="domibusProperties" ignore-resource-not-found="true" ignore-unresolvable="true"/>
Multitenancy only
-
run the appropriate DB migration script (mysql-4.1.5-to-4.2-multi-tenancy-migration.ddl for MySQL or oracle-4.1.5-to-4.2-multi-tenancy-migration.ddl for Oracle).
-
add the configuration file default-domibus.properties for the 'default' domain from the distribution.
-
add the configuration file super-domibus.properties from the distribution
-
in the domain specific configuration files(eg domain_name-domibus.properties), replace the names of the domain_name.payload.temp.* properties with domain_name.domibus.payload.temp.* .
-
for the domain specific configuration files, the domain name should start with a letter and it should contain only lower case letters, numbers and underscore.
-
as the property names in these files need to be prefixed with the domain name, this prefix needs to follow the same rules as the domain name above.
Wildfly only
-
in standalone-full.xml, search for
<managed-executor-service name="quartzExecutorService" jndi-name="java:jboss/ee/concurrency/executor/QuartzExecutorService" context-service="default" hung-task-threshold="0" long-running-tasks="true" core-threads="5" max-threads="25" keepalive-time="5000"/> and replace 'core-threads="5" max-threads="25"' with 'core-threads="100" max-threads="300"' <managed-executor-service name="domibusExecutorService" jndi-name="java:jboss/ee/concurrency/executor/DomibusExecutorService" context-service="default" hung-task-threshold="60000" core-threads="50" max-threads="200" keepalive-time="5000"/> and replace 'core-threads="50" max-threads="200"' with 'core-threads="200" max-threads="500"'
-
in standalone-full.xml, add
<managed-executor-service name="mshExecutorService" jndi-name="java:jboss/ee/concurrency/executor/MshExecutorService" context-service="default" hung-task-threshold="60000" core-threads="100" max-threads="300" keepalive-time="5000"/>
WebLogic only
-
execute the WLST API script(from "/conf/domibus/scripts/upgrades") 4.1.6-to-4.2-WeblogicSingleServer.properties for single server deployment or 4.1.6-to-4.2-WeblogicCluster.properties for cluster deployment
-
Custom plugins - For custom plugins the interface to Domibus has changed. Please follow the Plugin Cookbook sections:
-
8. DEPRECATED API AND MIGRATING TO THE NEW API - to update the notification listener to the plugins
-
4. PLUGIN PROPERTIES - to update the registration of plugin properties with Domibus and their retrieval
-
3.9. Ehcache - to follow the new structure of ehcache if the plugin creates its own caches.
Upgrading to 4.2
-
Run the appropriate DB migration script(mysql-4.2-RC1-to-4.2-migration.ddl for MySQL or oracle-4.2-RC1-to-4.2-migration.ddl for Oracle).
-
Replace the Domibus war.
-
Replace the default plugin(s) property file(s) and jar(s) into
/domibus/conf/domibus/plugins/config
respectively into/domibus/conf/domibus/plugins/lib
. -
Replace the domibus.properties file(Please comment the property 'domibus.database.schema', if Domibus is configured in single-tenancy mode with Oracle database).
WebLogic only
-
execute the WLST API script(from "/conf/domibus/scripts/upgrades") 4.1.6-to-4.2-WeblogicSingleServer.properties for single server deployment or 4.1.6-to-4.2-WeblogicCluster.properties for cluster deployment.
4.1 Releases
Upgrading to 4.1.7
-
Upgraded several libraries version: Apache CXF to 3.3.8, Hibernate to 5.4.27.Final, BouncyCastle to 1.64, etc
Upgrading to 4.1.6
-
Replace the Domibus war.
Upgrading to 4.1.5
-
Run the appropriate DB migration script(mysql5innoDb-4.1.3-to-4.1.5-migration.ddl for MySQL or oracle10g-4.1.3-to-4.1.5-migration.ddl for Oracle).
-
Replace the Domibus war and the default plugin(s) config file(s), property file(s) and jar(s) into
/domibus/conf/domibus/plugins/config
respectively into/domibus/conf/domibus/plugins/lib
. -
In case of Dynamic Discovery where the trust for SMP certificate is established only by issuer certificate, now the whole chain must be imported in to the truststore.
Upgrading to 4.1.3
-
Replace the Domibus war and the default plugin(s) config file(s), property file(s) and jar(s) into
/domibus/conf/domibus/plugins/config
respectively into/domibus/conf/domibus/plugins/lib
.
Tomcat only
-
In file "conf/domibus/internal/activemq.xml", remove the attribute rmiServerPort="${activeMQ.rmiServerPort}" from the managementContext element
-
In file "/conf/domibus/domibus.properties", remove the property "activeMQ.rmiServerPort" and update the JMX URL property to "activeMQ.JMXURL=service:jmx:rmi:///jndi/rmi://${activeMQ.broker.host}:${activeMQ.connectorPort}/jmxrmi".
Upgrading to 4.1.2
-
Run the appropriate DB migration script(mysql5innoDb-4.1.1-to-4.1.2-migration.ddl for MySQL or oracle10g-4.1.1-to-4.1.2-migration.ddl for Oracle).
-
Replace the Domibus war and the default plugin(s) config file(s), property file(s) and jar(s) into
/domibus/conf/domibus/plugins/config
respectively into/domibus/conf/domibus/plugins/lib
. -
Replace the current logback.xml file with the newer version optionally keeping the existing configuration.
-
In case you are using multitenancy please make the following modifications:
-
replace old logback.xml with the newer version optionally keeping the existing configuration and uncomment the specific sections for multitenancy
-
replace each domain-name_logback.xml file with the newer version optionally keeping the existing configuration
-
add a configuration file of type domain_name-logback.xml for domain 'default' * it’s mandatory
-
for the database general schema run the appropriate DB migration script(mysql5innoDb-4.1.1-to-4.1.2-multi-tenancy-migration.ddl for MySQL or oracle10g-4.1.1-to-4.1.2-multi-tenancy-migration.ddl for Oracle)
-
for each tenant schema in the database run the appropriate DB migration script(mysql5innoDb-4.1.1-to-4.1.2-migration.ddl for MySQL or oracle10g-4.1.1-to-4.1.2-migration.ddl for Oracle)
-
for Oracle database, for each tenant schema in the database, grant privileges to the general schema using oracle10g-4.1.2-multi-tenancy-rights.sql. Please update the schema name before execution.
-
in file "/conf/domibus/plugins/config/ws-plugin.xml" locate the following section and add the following beans:
<jaxws:endpoint id="backendInterfaceEndpoint" implementor="#backendWebservice" address="/backend"> <jaxws:features> <bean id="loggingFeature" class="org.apache.cxf.ext.logging.LoggingFeature"> <property name="sender" ref="wsPluginLoggingSender"/> <property name="limit" value="${domibus.logging.cxf.limit}"/> </bean> </jaxws:features> </jaxws:endpoint> <!--Message logger configuration--> <bean id="wsPluginLoggingSender" class="eu.domibus.plugin.webService.impl.logging.DomibusWSPluginLoggingEventSender"> <property name="printPayload" value="${domibus.logging.payload.print}"/> </bean>
-
Upgrading to 4.1.1
-
Replace the Domibus war.
Upgrading to 4.1
-
Run the appropriate DB migration script(mysql5innoDb-4.0.2-to-4.1-migration.ddl for MySQL or oracle10g-4.0.2-to-4.1-migration.ddl for Oracle).
-
Replace the Domibus war and the default plugin(s) config file(s), property file(s) and jar(s) into
/domibus/conf/domibus/plugins/config
respectively into/domibus/conf/domibus/plugins/lib
. -
Replace the current logback.xml file with the newer version optionally keeping the existing configuration.
-
In case you are using multitenancy please perform the following modifications:
-
replace the old logback.xml with the newer version optionally keeping the existing configuration and uncomment the specific sections for multitenancy
-
replace each domain-name_logback.xml file with the newer version optionally keeping the existing configuration
-
add a configuration file of type domain_name-logback.xml for domain 'default'
-
for the database general schema run the appropriate DB migration script(mysql5innoDb-4.0.2-to-4.1-multi-tenancy-migration.ddl for MySQL or oracle10g-4.0.2-to-4.1-multi-tenancy-migration.ddl for Oracle)
-
for each tenant schema in the database run the appropriate DB migration script(mysql5innoDb-4.0.2-to-4.1-migration.ddl for MySQL or oracle10g-4.0.2-to-4.1-migration.ddl for Oracle)
-
for Oracle database, for each tenant schema in the database, grant privileges to the general schema using oracle10g-4.1-multi-tenancy-rights.sql. Please update the schema name before execution.
-
WebLogic only
-
In case the probe URL is used, the new probe URL is /domibus/services/msh.
-
In execute the WLST API script(from "/conf/domibus/scripts/upgrades") 4.0.2-to-4.1-WeblogicSingleServer.properties for single server deployment or 4.0.2-to-4.1-WeblogicCluster.properties for cluster deployment.
Wildfly only
-
In case the probe URL is used, the new probe URL is /domibus/services/msh
-
In file "cef_edelivery_path/domibus/standalone/configuration/standalone-full.xml":
-
add the following queues
<!-- --> <subsystem xmlns="urn:jboss:domain:messaging-activemq:3.0"> <server name="default"> <!-- --> <address-setting name="jms.queue.DomibusSendLargeMessageQueue" expiry-address="jms.queue.ExpiryQueue" redelivery-delay="1000" max-delivery-attempts="0"/> <address-setting name="jms.queue.DomibusSplitAndJoinQueue" expiry-address="jms.queue.ExpiryQueue" redelivery-delay="60000" max-delivery-attempts="3"/> <address-setting name="jms.queue.DomibusPullReceiptQueue" expiry-address="jms.queue.ExpiryQueue" redelivery-delay="1000" max-delivery-attempts="3"/> <address-setting name="jms.queue.DomibusRetentionMessageQueue" expiry-address="jms.queue.ExpiryQueue" redelivery-delay="10000" max-delivery-attempts="0"/> <address-setting name="jms.queue.DomibusFSPluginSendQueue" expiry-address="jms.queue.ExpiryQueue" max-delivery-attempts="0"/> <jms-queue name="DomibusSendLargeMessageQueue" entries="java:/jms/domibus.internal.largeMessage.queue java:/jms/queue/DomibusSendLargeMessageQueue" durable="true"/> <jms-queue name="DomibusSplitAndJoinQueue" entries="java:/jms/domibus.internal.splitAndJoin.queue java:/jms/queue/DomibusSplitAndJoinQueue" durable="true"/> <jms-queue name="DomibusPullReceiptQueue" entries="java:/jms/domibus.internal.pull.receipt.queue java:/jms/queue/DomibusPullReceiptQueue" durable="true"/> <jms-queue name="DomibusRetentionMessageQueue" entries="java:/jms/domibus.internal.retentionMessage.queue java:/jms/queue/DomibusRetentionMessageQueue" durable="true"/> <jms-queue name="DomibusFSPluginSendQueue" entries="java:/jms/domibus.fsplugin.send.queue java:/jms/queue/DomibusFSPluginSendQueue" durable="true"/> <!-- --> </server> </subsystem> <!-- -->
Tomcat only
-
In the file "cef_edelivery_path/domibus/conf/domibus/internal/activemq.xml", in the destinations section add the following queues:
<!-- --> <destinations> <!-- --> <queue id="sendLargeMessageQueue" physicalName="domibus.internal.largeMessage.queue"/> <queue id="splitAndJoinQueue" physicalName="domibus.internal.splitAndJoin.queue"/> <queue id="retentionMessageQueue" physicalName="domibus.internal.retentionMessage.queue"/> <queue id="sendPullReceiptQueue" physicalName="domibus.internal.pull.receipt.queue"/> <queue id="fsPluginSendQueue" physicalName="${fsplugin.send.queue:domibus.fsplugin.send.queue}"/> <!-- --> </destinations> <!-- -->
-
in the redeliveryPolicyEntries section add the following entries:
<!-- --> <redeliveryPolicyEntries> <!-- --> <redeliveryPolicy queue="domibus.internal.largeMessage.queue" maximumRedeliveries="0"/> <redeliveryPolicy queue="domibus.internal.splitAndJoin.queue" maximumRedeliveries="3"/> <redeliveryPolicy queue="domibus.internal.retentionMessage.queue" maximumRedeliveries="0"/> <redeliveryPolicy queue="domibus.internal.pull.receipt.queue" maximumRedeliveries="3"/> <redeliveryPolicy queue="${fsplugin.send.queue:domibus.fsplugin.send.queue}" maximumRedeliveries="0"/> <!-- --> </redeliveryPolicyEntries> <!-- -->
Optional
-
Rename the property "message.retention.downloaded.max.delete" to "domibus.retentionWorker.message.retention.downloaded.max.delete" in your domibus.properties file. If the property is not defined, do nothing. Default value "50" has not been changed.
-
Rename the property "message.retention.not_downloaded.max.delete" to "domibus.retentionWorker.message.retention.not_downloaded.max.delete" in your domibus.properties file. If the property is not defined, do nothing. Default value "50" has not been changed.
Recommended
-
Remove domibus.msh.retry.tolerance from domibus.properties, if set. This property is not used anymore.
4.0 Releases
Upgrading to 4.0.2
-
Replace the Domibus war and the default plugin(s) config file(s), property file(s) and jar(s) into
/domibus/conf/domibus/plugins/config
respectively into/domibus/conf/domibus/plugins/lib
.
Upgrading to 4.0.1
-
Run the appropriate DB migration script(mysql5innoDb-4.0-to-4.0.1-migration.ddl for MySQL or oracle10g-4.0-to-4.0.1-migration.ddl for Oracle).
-
Replace the Domibus war and the default plugin(s) config file(s), property file(s) and jar(s) into
/domibus/conf/domibus/plugins/config
respectively into/domibus/conf/domibus/plugins/lib
. -
In case you are using multitenancy please make the following modifications:
-
replace old logback.xml with the new version of logback.xml keeping existing packages to be logged and uncomment the proper sections for multitenancy.
-
replace each domain-name_logback.xml file with the newer version and keep existing packages for logging.
-
add a configuration file of type domain_name-logback.xml for domain 'default' * it’s mandatory.
-
for the database general schema run the appropriate DB migration script(mysql5innoDb-4.0-to-4.0.1-multi-tenancy-migration.ddl for MySQL or oracle10g-4.0-to-4.0.1-multi-tenancy-migration.ddl for Oracle).
-
for each tenant schema in the database run the appropriate DB migration script(mysql5innoDb-4.0-to-4.0.1-migration.ddl for MySQL or oracle10g-4.0-to-4.0.1-migration.ddl for Oracle).
-
for Oracle database, for each tenant schema in the database, grant privileges to the general schema using oracle10g-4.0.1-multi-tenancy-rights.sql. Please update the schema name before execution.
-
Upgrading to 4.0
-
Run the appropriate DB migration script(mysql5innoDb-3.3.4-to-4.0-migration.ddl for MySQL or oracle10g-3.3.4-to-4.0-migration.ddl for Oracle).
-
Replace the Domibus war and the default plugin(s) config file(s), property file(s) and jar(s) into
/domibus/conf/domibus/plugins/config
respectively into/domibus/conf/domibus/plugins/lib
. -
The following changes have been implemented in the Default WS Plugin which is not backward compatible. The client of the Default WS Plugin need to take into account the following changes:
-
Replaced SendMessageFault with SubmitMessageFault.
-
Replaced DownloadMessageFault with RetrieveMessageFault.
-
Replaced PayloadType with LargePayloadTypesubmitRequest.getBodyload() is no longer available and the payloads section should be used instead.
-
Removed deprecated methods sendMessage, downloadMessage, getMessageStatus.
-
MessageInfo→timestamp type was changed from Date to LocalDateTime.
-
Removed Description and Schema fields from PartInfo. These fields are no longer accepted by Domibus backend.
-
The backwards compatibility with the Custom Plugins is not maintained. In order to upgrade please follow the steps:
-
Remove the domibus-ext-services-api Maven dependency; the existing services from the domibus-ext-services-api have been moved into the plugin-api module under the same packages.
The service classes from the domibus-ext-services-api module have been renamed in order not to be confused with the internal services.
Example: AuthenticationService was renamed to AuthenticationExtService AuthenticationException was renamed to AuthenticationExtException.
The same pattern has been used for the other services and exceptions.
-
-
Replace the Maven dependency commons-lang with commons-lang3 like below:
<dependency> <groupId>org.apache.commons</groupId> <artifactId>commons-lang3</artifactId> <scope>provided</scope> </dependency>
-
PEPPOL dynamic discovery was updated to the PEPPOL profile requirements. The value of eb:UserMessage/eb:CollaborationInfo/eb:Service matches now the entire Scheme::ProcessIdentifier construction while the Service@type is not taken into consideration and therefore can take any needed value.
WebLogic only
-
Modify the XA datasource "cipaeDeliveryDs" settings in the WebLogic Console
-
In the "cipaeDeliveryDs" datasource menu, tab Configuration/Transaction, enable the setting "Set XA Transaction Timeout"
-
-
Modify file "/conf/domibus/domibus.properties":
-
add the following properties: domibus.jms.queue.alert=jms/domibus.internal.alert.queue
-
execute the WLST API script(from "/conf/domibus/scripts/upgrades") 3.3.4-to-4.0-WeblogicSingleServer.properties for single server deployment or 3.3(+)-to-4.0-WeblogicCluster.properties for cluster deployment
-
Tomcat only
-
Modify file "/conf/domibus/domibus.properties":
-
add the following properties: domibus.jms.queue.alert=domibus.internal.alert.queue
-
update the following properties: domibus.datasource.maxLifetime=30
domibus.jms.XAConnectionFactory.maxPoolSize=100
com.atomikos.icatch.max_actives=300
-
-
In file "cef_edelivery_path/domibus/conf/domibus/internal/activemq.xml", in the destinations section add the following queues:
<!-- --> <destinations> <!-- --> <queue id="alertMessageQueue" physicalName="domibus.internal.alert.queue"/> <queue id="uiReplicationQueue" physicalName="domibus.internal.ui.replication.queue"/> <!-- --> </destinations> <!-- -->
-
In the redeliveryPolicyEntries section add the following entries:
<!-- --> <redeliveryPolicyEntries> <!-- --> <redeliveryPolicy queue="domibus.internal.alert.queue" maximumRedeliveries="0"/> <redeliveryPolicy queue="domibus.internal.ui.replication.queue" maximumRedeliveries="1" redeliveryDelay="10000"/> <!-- --> </redeliveryPolicyEntries> <!-- -->
-
In the discardingDLQBrokerPlugin update the dropOnly parameter value as below:
Original:
<discardingDLQBrokerPlugin dropAll="false" dropOnly="domibus.internal.dispatch.queue domibus.internal.pull.queue" reportInterval="10000"/> -new configuration: <discardingDLQBrokerPlugin dropAll="false" dropOnly="domibus.internal.dispatch.queue domibus.internal.pull.queue domibus.internal.alert.queue" reportInterval="10000"/>
Wildfly only
-
Modify file "/conf/domibus/domibus.properties":
-
add the following property: domibus.jms.queue.alert=jms/domibus.internal.alert.queue
-
-
in file "cef_edelivery_path/domibus/standalone/configuration/standalone-full.xml":
-
add the following queues in the destination section
<!-- --> <jms-destinations> <!-- --> <jms-queue name="DomibusAlertMessageQueue"> <entry name="java:/jms/domibus.internal.alert.queue"/> <entry name="java:/jms/queue/DomibusAlertMessageQueue"/> <durable>true</durable> </jms-queue> <jms-queue name="DomibusUIReplicationQueue"> <entry name="java:/jms/domibus.internal.ui.replication.queue"/> <entry name="java:/jms/queue/DomibusUIReplicationQueue"/> <durable>true</durable> </jms-queue> <!-- --> </jms-destinations> <!-- -->
-
In the address-settings section, add the following address-setting configurations:
<!-- --> <address-settings> <!-- --> <address-setting match="jms.queue.DomibusAlertMessageQueue"> <expiry-address>jms.queue.ExpiryQueue</expiry-address> <max-delivery-attempts>1</max-delivery-attempts> </address-setting> <address-setting match="jms.queue.DomibusUIReplicationQueue"> <expiry-address>jms.queue.ExpiryQueue</expiry-address> <redelivery-delay>1000</redelivery-delay> <max-delivery-attempts>1</max-delivery-attempts> </address-setting> <!-- --> </address-settings> <!-- -->
-
-
Authentication uses BCryptPasswordEncoder, similar to the UI users. TB_AUTHENTICATION_ENTRY table was restored t*defaults, having tw*users 'admin' and 'user' with default password '123456' encrypted using the new algorithm. Custom users should be recreated using the new functionality in the Domibus Admin Console.
WS-Plugin
-
Remove from PartInfo the Description and Schema headers from the SOAP messages. These headers were deprecated in ebMS3 and as a result were removed from the WS-Plugin XSD. When received on the MSH side, they are simply ignored.
JMS-Plugin
-
Description is no longer available as a property of a payload, remove it from the input message.
-
Modify file "/conf/domibus/domibus.properties":
-
add property domibus.dynamicdiscovery.useDynamicDiscovery=true or false
-
update all the cron expressions from 0/60 * * * * ? t*0 0/1 * * * ?
-
delete property domibus.entityManagerFactory.jpaProperty.hibernate.transaction.manager_lookup_class and replace it by:
WebLogic only
domibus.entityManagerFactory.jpaProperty.hibernate.transaction.jta.platform=org.hibernate.engine.transaction.jta.platform.internal.WeblogicJtaPlatform
Tomcat only domibus.entityManagerFactory.jpaProperty.hibernate.transaction.jta.platform=com.atomikos.icatch.jta.hibernate4.AtomikosJ2eePlatform
Wildfly only domibus.entityManagerFactory.jpaProperty.hibernate.transaction.jta.platform=org.hibernate.engine.transaction.jta.platform.internal.JBossAppServerJtaPlatform
MySQL only
-
-
Add property : domibus.entityManagerFactory.jpaProperty.hibernate.id.new_generator_mappings=false
Tomcat only
-
Add a new property "domibus.database.schema" for defining the database schema and modify the "domibus.datasource.xa.property.url" and "domibus.datasource.url" properties t*re-use it. Eg: #MySQL
domibus.datasource.xa.property.url=jdbc:mysql://${domibus.database.serverName}:${domibus.database.port}/${domibus.database.schema}?pinGlobalTxToPhysicalConnection=true domibus.datasource.url=jdbc:mysql://${domibus.database.serverName}:${domibus.database.port}/${domibus.database.schema}?useSSL=false
-
Delete properties
domibus.backend.jmsInQueue
domibus.pmode.dao.implementation -
Optional changes (only if Domibus is used in multi-tenancy mode):
-
Create a new database schema using the DB script(mysql5innoDb-4.0-multi-tenancy.ddl for MySQL or oracle10g-4.0-multi-tenancy.ddl for Oracle).
-
Add the new property "domibus.database.general.schema" in the Database section of "/conf/domibus/domibus.properties" file and configure it with the general schema created in the previous step.
Tomcat only
-
-
Modify the file "/conf/domibus/domibus.properties":
-
Modify the "domibus.datasource.xa.property.url" and "domibus.datasource.url" properties and set the default general schema in the URL Eg: #MySQL
domibus.datasource.xa.property.url=jdbc:mysql://${domibus.database.serverName}:${domibus.database.port}/${domibus.database.general.schema}?pinGlobalTxToPhysicalConnection=true domibus.datasource.url=jdbc:mysql://${domibus.database.serverName}:${domibus.database.port}/${domibus.database.general.schema}?useSSL=false domibus.datasource.url=jdbc:mysql://${domibus.database.serverName}:${domibus.database.port}/${domibus.database.general.schema}?useSSL=false
Check the Admin Guide for more details how to set up Domibus in multi-tenancy mode.
-
(Optional) Security policies were updated and renamed. Change your pMode to use eDeliveryAS4Policy.xml instead of eDeliveryPolicy.xml and eSensPolicy(.v2.0).xml. Replace both eDeliveryPolicy_CA.xml and eSensPolicy.v2.0_CA.xml, by eDeliveryAS4Policy_BST.xml.
3 Releases
3.3 Releases
Upgrading to 3.3.4
-
Run the appropriate DB migration script
MySQL→ mysql5innoDb-3.3.2(+)-to-3.3.4-migration.ddl
Oracle→ oracle10g-3.3.2(+)-to-3.3.4-migration.ddl
-
In the file
/conf/domibus/domibus.properties
add the following properties:domibus.pull.queue.concurency=1-1
domibus.internal.queue.concurency=3-10
domibus.pull.request.send.per.job.cycle=1 (Optional default value to 1)
domibus.internal.queue.concurency=3-10 -
If used, rename the following properties ("." was removed between dynamic and discovery):
domibus.dynamic.discovery.client.specification rename to domibus.dynamicdiscovery.client.specification
domibus.dynamic.discovery.peppolclient.mode rename to domibus.dynamicdiscovery.peppolclient.mode
domibus.dynamic.discovery.oasisclient.regexCertificateSubjectValidation rename to domibus.dynamicdiscovery.oasisclient.regexCertificateSubjectValidation
Upgrading to 3.3.3
-
Replace the Domibus war and the plugin(s) jar(s) into
/domibus/conf/domibus/plugins/lib
.
Upgrading to 3.3.2
-
In the file "/conf/domibus/domibus.properties" add the following properties, in the security section:
domibus.certificate.check.cron=0 0 0/1 * * ?
domibus.certificate.revocation.offset=10 (Optional, default is 10)
-
Run the appropriate DB migration script,
mysql5innoDb-3.3.1-to-3.3.2-migration.ddl
for MySQL ororacle10g-3.3.1-to-3.3.2-migration.ddl
for Oracle. -
In the file "/conf/domibus/logback.xml" at line 22 replace
<marker>LOGGED_MARKER</marker>
with
<marker>SECURITY</marker> <marker>BUSINESS</marker>
-
[Wildfly only] In standalone/configuration/standalone-full.xml update "max-delivery-attempts" to 0 for
DomibusPullMessageQueue and DomibusSendMessageQueue: <address-setting match="jms.queue.DomibusSendMessageQueue"> <max-delivery-attempts>0</max-delivery-attempts> </address-setting> <address-setting match="jms.queue.DomibusPullMessageQueue"> <max-delivery-attempts>0</max-delivery-attempts> </address-setting>
Upgrading to 3.3.1
-
Replace the Domibus war and the plugin(s) jar(s) into
/domibus/conf/domibus/plugins/lib
-
In the file
/conf/domibus/domibus.properties
add the following properties, in the security section:domibus.console.login.maximum.attempt=5
domibus.console.login.suspension.time=3600
domibus.account.unlock.cron=0 0/1 * * * ?
-
Run the appropriate DB migration script(mysql5innoDb-3.3-to-3.3.1-migration.ddl for MySQL or oracle10g-3.3-to-3.3.1-migration.ddl for Oracle)
Upgrading to 3.3
-
Replace the Domibus war and the plugin(s) jar(s) into
/domibus/conf/domibus/plugins/lib
-
Run the appropriate DB migration script(mysql5innoDb-3.2.5-to-3.3-migration.ddl for MySQL or oracle10g-3.2.5-to-3.3-migration.ddl for Oracle)
-
[ALL Databases]:
Execute the following SQL snippet after replacing the values for the USER_PASSWORD with the configured passwords in domibus-security.xml(in the "authenticationManagerForAdminConsole" authentication manager):
INSERT INTO TB_USER_ROLE (ID_PK, ROLE_NAME) VALUES ('1', 'ROLE_ADMIN'); INSERT INTO TB_USER_ROLE (ID_PK, ROLE_NAME) VALUES ('2', 'ROLE_USER'); INSERT INTO TB_USER (ID_PK, USER_NAME, USER_PASSWORD, USER_ENABLED) VALUES ('1', 'admin', '$2a$10$5uKS72xK2ArGDgb2CwjYnOzQcOmB7CPxK6fz2MGcDBM9vJ4rUql36', 1); INSERT INTO TB_USER (ID_PK, USER_NAME, USER_PASSWORD, USER_ENABLED) VALUES ('2', 'user', '$2a$10$HApapHvDStTEwjjneMCvxuqUKVyycXZRfXMwjU0rRmaWMsjWQp/Zu', 1); INSERT INTO TB_USER_ROLES (USER_ID, ROLE_ID) VALUES ('1', '1'); INSERT INTO TB_USER_ROLES (USER_ID, ROLE_ID) VALUES ('1', '2'); INSERT INTO TB_USER_ROLES (USER_ID, ROLE_ID) VALUES ('2', '2');
-
[MySQL only] Execute the command: alter schema
your_domibus_schema_name
default charset=utf8 collate=utf8_bin; -
in the location "/conf/domibus" delete the log4j.properties file and copy the logback.xml distributed in the domibus configuration specific to each server
-
in file "/conf/domibus/plugins/config/ws-plugin.xml" locate the following section and add the following interceptors:
<jaxws:endpoint id="backendInterfaceEndpoint" implementor="#backendWebservice" address="/backend"> <!-- --> <jaxws:outInterceptors> <ref bean="clearAuthenticationMDCInterceptor"/> </jaxws:outInterceptors> <jaxws:outFaultInterceptors> <ref bean="clearAuthenticationMDCInterceptor"/> </jaxws:outFaultInterceptors> </jaxws:endpoint>
-
Add the following lines to "/conf/domibus/internal/ehcache.xml"
<cache name="dispatchClient" maxBytesLocalHeap="5m" timeToLiveSeconds="3600" overflowToDisk="false"> <sizeOfPolicy maxDepthExceededBehavior="abort"/> </cache>
-
If not already the case modify the certificate alias from the keystore in order to match the party name of the sender AP.
-
The external Spring configuration files(domibus-configuration.xml, domibus-datasources.xml, domibus-plugins.xml, domibus-security.xml, domibus-transactions.xml, persistence.xml) are not used anymore. All the properties defined in those files have been externalized in a new property file named "domibus.properties" which is specific to each supported server(Tomcat/WebLogic/WildFly). In order to perform the upgrade procedure please copy the file "domibus.properties", distributed in the domibus configuration specific to each server, to "/conf/domibus" and adapt the properties values based on the configured properties defined in the old Spring configuration files. After this action is completed the old Spring configuration files (domibus-configuration.xml, domibus-datasources.xml, domibus-plugins.xml, domibus-security.xml, domibus-transactions.xml, persistence.xml) can be deleted.
Please find below the mapping between the old Spring configuration files and the new "domibus.properties" file:
-
In the file "/conf/domibus/domibus-configuration.xml" all the properties defined in "<util:properties id="domibusProperties">" have been copied such as with the following exception:
-
Rename the property "domibus.certificate.validation.enabled" to "domibus.receiver.certificate.validation.onsending" in your domibus.properties file. If the property is not defined, do nothing. Default value "true" has not been changed.
-
Rhe value for the property "domibus.msh.retry.tolerance" should be changed to 10800000.
-
-
In the file "/conf/domibus/domibus-security.xml"
-
In the "keystorePasswordCallback" section: + "key" mapped to "domibus.security.key.private.alias" + "value" mapped to "domibus.security.key.private.password"
-
-
In the "<util:properties id="keystoreProperties">" section:
-
"org.apache.ws.security.crypto.merlin.keystore.type" mapped to "domibus.security.keystore.type"
-
"org.apache.ws.security.crypto.merlin.keystore.password" mapped to "domibus.security.keystore.password"
-
"org.apache.ws.security.crypto.merlin.keystore.alias" mapped to "domibus.security.key.private.alias"
-
"org.apache.ws.security.crypto.merlin.file" mapped to "domibus.security.keystore.location"
-
-
In the "<util:properties id="trustStoreProperties">" section:
-
"org.apache.ws.security.crypto.merlin.trustStore.type" mapped to "domibus.security.truststore.type"
-
"org.apache.ws.security.crypto.merlin.trustStore.password" mapped to "domibus.security.truststore.password"
-
"org.apache.ws.security.crypto.merlin.trustStore.file" mapped to "domibus.security.truststore.location"
-
-
In file "/conf/domibus/domibus-datasources.xml", in the "entityManagerFactory" section:
-
"packagesToScan" mapped to "domibus.entityManagerFactory.packagesToScan".
-
"jpaProperties" properties are mapped with the following convention: prefix "domibus.entityManagerFactory.jpaProperty." + property name; Eg: "hibernate.dialect" mapped to "domibus.entityManagerFactory.jpaProperty.hibernate.dialect".
-
-
In the "domibusJMS-XAConnectionFactory" section:
-
"maxPoolSize" mapped to "com.atomikos.maxPoolSize"
-
In the "amq:xaConnectionFactory" section:
-
"brokerURL" mapped to "activeMQ.transportConnector.uri"
-
"userName" mapped to "activeMQ.username"
-
"password" mapped to "activeMQ.password"
-
In the "domibusJDBC-XADataSource" section:
-
"xaDataSourceClassName" mapped to "domibus.datasource.xa.xaDataSourceClassName"
-
"minPoolSize" mapped to "domibus.datasource.xa.minPoolSize"
-
"maxPoolSize" mapped to "domibus.datasource.xa.maxPoolSize"
-
"testQuery" mapped to "domibus.datasource.xa.testQuery"
-
"xaProperties" properties are mapped with the following convention: prefix "domibus.datasource.xa.property." + property name; Eg: "user" mapped to "domibus.datasource.xa.property.user";
Exception to this rule: the property: "serverName" mapped to "domibus.database.serverName" and "port" mapped to "domibus.database.port".
-
New properties added:
-
check the section "#Non-XA Datasource" and adapt the properties based on the used database(MySQL or Oracle).
-
[WebLogic only]
-
In case the probe URL is used, the new probe URL is /domibus-weblogic/services/msh.
-
Modify the following parameters for the queue DomibusSendMessageQueue(jms/domibus.internal.dispatch.queue):
-
Set "Expiration Policy" to "Discard".
-
Set "Error Destination" to "None".
-
-
Execute the WLST API script(from "/conf/domibus/scripts/upgrades") 3.2.5-to-3.3-WeblogicSingleServer.properties for single server deployment or 3.2.5-to-3.3-WeblogicCluster.properties for cluster deployment.
-
-
[WildFly only]
-
In file "cef_edelivery_path/domibus/standalone/configuration/standalone-full.xml", add the following datasource(MySQL or Oracle) in the datasources section (please adapt the values for host, port, username and password properties according to your database schema):
<subsystem xmlns="urn:jboss:domain:datasources:3.0"> <datasources> .................... <!-* MySQL --> <datasource jndi-name="java:/jdbc/cipaeDeliveryNonXADs" pool-name="eDeliveryMysqlNonXADS" enabled="true" use-ccm="true"> <connection-url>jdbc:mysql://localhost:3306/domibus_schema</connection-url> <driver-class>com.mysql.jdbc.Driver</driver-class> <driver>com.mysql</driver> <security> <user-name>edelivery_username</user-name> <password>edelivery_password</password> </security> <validation> <valid-connection-checker class-name="org.jboss.jca.adapters.jdbc.extensions.mysql.MySQLValidConnectionChecker"/> <background-validation>true</background-validation> <exception-sorter class-name="org.jboss.jca.adapters.jdbc.extensions.mysql.MySQLExceptionSorter"/> </validation> </datasource>
<!-- Oracle --> <datasource jta="true" jndi-name="java:/jdbc/cipaeDeliveryNonXADs" pool-name="eDeliveryOracleNonXADS" enabled="true" use-ccm="true"> <connection-url>jdbc:oracle:thin:@localhost:1521:xe</connection-url> <driver-class>oracle.jdbc.OracleDriver</driver-class> <driver>com.oracle</driver> <security> <user-name>edelivery_username</user-name> <password>edelivery_password</password> </security> <validation> <valid-connection-checker class-name="org.jboss.jca.adapters.jdbc.extensions.oracle.OracleValidConnectionChecker"/> <background-validation>true</background-validation> <stale-connection-checker class-name="org.jboss.jca.adapters.jdbc.extensions.oracle.OracleStaleConnectionChecker"/> <exception-sorter class-name="org.jboss.jca.adapters.jdbc.extensions.oracle.OracleExceptionSorter"/> </validation> </datasource> <!-- --> </datasources> </subsystem>
-
add the following executor services in the following section:
<subsystem xmlns="urn:jboss:domain:ee:3.0"> <!-- --> <concurrent> <!-- --> <managed-executor-services> <managed-executor-service name="domibusExecutorService" jndi-name="java:jboss/ee/concurrency/executor/DomibusExecutorService" context-service="default" hung-task-threshold="60000" core-threads="5" max-threads="25" keepalive-time="5000"/> </managed-executor-services> <managed-executor-services> <managed-executor-service name="quartzExecutorService" jndi-name="java:jboss/ee/concurrency/executor/QuartzExecutorService" context-service="default" hung-task-threshold="0" long-running-tasks="true" core-threads="5" max-threads="25" keepalive-time="5000"/> </managed-executor-services> <!-- --> </concurrent> <!-- --> <subsystem xmlns="urn:jboss:domain:ee:3.0">
-
add the following queue in the destination section
<!-- --> <jms-destinations> <!-- --> <jms-queue name="DomibusPullMessageQueue"> <entry name="java:/jms/domibus.internal.pull.queue"/> <entry name="java:/jms/queue/DomibusPullMessageQueue"/> <durable>true</durable> </jms-queue> <jms-queue name="DomibusNotifyBackendFileSystemQueue"> <entry name="java:/jms/domibus.notification.filesystem"/> <entry name="java:/jms/queue/DomibusNotifyBackendFileSystemQueue"/> <durable>true</durable> </jms-queue> <!-- --> </jms-destinations> <!-- -->
-
In the address-settings section, add the following address-setting configurations:
<!-- --> <address-settings> <!-- --> <address-setting match="jms.queue.DomibusPullMessageQueue"> <dead-letter-address>jms.queue.DomibusDLQ</dead-letter-address> <expiry-address>jms.queue.ExpiryQueue</expiry-address> <redelivery-delay>1000</redelivery-delay> <max-delivery-attempts>1</max-delivery-attempts> </address-setting> <address-setting match="jms.queue.DomibusNotifyBackendFileSystemQueue"> <dead-letter-address>jms.queue.DomibusDLQ</dead-letter-address> <expiry-address>jms.queue.ExpiryQueue</expiry-address> <redelivery-delay>300000</redelivery-delay> <max-delivery-attempts>10</max-delivery-attempts> </address-setting> <!-- --> </address-settings> <!-- -->
-
Remove the "dead-letter-address" setting from the "address-setting" configuration of the "jms.queue.DomibusSendMessageQueue"; after the modification will be done the "jms.queue.DomibusSendMessageQueue" "address-setting" configuration will look like below:
<address-setting match="jms.queue.DomibusSendMessageQueue"> <expiry-address>jms.queue.ExpiryQueue</expiry-address> <redelivery-delay>1000</redelivery-delay> <max-delivery-attempts>1</max-delivery-attempts> </address-setting>
-
[Tomcat only]
-
The "/conf/domibus/internal/activemq.xml" file has been considerably modified and has to be replaced.
If custom modification have been done(like adding new queues) re-apply these changes into the new version.
-
-
Optional changes
-
Consider the replacement of deprecated operation getMessageStatus() with the newer getStatus() that also returns the newly introduced DOWNLOADED status.
-
In Domibus 3.3 the logging framework changed from Commons Logging to SLF4J with Logback. Nevertheless the support in the custom plugins for Commons Logging is still supported in order to maintain backward compatibility. Still we strongly recommend to perform the following modification in order to perform the switch from Commons Logging to the Domibus custom logger which is based on SLFJ:
-
In the file pom.xml of the custom plugin maven module:
-
Remove the following dependency:
<dependency> <groupId>commons-logging</groupId> <artifactId>commons-logging</artifactId> <scope>provided</scope> </dependency>
-
Add the following dependency:
<dependency> <groupId>eu.domibus</groupId> <artifactId>domibus-logging</artifactId> </dependency>
-
-
-
In the custom plugin module source code replace all declarations of the logger:
-
Before
eg: private static final Log LOG = LogFactory.getLog(BackendWebServiceImpl.class); -
Before
eg: private static final DomibusLogger LOG = DomibusLoggerFactory.getLogger(BackendWebServiceImpl.class);
-
If you are using samples keystores, please update them as the previous ones expired.
3.2 Releases
Upgrading to 3.2.5
-
Run the appropriate DB migration script.
-
Replace the war file and the default plugins: domibus-default-ws-plugin and domibus-default-jms-plugin jar files.
Upgrading to 3.2.4
-
Replace the war file and the default plugins: domibus-default-ws-plugin and domibus-default-jms-plugin jar files.
Upgrading to 3.2.3
-
Replace the war file and the default plugins: domibus-default-ws-plugin and domibus-default-jms-plugin jar files.
-
In case of Weblogic cluster uncomment and configure the "domibus.deployment.cluster.url" property. and uncomment/comment the xml parts as indicated into ws-plugin.xml and domibus-datasources.xml.
Upgrading to 3.2.2
-
Replace the war file and the default plugins: domibus-default-ws-plugin and domibus-default-jms-plugin jar files
-
Add the following lines to conf/domibus/internal/ehcache.xml:
<cache name="lookupInfo" maxBytesLocalHeap="5m" timeToLiveSeconds="3600" overflowToDisk="false"> </cache>
-
To use the Dynamic Discovery copy conf/domibus/policies/eDeliveryPolicy_CA.xml to conf/domibus/policies.
Upgrading to 3.2.1
-
[WebLogic only]
-
Execute the WLST API script(from "/conf/domibus/scripts/upgrades") 3.2-to-3.2.1-WeblogicSingleServer.properties for single server deployment or 3.2-to-3.2.1-WeblogicCluster.properties for cluster deployment.
-
In the WebLogic console, in the page "Home >Summary of Security Realms >myrealm", enable the flag "Use Authorization Providers to Protect JMX Access" flag; for more info please check the Administration Guide.
-
In the WebLogic console, in the page "Home >Summary of JDBC Data Sources >cipaeDeliveryDs", tab "Configuration/Connection Pool/Advanced" enable the "Test Connections On Reserve" flag and add "SQL SELECT 1 FROM DUAL" in the "Test Table Name".
-
Replace the war file.
Upgrading to 3.2
Run the appropriate DB migration script. Update the configuration file following these steps:
-
in file "/domibus/conf/domibus/plugins/config/ws-plugin.xml": o replace
<jaxws:endpoint id="backendInterfaceEndpoint" implementor="#backendWebservice" address="/backend"> ... </jaxws:endpoint>
With
<jaxws:endpoint id="backendInterfaceEndpoint" implementor="#backendWebservice" address="/backend"> <jaxws:properties> <entry key="schema-validation-enabled" value="true"/> <entry key="mtom-enabled" value="false"/> </jaxws:properties> <jaxws:schemaLocations> <jaxws:schemaLocation>schemas/domibus-header.xsd</jaxws:schemaLocation> <jaxws:schemaLocation>schemas/domibus-backend.xsd</jaxws:schemaLocation> <jaxws:schemaLocation>schemas/xml.xsd</jaxws:schemaLocation> <jaxws:schemaLocation>schemas/xmlmime.xsd</jaxws:schemaLocation> </jaxws:schemaLocations> <jaxws:inInterceptors> <ref bean="customAuthenticationInterceptor"/> </jaxws:inInterceptors> </jaxws:endpoint>
-
In file "/domibus/conf/domibus/internal/ehcache.xml":
-
Add <cache name="certValidationByAlias" maxBytesLocalHeap="5m" timeToLiveSeconds="3600" overflowToDisk="false"/>.
-
Add <cache name="crlByCert" maxBytesLocalHeap="5m" timeToLiveSeconds="3600" overflowToDisk="false"/>.
-
-
In file "/domibus/conf/domibus/domibus-configuration.xml":
-
Replace class="eu.domibus.common.dao.CachingPModeProvider"/> by class="eu.domibus.ebms3.common.dao.CachingPModeProvider"/> or by class="eu.domibus.common.dao.PModeDao"/> if you are using Oracle DB
-
Add <prop key="domibus.certificate.validation.enabled">true</prop>
-
Add <prop key="domibus.jms.internalQueue.expression">.domibus\.(internal|DLQ|backend\.jms|notification\.jms|notification\.webservice|notification\.kerkovi).</prop>
-
Only for Tomcat users: add <prop key="activeMQ.JMXURL">service:jmx:rmi://localhost:1198/jndi/rmi://localhost:1199/jmxrmi</prop>
-
-
In file conf/domibus/domibus-security.xml, replace all from the comment:
<!-- Administration GUI user credentials--> ...
With:
<!-- Administration GUI user credentials--> <bean name="bcryptEncoder" class="org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder"/> <sec:authentication-manager> <sec:authentication-provider ref="allowAllAuthenticationProvider"/> </sec:authentication-manager> <sec:authentication-manager id="authenticationManagerForAdminConsole"> <sec:authentication-provider> <sec:password-encoder ref="bcryptEncoder"/> <sec:user-service> <sec:user name="user" password="$2a$10$HApapHvDStTEwjjneMCvxuqUKVyycXZRfXMwjU0rRmaWMsjWQp/Zu" authorities="ROLE_USER"/> <sec:user name="admin" password="$2a$10$5uKS72xK2ArGDgb2CwjYnOzQcOmB7CPxK6fz2MGcDBM9vJ4rUql36" authorities="ROLE_USER, ROLE_ADMIN"/> </sec:user-service> </sec:authentication-provider> </sec:authentication-manager> <sec:global-method-security pre-post-annotations="enabled"/>
-
[Tomcat only] in file "/domibus/conf/domibus/domibus-datasources.xml", replace
<amq:xaConnectionFactory id="xaJmsConnectionFactory" brokerURL="tcp://localhost:61616" userName="domibus" password="changeit"/>
With
<amq:xaConnectionFactory id="xaJmsConnectionFactory" brokerURL="tcp://localhost:61616" userName="domibus" password="changeit"> <!-- do not remove this! otherwise the redeliveryPolicy configured in activemq.xml will be ignored --> <amq:redeliveryPolicy> <amq:redeliveryPolicy/> </amq:redeliveryPolicy> </amq:xaConnectionFactory>
-
[Tomcat only] in file conf/domibus/persistence.xml, add to the <persistence-unit> tag:
<class>eu.domibus.plugin.ws.entity.AuthenticationEntry</class>
.
If you are using samples keystores, please update them since they are expiring on the 26th of October 2016.
Upgrading to 3.2
-
Run the appropriate DB migration script.
-
Replace domibus.war and the plugin(s) jar(s) into /domibus/conf/domibus/plugins/lib"
-
Update the configuration file following these steps:
-
In file "/domibus/conf/domibus/plugins/config/ws-plugin.xml":
remove
<bean id="defaultTransformer" class="eu.domibus.plugin.ws.webservice.deprecated.StubDtoTransformer"/>
replace
<jaxws:endpoint id="backendInterfaceEndpoint" implementor="#backendWebservice" address="/backend"> ... </jaxws:endpoint>
with
<jaxws:endpoint id="backendInterfaceEndpoint" implementor="#backendWebservice" address="/backend"> <jaxws:properties> <entry key="schema-validation-enabled" value="true"/> <entry key="mtom-enabled" value="false"/> </jaxws:properties> <jaxws:schemaLocations> <jaxws:schemaLocation>schemas/domibus-header.xsd</jaxws:schemaLocation> <jaxws:schemaLocation>schemas/domibus-backend.xsd</jaxws:schemaLocation> <jaxws:schemaLocation>schemas/xml.xsd</jaxws:schemaLocation> <jaxws:schemaLocation>schemas/xmlmime.xsd</jaxws:schemaLocation> </jaxws:schemaLocations> <jaxws:inInterceptors> <ref bean="customAuthenticationInterceptor"/> </jaxws:inInterceptors> </jaxws:endpoint>
-
-
In file conf/domibus/internal/ehcache.xml, add
<cache name="crlByCert" maxBytesLocalHeap="5m" timeToLiveSeconds="3600" overflowToDisk="false"> </cache>
-
in file conf/domibus/domibus-security.xml, replace all from the comment
<!-- Administration GUI user credentials--> ...
with
<!-- Administration GUI user credentials--> <bean name="bcryptEncoder" class="org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder"/> <sec:authentication-manager> <sec:authentication-provider ref="allowAllAuthenticationProvider"/> </sec:authentication-manager> <sec:authentication-manager id="authenticationManagerForAdminConsole"> <sec:authentication-provider> <sec:password-encoder ref="bcryptEncoder"/> <sec:user-service> <sec:user name="user" password="$2a$10$HApapHvDStTEwjjneMCvxuqUKVyycXZRfXMwjU0rRmaWMsjWQp/Zu" authorities="ROLE_USER"/> <sec:user name="admin" password="$2a$10$5uKS72xK2ArGDgb2CwjYnOzQcOmB7CPxK6fz2MGcDBM9vJ4rUql36" authorities="ROLE_USER, ROLE_ADMIN"/> </sec:user-service> </sec:authentication-provider> </sec:authentication-manager> <sec:global-method-security pre-post-annotations="enabled"/>
-
[Tomcat only] in file conf/domibus/persistence.xml, add to the <persistence-unit> tag: <class>eu.domibus.plugin.ws.entity.AuthenticationEntry</class>.
Upgrading to 3.2 RC1
-
Run the appropriate DB migration script.
-
Replace domibus.war and the plugin(s) jar(s) into /domibus/conf/domibus/plugins/lib"
-
For Tomcat installations only, the activemq.xml file has to be replaced and re-configured according to your environment (transportConnector uri, authenticationUser, redeliveryPolicy).
-
Update the configuration file following these steps:
-
In file "/domibus/conf/domibus/plugins/config/ws-plugin.xml":
-
add <bean id="defaultTransformer" class="eu.domibus.plugin.ws.webservice.deprecated.StubDtoTransformer"/> (as an element in the node beans)
-
replace
<jaxws:endpoint id="backendInterfaceEndpoint" implementor="#backendWebservice" address="/backend"> ... </jaxws:endpoint>
with
<jaxws:endpoint id="backendInterfaceEndpoint" implementor="#backendWebservice" address="/backend"> <jaxws:properties> <entry key="schema-validation-enabled" value="true"/> <entry key="mtom-enabled" value="true"/> </jaxws:properties> <jaxws:schemaLocations> <jaxws:schemaLocation>schemas/domibus-submission.xsd</jaxws:schemaLocation> <jaxws:schemaLocation>schemas/xml.xsd</jaxws:schemaLocation> <jaxws:schemaLocation>schemas/domibus-backend.xsd</jaxws:schemaLocation> <jaxws:schemaLocation>schemas/xmlmime.xsd</jaxws:schemaLocation> </jaxws:schemaLocations> </jaxws:endpoint>
-
-
In file "/domibus/conf/domibus/internal/ehcache.xml", add <cache name="certValidationByAlias" maxBytesLocalHeap="5m" timeToLiveSeconds="3600" overflowToDisk="false"/>.
-
In file "/domibus/conf/domibus/domibus-configuration.xml", replace class="eu.domibus.common.dao.CachingPModeProvider"/> by class="eu.domibus.ebms3.common.dao.CachingPModeProvider"/> or by class="eu.domibus.common.dao.PModeDao"/> if you are using Oracle DB:
-
add <prop key="domibus.certificate.validation.enabled">true</prop>
-
add <prop key="domibus.jms.internalQueue.expression">.domibus\.(internal|DLQ|backend\.jms|notification\.jms|notification\.webservice|notification\.kerkovi).</prop>.
-
Only for Tomcat users: add <prop key="activeMQ.JMXURL">service:jmx:rmi://localhost:1198/jndi/rmi://localhost:1199/jmxrmi</prop>
-
-
Only for Tomcat users: in file "/domibus/conf/domibus/domibus-datasources.xml", replace
<amq:xaConnectionFactory id="xaJmsConnectionFactory" brokerURL="tcp://localhost:61616" userName="domibus" password="changeit"/>
with
<amq:xaConnectionFactory id="xaJmsConnectionFactory" brokerURL="tcp://localhost:61616" userName="domibus" password="changeit"> <!-- do not remove this! otherwise the redeliveryPolicy configured in activemq.xml will be ignored --> <amq:redeliveryPolicy> <amq:redeliveryPolicy/> </amq:redeliveryPolicy> </amq:xaConnectionFactory>
If you are using samples keystores, please update them since they are expiring on the 26th of October 2016.
3.1 Releases
Upgrading to 3.1.1
-
Replace the war. This release updated the type of one column for the MySQL db. Please run the migration script.
Upgrading to 3.1.0
-
Re-install the domibus-security.xml and re-configure the properties according with the installed Truststore and Keystore.
-
For Tomcat installations only, the activemq.xml has to be re-installed and re-configured and the domibus-ActiveMQ-ThroughputLimiter jar can be deleted.
-
There have been some changes to the database, please use the new scripts.
-
Run the migration script if you are upgrading from 3.0 to 3.1.
Upgrading to 3.1 RC2
-
Replace the war and jar(plugins) files.
-
There have been some changes to the MessageFilter, please use a clean database.
Upgrading to 3.1 RC1
-
Domibus 3.1 is a major release that has to be installed from scratch.
-
There have been some changes to the database, please use the new script.
-
There is a new PMode generation plugin available (BETA-3), use this to regenerate your PMode files.
3.0 Releases
Upgrading to 3.0 BETA-2
-
Replace the war file.
Upgrading to 3.0 BETA-1
-
Domibus 3.0 is a major release that has to be installed from scratch.
-
There is no available upgrade path.
doc version: 5.1.7-1