This is an automated email from the ASF dual-hosted git repository.

pradeep pushed a commit to branch RANGER-4076_master
in repository https://gitbox.apache.org/repos/asf/ranger.git

commit d8a8f6b42821fea489fce0ba5775bef1599e27fd
Author: Pradeep AgrawaL <[email protected]>
AuthorDate: Mon Dec 29 17:25:50 2025 +0530

    RANGER-4706: Add required jersey 2 libraries in distro
---
 distro/src/main/assembly/hdfs-agent.xml            | 54 ++++++++-------
 distro/src/main/assembly/kms.xml                   | 27 ++++++++
 distro/src/main/assembly/plugin-kms.xml            | 15 ++++
 distro/src/main/assembly/plugin-kylin.xml          | 15 ++++
 distro/src/main/assembly/plugin-ozone.xml          |  3 +
 distro/src/main/assembly/plugin-solr.xml           | 17 +++++
 distro/src/main/assembly/plugin-sqoop.xml          | 15 ++++
 distro/src/main/assembly/plugin-yarn.xml           |  2 +
 distro/src/main/assembly/storm-agent.xml           | 15 ++++
 distro/src/main/assembly/tagsync.xml               | 15 ++++
 distro/src/main/assembly/usersync.xml              | 22 ++++++
 .../tagsync/sink/tagadmin/TagAdminRESTSink.java    | 80 ++++++++++++++--------
 ugsync/pom.xml                                     | 35 ++++++++++
 13 files changed, 262 insertions(+), 53 deletions(-)

diff --git a/distro/src/main/assembly/hdfs-agent.xml 
b/distro/src/main/assembly/hdfs-agent.xml
index f88500a0f..a31d35dc6 100644
--- a/distro/src/main/assembly/hdfs-agent.xml
+++ b/distro/src/main/assembly/hdfs-agent.xml
@@ -85,32 +85,34 @@
         <directoryMode>755</directoryMode>
         <fileMode>644</fileMode>
         <includes>
-          
<include>org.eclipse.jetty:jetty-client:jar:${jetty-client.version}</include>
-          
<include>org.apache.httpcomponents:httpmime:jar:${httpcomponents.httpmime.version}</include>
-          
<include>org.apache.httpcomponents:httpclient:jar:${httpcomponents.httpclient.version}</include>
-          
<include>org.apache.httpcomponents:httpcore:jar:${httpcomponents.httpcore.version}</include>
-          <include>org.noggit:noggit:jar:${noggit.version}</include>
-          <include>org.apache.solr:solr-solrj:jar:${solr.version}</include>
-          
<include>com.kstruct:gethostname4j:jar:${kstruct.gethostname4j.version}</include>
-          <include>net.java.dev.jna:jna:jar:${jna.version}</include>
-          
<include>net.java.dev.jna:jna-platform:jar:${jna-platform.version}</include>
-          <include>org.elasticsearch:elasticsearch</include>
-          <include>org.elasticsearch:elasticsearch-core</include>
-          <include>org.elasticsearch:elasticsearch-x-content</include>
-          <include>org.elasticsearch.client:elasticsearch-rest-client</include>
-          
<include>org.elasticsearch.client:elasticsearch-rest-high-level-client</include>
-          <include>org.elasticsearch.plugin:rank-eval-client</include>
-          <include>org.elasticsearch.plugin:lang-mustache-client</include>
-          
<include>org.apache.httpcomponents:httpcore-nio:jar:${httpcomponents.httpcore.version}</include>
-          
<include>org.apache.httpcomponents:httpasyncclient:jar:${httpcomponents.httpasyncclient.version}</include>
-          <include>org.apache.lucene:lucene-core</include>
-          <include>joda-time:joda-time</include>
-          <include>com.carrotsearch:hppc</include>
-          
<include>org.apache.hive:hive-storage-api:jar:${hive.storage-api.version}</include>
-          <include>org.apache.orc:orc-core:jar:${orc.version}</include>
-          <include>org.apache.orc:orc-shims:jar:${orc.version}</include>
-          
<include>io.airlift:aircompressor:jar:${aircompressor.version}</include>
-          
<include>org.apache.hadoop.thirdparty:hadoop-shaded-guava:jar:${hadoop-shaded-guava.version}</include>
+            
<include>org.eclipse.jetty:jetty-client:jar:${jetty-client.version}</include>
+            
<include>org.apache.httpcomponents:httpmime:jar:${httpcomponents.httpmime.version}</include>
+            
<include>org.apache.httpcomponents:httpclient:jar:${httpcomponents.httpclient.version}</include>
+            
<include>org.apache.httpcomponents:httpcore:jar:${httpcomponents.httpcore.version}</include>
+            <include>org.noggit:noggit:jar:${noggit.version}</include>
+            <include>org.apache.solr:solr-solrj:jar:${solr.version}</include>
+            
<include>com.kstruct:gethostname4j:jar:${kstruct.gethostname4j.version}</include>
+            <include>net.java.dev.jna:jna:jar:${jna.version}</include>
+            
<include>net.java.dev.jna:jna-platform:jar:${jna-platform.version}</include>
+            <include>org.elasticsearch:elasticsearch</include>
+            <include>org.elasticsearch:elasticsearch-core</include>
+            <include>org.elasticsearch:elasticsearch-x-content</include>
+            
<include>org.elasticsearch.client:elasticsearch-rest-client</include>
+            
<include>org.elasticsearch.client:elasticsearch-rest-high-level-client</include>
+            <include>org.elasticsearch.plugin:rank-eval-client</include>
+            <include>org.elasticsearch.plugin:lang-mustache-client</include>
+            
<include>org.apache.httpcomponents:httpcore-nio:jar:${httpcomponents.httpcore.version}</include>
+            
<include>org.apache.httpcomponents:httpasyncclient:jar:${httpcomponents.httpasyncclient.version}</include>
+            <include>org.apache.lucene:lucene-core</include>
+            <include>joda-time:joda-time</include>
+            <include>com.carrotsearch:hppc</include>
+            
<include>org.apache.hive:hive-storage-api:jar:${hive.storage-api.version}</include>
+            <include>org.apache.orc:orc-core:jar:${orc.version}</include>
+            <include>org.apache.orc:orc-shims:jar:${orc.version}</include>
+            
<include>io.airlift:aircompressor:jar:${aircompressor.version}</include>
+            
<include>org.apache.hadoop.thirdparty:hadoop-shaded-guava:jar:${hadoop-shaded-guava.version}</include>
+            
<include>org.glassfish.jersey.media:jersey-media-json-jackson</include>
+            <include>org.glassfish.jersey.ext:jersey-entity-filtering</include>
         </includes>
       </binaries>
     </moduleSet>
diff --git a/distro/src/main/assembly/kms.xml b/distro/src/main/assembly/kms.xml
index 9de1ac124..d7a7ef746 100755
--- a/distro/src/main/assembly/kms.xml
+++ b/distro/src/main/assembly/kms.xml
@@ -186,6 +186,33 @@
                             <include>com.squareup.okhttp:okhttp</include>
                             <!-- ranger common metrics module-->
                             <include>org.apache.ranger:ranger-metrics</include>
+                            <include>jakarta.ws.rs:jakarta.ws.rs-api</include>
+                            
<include>jakarta.annotation:jakarta.annotation-api</include>
+                            
<include>jakarta.activation:jakarta.activation-api</include>
+                            
<include>jakarta.validation:jakarta.validation-api</include>
+                            <include>javax.inject:javax.inject</include>
+                            
<include>org.glassfish.jersey.core:jersey-client</include>
+                            
<include>org.glassfish.jersey.media:jersey-media-json-jackson</include>
+                            
<include>org.glassfish.jersey.core:jersey-common</include>
+                            
<include>org.glassfish.jersey.media:jersey-media-multipart</include>
+                            
<include>org.glassfish.jersey.containers:jersey-container-servlet</include>
+                            
<include>org.glassfish.jersey.containers:jersey-container-servlet-core</include>
+                            
<include>org.glassfish.jersey.inject:jersey-hk2</include>
+                            
<include>org.glassfish.hk2.external:jakarta.inject</include>
+                            
<include>org.glassfish.jersey.core:jersey-server</include>
+                            <include>org.glassfish.hk2:hk2</include>
+                            <include>org.glassfish.hk2:hk2-utils</include>
+                            <include>org.glassfish.hk2:hk2-api</include>
+                            <include>org.glassfish.hk2:hk2-core</include>
+                            <include>org.glassfish.hk2:hk2-locator</include>
+                            <include>org.glassfish.hk2:hk2-runlevel</include>
+                            <include>org.glassfish.hk2:class-model</include>
+                            
<include>org.glassfish.jersey.ext:jersey-entity-filtering</include>
+                            
<include>com.fasterxml.jackson.module:jackson-module-jaxb-annotations</include>
+                            
<include>com.fasterxml.jackson.core:jackson-annotations:jar:${fasterxml.jackson.version}</include>
+                            
<include>com.fasterxml.jackson.core:jackson-core:jar:${fasterxml.jackson.version}</include>
+                            
<include>com.fasterxml.jackson.core:jackson-databind:jar:${fasterxml.jackson.databind.version}</include>
+                            <include>org.javassist:javassist</include>
                         </includes>
                     </dependencySet>
                 </dependencySets>
diff --git a/distro/src/main/assembly/plugin-kms.xml 
b/distro/src/main/assembly/plugin-kms.xml
index 704a083b0..27c4d0a14 100755
--- a/distro/src/main/assembly/plugin-kms.xml
+++ b/distro/src/main/assembly/plugin-kms.xml
@@ -77,6 +77,21 @@
           <include>org.apache.orc:orc-shims:jar:${orc.version}</include>
           
<include>io.airlift:aircompressor:jar:${aircompressor.version}</include>
           
<include>org.apache.hadoop.thirdparty:hadoop-shaded-guava:jar:${hadoop-shaded-guava.version}</include>
+          <include>jakarta.ws.rs:jakarta.ws.rs-api</include>
+          <include>org.glassfish.jersey.core:jersey-client</include>
+          <include>org.glassfish.jersey.core:jersey-common</include>
+          
<include>org.glassfish.jersey.media:jersey-media-json-jackson</include>
+          <include>org.glassfish.jersey.ext:jersey-entity-filtering</include>
+          <include>org.glassfish.jersey.inject:jersey-hk2</include>
+          <include>org.glassfish.hk2.external:jakarta.inject</include>
+          <include>org.glassfish.hk2:hk2</include>
+          <include>org.glassfish.hk2:hk2-utils</include>
+          <include>org.glassfish.hk2:hk2-api</include>
+          <include>org.glassfish.hk2:hk2-core</include>
+          <include>org.glassfish.hk2:hk2-locator</include>
+          <include>org.glassfish.hk2:hk2-runlevel</include>
+          <include>org.glassfish.hk2:class-model</include>
+          <include>javax.inject:javax.inject</include>
         </includes>
       </binaries>
     </moduleSet>
diff --git a/distro/src/main/assembly/plugin-kylin.xml 
b/distro/src/main/assembly/plugin-kylin.xml
index be7a3de80..0d53dd20b 100644
--- a/distro/src/main/assembly/plugin-kylin.xml
+++ b/distro/src/main/assembly/plugin-kylin.xml
@@ -86,6 +86,21 @@
               <include>org.apache.orc:orc-core:jar:${orc.version}</include>
               <include>org.apache.orc:orc-shims:jar:${orc.version}</include>
               
<include>io.airlift:aircompressor:jar:${aircompressor.version}</include>
+              <include>jakarta.ws.rs:jakarta.ws.rs-api</include>
+              <include>org.glassfish.jersey.core:jersey-client</include>
+              <include>org.glassfish.jersey.core:jersey-common</include>
+              
<include>org.glassfish.jersey.media:jersey-media-json-jackson</include>
+              
<include>org.glassfish.jersey.ext:jersey-entity-filtering</include>
+              <include>org.glassfish.jersey.inject:jersey-hk2</include>
+              <include>org.glassfish.hk2.external:jakarta.inject</include>
+              <include>org.glassfish.hk2:hk2</include>
+              <include>org.glassfish.hk2:hk2-utils</include>
+              <include>org.glassfish.hk2:hk2-api</include>
+              <include>org.glassfish.hk2:hk2-core</include>
+              <include>org.glassfish.hk2:hk2-locator</include>
+              <include>org.glassfish.hk2:hk2-runlevel</include>
+              <include>org.glassfish.hk2:class-model</include>
+              <include>javax.inject:javax.inject</include>
             </includes>
           </dependencySet>
           <dependencySet>
