[
https://issues.apache.org/jira/browse/SOLR-17503?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=18020032#comment-18020032
]
Gus Heck commented on SOLR-17503:
---------------------------------
Here is a regex I think will find any javax references that are not strictly
jetty deps:
{code:java}
javax\.(?!naming|xml|accessibility|annotation|crypto|imageio|lang|management|net|print|rmi|script|security|sound|sql|swing|tools|transactions)
{code}
Based on the packages I see here: that's (hopefully) a list of javax packages
that are continuing as part of the J2SE distributions:
[https://docs.oracle.com/en/java/javase/21/docs/api/allpackages-index.html]
The following hits are found in a clean checkout of main (some of these like
forbidden apis are good and should be retained/expanded)
{code:java}
Targets
Occurrences of
'javax\.(?!naming|xml|accessibility|annotation|crypto|imageio|lang|management|net|print|rmi|script|security|sound|sql|swing|tools|transactions)'
in Project
Found occurrences in Project (76 usages found)
solr-root (58 usages found)
solr (32 usages found)
core (3 usages found)
main (2 usages found)
org.apache.solr.security (1 usage found)
CertAuthPlugin.java (1 usage found)
doAuthenticate(HttpServletRequest,
HttpServletResponse, FilterChain) (1 usage found)
105 (X509Certificate[])
request.getAttribute("javax.servlet.request.X509Certificate");
org.apache.solr.servlet (1 usage found)
SolrDispatchFilter.java (1 usage found)
authenticateRequest(HttpServletRequest,
HttpServletResponse, AtomicReference<HttpServletRequest>) (1 usage found)
328 // wrapped instance of javax.servlet.Filter
and neither of those seem to be doing anything
test (1 usage found)
org.apache.solr (1 usage found)
ConvertedLegacyTest.java (1 usage found)
testABunchOfConvertedStuff() (1 usage found)
800 1) 673820 [2005-08-29 15:11:38.375] at
javax.servlet.http.HttpServlet.service(HttpServlet.java:154) 673821 [2005-08-29
15:11:38.375] at javax.se
modules (14 usages found)
analysis-extras (1 usage found)
solr/modules/analysis-extras (1 usage found)
gradle.lockfile (1 usage found)
70
javax.inject:javax.inject:1=annotationProcessor,errorprone,testAnnotationProcessor
clustering (1 usage found)
solr/modules/clustering (1 usage found)
gradle.lockfile (1 usage found)
69
javax.inject:javax.inject:1=annotationProcessor,errorprone,testAnnotationProcessor
cross-dc (1 usage found)
solr/modules/cross-dc (1 usage found)
gradle.lockfile (1 usage found)
70
javax.inject:javax.inject:1=annotationProcessor,errorprone,testAnnotationProcessor
extraction (2 usages found)
solr/modules/extraction (2 usages found)
gradle.lockfile (2 usages found)
100
javax.inject:javax.inject:1=annotationProcessor,errorprone,testAnnotationProcessor
101
javax.measure:unit-api:1.0=compileClasspath,jarValidation,runtimeClasspath,runtimeLibs,testCompileClasspath,testRuntimeClasspath
gcs-repository (1 usage found)
solr/modules/gcs-repository (1 usage found)
gradle.lockfile (1 usage found)
123
javax.inject:javax.inject:1=annotationProcessor,errorprone,jarValidation,testAnnotationProcessor,testCompileClasspath,testRuntimeClasspath
jwt-auth (1 usage found)
solr/modules/jwt-auth (1 usage found)
gradle.lockfile (1 usage found)
83
javax.inject:javax.inject:1=annotationProcessor,errorprone,testAnnotationProcessor
langid (1 usage found)
solr/modules/langid (1 usage found)
gradle.lockfile (1 usage found)
70
javax.inject:javax.inject:1=annotationProcessor,errorprone,testAnnotationProcessor
llm (1 usage found)
solr/modules/llm (1 usage found)
gradle.lockfile (1 usage found)
85
javax.inject:javax.inject:1=annotationProcessor,errorprone,testAnnotationProcessor
ltr (1 usage found)
solr/modules/ltr (1 usage found)
gradle.lockfile (1 usage found)
69
javax.inject:javax.inject:1=annotationProcessor,errorprone,testAnnotationProcessor
opentelemetry (1 usage found)
solr/modules/opentelemetry (1 usage found)
gradle.lockfile (1 usage found)
106
javax.inject:javax.inject:1=annotationProcessor,errorprone,testAnnotationProcessor
s3-repository (1 usage found)
solr/modules/s3-repository (1 usage found)
gradle.lockfile (1 usage found)
93
javax.inject:javax.inject:1=annotationProcessor,errorprone,testAnnotationProcessor
scripting (1 usage found)
solr/modules/scripting (1 usage found)
gradle.lockfile (1 usage found)
69
javax.inject:javax.inject:1=annotationProcessor,errorprone,testAnnotationProcessor
sql (1 usage found)
solr/modules/sql (1 usage found)
gradle.lockfile (1 usage found)
76
javax.inject:javax.inject:1=annotationProcessor,errorprone,testAnnotationProcessor
api (3 usages found)
solr/api (3 usages found)
gradle.lockfile (3 usages found)
96
javax.inject:javax.inject:1=annotationProcessor,errorprone,testAnnotationProcessor
97 javax.servlet:javax.servlet-api:3.1.0=swaggerDeps
98 javax.ws.rs:javax.ws.rs-api:2.1=swaggerDeps
benchmark (1 usage found)
solr/benchmark (1 usage found)
gradle.lockfile (1 usage found)
69
javax.inject:javax.inject:1=annotationProcessor,errorprone,testAnnotationProcessor
core (2 usages found)
solr/core (2 usages found)
gradle.lockfile (2 usages found)
80
javax.inject:javax.inject:1=annotationProcessor,errorprone,testAnnotationProcessor
81
javax.servlet:javax.servlet-api:3.1.0=permitUnusedDeclared
cross-dc-manager (1 usage found)
solr/cross-dc-manager (1 usage found)
gradle.lockfile (1 usage found)
87
javax.inject:javax.inject:1=annotationProcessor,errorprone,testAnnotationProcessor
prometheus-exporter (1 usage found)
solr/prometheus-exporter (1 usage found)
gradle.lockfile (1 usage found)
72
javax.inject:javax.inject:1=annotationProcessor,errorprone,testAnnotationProcessor
server (1 usage found)
solr/server (1 usage found)
gradle.lockfile (1 usage found)
67
javax.inject:javax.inject:1=annotationProcessor,errorprone,testAnnotationProcessor
solr-ref-guide (1 usage found)
solr/solr-ref-guide (1 usage found)
gradle.lockfile (1 usage found)
68
javax.inject:javax.inject:1=annotationProcessor,errorprone,testAnnotationProcessor
solrj (1 usage found)
solr/solrj (1 usage found)
gradle.lockfile (1 usage found)
78
javax.inject:javax.inject:1=annotationProcessor,errorprone,testAnnotationProcessor
solrj-streaming (1 usage found)
solr/solrj-streaming (1 usage found)
gradle.lockfile (1 usage found)
78
javax.inject:javax.inject:1=annotationProcessor,errorprone,testAnnotationProcessor
solrj-zookeeper (1 usage found)
solr/solrj-zookeeper (1 usage found)
gradle.lockfile (1 usage found)
82
javax.inject:javax.inject:1=annotationProcessor,errorprone,testAnnotationProcessor
test-framework (1 usage found)
solr/test-framework (1 usage found)
gradle.lockfile (1 usage found)
69
javax.inject:javax.inject:1=annotationProcessor,errorprone,testAnnotationProcessor
webapp (1 usage found)
solr/webapp (1 usage found)
gradle.lockfile (1 usage found)
67
javax.inject:javax.inject:1=annotationProcessor,errorprone,testAnnotationProcessor
solr (26 usages found)
solr/licenses (26 usages found)
kafka-LICENSE-ASL.txt (3 usages found)
311 javax.activation-api-1.2.0
313 javax.servlet-api-3.1.0
314 javax.ws.rs-api-2.1.1
kafka-NOTICE.txt (5 usages found)
383 javax.inject Version: 1
466 * org.eclipse.jetty.orbit:javax.mail.glassfish
475 * javax.servlet:javax.servlet-api
477 * javax.transaction:javax.transaction-api
478 * javax.websocket:javax.websocket-api
kafka_2.13-LICENSE-ASL.txt (3 usages found)
311 javax.activation-api-1.2.0
313 javax.servlet-api-3.1.0
314 javax.ws.rs-api-2.1.1
kafka_2.13-NOTICE.txt (5 usages found)
383 javax.inject Version: 1
466 * org.eclipse.jetty.orbit:javax.mail.glassfish
475 * javax.servlet:javax.servlet-api
477 * javax.transaction:javax.transaction-api
478 * javax.websocket:javax.websocket-api
lucene-NOTICE.txt (1 usage found)
113 Servlet-api.jar and javax.servlet-*.jar are under the
CDDL license, the original
lz4-java-LICENSE-ASL.txt (3 usages found)
311 javax.activation-api-1.2.0
313 javax.servlet-api-3.1.0
314 javax.ws.rs-api-2.1.1
profiler-LICENSE-ASL.txt (3 usages found)
311 javax.activation-api-1.2.0
313 javax.servlet-api-3.1.0
314 javax.ws.rs-api-2.1.1
scala-LICENSE-ASL.txt (3 usages found)
311 javax.activation-api-1.2.0
313 javax.servlet-api-3.1.0
314 javax.ws.rs-api-2.1.1
solr-root (18 usages found)
(1 usage found)
NOTICE.txt (1 usage found)
254 Servlet-api.jar and javax.servlet-*.jar are under the CDDL
license, the original
dev-tools/scripts (2 usages found)
smokeTestRelease.py (2 usages found)
201 print(' verify JAR metadata/identity/no javax.* or
java.* classes...')
216 print(' **WARNING**: skipping check of %s/%s: it has
javax.* classes' % (root, file))
gradle/documentation/render-javadoc/java17 (2 usages found)
package-list (2 usages found)
155 javax.smartcardio
164 javax.transaction.xa
gradle/documentation/render-javadoc/java21 (2 usages found)
package-list (2 usages found)
158 javax.smartcardio
167 javax.transaction.xa
gradle/validation (1 usage found)
validate-source-patterns.gradle (1 usage found)
22 import javax.inject.Inject;
gradle/validation/forbidden-apis (10 usages found)
javax.servlet.javax.servlet-api.solr.txt (10 usages found)
18 javax.servlet.ServletRequest#getParameter(**)
19 javax.servlet.ServletRequest#getParameterMap(**)
20 javax.servlet.ServletRequest#getParameterNames(**)
21 javax.servlet.ServletRequest#getParameterValues(**)
23 javax.servlet.http.HttpServletRequest#getSession() @ Servlet
API getter has side effect of creating sessions
27 javax.servlet.ServletRequest#getReader()
28 javax.servlet.ServletResponse#getWriter()
29 javax.servlet.ServletInputStream#readLine(**)
30 javax.servlet.ServletOutputStream#print(**)
31 javax.servlet.ServletOutputStream#println(**)
{code}
> Umbrella: Move to Jakarta J2EE packages
> ---------------------------------------
>
> Key: SOLR-17503
> URL: https://issues.apache.org/jira/browse/SOLR-17503
> Project: Solr
> Issue Type: Improvement
> Affects Versions: main (10.0)
> Reporter: Gus Heck
> Priority: Blocker
> Fix For: main (10.0)
>
>
> In a recent migration from 8x to 9x I encountered a lot of issues where a
> client with a repository containing custom solr components and fixes was
> *still* unable to migrate to latest versions of critical packages like
> dropwizard and hibernate validator because those packages rely on jakarta
> packages, and even if it might be possible to re-arrange the decade plus old
> repository and builds to avoid conflict the work to do so is prohibitive.
> Solr needs to not be the stick in the mud holding folks back. This ticket is
> to collect/track tickets relating our dependency on the legacy javax classes.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]