Versions Compared

Key

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

Table of Contents
maxLevel2
styledecimal
Code

In case the Syncope 2.0 deployment is based on Maven project, It is strongly advised to generate a new Maven project for 2.1 and to re-apply all the customizations and extensions made.

Warning
titleUpgrading to Syncope 2.1.0?

There is an issue with Syncope 2.1.0 (fixed for later releases), which requires to manually modify the sources of the generated Maven project.

The following lines must be removed from console/pom.xml in order to avoid build errors:

  <!-- TEST -->
  <dependency>
   <groupId>junit</groupId>
   <artifactId>junit</artifactId>
   <scope>test</scope>
  </dependency>

Default implementations

This change is primarily due to the introduction of default methods on interfaces.

All local classes extending default implementations such as DefaultPropagationActions, DefaultPullActions, DefaultPushActions, ... must be changed to implement the related interfaces, e.g. PropagationActions, PullActions, PushActions, ...

Optional

Various methods now return Optional, rather than nullable values as before; for example:

Code Block
languagejava
titleSyncope 2.0
userTO.getPlainAttr("email").getUniqueValue()

now becomes

Code Block
languagejava
titleSyncope 2.1
userTO.getPlainAttr("email").get().getUniqueValue()

Check the Javadocs to find out which methods are now returning Optional.

Configuration

Security

Ensure to copy the following values from Syncope 2.0's security.properties into Syncope 2.1's:

  • secretKey
  • anonymousKey
  • jwsKey

Moreover, when the Java EE container running Syncope Core is down, remove all existing Access Tokens:

Code Block
languagesql
DELETE FROM AccessToken;

Workflow

Note

The procedure outlined here is only required if Syncope 2.0 was configured to use the Activiti user workflow adapter.


Internal Storage

The steps to upgrade the internal storage to Syncope 2.1.0 are outlined in the Reference Guide.

Warning
titleUpgrading to Syncope 2.1.0?

There is an issue with Syncope 2.1.0 (fixed for later releases), which requires to add some additional SQL statements to the ones generated by the upgrade tool:

UPDATE SyncopeUser SET mustChangePassword=0 WHERE mustChangePassword IS NULL;
UPDATE VirSchema SET readonly=0 WHERE readonly IS NULL;
UPDATE ExternalResource SET overrideCapabilities=0 WHERE overrideCapabilities IS NULL;
UPDATE Task SET active=0 WHERE active IS NULL;

Do not forget to restart the Java EE container where Syncope Core is deployed, after executing the SQL statements above.