diff --git a/distro/src/main/assembly/plugin-ozone.xml 
b/distro/src/main/assembly/plugin-ozone.xml
index 1dff63230..33b18306f 100644
--- a/distro/src/main/assembly/plugin-ozone.xml
+++ b/distro/src/main/assembly/plugin-ozone.xml
@@ -126,6 +126,9 @@
                     
<include>org.apache.orc:orc-core:jar:${orc.version}</include>
                     
<include>org.apache.orc:orc-shims:jar:${orc.version}</include>
                     
<include>io.airlift:aircompressor:jar:${aircompressor.version}</include>
+                    
<include>org.glassfish.jersey.media:jersey-media-json-jackson</include>
+                    
<include>org.glassfish.jersey.ext:jersey-entity-filtering</include>
+                    
<include>com.fasterxml.jackson.module:jackson-module-jaxb-annotations:jar:${fasterxml.jackson.version}</include>
                 </includes>
             </binaries>
         </moduleSet>
diff --git a/distro/src/main/assembly/plugin-solr.xml 
b/distro/src/main/assembly/plugin-solr.xml
index 7abe5f3e7..8c239f770 100644
--- a/distro/src/main/assembly/plugin-solr.xml
+++ b/distro/src/main/assembly/plugin-solr.xml
@@ -77,6 +77,23 @@
           <include>org.apache.orc:orc-core:jar:${orc.version}</include>
           <include>org.apache.orc:orc-shims:jar:${orc.version}</include>
           
<include>io.airlift:aircompressor:jar:${aircompressor.version}</include>
+          <include>jakarta.ws.rs:jakarta.ws.rs-api</include>
+          <include>org.glassfish.jersey.core:jersey-client</include>
+          <include>org.glassfish.jersey.core:jersey-common</include>
+          
<include>org.glassfish.jersey.media:jersey-media-json-jackson</include>
+          <include>org.glassfish.jersey.ext:jersey-entity-filtering</include>
+          <include>org.glassfish.jersey.inject:jersey-hk2</include>
+          <include>org.glassfish.hk2.external:jakarta.inject</include>
+          <include>org.glassfish.hk2:hk2</include>
+          <include>org.glassfish.hk2:hk2-utils</include>
+          <include>org.glassfish.hk2:hk2-api</include>
+          <include>org.glassfish.hk2:hk2-core</include>
+          <include>org.glassfish.hk2:hk2-locator</include>
+          <include>org.glassfish.hk2:hk2-runlevel</include>
+          <include>org.glassfish.hk2:class-model</include>
+          <include>javax.inject:javax.inject</include>
+          
<include>com.fasterxml.jackson.module:jackson-module-jaxb-annotations:jar:${fasterxml.jackson.version}</include>
+          
<include>javax.annotation:javax.annotation-api:jar:${javax.annotation-api.version}</include>
         </includes>
       </binaries>
     </moduleSet>
diff --git a/distro/src/main/assembly/plugin-sqoop.xml 
b/distro/src/main/assembly/plugin-sqoop.xml
index 3e5c30f53..0f54e5c4c 100644
--- a/distro/src/main/assembly/plugin-sqoop.xml
+++ b/distro/src/main/assembly/plugin-sqoop.xml
@@ -57,6 +57,21 @@
         <directoryMode>755</directoryMode>
         <fileMode>644</fileMode>
         <includes>
