feature request #4716closed
Other dependencies to be updated
We currently do update spring dependencies to version 3.2.13 (#4702) as this is required for java 8. As we update dependencies anyway we may also updated some other libraries.
Hibernate search upgrade (4.2.0.Final -> 5.5.0.Final):
Lucene Upgrade (3.6.2 -> 5.4.0)
TODO - Urgent:
remove and solve ignore from DescriptionServiceImplTest.testMoveDescriptionElementsToTaxon => see comment81
AK: fix hibernate search related issues
- 8096b11 : IndexDocValue relates issues solved, indexing now without exceptions, most tests in TaxonServiceSearchTest successful
Index annotations from abstract classes, hibernate search seems not capable of indexing polymorph classes. This will remove the @HSEARCH000044warings.
fix makeIndexManager which requires SearchFactoryImplementor which is not available in hibernate-search 5.2.1 anymore96d3c40 check if IndexSearcher.setDefaultFieldSortScoring(boolean, boolean) is still needed. It has been removed from IndexSearcher API in v4.0.0 (http://grepcode.com/file/repo1.maven.org/maven2/org.apache.lucene/lucene-core/4.0.0/org/apache/lucene/search/IndexSearcher.java#IndexSearcher). It has been used in LuceneSearch.getSearcher() and QueryFactory.indexSearcherFor(Class)these setting have been moved into the search methods, which all exist also as @IndexSearcher.search(... , boolean doDocScores, boolean doMaxScore)@,the default for for both parameters is @false@- : 1d2c42b check why test index does not go into target folder anymore but is created in root directory of the according modul. This way it is not recognized by gitignore and also it masses up the base directory--> #5415 check correct new values for multipleValuesPerDocument and scoreMode in QueryFactory.newJoinQuery(xxx) check correct usage of maxScore in LuceneSearch.TopGroupsWithMaxScore when creating new TopGroups. Before the parameter maxScore could not be passed.57ea8a3 check if SearchResultHighlighter.getFragmentsWithHighlightedTerms(TermPositionVector termPosVector, Query query,xxx) should be replaced by a modern API. TermPositionVector is an outdated API which does not exist anymore in lucene 4.10. For now the method was commented as it seems not to be used.46829a9 hibernate-search auf hibernate-search-orm umstellen decide on which QueryParser (lucene) to use. The old one seems to be split in org.apache.lucene.queryparser.classic.QueryParser and org.apache.lucene.queryparser.surround.parser and maybe also org.apache.lucene.queryparser.flexible.standard.ist is ok to use the classic one, the flexible standard has not advantage for us at the moment. check if @Field(store=Store.YES, termVector=TermVector.NO) annotation on CdmBase.id is still required (throws HSEARCH000247 exception) : https://github.com/hibernate/hibernate-search/blob/master/engine/src/test/java/org/hibernate/search/test/metadata/FieldConfigurationTest.java1432e66
check if the h2 upgrade created problems=> tested, I could easily connect to a 1.3 H2 with the new 1.4 dependency
AK: use the encrypto Passwordencoder in UserService instead of the deprecated one
move remoting-services.xml and httpInvokerServices.xml to remoting
try to remove exclusions where possible
check if the postcommit handler were set correctly in CdmPostDataChangeObservableListener and ValidationEventListenerBase
- Swagger is not compatible with Spring 4.2.3 --> #5397
- check if the new JsonIgnore annotation in TimePeriod and CsvDemoRecord (new package with fasterxml) works correctly for swagger
Fix issues with AuditConfiguration and xxx in DdlUpdater
fix EntityValidationCrudJdbcImplTest and remove ignore
move TableGeneratorGlobalOverride back to cdmlib-test (see r27338)
remove dependsOn=tableGeneratorGlobalOverride from sessionFactory in persistence.xml and security_base.xml in production mode. It should be used only for test.
find a solution for dbunitModul to load datasets also from jars and other packages to avoid duplication of standard dataset files
(TODO create ticket with detailed information)
xstream 1.4.8 seems to require java8+. Therefore we reverted to 1.4.4, maybe something in between is possible. Once fully migrating to java8 we can upgrade. Otherwise we get an error in remote-webapp test.
aspectj-main anttask in model-pom still uses org.springframework.aspects and not sring-aspects (?) and aspectjtools version 1.7.1
we may concider removing commons-dbcp.commons-dbcp by org.apache.commons.commons-dbcp2
we may concider moving commons-lang 2.6 (lates 2.x) to commons-lang3 3.4, but we probably have many dependencies to the old version, do they work in parallel?
we may consider moving commons-collections from 3.2.2 (latest 3.x) to 4.0
AK: what is with json-lib, (
why does it have [classifier]jdk15[/classifier>] and is the dependency net.sf.json-lib:json-lib:jar:jdk15:2.4 still required=> see #9887)
dozer we did not update last time as we experienced problems
do we want to move xpp3.xpp3 (1.1.4c) to org.ogce.xpp3 (1.1.6) ?
do we want to move xom.xom (1.2.5) to com.io7m.xom.xom (1.2.10) ? Already upgraded from 1.0 to 1.2.5
do we want to upgrade json from 20090211 to 20141113
do we still need hibernate-parent (last version was 3.6.)?
do we still need an antrun for org.hibernate.tool.ant.EnversHibernateToolTask?
there is a jdbc42 version for com.microsoft.sqlserver
decide which oracle driver to use
upgrade to the best matching postgresql driver (currently we use 9.4-1206-jdbc4 which works for all java and jdbc versions) but there might be better once for JRE7+ or JRE8+. See driver pom for information on java versions.
do we still need the hibernate3-maven-plugin in persistence.pom? We do now use hibernate4 => #5358 / #6714
check if usertype.jodatime has been replaced by usertype.core
check how to upgrade to jena-tdb 3.0.0 (also check if commonsRDF is an alternative: https://commonsrdf.incubator.apache.org/ )
resolve those spring configuration files which still do have a spring-beans-3.0.xsd schema location
remove apache snapshot repository (for jena) and others
check if we can upgrade hibernate tooling with dependencies to hibernate 3.2.4 in persistence pom (tooling 5 is not yet released)
Check if SpringModule dependencies can be fully removed (it is only used in AbstractOaiPmhController for Caching, this could probably handled by other caching frameworks like EhCacheCache from spring-context-support)
we may want to further normalize spring config files: #5380
check if TaxonNodeByNameComparator is needed as spring bean as it is currently the case
Try to fix the HHH90000003 warnings (thrown in org.hibernate.boot.model.source.internal.hbm.ModelBinder line 2416, probably related to hibernate-envers, can be switched off by log4j.logger.org.hibernate.orm.deprecation=error) (related but not #7289)
Also changed poi from 3.10.Final to 3.12
- commons-codec 20041127.091804 (1.8) - > 1.10 (1.9 required)
- hamcrest-core (new, 1.3, not managed)
Also changed junit form 4.11->4.12
- only dependency hamcrest-core handled by poi already
Also changed jaxb-api 2.2.7->2.2.12 (no dependencies)
jaxb-impl from 2.2-EA to 2.2.11, also test org.glassfish.jaxb which seems to be the new Jaxb implementation, also be aware that Jaxb1-impl was not further developed after 2.2.5
- => open JAXB issue handled by #5361
slf4j-log4j12 from 1.7.2 to 1.7.10 (including api), no dependencies
cglib and cglib-nodep from 2.2.2 (latest 2.x) to 3.2
commons-collections from 3.2.1 to 3.2.2 (latest 3.x)
ehcache-core updated from 2.4.3 to 2.6.10
test frameworks updated or removed: #4803
added jdom2 which is compatible with jdom 1.x as it uses different package structure
Some naming needed to be adapted #5369
externalized test-dependencies into separate project #5370
Possible further updates:
ognl:ognl:jar 2.6.9->3.1.2 (only used by unitils-core
commons-dbcp:commons-dbcp:jar:1.4 -> org.apache.commons » commons-dbcp2 » 2.1.1 (only used by unitils-database)
commons-pool:commons-pool:jar:1.5.4 -> org.apache.commons » commons-pool2 » 2.4.2 (only used by unitils-database)