[ 
https://issues.apache.org/jira/browse/HBASE-26813?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17503588#comment-17503588
 ] 

Nick Dimiduk commented on HBASE-26813:
--------------------------------------

The only occurrences of "javax.ws.rs" outside of maven dependency {{exclusion}} 
bocks are in a comment from HBASE-24284 that introduces an explicit dependency 
on {{org.glassfish.jaxb:jaxb-runtime:2.3.2}} in hbase-rest for the 
JDK11/Hadoop3 profile, and in {{supplemental-models.xml}} files.

I think we are clear of shaded jersey and the JSRs it implements 
([JSR-311|https://jcp.org/aboutJava/communityprocess/final/jsr311/index.html], 
[JSR-339|https://jcp.org/aboutJava/communityprocess/final/jsr339/index.html], 
and 
[JSR-370|https://jcp.org/aboutJava/communityprocess/final/jsr370/index.html]). 
Because of the banned import, we _should_ even be safe to remove all of those 
extra {{excludes}} from our various hadoop dependencies and suffer no ill 
effect.

The Glassfish JAXB runtime jar provides an implementation of 
[JSR-222|https://jcp.org/aboutJava/communityprocess/final/jsr222/index.html], 
aka, Java Bean <-> XML/Json serialization (I think). If this is related to 
jersey, it's through a transitive dependency that jersey has on an JSR-222 
implementation. At the time of [~stack]'s comments on HBASE-24284 and 
HBASE-24215, we were using unshaded jersey in hbase-rest. Since then, we have 
migrated to the shaded version of jersey, as well as a shaded version of 
jackson. Indeed, [~GeorryHuang] and [~zhangduo] noticed that we were missing a 
shading of a jaxb implementation during a jersey version upgrade and added 
{{jersey-media-jaxb}} via HBASE-26506. In short, we may still have a transitive 
runtime dependency on an unshaded JSR-222 implementation, but I think there's 
enough evidence to the contrary that if it exists, it will be minor. This 
should be tested.

> Determine whether unshaded jersey jars are still needed.
> --------------------------------------------------------
>
>                 Key: HBASE-26813
>                 URL: https://issues.apache.org/jira/browse/HBASE-26813
>             Project: HBase
>          Issue Type: Sub-task
>            Reporter: Nick Dimiduk
>            Priority: Major
>
> I see that we still have {{javax.ws.rs-api}} as a dependency in our 
> hbase-http pom. If, for example, the {{ClientBuilder}} from this jar is used, 
> it'll instantiate whatever non-shaded jersey client is on the class path.



--
This message was sent by Atlassian Jira
(v8.20.1#820001)

Reply via email to