Skip to content

fix(jetty12): bundle missing XML schemas in shared_sdk to prevent offline validation warnings (#107)#518

Open
ludoch wants to merge 1 commit into
mainfrom
fix/issue-107
Open

fix(jetty12): bundle missing XML schemas in shared_sdk to prevent offline validation warnings (#107)#518
ludoch wants to merge 1 commit into
mainfrom
fix/issue-107

Conversation

@ludoch

@ludoch ludoch commented Jul 13, 2026

Copy link
Copy Markdown
Collaborator

Fixes #107.

Summary of Changes

  • Bundle missing DTD/XSD schemas centralized inside shared_sdk/src/main/resources/: In Servlet 6 / EE10+, the official jakarta.servlet-api:6.0.0 and 6.1.0 dependencies stopped bundling the W3C XML schema files (XMLSchema.dtd, datatypes.dtd, xml.xsd). Placing them in shared_sdk/src/main/resources/jakarta/servlet/resources/ (and javax/servlet/resources/ for EE8) centralizes the schema definitions across the repository with zero XML duplication across project modules.
  • Automatic inclusion in Production Runtime JARs: Because our core runtime modules (runtime_impl_jetty12, runtime_impl_jetty121, and local runtime modules) shade com.google.appengine:shared-sdk into their build artifacts via maven-shade-plugin, the schema resources automatically end up packaged inside the production runtime JARs (runtime-impl-jetty12.jar, runtime-impl-jetty121.jar, runtime-shared-jetty12.jar, etc.). This guarantees offline XML validation succeeds both in local development and production environments.
  • Expose schemas to offline JSP precompiler and TLD scanners: In Jetty121EE11Sdk and Jetty121EE8Sdk, included appengine-local-runtime-shared.jar in getJetty121JspJars() so that offline TLD scanning and JspC precompilation during dev_appserver startup can locate the DTDs/XSDs on their isolated classloader without logging missing-schema validation warnings.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

EE10: some dtd/xsd are missing:

2 participants