Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

JSTL fails in JPMS #9301

Closed
janbartel opened this issue Feb 2, 2023 · 1 comment · Fixed by #9321
Closed

JSTL fails in JPMS #9301

janbartel opened this issue Feb 2, 2023 · 1 comment · Fixed by #9321
Assignees
Labels
Bug For general bugs on Jetty side

Comments

@janbartel
Copy link
Contributor

jetty-12.0.x

Running with JSTL enabled in JPMS fails in jetty-12.

Problems are:

  • the ee10-glassfish-jstl.mod file does not depend on ee10-apache-jsp.mod which it should
  • the jetty-home/lib/ee10-glassfish-jstl dir contains the jakarta.el-api jars which export the same jsp/el api as the org.mortbay.jasper jars from jetty-home/lib/ee10-apache-jsp so there are duplicate classes on the classpath, (and in JPMS multiple modules export the same package which is a failure) and must be removed
  • the jakarta.servlet.jsp.jstl-api jar has a module-info that explicitly requires the jakarta.el-api jar (and others), so cannot be used with our org.mortbay.jasper jars leading to a JPMS failure

So we need to rework and rerelease the org.mortbay.jasper jars minus the jakarta.el-api and jakarta.servlet.jsp-api classes, and then update the ee10-apache-jsp.mod module to refer to those jars, and then fix jetty-ee10-osgi as necessary to refer to those jars.

Note that according to eclipse-ee4j/wasp#58, even when we correct jetty, JSTL still may not work in JPMS due to module naming conflicts with the glassfish jstl jar and the jakarta.servlet.jsp.jstl-api jars

Original problem report is here: jetty-project/jasper-jsp#143 and

@janbartel janbartel added Bug For general bugs on Jetty side Jetty 12 labels Feb 2, 2023
@janbartel janbartel self-assigned this Feb 2, 2023
@sbordet sbordet linked a pull request Feb 8, 2023 that will close this issue
janbartel added a commit that referenced this issue Feb 8, 2023
* Issue #9301 Fix dependencies for ee10-glassfish-jstl module

* Fix jstl,el,jsp to work in jpms and osgi.
@janbartel
Copy link
Contributor Author

Fixed via #9303 and #9321.

gregpoulos pushed a commit to gregpoulos/jetty.project that referenced this issue Feb 9, 2023
…x-documentation-operations-logging

* upstream/jetty-12.0.x: (35 commits)
  Fixes jetty#9326 - Rename DecryptedEndPoint to SslEndPoint.
  Jetty 10 Upgrade to Hazelcast 5 and totally disable auto join multicast etc.. (fix build on CI) (jetty#9331)
  jetty#9328 - changes from review
  jetty#9287 - catch error in ee9 maxRequestSize MultiPart test
  Jetty 12.0.x 9301 fix ee10 jstl jpms (jetty#9321)
  Issue jetty#9301 Fix dependencies for ee10-glassfish-jstl module (jetty#9303)
  Jetty 12 Hazelcast 5.x and disable auto detection/multicast" (jetty#9332)
  jetty#9287 - fix further test failures
  Fixed imports.
  Issue jetty#7650 - Fix race condition when stopping QueuedThreadPool (jetty#9325)
  jetty#9287 - remove unpaired release of Content.Chunk
  Issue jetty#8991 - rename websocket isDemanding() method to isAutoDemanding()
  Issue jetty#9287 - fix failing tests
  changes f rom review
  add todo to revert to normal pool after fix for jetty#9311
  Issue jetty#9309 - Introducing test for requestlog format with spaces
  use non-pooling RetainableByteBufferPool to work around performance bug
  consumeAvailable should use number of reads instead of bytes
  fix for retainable merge
  changes from review
  ...
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Bug For general bugs on Jetty side
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant