Grails 7 migration issue with spring-security-saml4.0.2 plugin
- Dominant language
- Groovy
- Stars
- 2.9k
- Forks
- 975
- Avg merge
- 1d 22h
- Merged PRs (30d)
- 92
Description
### Expected Behavior
During Grails 7 migration we see issue with latest grails plugin org.grails.plugins:spring-security-saml:4.0.2 , our integration tests fails with following exception, this is because latest version of grails plugin spring-security-saml still using old classes in javax.servlet from javax.servlet-api-4.0.1.jar instead of "jakarta.servlet." from jakarta.servlet-api-6.0.0.jar can you share the the latest version of grails plugin spring-security-saml supporting jakarta.servlet-api:6.0.0
Exception stack trace
```
_No signature of method: static org.springframework.security.saml.util.SAMLUtil.processFilter() is applicable for argument types: (String, org.springframework.mock.web.MockHttpServletRequest) values: [/saml/logout, org.springframework.mock.web.MockHttpServletRequest@6ec80e5c]
Possible solutions: processFilter(java.lang.String, javax.servlet.http.HttpServletRequest)
groovy.lang.MissingMethodException: No signature of method: static org.springframework.security.saml.util.SAMLUtil.processFilter() is applicable for argument types: (String, org.springframework.mock.web.MockHttpServletRequest) values: [/saml/logout, org.springframework.mock.web.MockHttpServletRequest@6ec80e5c]
Possible solutions: processFilter(java.lang.String, javax.servlet.http.HttpServletRequest)
at groovy.lang.MetaClassImpl.invokeStaticMissingMethod(MetaClassImpl.java:1641)
at groovy.lang.MetaClassImpl.invokeStaticMethod(MetaClassImpl.java:1627)
at org.codehaus.groovy.vmplugin.v8.IndyInterface.fromCache(IndyInterface.java:321)
at net.hedtech.banner.security.XYZSamlLogoutFilter.requiresLogout(XYZSamlLogoutFilter.groovy:133)
at org.codehaus.groovy.vmplugin.v8.IndyInterface.fromCache(IndyInterface.java:321)
at net.hedtech.banner.security.XYZSamlLogoutFilterTest.$tt__validate different URL to see if requiresLogout returns false (XYZSamlLogoutFilterTest.groovy:180)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
....._
### Actual Behaviour
_No response_
### Steps To Reproduce
_No response_
### Environment Information
Windows 11 Pro
grails-7.0.0-SNAPSHOT
JDK 17
### Example Application
_No response_
### Version
grails-7.0.0-SNAPSHOT
Contributor guide
Research direction
Start with the spring-security-saml:4.0.2 dependency and the javax.servlet versus jakarta.servlet versions described in the report. Inspect XYZSamlLogoutFilter.groovy at line 133 and XYZSamlLogoutFilterTest.groovy around line 180, then run the failing integration test. Done means establishing whether a Grails 7-compatible plugin version exists or documenting the compatibility limitation.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- groovy, spring
- Domain
- authentication, backend, security
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100