EDIT Project Management: Issueshttps://dev.e-taxonomy.eu/redmine/https://dev.e-taxonomy.eu/redmine/redmine/favicon.ico?14691914852023-01-16T21:52:32ZEDIT Project Management
Redmine EDIT - task #10226 (New): Upgrade to Spring 6.xhttps://dev.e-taxonomy.eu/redmine/issues/102262023-01-16T21:52:32ZAndreas Müller
<p>copied from <a class="issue tracker-6 status-2 priority-10 priority-lowest" title="task: Upgrade to Spring 5.x (In Progress)" href="https://dev.e-taxonomy.eu/redmine/issues/10216">#10216</a> : </p>
<ul>
<li><p>spring 6 links: see also <a href="https://www.heise.de/hintergrund/Spring-Framework-6-verarbeitet-Native-Images-und-baut-auf-Jakarta-EE-9-oder-10-7342050.html">https://www.heise.de/hintergrund/Spring-Framework-6-verarbeitet-Native-Images-und-baut-auf-Jakarta-EE-9-oder-10-7342050.html</a> , <a href="https://www.heise.de/news/VMware-Tanzu-passt-Tools-an-Spring-Framework-6-0-und-Native-Image-an-7350247.html">https://www.heise.de/news/VMware-Tanzu-passt-Tools-an-Spring-Framework-6-0-und-Native-Image-an-7350247.html</a>, <a href="https://www.heise.de/news/Spring-Boot-3-0-setzt-auf-Spring-Framework-6-0-und-Java-17-7354877.html">https://www.heise.de/news/Spring-Boot-3-0-setzt-auf-Spring-Framework-6-0-und-Java-17-7354877.html</a>, <a href="https://www.heise.de/news/Spring-Integration-6-0-fuehrt-Groovy-DSL-und-einen-neuen-MQTT-ClientManager-ein-7361968.html">https://www.heise.de/news/Spring-Integration-6-0-fuehrt-Groovy-DSL-und-einen-neuen-MQTT-ClientManager-ein-7361968.html</a>) (also think about Quarkus <a href="https://code.quarkus.io/">https://code.quarkus.io/</a> and other fast/native image technologies</p></li>
<li><p>see also <a class="issue tracker-5 status-1 priority-11 priority-default" title="feature request: Spring boot and modern Spring composition (New)" href="https://dev.e-taxonomy.eu/redmine/issues/10464">#10464</a></p></li>
</ul>
EDIT - task #10216 (In Progress): Upgrade to Spring 5.xhttps://dev.e-taxonomy.eu/redmine/issues/102162022-12-27T13:16:56ZAndreas Müller
<p>copied from <a class="issue tracker-6 status-1 priority-10 priority-lowest" title="task: Updates, upgrades and cleanup 2023 (New)" href="https://dev.e-taxonomy.eu/redmine/issues/10055">#10055</a></p>
<p>there is a local feature branch "feature_10216_spring5"</p>
<p>Issues:</p>
<ul>
<li>unitils support (could override some classes but it does not work in cdmlib-remote for some reason)</li>
<li>cdmlib-remote-webapp ClassifiationIT des not work due to failing @RequestMapping resolution
<ul>
<li>.json is not mapped correctly as content negotiation via pathExtensions is not sufficiently supported anymore by Spring >5.2(?), see deprecated method favorPathExtension() in CdmSpringMVCConfig.configureContentNegotiation() </li>
<li>can be workarounded by adding the .json version to the @RequestMapping, tested for ClassificationListController with @RequestMapping(value = {"/classification", "/classification.json"})<br></li>
</ul></li>
<li>all other tests are running</li>
<li>also running TestModelUpdate works, so generally creating the spring5 application context works</li>
</ul>
<p>Also important:</p>
<ul>
<li><p>also decide which spring version to use: #4608 (if not yet solved)</p></li>
<li><p>use the encrypto Passwordencoder in UserService instead of the deprecated one</p>
<ul>
<li>required for upgrading to spring-security 5.x</li>
</ul></li>
<li><p>we may want to further normalize spring config files: #5380</p></li>
<li><p>check if TaxonNodeByNameComparator is needed as spring bean as it is currently the case</p></li>
<li><p>spring 6 issues copied to <a class="issue tracker-6 status-1 priority-11 priority-default" title="task: Upgrade to Spring 6.x (New)" href="https://dev.e-taxonomy.eu/redmine/issues/10226">#10226</a> </p></li>
</ul>
EDIT - task #10077 (New): upgrade ehcache to 3.xhttps://dev.e-taxonomy.eu/redmine/issues/100772022-06-16T18:34:41ZAndreas Müller
<p>Probably blocked by Spring upgrade to 5.x (<a class="issue tracker-6 status-2 priority-10 priority-lowest" title="task: Upgrade to Spring 5.x (In Progress)" href="https://dev.e-taxonomy.eu/redmine/issues/10216">#10216</a>).</p>
<p>There is probably a duplicate <a class="issue tracker-6 status-7 priority-10 priority-lowest closed" title="task: update ehcache dependency and handle hibernate-ehcache (Duplicate)" href="https://dev.e-taxonomy.eu/redmine/issues/9207">#9207</a> which points out size, groupID and package structure issues.</p>
<p>Need to check how this works together with hibernate and spring caching.</p>
<p>There is a branch "feature_10077" (still local on cdmlib2/AM) for some changes.</p>
<p>In this context we should unify cache handling as there is CdmCacherBase and EhCacheConfiguration which both do define a getDefaultCacheConfiguration() - <a class="issue tracker-6 status-1 priority-11 priority-default" title="task: Unify cache handling in CDM platform (New)" href="https://dev.e-taxonomy.eu/redmine/issues/10218">#10218</a> .</p>
<p>As configuration is now created by builder classes and are probably immutable we may need to change architecture a bit as EhCacheConfiguration and EhCacheDiskStoreConfiguration are both spring configurations.</p>
<p>Note: Don't forget to remove workaround class net.sf.ehcache.util.PreferredLoaderObjectInputStream from taxeditor.cdmlib (see <a class="issue tracker-4 status-5 priority-10 priority-lowest closed" title="bug: Fix deserialization exception for bytebuddy base hibernate SerializableProxy (Closed)" href="https://dev.e-taxonomy.eu/redmine/issues/10075">#10075</a>) after upgrading.</p>
<p>Note2: Don't forget to improve workaround for oaipmh (see AbstractOaiPmhController comments on cacheManager), <a class="issue tracker-6 status-2 priority-12 priority-high14" title="task: replace spring-modules-cache by up to date implementation (In Progress)" href="https://dev.e-taxonomy.eu/redmine/issues/3408">#3408</a> and springmodules comments in <a class="issue tracker-6 status-5 priority-10 priority-lowest closed" title="task: Update cdmlib, taxeditor, cdmserver etc. dependencies (Closed)" href="https://dev.e-taxonomy.eu/redmine/issues/9359">#9359</a> (e.g. use EhCacheXXX in spring-context-support )</p>
<p>Useful Links:</p>
<ul>
<li>migration: <a href="https://www.ehcache.org/documentation/3.10/migration-guide.html">https://www.ehcache.org/documentation/3.10/migration-guide.html</a></li>
<li>disk storage: <a href="https://www.ehcache.org/documentation/3.10/tiering.html#disk">https://www.ehcache.org/documentation/3.10/tiering.html#disk</a></li>
<li>general: <a href="https://www.ehcache.org/documentation/">https://www.ehcache.org/documentation/</a></li>
<li>configure diskstore in 2.10 (looks like it should be configured per cacheMananger): <a href="https://www.ehcache.org/generated/2.10.4/html/ehc-all/#page/Ehcache_Documentation_Set%2Fco-tiers_configuring_disk_store.html%23">https://www.ehcache.org/generated/2.10.4/html/ehc-all/#page/Ehcache_Documentation_Set%2Fco-tiers_configuring_disk_store.html%23</a></li>
</ul>
EDIT - task #9955 (New): Upgrade vaadin to latest versionhttps://dev.e-taxonomy.eu/redmine/issues/99552022-02-24T13:46:00ZAndreas Müller
<p>In March 2022 this will be v23 requiring Java 11 (<a href="https://vaadin.com/blog/vaadin-23-will-require-java-11">https://vaadin.com/blog/vaadin-23-will-require-java-11</a>).</p>
<p>Of some help might be the classic component pack <a href="https://vaadin.com/blog/the-classic-components-are-coming">https://vaadin.com/blog/the-classic-components-are-coming</a> </p>
<p><a href="https://vaadin.com/blog/still-on-v8-automate-your-application-upgrade-to-vaadin-23">https://vaadin.com/blog/still-on-v8-automate-your-application-upgrade-to-vaadin-23</a></p>