+          <include>jakarta.ws.rs:jakarta.ws.rs-api</include>
+          <include>org.glassfish.jersey.core:jersey-client</include>
+          <include>org.glassfish.jersey.core:jersey-common</include>
+          
<include>org.glassfish.jersey.media:jersey-media-json-jackson</include>
+          <include>org.glassfish.jersey.ext:jersey-entity-filtering</include>
+          <include>org.glassfish.jersey.inject:jersey-hk2</include>
+          <include>org.glassfish.hk2.external:jakarta.inject</include>
+          <include>org.glassfish.hk2:hk2</include>
+          <include>org.glassfish.hk2:hk2-utils</include>
+          <include>org.glassfish.hk2:hk2-api</include>
+          <include>org.glassfish.hk2:hk2-core</include>
+          <include>org.glassfish.hk2:hk2-locator</include>
+          <include>org.glassfish.hk2:hk2-runlevel</include>
+          <include>org.glassfish.hk2:class-model</include>
+          <include>javax.inject:javax.inject</include>
           
<include>org.eclipse.jetty:jetty-client:jar:${jetty-client.version}</include>
           
<include>org.apache.httpcomponents:httpmime:jar:${httpcomponents.httpmime.version}</include>
           
<include>org.apache.httpcomponents:httpclient:jar:${httpcomponents.httpclient.version}</include>
diff --git a/distro/src/main/assembly/plugin-yarn.xml 
b/distro/src/main/assembly/plugin-yarn.xml
index b4bab40a9..2ca39a4ae 100644
--- a/distro/src/main/assembly/plugin-yarn.xml
+++ b/distro/src/main/assembly/plugin-yarn.xml
@@ -83,6 +83,8 @@
           <include>org.apache.orc:orc-shims:jar:${orc.version}</include>
           
<include>io.airlift:aircompressor:jar:${aircompressor.version}</include>
           
<include>org.apache.hadoop.thirdparty:hadoop-shaded-guava:jar:${hadoop-shaded-guava.version}</include>
+          
<include>org.glassfish.jersey.media:jersey-media-json-jackson</include>
+          <include>org.glassfish.jersey.ext:jersey-entity-filtering</include>
         </includes>
       </binaries>
     </moduleSet>
diff --git a/distro/src/main/assembly/storm-agent.xml 
b/distro/src/main/assembly/storm-agent.xml
index c50e3295c..63b92a67c 100644
--- a/distro/src/main/assembly/storm-agent.xml
+++ b/distro/src/main/assembly/storm-agent.xml
@@ -106,6 +106,21 @@
               <include>org.apache.orc:orc-shims:jar:${orc.version}</include>
               
<include>io.airlift:aircompressor:jar:${aircompressor.version}</include>
               
<include>org.apache.hadoop.thirdparty:hadoop-shaded-guava:jar:${hadoop-shaded-guava.version}</include>
+              <include>jakarta.ws.rs:jakarta.ws.rs-api</include>
+              <include>org.glassfish.jersey.core:jersey-client</include>
+              <include>org.glassfish.jersey.core:jersey-common</include>
+              
<include>org.glassfish.jersey.media:jersey-media-json-jackson</include>
+              
<include>org.glassfish.jersey.ext:jersey-entity-filtering</include>
+              <include>org.glassfish.jersey.inject:jersey-hk2</include>
+              <include>org.glassfish.hk2.external:jakarta.inject</include>
+              <include>org.glassfish.hk2:hk2</include>
+              <include>org.glassfish.hk2:hk2-utils</include>
+              <include>org.glassfish.hk2:hk2-api</include>
+              <include>org.glassfish.hk2:hk2-core</include>
+              <include>org.glassfish.hk2:hk2-locator</include>
+              <include>org.glassfish.hk2:hk2-runlevel</include>
+              <include>org.glassfish.hk2:class-model</include>
+              <include>javax.inject:javax.inject</include>
             </includes>
           </dependencySet>
           <dependencySet>
diff --git a/distro/src/main/assembly/tagsync.xml 
b/distro/src/main/assembly/tagsync.xml
index e48572383..c5452f4b9 100644
--- a/distro/src/main/assembly/tagsync.xml
+++ b/distro/src/main/assembly/tagsync.xml
@@ -98,6 +98,21 @@
                                                        
