Skip to content

JSP-related resources may not be found in an executable war file when using Jetty #39472

@ghost

Description

Envrionment:
upgrade from Spring2.6.x to SpringBoot3.2.0

Scenario:
I want to use custom jsp tagLib in production war scenario , my startup command similar with java -jar fool.war

├── resources │   ├── application.yml │   └── logback.xml └── webapp └── WEB-INF ├── taglib │   └── demo.tld └── views └── hello.jsp

CurrentSituation:
package war can't load custom taglib will throw ProviderMissmatchException and ignored ,package jar everything is ok

Debug:
I dive into source, I found JettyServletWebServerFactory come to use jasper TldScanner scanResourcePath , finally will call JettyServletWebServerFactory$LoaderHidingResource list() method.

In springBoot 2.6.x the LoaderHidingResource list() method has no filter condition, so thats fine

image image image

Metadata

Metadata

Assignees

Labels

type: regressionA regression from a previous release

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions