How to Upgrade to yuuvis RAD 8.0

  • Before you start:

    1. Make sure you have updated your yuuvis® RAD system to version 7.16 LTS before updating to version 8.x.
    2. Stop the 7.16 core-service.
    3. Stop the 7.16 service-manager. 

    4. Stop Elasticsearch 7.9.3


  • Elasticsearch 7.9.3 -> 7.16.2. Elasticsearch 7.9.3 needs to be replaced by version 7.16.2. To do this, version 7.9.3 needs to be uninstalled and version 7.16.2 installed and configured as follows:

    • Stop the Elasticsearch 7.9.3 service.

    • If the data directory is located inside the installation path of Elasticsearch 7.9.3, move it outside and/or make a backup.

    • Backup the <elasticsearch>\config\elasticsearch.yml and <elasticsearch>\config\built-in.usr files.

    • Uninstall Elasticsearch 7.9.3.

    • Install Elasticsearch 7.16.2 as described here: Installation Guide Version 8.0

    • Before you start the service:

      • Transfer custom settings from the backed-up elasticsearch.yml file to the newly installed file.
      • Copy / move the backed-up built-in.usr file to the new <elasticsearch>\config folder.
      • If needed, move the data directory to the desired location.
      • Make sure the "path.data" property points to the (moved) data directory of Elasticsearch 7.16.2.
    • Start the service and check that the cluster state is green and contains the yuuvis® RAD indices.



  • core-service 7.16 LTS → core-service 8.x

    • Stop the core-service 7.16 LTS.
    • If the data-directory (containing the WORK and/or ARCHIVE directories) is located inside the installation path of the dms-service, move it outside and/or make a backup.
    • Make a backup of the following files/folders
      • <core-service>\standalone\configuration\standalone-full-ha.xml
      • AD-Sync configuration files (e.g., <core-service>\standalone\configuration\ldapsync)
      • Custom files under <core-service>\standalone\configuration\bpm-script-api
      • Operation report files (e.g., <core-service>\standalone\tmp\jas-operations\reports)
    • Open the service-wrapper GUI by executing the file <core-service>\bin\yuuvis_rad_core-servicew.exe
      • Backup/write down the settings under Java → Java Options. Especially the keys/values of
        • -Dcom.os.ecm.systemuserkey
        • -Djboss.bind.address
        • -Djboss.bind.address.private
    • Uninstall the core-service.
    • Install the core-service as described here: Installation Guide Version 8.0 
      • Be sure to select "no" when asked if a new database structure and base configuration should be created.
      • When asked for the system user api-key overwrite the generated value with the backed up value of "-Dcom.os.ecm.systemuserkey".
    • Move the backed-up data directory back to its original location.
      (Alternatively, you can choose a new location but then you have to adapt the path in the Media section of the management-studio as the very first action after the first startup.)
    • To restore the backed-up configuration, follow these steps:
      • If you have made changes to the default logging settings or the default database connection pool sizes, compare the backed-up standalone-full-ha.xml file with the newly installed replacement for it calles "jas-app.xml" and reapply your changes.
      • If you have custom bpm script api files, create the folder <core-service>\standalone\configuration\bpm-script-api and copy them into it.
      • Move or copy the AD-Sync and operation report folders back to their relative location under the new core-service installation path.
    • Open the service-wrapper GUI by executing the <core-service>\bin\yuuvis_rad_core-servicew.exe file and compare the Java → Java Options settings.
      Reapply custom settings that do not belong to the JBoss or Java Runtime Environment. Especially restore the keys/values of:
      • -Dcom.os.ecm.systemuserkey
      • -Djboss.bind.address
      • -Djboss.bind.address.private

