When I include spring-boot in my project, it has predefined versions of other spring components. eg: spring-boot 1.3.5 with spring-boot-starter-web automatically includes spring-mvc 4.2.6. if I want to use some features from webmvc 4.3, how can i know they are compatible? is there any compatibility matrix? or should i just treat it as a single release and never change versions?
Spring Boot will work the best for you if you don't try to resist defaults (of course change them only if necessary). You can include Spring 4.3 into Spring boot 1.3.x project, but I guess you will encounter various issues.
Version 1.4.0 will include Spring 4.3. Spring Boot 1.4.0 is on Milestone 3 currently.
BTW,
compatibility version for spring boot
1.5x: https://docs.spring.io/spring-boot/docs/1.5.x/reference/html/appendix-dependency-versions.html
and for spring boot 2.0x:
https://docs.spring.io/spring-boot/docs/2.0.x/reference/html/appendix-dependency-versions.html
Related
I'm trying to migrate application with Camunda BPM 7.14.0 and Spring Boot 2.7.2 dependencies to latest Spring version(3.0.1/3.0.2) and at least Camunda 7.16.
Unfortunately I'm receiving some errors during migration and would like to ask what is the compatible version of Camunda which I can use with Spring 3.0.1?
From the compatibility matrix I can read that Camunda 7.18 is compatible only with version 2.7.x
https://docs.camunda.org/manual/7.18/user-guide/spring-boot-integration/version-compatibility/
Can someone confirm it?
Yes, I can confirm that 7.18 is compatible with 2.7.x
Spring Boot 3.0 requires some change in the autoconfiguration declaration and as far as I understood, the community edition will not support it until 7.20.0.
But the same thread mentions a manual fix that I haven't tried so far.
I'm using Spring Boot 2.6 and Spring Cloud Sleuth 3.1.4
Whenever I run the app I'm getting this:
Your project setup is incompatible with our requirements due to following reasons:
- Spring Boot [2.6.0] is not compatible with this Spring Cloud release train
Action:
Consider applying the following actions:
- Change Spring Boot version to one of the following versions [2.4.x, 2.5.x] .
You can find the latest Spring Boot versions here [https://spring.io/projects/spring-boot#learn].
If you want to learn more about the Spring Cloud Release train compatibility, you can visit this page [https://spring.io/projects/spring-cloud#overview] and check the [Release Trains] section.
If you want to disable this check, just set the property [spring.cloud.compatibility-verifier.enabled=false]
According to release train 2021.0.x should be compatible with Spring boot 2.6 and sleuth 3.1.4 is a part of it.
Am I missing something here?
In the compatibility matrix, as listed here: https://spring.io/projects/spring-cloud, under 'Release Train' section, this should work.
But, I would recommend you to lower the spring cloud version to 3.1.3 to begin with. If you still get the same error, try with version 3.1.0. as in my project I had no problems using spring-cloud-starter-sleuth 3.1.0 with Spring Boot 2.6.x.
Best regards,
Filip
EDIT: With spring sleuth 3.1.4 you should use spring-cloud-dependencies of version 2021.0.4. Maybe here you got the problem.
Is there any known version dependencies between Apache Wicket and Spring? Couldn't find any from the Wicket or Wicket-Spring bridge documentation .
For example can Wicket 7 be run with Spring 5, Wicket 9 with Spring 4 and so on.
Wicket 7.x uses Spring 4.1.x - https://github.com/apache/wicket/blob/wicket-7.x/pom.xml#L135
Wicket 8.x uses Spring 4.3.x - https://github.com/apache/wicket/blob/wicket-8.x/pom.xml#L137
Wicket 9.x uses Spring 5.3.x - https://github.com/apache/wicket/blob/wicket-9.x/pom.xml#L174
Wicket 10.x will use Spring 6.x - https://github.com/apache/wicket/blob/80726e2dae60e5893be0621761883f2dec20cac0/pom.xml#L185
You can manage the Spring version in your pom.xml and it may work or not depending on which Spring APIs you use in your application. Wicket's usage of Spring APIs is rather minimal and most probably you won't face problems.
I have an existing spring mvc project where I'm using spring 4.3.23.RELEASE version with spring security 4.2.13.RELEASE.
Now I want to upgrade the spring version 5.2.8.RELEASE. I don't identify which spring-security version is compatible with Spring 5.2.8.RELEASE version?
Generally speaking, the Spring Security Reference manual will answer this. For example, the manual for the Spring Security 5.2.5 RELEASE says:
Spring Security builds against Spring Framework 5.2.6.RELEASE but should generally work with any newer version of Spring Framework 5.x.
(The next release of Spring Security after 5.2.5 is 5.3.0.)
So I would expect Spring Security 5.2.5 would work with Spring Framework 5.2.8.
The Spring Security Reference manual also advises you to use "spring-framework-bom" to simplify dependency management. The idea is that you select a specific "bom" version and that gives you a set of compatible versions numbers for any of the Spring components that you use.
Spring documentation is the best source, but in case you are still unclear then the following approach can be taken.
As Spring Security depends on Spring Framework, one can look at the dependency tree of Spring Security to identify the compatible version of Spring Framework.
Now this can take some iterations but in the end one would get an accurate result.
Refer to the compile dependencies section in the maven repository page
I was tasked to assign to modify an application with RBAC(Role Based access control) for a project which uses an older spring mvc version 3.0.5.
We plan to integrate spring security for this task.
The question is, are there any older version of spring security we can use
that is compatible with the spring mvc we have?
Last Spring Security-3.1.0 supports spring 3.0.6. This version of spring security should work fine for your project.
Although your version should work fine with this version of spring security if you want you can do a minor version upgrade of spring. You can find the changelogs here https://spring.io/blog/2011/08/24/spring-3-0-6-is-now-available
And documentation for this version of the library can be found at this link spring-security-3.0.7-docs
But, please be cautious, it's not recommended to use older versions of security-related libraries since they might have known vulnerabilities.