2023.1.2 to 2023.2.0
1. JDK17 Compatibility: Required Changes to ADITOSERVER.vmproperties
What changed
For ADITO to work with JDK17, a number of JVM module access flags must be added to the ADITOSERVER.vmproperties
file.
Why it matters
These settings are required for internal libraries such as Ignite Cache and ADITO Plugins. Missing them will result in runtime failures.
Recommended actions
Append the following lines at the end of the ADITOSERVER.vmproperties
file on your server if not already present. Do not remove any existing lines.
--add-opens=jdk.management/com.sun.management.internal=ALL-UNNAMED
--add-opens=java.base/jdk.internal.misc=ALL-UNNAMED
--add-opens=java.base/sun.nio.ch=ALL-UNNAMED
--add-opens=java.management/com.sun.jmx.mbeanserver=ALL-UNNAMED
--add-opens=jdk.internal.jvmstat/sun.jvmstat.monitor=ALL-UNNAMED
--add-opens=java.base/sun.reflect.generics.reflectiveObjects=ALL-UNNAMED
--add-opens=java.base/java.io=ALL-UNNAMED
--add-opens=java.base/java.nio=ALL-UNNAMED
--add-opens=java.base/java.util=ALL-UNNAMED
--add-opens=java.base/java.util.concurrent=ALL-UNNAMED
--add-opens=java.base/java.util.concurrent.locks=ALL-UNNAMED
--add-opens=java.base/java.lang=ALL-UNNAMED
--add-opens=java.base/java.lang.reflect=ALL-UNNAMED
--add-opens=java.base/java.text=ALL-UNNAMED
--add-opens=java.desktop/java.awt.font=ALL-UNNAMED
--add-opens=java.naming/javax.naming=ALL-UNNAMED
--add-opens=java.base/java.net=ALL-UNNAMED
--add-opens=java.base/java.security=ALL-UNNAMED
2. Swagger UI: Entity REST Webservices Available via Swagger
What changed
From version 2023.2.0, Swagger UI is available to explore ADITO's entity REST webservices.
Why it matters
Swagger UI provides a structured, interactive interface to inspect and test REST endpoints.
Recommended actions
Use Basic Auth or Kerberos for authentication. Access the UI at:
http://<server-ip>:<port>/afs/swagger
Figure: Swagger UI interface for entity REST webservices
3. External Services: New Aliases Required for PDF, Text, and Content Analysis
What changed
Three services (Tika, IcePDF, Lucene) have been externalized and now require separate alias configuration.
Why it matters
These aliases are necessary for features like MIME type detection, PDF thumbnail preview, and text pattern scoring. Without them, these features will no longer function.
Recommended actions
Add and configure the following aliases in your system. Each alias must include host, port, username, and password.
- Tika – Determines MIME types (used for index search)
- IcePDF – Generates thumbnails for PDF previews
- Lucene – Analyzes and scores text content based on patterns
4. JDito calendars
Constants: Key Values Updated
What changed
The calendars
JDito module constants have changed.
Why it matters
Hardcoded keys will no longer work. Existing customizing referencing the old keys must be updated to use the new constants.
Recommended actions
Update all uses of direct string keys to use symbolic constants. For example:
Example usage
Before:
var user = entry["h"];
Now:
var user = entry[calendars.USER];
Mappings overview
Old | New |
---|---|
"a" | calendars.TYPE |
"b" | calendars.UID |
"c" | calendars.SUMMARY |
"d" | calendars.LOCATION |
"e" | calendars.DESCRIPTION |
"f" | calendars.DTSTART |
"g" | calendars.DTEND |
"h" | calendars.USER |
"i" | calendars.STATUS |
"j" | calendars.HASREMINDER |
"k" | calendars.REMINDER_DATE |
"l" | calendars.DUE |
"m" | calendars.LINKS |
"n" | calendars.PERCENT_COMPLETE |
"o" | calendars.PRIORITY |
"p" | calendars.CLASS |
"q" | calendars.AFFECTEDUSERS |
"r" | calendars.ORGANIZER |
"s" | calendars.CREATED |
"t" | calendars.LAST_MODIFIED |
"u" | calendars.CATEGORIES |
"v" | calendars.RECURRENCEID |
"w" | calendars.REMINDER_ACTION |
"x" | calendars.REMINDER_DURATION |
"y" | calendars.REMINDER_RELATED |
"z" | calendars.REMINDER_ABSOLUT |
"aa" | calendars.DURATION |
"ab" | calendars.REMINDER_LAST |
"ac" | calendars.TRANSP |
"ad" | calendars.DTSTAMP |
"ae" | calendars.COMMENT |
"af" | calendars.FREEBUSY |
"ag" | calendars.ATTENDEE |
"ah" | calendars.ORGANIZER2 |
"ai" | calendars.USER2 |
"RRULE" | calendars.RRULE |
"RDATE" | calendars.RDATE |
"EXRULE" | calendars.EXRULE |
"EXDATE" | calendars.EXDATE |
If you used hardcoded string values (e.g. "WEEKLY"
) for repeating settings or calendar logic, switch to using symbolic constants like calendars.WEEKLY
. Otherwise, your customizing will break.