<include>org.apache.zookeeper:zookeeper-jute:jar:${zookeeper.version}</include>
                                                        
<include>com.google.guava:guava</include>
                                                         
<include>org.apache.hadoop.thirdparty:hadoop-shaded-guava:jar:${hadoop-shaded-guava.version}</include>
+                                                       
<include>jakarta.ws.rs:jakarta.ws.rs-api</include>
+                                                       
<include>org.glassfish.jersey.core:jersey-client</include>
+                                                       
<include>org.glassfish.jersey.core:jersey-common</include>
+                                                       
<include>org.glassfish.jersey.media:jersey-media-json-jackson</include>
+                                                       
<include>org.glassfish.jersey.ext:jersey-entity-filtering</include>
+                                                       
<include>org.glassfish.jersey.inject:jersey-hk2</include>
+                                                       
<include>org.glassfish.hk2.external:jakarta.inject</include>
+                                                       
<include>org.glassfish.hk2:hk2</include>
+                                                       
<include>org.glassfish.hk2:hk2-utils</include>
+                                                       
<include>org.glassfish.hk2:hk2-api</include>
+                                                       
<include>org.glassfish.hk2:hk2-core</include>
+                                                       
<include>org.glassfish.hk2:hk2-locator</include>
+                                                       
<include>org.glassfish.hk2:hk2-runlevel</include>
+                                                       
<include>org.glassfish.hk2:class-model</include>
+                                                       
<include>javax.inject:javax.inject</include>
                                                </includes>
                                        </dependencySet>
                                </dependencySets>
diff --git a/distro/src/main/assembly/usersync.xml 
b/distro/src/main/assembly/usersync.xml
index 26d8005c6..c3c3236e0 100644
--- a/distro/src/main/assembly/usersync.xml
+++ b/distro/src/main/assembly/usersync.xml
@@ -83,6 +83,28 @@
                                                        
<include>org.slf4j:log4j-over-slf4j:jar:${${slf4j.version}}</include>
                                                        
<include>ch.qos.logback:logback-core:jar:${logback.version}</include>
                                                         
<include>org.apache.hadoop.thirdparty:hadoop-shaded-guava:jar:${hadoop-shaded-guava.version}</include>
+                                                       
<include>jakarta.ws.rs:jakarta.ws.rs-api</include>
+                                                       
<include>org.glassfish.jersey.core:jersey-client</include>
+                                                       
<include>org.glassfish.jersey.core:jersey-common</include>
+                                                       
<include>org.glassfish.jersey.media:jersey-media-json-jackson</include>
+                                                       
<include>org.glassfish.jersey.ext:jersey-entity-filtering</include>
+                                                       
<include>org.glassfish.jersey.inject:jersey-hk2</include>
+                                                       
<include>org.glassfish.hk2.external:jakarta.inject</include>
+                                                       
<include>org.glassfish.hk2:hk2</include>
+                                                       
<include>org.glassfish.hk2:hk2-utils</include>
+                                                       
<include>org.glassfish.hk2:hk2-api</include>
+                                                       
<include>org.glassfish.hk2:hk2-core</include>
+                                                       
<include>org.glassfish.hk2:hk2-locator</include>
+                                                       
<include>org.glassfish.hk2:hk2-runlevel</include>
+                                                       
<include>org.glassfish.hk2:class-model</include>
+                                                       
<include>javax.inject:javax.inject</include>
+                                                       
<include>javax.annotation:javax.annotation-api</include>
+                                                       
<include>javax.xml.bind:jaxb-api</include>
+                                                       
<include>jakarta.activation:jakarta.activation-api</include>
+                                                       
<include>org.glassfish.jaxb:jaxb-runtime</include>
+                                                       
<include>org.glassfish.jaxb:jaxb-core</include>
+                                                       
<include>org.glassfish.jaxb:txw2</include>
+                                                       
<include>com.sun.istack:istack-commons-runtime</include>
                                                </includes>
                                        </dependencySet>
                                        <dependencySet>
diff --git 
a/tagsync/src/main/java/org/apache/ranger/tagsync/sink/tagadmin/TagAdminRESTSink.java
 
