Skip to content

UnboundID SCIM 2 SDK 3.0.0

Latest
Compare
Choose a tag to compare
@kqarryzada kqarryzada released this 03 Oct 23:09
· 18 commits to master since this release

We have just released version 3.0.0 of the UnboundID SCIM 2 SDK. It is available for download from GitHub and the Maven Central Repository. This release includes the following changes:

  • Removed support for Java 8. The UnboundID SCIM 2 SDK now requires Java 11 or a later release.

  • Migrated javax.* namespaces to use Jakarta EE. Since Oracle has given stewardship of the Java EE project to Eclipse, this change facilitates the usage of these libraries under the Jakarta name, which provides better integration with projects such as Spring Boot 3.0. If your project uses components from JAX-RS or Jersey related to the SCIM SDK, then these references must be updated to match the new method definitions. For example, any code that creates a javax.ws.rs.client.WebTarget before passing it to the SCIM SDK will need to provide a jakarta.ws.rs.client.WebTarget instead. To support this change, the following project dependencies were also upgraded:

    • Updated javax.xml.bind-api to jakarta.xml.bind-api version 4.0.
    • Updated javax.ws.rs-api to jakarta.ws.rs-api version 3.1.0
    • Updated javax.annotation-api to jakarta.annotation-api version 2.1.1
    • Updated Jersey from 2.39.1 to 3.1.3
  • Overhauled many of the class-level Javadocs in the scim2-sdk-common package. This provides better descriptions for SCIM entities, SDK-specific constructs (e.g., ScimResource), and more background on SCIM conventions such as filtering. The new documentation also provides better descriptions for how certain classes in the SDK should be used, such as the Filter class.

  • Added new constructors for some exception types involving the scimType field. This field is empty in many cases, so these new constructors set the scimType value to be null with the goal of simplifying the process of creating exceptions.

  • Added support for patch operations of type ADD that contain a value selection filter in the path, e.g.,
    emails[type eq "work"].value. This type of request is used by some SCIM service providers to append extra data for multi-valued attributes such as emails or addresses.

  • Removed deprecated methods in PatchOperation.java and GenericScimResource.java that utilized multi-valued boolean arrays.