MarcGiffing / wicket-spring-boot

Spring Boot starter for Apache Wicket
151 stars 61 forks source link

Not working after upgrade to Wicket 8.3.0 #149

Closed ilgrosso closed 5 years ago

ilgrosso commented 5 years ago

Up to Wicket 8.20 everything was running fine. With Wicket 8.3.0, the following exception is found during startup:

com.giffing.wicket.spring.boot.starter.app.verifier.WicketDependencyMismatchDetectedException
        at com.giffing.wicket.spring.boot.starter.app.verifier.WicketDependencyVersionChecker.detectWicketDependencyVersionMissmatch(WicketDependencyVersionChecker.java:70)
        at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.base/java.lang.reflect.Method.invoke(Method.java:566)
        at org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor$LifecycleElement.invoke(InitDestroyAnnotationBeanPostProcessor.java:363)
        at org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor$LifecycleMetadata.invokeInitMethods(InitDestroyAnnotationBeanPostProcessor.java:307)
        at org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor.postProcessBeforeInitialization(InitDestroyAnnotationBeanPostProcessor.java:136)
        ... 59 more
ilgrosso commented 5 years ago

Ah, I see now why: dependency:tree shows:

[INFO] org.apache.syncope.client:syncope-client-enduser:jar:3.0.0-SNAPSHOT
[INFO] +- javax.servlet:javax.servlet-api:jar:4.0.1:provided
[INFO] +- com.giffing.wicket.spring.boot.starter:wicket-spring-boot-starter:jar:2.1.5:compile
[INFO] |  +- com.giffing.wicket.spring.boot.starter:wicket-spring-boot-context:jar:2.1.5:compile
[INFO] |  +- org.springframework:spring-context-support:jar:5.1.4.RELEASE:compile
[INFO] |  |  +- org.springframework:spring-beans:jar:5.1.4.RELEASE:compile
[INFO] |  |  +- org.springframework:spring-context:jar:5.1.4.RELEASE:compile
[INFO] |  |  |  +- org.springframework:spring-aop:jar:5.1.4.RELEASE:compile
[INFO] |  |  |  \- org.springframework:spring-expression:jar:5.1.4.RELEASE:compile
[INFO] |  |  \- org.springframework:spring-core:jar:5.1.4.RELEASE:compile
[INFO] |  |     \- org.springframework:spring-jcl:jar:5.1.4.RELEASE:compile
[INFO] |  +- org.springframework.boot:spring-boot-autoconfigure:jar:2.1.2.RELEASE:compile
[INFO] |  |  \- org.springframework.boot:spring-boot:jar:2.1.2.RELEASE:compile
[INFO] |  +- org.springframework.boot:spring-boot-starter-web:jar:2.1.2.RELEASE:compile
[INFO] |  |  +- org.springframework.boot:spring-boot-starter:jar:2.1.2.RELEASE:compile
[INFO] |  |  |  +- javax.annotation:javax.annotation-api:jar:1.3.2:compile
[INFO] |  |  |  \- org.yaml:snakeyaml:jar:1.23:runtime
[INFO] |  |  +- org.springframework.boot:spring-boot-starter-json:jar:2.1.2.RELEASE:compile
[INFO] |  |  |  +- com.fasterxml.jackson.core:jackson-databind:jar:2.9.8:compile
[INFO] |  |  |  +- com.fasterxml.jackson.datatype:jackson-datatype-jdk8:jar:2.9.8:compile
[INFO] |  |  |  +- com.fasterxml.jackson.datatype:jackson-datatype-jsr310:jar:2.9.8:compile
[INFO] |  |  |  \- com.fasterxml.jackson.module:jackson-module-parameter-names:jar:2.9.8:compile
[INFO] |  |  +- org.hibernate.validator:hibernate-validator:jar:6.0.13.Final:compile
[INFO] |  |  |  +- javax.validation:validation-api:jar:2.0.1.Final:compile
[INFO] |  |  |  +- org.jboss.logging:jboss-logging:jar:3.3.2.Final:compile
[INFO] |  |  |  \- com.fasterxml:classmate:jar:1.4.0:compile
[INFO] |  |  +- org.springframework:spring-web:jar:5.1.4.RELEASE:compile
[INFO] |  |  \- org.springframework:spring-webmvc:jar:5.1.4.RELEASE:compile
[INFO] |  +- org.apache.wicket:wicket-core:jar:8.2.0:compile
[INFO] |  |  +- com.github.openjson:openjson:jar:1.0.8:compile
[INFO] |  |  +- org.apache.wicket:wicket-request:jar:8.2.0:compile
[INFO] |  |  +- org.apache.wicket:wicket-util:jar:8.2.0:compile
[INFO] |  |  |  +- commons-fileupload:commons-fileupload:jar:1.3.3:compile
[INFO] |  |  |  +- commons-io:commons-io:jar:2.6:compile
[INFO] |  |  |  \- org.apache.commons:commons-collections4:jar:4.1:compile
[INFO] |  |  \- org.danekja:jdk-serializable-functional:jar:1.8.3:compile
[INFO] |  +- org.apache.wicket:wicket-auth-roles:jar:8.3.0:compile
[INFO] |  +- org.apache.wicket:wicket-ioc:jar:8.2.0:compile
[INFO] |  |  +- cglib:cglib:jar:3.2.6:compile
[INFO] |  |  |  \- org.apache.ant:ant:jar:1.9.6:compile
[INFO] |  |  |     \- org.apache.ant:ant-launcher:jar:1.9.6:compile
[INFO] |  |  +- javax.inject:javax.inject:jar:1:compile
[INFO] |  |  \- org.ow2.asm:asm-util:jar:6.2:compile
[INFO] |  |     +- org.ow2.asm:asm:jar:6.2:compile
[INFO] |  |     +- org.ow2.asm:asm-tree:jar:6.2:compile
[INFO] |  |     \- org.ow2.asm:asm-analysis:jar:6.2:compile
[INFO] |  \- org.apache.wicket:wicket-spring:jar:8.2.0:compile

so there are some 8.2.0 dependencies; I can naturally work with some <exclusion>, but when do you think there well be a new release here? Thanks!

mweirauch commented 5 years ago

The wicket-parent manages all wicket artifact versions. Just pin the wicket artifacts in the <dependencyManagement> section with the following:

            <dependency>
                <groupId>org.apache.wicket</groupId>
                <artifactId>wicket-parent</artifactId>
                <version>${wicket.version}</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>
MarcGiffing commented 5 years ago

@ilgrosso Does it solves the version problem? Maybe the wicketstuff parent should also been added?

ilgrosso commented 5 years ago

Thanks @MarcGiffing and @mweirauch changing wicket import as suggested above fixed the problem.