b/tagsync/src/main/java/org/apache/ranger/tagsync/sink/tagadmin/TagAdminRESTSink.java
index 1b359c762..9746ff601 100644
--- 
a/tagsync/src/main/java/org/apache/ranger/tagsync/sink/tagadmin/TagAdminRESTSink.java
+++ 
b/tagsync/src/main/java/org/apache/ranger/tagsync/sink/tagadmin/TagAdminRESTSink.java
@@ -38,6 +38,7 @@
 import java.security.PrivilegedExceptionAction;
 import java.util.ArrayList;
 import java.util.List;
+import java.util.Map;
 import java.util.Properties;
 import java.util.concurrent.ArrayBlockingQueue;
 import java.util.concurrent.BlockingQueue;
@@ -322,21 +323,33 @@ private synchronized Response 
uploadTagsWithCred(ServiceTags serviceTags) {
                     sessionId = null; // Clear session on unauthorized
                     isValidRangerCookie = false;
                 } else if (response.getStatus() == HttpServletResponse.SC_OK 
|| response.getStatus() == HttpServletResponse.SC_NO_CONTENT) {
-                    List<NewCookie> respCookieList = new ArrayList<>();
-                    
response.getHeaders().get("Set-Cookie").forEach(headerValue -> {
-                        if 
(headerValue.toString().contains(rangerAdminCookieName)) {
-                            
respCookieList.add(NewCookie.valueOf(headerValue.toString()));
-                        }
-                    });
+                    Cookie                 newCookie = null;
+                    Map<String, NewCookie> cookieMap = response.getCookies();
+                    if (cookieMap != null && 
cookieMap.containsKey(rangerAdminCookieName)) {
+                        newCookie = cookieMap.get(rangerAdminCookieName);
+                    }
 
-                    // save cookie received from credentials session login
-                    for (NewCookie cookie : respCookieList) {
-                        if 
(cookie.getName().equalsIgnoreCase(rangerAdminCookieName)) {
-                            sessionId           = cookie.toCookie();
-                            isValidRangerCookie = true;
-                            break;
-                        } else {
-                            isValidRangerCookie = false;
+                    if (sessionId == null || newCookie != null) {
+                        sessionId = newCookie;
+                        isValidRangerCookie = true;
+                    } else {
+                        if (response.getHeaders().get("Set-Cookie") != null) {
+                            List<NewCookie> respCookieList = new ArrayList<>();
+                            
response.getHeaders().get("Set-Cookie").forEach(headerValue -> {
+                                if 
(headerValue.toString().contains(rangerAdminCookieName)) {
+                                    
respCookieList.add(NewCookie.valueOf(headerValue.toString()));
+                                }
+                            });
+                            // save cookie received from credentials session 
login
+                            for (NewCookie cookie : respCookieList) {
+                                if 
(cookie.getName().equalsIgnoreCase(rangerAdminCookieName)) {
+                                    sessionId           = cookie.toCookie();
+                                    isValidRangerCookie = true;
+                                    break;
+                                } else {
+                                    isValidRangerCookie = false;
+                                }
+                            }
                         }
                     }
                 }
@@ -365,21 +378,34 @@ private Response uploadTagsWithCookie(ServiceTags 
serviceTags) {
                 sessionId = null;
                 isValidRangerCookie = false;
             } else if (response.getStatus() == 
HttpServletResponse.SC_NO_CONTENT || response.getStatus() == 
HttpServletResponse.SC_OK) {
-                List<NewCookie> respCookieList = new ArrayList<>();
-                response.getHeaders().get("Set-Cookie").forEach(headerValue -> 
{
-                    if 
(headerValue.toString().contains(rangerAdminCookieName)) {
-                        
respCookieList.add(NewCookie.valueOf(headerValue.toString()));
-                    }
-                });
+                Cookie                 newCookie = null;
+                Map<String, NewCookie> cookieMap = response.getCookies();
+                if (cookieMap != null && 
cookieMap.containsKey(rangerAdminCookieName)) {
+                    newCookie = cookieMap.get(rangerAdminCookieName);
+                }
 
-                for (NewCookie respCookie : respCookieList) {
-                    if 
(respCookie.getName().equalsIgnoreCase(rangerAdminCookieName)) {
-                        if 
(!(sessionId.getValue().equalsIgnoreCase(respCookie.toCookie().getValue()))) {
-                            sessionId = respCookie.toCookie();
+                if (sessionId == null || newCookie != null) {
+                    sessionId = newCookie;
+                    isValidRangerCookie = true;
+                } else {
+                    if (response.getHeaders().get("Set-Cookie") != null) {
+                        List<NewCookie> respCookieList = new ArrayList<>();
+                        
response.getHeaders().get("Set-Cookie").forEach(headerValue -> {
+                            if 
(headerValue.toString().contains(rangerAdminCookieName)) {
+                                
respCookieList.add(NewCookie.valueOf(headerValue.toString()));
+                            }
+                        });
+                        // save cookie received from credentials session login
+                        for (NewCookie respCookie : respCookieList) {
+                            if 
(respCookie.getName().equalsIgnoreCase(rangerAdminCookieName)) {
+                                if 
(!(sessionId.getValue().equalsIgnoreCase(respCookie.toCookie().getValue()))) {
+                                    sessionId = respCookie.toCookie();
+                                }
+
+                                isValidRangerCookie = true;
+                                break;
+                            }
                         }
-
-                        isValidRangerCookie = true;
-                        break;
                     }
                 }
             } else if (response.getStatus() == 
HttpServletResponse.SC_NOT_FOUND) {
diff --git a/ugsync/pom.xml b/ugsync/pom.xml
index e4054f9a1..66255b5f0 100644
--- a/ugsync/pom.xml
+++ b/ugsync/pom.xml
@@ -103,11 +103,21 @@
             <artifactId>jakarta.xml.bind-api</artifactId>
             <version>${jakarta.xml.bind-api.version}</version>
         </dependency>
+        <dependency>
+            <groupId>javax.annotation</groupId>
+            <artifactId>javax.annotation-api</artifactId>
+            <version>${javax.annotation-api.version}</version>
+        </dependency>
         <dependency>
             <groupId>javax.inject</groupId>
             <artifactId>javax.inject</artifactId>
             <version>${javax.inject.version}</version>
         </dependency>
+        <dependency>
+            <groupId>javax.xml.bind</groupId>
+            <artifactId>jaxb-api</artifactId>
+            <version>${jaxb.api.version}</version>
+        </dependency>
         <dependency>
             <groupId>org.apache.commons</groupId>
             <artifactId>commons-configuration2</artifactId>
@@ -201,11 +211,36 @@
             <artifactId>jettison</artifactId>
             <version>${jettison.version}</version>
         </dependency>
+        <dependency>
+            <groupId>org.glassfish.hk2</groupId>
+            <artifactId>hk2-api</artifactId>
+            <version>${glassfish.hk2.version}</version>
+        </dependency>
+        <dependency>
+            <groupId>org.glassfish.hk2</groupId>
+            <artifactId>hk2-locator</artifactId>
+            <version>${glassfish.hk2.version}</version>
+        </dependency>
+        <dependency>
+            <groupId>org.glassfish.hk2</groupId>
+            <artifactId>hk2-utils</artifactId>
+            <version>${glassfish.hk2.version}</version>
+        </dependency>
+        <dependency>
+            <groupId>org.glassfish.jaxb</groupId>
+            <artifactId>jaxb-runtime</artifactId>
+            <version>${jaxb.api.version}</version>
+        </dependency>
         <dependency>
             <groupId>org.glassfish.jersey.core</groupId>
             <artifactId>jersey-client</artifactId>
             <version>${jersey-client.version}</version>
         </dependency>
+        <dependency>
+            <groupId>org.glassfish.jersey.inject</groupId>
+            <artifactId>jersey-hk2</artifactId>
+            <version>${jersey-client.version}</version>
+        </dependency>
         <dependency>
             <groupId>org.glassfish.jersey.media</groupId>
             <artifactId>jersey-media-json-jackson</artifactId>

Reply via email to