Is Spring Security compatible with Java 8 (Oracle)?
I presume that v4 is, since it requires Spring v4 which does support jdk8. However I couldn't find any explicit information on this.
I did check the Spring Security Bug Tracker and found one minor open issue with OpenJdk8 - however it was written before Spring Security v4 was released.
I couldn't find anything on Spring Security v3.x with jdk8. Does anyone know if that works/is supported?
There is a section in the Spring Security Reference that states:
Spring Security 2.0.x requires a minimum JDK version of 1.4 [...]
Spring Security 3.0 and 3.1 require at least JDK 1.5 [...]
However, as noted in the question, this is not very explicit! Despite being a reference for Spring Security 4.2.0, the section quoted above has no details at all about Spring Security 4. I suspect that portion of the documentation is simply out of date.
A different portion of the documentation has this information (emphasis added):
There are a number of ways in which Spring Security can resolve the method arguments. [...] By default, the following options are tried for a method as a whole.
[...]
If JDK 8 was used to compile the source with the -parameters argument and Spring 4+ is being used, then the standard JDK reflection API is used to discover the parameter names. This works on both classes and interfaces.
Though not explicit, it seems illogical to document how Spring Security handles code compiled using JDK 8 if it does not work using JDK 8.
Spring Framework 4.1.6 is also the first release to be formally compatible with the recently released JDK 8 update 40
it's from Spring blog
this should be helpful:
spring-core 3.2.9 + java 8
Spring 3.2.x will only support Java 8 runtimes compiled against Java 7
Related
I am trying to get Spring Cloud DataFlow to work with CockroachDB as its persistence layer.
The problem that I have is that CockroachDB does not support the PostgreSQL Large Object server-side functions (e.g. lo_create) which the default postgreSQL dialect for Hibernate employs when registering apps in SCDF.
As of Hibernate ORM 5.4.19 a new dialect specifically for CockroachDB is now supported. However, the version of Hibernate SCDF uses is too outdated and doesn't contain this dialect.
My problem now is how do I inject the newer version of Hibernate into SCDF? I tried launching SCDF via a Spring Boot app that overrides the version of Hibernate - but failed at this miserably and from what I can glean from the other questions, is not really supported anymore anyways (?)
SCDF 2.8.0-SNAPSHOT uses version 5.4.22.Final of Hibernate which supports the CockroachDB201Dialect
I'd recommend trying 2.7.x snapshots(or 2.7.0-M2 sometime next week) as that is on latest framework/boot versions which pulls hibernate 5.4.21. 2.6.x line will get updates with a next maintenance release.
Custom builds are a bit pain to handle and we would not recommend changing anything core stuff what's directly coming from a framework deps.
I have a legacy grails app running on 1.3 on Java 6 with tomcat 6.
We need to upgrade to java 8 on tomcat 8.
Is it possible to upgrade grails version from 1.3 to 2.4.5.
Lot of compilation issues and some of the holder classes are missing.
Please suggest.
The easiest way we've found to upgrade between incompatible versions of Grails is to create a new application in the new version, and migrate the services/controllers/src directories into the new application.
You will need to keep in mind various changes (like the Holders classes you mentioned, which are now part of Holders in grails.util.Holders, iirc). Also, you'll probably need to upgrade any plugins you use to newer 2.4.x-compatible versions as well (specifically spring-security, etc.)
It's not an easy task, but it can be done. We've migrated from 1.x to 2.x before, and from 2.2 to 2.4, and we're currently migrating to 3.x. BTW, since you're migrating, perhaps moving to 3.x would be a better move?
Good luck!
I'm trying with the 2.5.0 release of Grails but I have had problems of compatibility with some plugins I've tried (for example searchable)
Which version of Grails you recommend to start a new project? I'd like to start with the version more compatible with the list of current Grails plugins https://grails.org/plugins/
I'm not interested with the newer version but with the most compatible/stable with the current plugins list.
Both 2.4.x and 2.5.x will work fine with the current plugins in general.
Without any details it's hard to know why the searchable plugin isn't working for you, but note that it only works with Hibernate 3 and the default in new Grails apps is to use Hibernate 4. But you can see that the Hibernate 3 configuration settings are commented out in BuildConfig.groovy and DataSource.groovy so you can easily change back to Hibernate 3.
Having said that, don't use searchable. The underlying Compass library is no longer maintained, and using the searchable plugin will cause scaling problems because it's very inconvenient to get it to use a shared index between servers. The author of Compass created Elasticsearch, and that's a much better option. There's also an actively maintained plugin for it.
It seems like this questions should be easy but the installation requirements for Grails (http://www.grails.org/Installation) haven't been updated in 2 years. Does anyone know for sure is Grails 2.3 will run on JDK 8?
As noticed by heikkim this ticket which is now closed suggests that support for Java 8 will start on Grails 2.4:
http://jira.grails.org/browse/GRAILS-11063 (title: Java 8 support)
Tried an app (built on v2.3.7) on JDK 8 and hit a road block with database-migration plugin while compiling the app. If that particular plugin is commented out then everything looks good during compilation.
Running the app (with a sample controller) throws an error related to withFormat method from grails-plugin-mimetypes. Looking into it.
Raised an improvement defect for grails-database-migration plugin. I think this may not be required as well but making grails JDK8 compatible might need changes in grails-core. However, I have not checked with latest milestone build for Grails 2.4 which might already be taking care of those compatibility issues.
I have a JSF 2.0 application. Can we use acegi-jsf of version 1.1.3. Can we use this tag library for JSF 2.0.
Acegi does not exist anymore. It was taken over by Spring in April 2008 and continued under the brand "Spring Security". That Acegi tag library is likely JSP targeted and not Facelets targeted. JSF 2.0 was namely introduced in December 2009, which is a long time after the Acegi takeover by Spring.
You should be looking for Spring Security JSF 2.0 tag library instead. However, a "JSF 2.0 tag library" can better be rephrased to "Facelets tag library" in order to end up with a more correct term and thus get better Google hits. You ultimately want to use this on Facelets (XHTML) files, right?
I don't do Spring, but Googling on "Spring Security Facelets tag library" yields among others this link which describes how to manually declare Facelets tag libraries and EL functions. There does thus not seem to be a full integration (i.e. just dropping JAR in webapp without the need to manually create .taglib.xml files), they seem to be working on that for future releases.