gourmetj-springboot/Developer-Notes.md

1.4 KiB

Developer notes

Although Java is a more stable platform than most, it is subject to change over time. Here are some notes about futurization:

Java compiler

Java 9 broke how introspection works. Java 11 gives a deprecation warning. Later Java versions may not work using the current versions of Spring Boot.

The version of Spring Boot being used is a downstream consequence of the version of joinfaces and the spring boot starter. Presently an upgrade is not advised because newer versions remove CDI support and thus the code will not compile without additional aid as yet undetermined (possibly Weld).

Primefaces

The version of Primefaces pulled in by the starters is 6.2. The production version to date (2022-01) is 10. Version 6.2 is perfectly serviceable, but changes will be required if/when upgrading. The "listener" keyword on AJAX changes and the icon names change as well. The 6.2 release use jQuery icons, not Primefaces icons.

Joinfaces

According to the joinfaces docs, you can override the Primefaces theme using joinfaces.primefaces.theme in the application.properties file. That is not true for the release in question. The working override is server.servlet.context-parameters.primefaces.THEME

It should be noted that webapp context initialization variables, once set cannot be changed so there is only a limited time to set them. An internal set for Primefaces 4 and later selects the aristo theme if not overriden in the correct place.