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>
