[
https://issues.apache.org/jira/browse/HADOOP-19970?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=18107655#comment-18107655
]
ASF GitHub Bot commented on HADOOP-19970:
-----------------------------------------
pan3793 commented on PR #8699:
URL: https://github.com/apache/hadoop/pull/8699#issuecomment-5404401913
> The jakarta.servlet groupId does not imply the jakarta.servlet package.
Version 4.0.x was just the artifact rename under the Eclipse Foundation — the
classes are still javax.servlet.http.HttpServlet. The actual package rename
("big bang") landed in 5.0.0. So if you see jakarta.servlet-api:4.0.4 on a
classpath, your imports are still javax.*.
@pjfanning that's true. so in the process of namespace migration, we might
mix in `javax.*.` and `jakarta.servlet` at the same time, and we can not pull
two versions of `jakarta.servlet-api` that's why
> in this case, the `javax.servlet` must be provided by
`javax.servlet:javax.servlet-api`
but this might not be a real issue for hadoop project, since it stays near
the root of the big data ecosystem dependency tree
> Resolve a single Jetty release and servlet API on every module classpath
> ------------------------------------------------------------------------
>
> Key: HADOOP-19970
> URL: https://issues.apache.org/jira/browse/HADOOP-19970
> Project: Hadoop Common
> Issue Type: Sub-task
> Components: build, common, test
> Reporter: Jose Luis López
> Priority: Major
> Labels: pull-request-available
>
> Several modules resolve more than one Jetty release, and more than one servlet
> API, on a single classpath. Both combinations compile and then fail at run
> time,
> on whichever code path reaches the wrong jar.
> Intended result:
> * Every module resolves one Jetty release. Three are in play today: 9.4.44
> and
> 9.4.55 reach some classpaths beside the managed 9.4.58.
> * Every module resolves one servlet API. javax.servlet:javax.servlet-api and
> jakarta.servlet:jakarta.servlet-api both publish the javax.servlet
> packages,
> and 73 modules carry both, so which one a module compiles and runs against
> is
> decided by the order of the jars rather than by anything in a pom.
> * Every module that uses Jetty in its main sources declares it. Four do not,
> and compile only because some other dependency happens to supply it.
> * The unused JSP API is gone. It reaches around eighty-five classpaths
> through
> hadoop-common, and nothing in the tree uses JSP.
> One module keeps two servlet APIs:
> hadoop-yarn-server-timelineservice-hbase-tests,
> where the second arrives with HBase's own test stack.
> None of this depends on a Jetty version change.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]