While in the GUI, make sure you have adapted the Initial/Maximum Pool Size Setting and the logging configuration to your desired values.

    • Start the service and check the log file for a successful startup which is indicated by the "yuuvis" ascii art.
    • If you are using the AD-Sync operation: After startup of all components, open the AD-Sync operation in yuuvis® RAD management-studio and adapt the path to the AD-Sync configuration file to the new location (if applies).
    • Workflow models should be tested
      • Due to a new and updated scripting engine in yuuvis® RAD core-service 8.0, all workflow models should be tested for correct functionality (details can be found here and here).


  • service-manager 7.16 LTS → service-manager 8.0
    • Open the file <service-manager>\config\index-prod.yml and insert (or edit) the following line:
      osfts.languages: 'de'
      The value "de" is a placeholder for one of the following values: de,en,es,fr,it. Set the language code of the language that is used the most in your system. This language will be supported by the intrafind lingustic plugin. All other languages active in your system will have basic support.
      Please note: Only one value may be set for this parameter. If no value is specified in the configuration file, the default 'en' for English will be activated.

    • Only for Microsoft SQL Server: Open the file <service-manager>\config\application-dbs.yml and append the value "encrypt=false;" at the end of the line starting with "spring.datasource.url:"
      it should now look like this:


    • If present, the lines with the following parameter names can be removed from the file <service-manager>\config\application-es.yml :
      • spring.data.elasticsearch.cluster-nodes: '127.0.0.1:9300'
      • spring.data.elasticsearch.cluster-nodes-rest: '127.0.0.1:9200'

    • The lines with the following parameter names can be removed from the file <service-manager>\config\bpm-prod.yml as well as from the file <service-manager>\config\inbox-prod.yml since they are no longer used:

      • liquibase.url
      • liquibase.user
      • liquibase.password
      • spring.jpa.hibernate.ddl-auto

    • The routing-service microservice has to be completely removed from the service-manager. To do this:
      • Delete the "routingservice" folder in the folder <service-manager>\apps
      • Delete the file <service-manager>\config\routing-prod.yml
      • Open the file <service-manager>\config\servicewatcher-sw.yml and remove the "- name: routingservice" section.


  • The Java and Spring Boot versions have been raised to JDK11 and Spring Boot 2.5.7
    • In the service-manager 8.x, there will be no 32-bit Java runtime anymore. Accordingly, there is only one jdk directory (no "jdk_64" anymore) and this is the 64-bit runtime.
      • All custom microservices that were running with 32-bit Java need to be adapted to 64-bit.
      • The "arch: x64" parameter in the file <service-manager>\config\servicewatcher-sw.yml is not necessary anymore.
         
    • The file <service-manager>\config\logback.xml will be overwritten by the service-manager 8.x setup.
      • If you have made custom changes to the file, back it up before running the setup and reapply it afterwards.
    • Only the keystore (cacerts file) of the 32-bit Java runtime will be backed up and reapplied to the (64-bit) jdk. 
      • If you made changes to the 64-bit keystore (<service-manager>\jdk_64\jre\lib\security\cacerts file) only, you need to reapply the changes to the keystore file at <service-manager>\jdk\jre\lib\security\cacerts after the setup has finished. if needed, backup the 64-bit keystore before the setup is started.
    • Due to the update of Spring Boot the following parameters in the service-wrapper need to be adapted after the setup has finished:
      • Open the service-manager service-wrapper by opening the file <service-manager>\bin\yuuvis_rad_service-managerw.exe
      • Change to the "startup" tab
      • In the "arguments" section the following two parameters were renamed and overwritten with the default value:

        previous namenew namedefault value
        --logging.file--logging.file.name./../../logs/services.log
        --spring.config.location--spring.config.additional-locationfile:../../config/
      • If you made changes to the default values, reapply them now.

    • Changed gateway parameter names for a custom context path
      Due to the update of the gateway-service to Spring Boot 2.5.7 the configuration of a custom context path in the gateway-prod.yml file needs to be changed.
      • Open the file <service-manager>\config\gateway-prod.yml and all other gateway-*.yml files if setup on your own, and change the parameter names of the following two parameters as indicated:

        previous namenew name
        server.context-pathserver.servlet.context-path
        management.portmanagement.server.port

        The gateway-prod.yml file should now look like this:



      • If more than one gateway instance is using the custom context path, each instance needs its own management port. To achieve this, you can either create a separate gateway-<profilename>.yml file for each instance or you can pass the parameter directly in the <service-manager>\config\servicewatcher-sw.yml file like this:

        - name: gateway
          type: microservice
          profiles: prod,cloud,red
          instances: 1
          memory: 256M
          port: 80
          path: ${appBase}/gateway/gateway-app.jar
          args: 
          - --management.server.port=7396
          
        - name: gateway-sso
          type: microservice
          profiles: prod,sso,cloud,red
          instances: 1
          memory: 256M
          port: 81
          path: ${appBase}/gateway/gateway-app.jar
          args: 
          - --management.server.port=7397
      • If a gateway instance is configured to use SSL (https), the line 'secure-port: ${server.port}' in the SSL configuration yml-file (e.g. <service-manager>\config\gateway-ssl.yml) needs to be changed to 'secure-port: ${management.server.port}'


  • Custom client

    • If your project is not using @angular/cdk make sure to run "npm i -S @angular/cdk@11"