httpResponseMap;
try {
@@ -905,8 +906,7 @@ protected BatchRequestResponse performApiRequest(String relativeUri, String body
}*/
protected BatchRequestResponse performApiGetRequest(String relativeUri, boolean queryAllFields) {
- Client client = ClientBuilder.newClient();
- WebTarget target = client.target(relativeUri);
+ WebTarget target = extendApiResource(ambariWebResource, relativeUri);
if (queryAllFields) {
target = target.queryParam("fields", "*");
}
@@ -914,14 +914,14 @@ protected BatchRequestResponse performApiGetRequest(String relativeUri, boolean
try {
response = target.request().get();
} catch (Exception e) {
+ LOG.error("Exception occurred during API request to {}: {}", relativeUri, e.getMessage(), e);
response = null;
}
return convertToBatchRequestResponse(response);
}
protected BatchRequestResponse performApiRequest(String relativeUri, String body, String method, Integer userId) {
- Client client = ClientBuilder.newClient();
- WebTarget target = client.target(relativeUri);
+ WebTarget target = extendApiResource(ambariWebResource, relativeUri);
Response response;
try {
Invocation.Builder invocationBuilder = target.request().header(USER_ID_HEADER, userId);
@@ -937,6 +937,7 @@ protected BatchRequestResponse performApiRequest(String relativeUri, String body
throw new IllegalArgumentException("Invalid HTTP method: " + method);
}
} catch (Exception e) {
+ LOG.error("Exception occurred during API request to {}: {}", relativeUri, e.getMessage(), e);
response = null;
}
return convertToBatchRequestResponse(response);
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/security/AbstractSecurityHeaderFilter.java b/ambari-server/src/main/java/org/apache/ambari/server/security/AbstractSecurityHeaderFilter.java
index 4099612c4af..2b482d8c6c8 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/security/AbstractSecurityHeaderFilter.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/security/AbstractSecurityHeaderFilter.java
@@ -20,13 +20,13 @@
import java.io.IOException;
-import javax.servlet.Filter;
-import javax.servlet.FilterChain;
-import javax.servlet.FilterConfig;
-import javax.servlet.ServletException;
-import javax.servlet.ServletRequest;
-import javax.servlet.ServletResponse;
-import javax.servlet.http.HttpServletResponse;
+import jakarta.servlet.Filter;
+import jakarta.servlet.FilterChain;
+import jakarta.servlet.FilterConfig;
+import jakarta.servlet.ServletException;
+import jakarta.servlet.ServletRequest;
+import jakarta.servlet.ServletResponse;
+import jakarta.servlet.http.HttpServletResponse;
import org.apache.ambari.server.configuration.Configuration;
import org.apache.commons.lang.StringUtils;
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/security/AmbariEntryPoint.java b/ambari-server/src/main/java/org/apache/ambari/server/security/AmbariEntryPoint.java
index fcfdab1ddd8..25d60ff393d 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/security/AmbariEntryPoint.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/security/AmbariEntryPoint.java
@@ -19,9 +19,9 @@
import java.io.IOException;
-import javax.servlet.ServletException;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
+import jakarta.servlet.ServletException;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
import org.apache.ambari.server.configuration.Configuration;
import org.apache.ambari.server.security.authentication.kerberos.AmbariKerberosAuthenticationProperties;
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/security/AmbariServerSecurityHeaderFilter.java b/ambari-server/src/main/java/org/apache/ambari/server/security/AmbariServerSecurityHeaderFilter.java
index 8d093661e45..8f2ea864d53 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/security/AmbariServerSecurityHeaderFilter.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/security/AmbariServerSecurityHeaderFilter.java
@@ -18,7 +18,7 @@
package org.apache.ambari.server.security;
-import javax.servlet.ServletRequest;
+import jakarta.servlet.ServletRequest;
import org.apache.ambari.server.configuration.Configuration;
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/security/AmbariViewsSecurityHeaderFilter.java b/ambari-server/src/main/java/org/apache/ambari/server/security/AmbariViewsSecurityHeaderFilter.java
index 6b755fe2fdb..ed4762f38a7 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/security/AmbariViewsSecurityHeaderFilter.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/security/AmbariViewsSecurityHeaderFilter.java
@@ -18,7 +18,7 @@
package org.apache.ambari.server.security;
-import javax.servlet.ServletRequest;
+import jakarta.servlet.ServletRequest;
import org.apache.ambari.server.configuration.Configuration;
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/security/SecurityFilter.java b/ambari-server/src/main/java/org/apache/ambari/server/security/SecurityFilter.java
index a1befa7d5ae..7b31e685c67 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/security/SecurityFilter.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/security/SecurityFilter.java
@@ -22,13 +22,13 @@
import java.net.URL;
import java.util.regex.Pattern;
-import javax.servlet.Filter;
-import javax.servlet.FilterChain;
-import javax.servlet.FilterConfig;
-import javax.servlet.ServletException;
-import javax.servlet.ServletRequest;
-import javax.servlet.ServletResponse;
-import javax.servlet.http.HttpServletRequest;
+import jakarta.servlet.Filter;
+import jakarta.servlet.FilterChain;
+import jakarta.servlet.FilterConfig;
+import jakarta.servlet.ServletException;
+import jakarta.servlet.ServletRequest;
+import jakarta.servlet.ServletResponse;
+import jakarta.servlet.http.HttpServletRequest;
import org.apache.ambari.server.configuration.Configuration;
import org.slf4j.Logger;
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/security/authentication/AmbariAuthenticationEventHandler.java b/ambari-server/src/main/java/org/apache/ambari/server/security/authentication/AmbariAuthenticationEventHandler.java
index 037fc13c23a..266a998d40b 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/security/authentication/AmbariAuthenticationEventHandler.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/security/authentication/AmbariAuthenticationEventHandler.java
@@ -18,10 +18,10 @@
package org.apache.ambari.server.security.authentication;
-import javax.servlet.ServletRequest;
-import javax.servlet.ServletResponse;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
+import jakarta.servlet.ServletRequest;
+import jakarta.servlet.ServletResponse;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
import org.springframework.security.core.Authentication;
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/security/authentication/AmbariAuthenticationEventHandlerImpl.java b/ambari-server/src/main/java/org/apache/ambari/server/security/authentication/AmbariAuthenticationEventHandlerImpl.java
index 42cc835729a..18d0c1b3211 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/security/authentication/AmbariAuthenticationEventHandlerImpl.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/security/authentication/AmbariAuthenticationEventHandlerImpl.java
@@ -18,10 +18,10 @@
package org.apache.ambari.server.security.authentication;
-import javax.servlet.ServletRequest;
-import javax.servlet.ServletResponse;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
+import jakarta.servlet.ServletRequest;
+import jakarta.servlet.ServletResponse;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
import org.apache.ambari.server.audit.AuditLogger;
import org.apache.ambari.server.audit.event.AuditEvent;
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/security/authentication/AmbariAuthenticationFilter.java b/ambari-server/src/main/java/org/apache/ambari/server/security/authentication/AmbariAuthenticationFilter.java
index f5d5617f674..fd54c2ea762 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/security/authentication/AmbariAuthenticationFilter.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/security/authentication/AmbariAuthenticationFilter.java
@@ -18,11 +18,11 @@
package org.apache.ambari.server.security.authentication;
-import javax.servlet.Filter;
-import javax.servlet.FilterChain;
-import javax.servlet.ServletRequest;
-import javax.servlet.ServletResponse;
-import javax.servlet.http.HttpServletRequest;
+import jakarta.servlet.Filter;
+import jakarta.servlet.FilterChain;
+import jakarta.servlet.ServletRequest;
+import jakarta.servlet.ServletResponse;
+import jakarta.servlet.http.HttpServletRequest;
/**
* AmbariAuthenticationFilter is a {@link Filter} interface to be implemented
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/security/authentication/AmbariBasicAuthenticationFilter.java b/ambari-server/src/main/java/org/apache/ambari/server/security/authentication/AmbariBasicAuthenticationFilter.java
index f7936a1eddd..46d3556de7c 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/security/authentication/AmbariBasicAuthenticationFilter.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/security/authentication/AmbariBasicAuthenticationFilter.java
@@ -19,10 +19,10 @@
import java.io.IOException;
-import javax.servlet.FilterChain;
-import javax.servlet.ServletException;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
+import jakarta.servlet.FilterChain;
+import jakarta.servlet.ServletException;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
import org.apache.ambari.server.security.AmbariEntryPoint;
import org.apache.ambari.server.utils.RequestUtils;
@@ -130,7 +130,6 @@ public boolean shouldIncrementFailureCount() {
* @throws IOException
* @throws ServletException
*/
- @Override
public void doFilterInternal(HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse, FilterChain filterChain) throws IOException, ServletException {
if (eventHandler != null) {
eventHandler.beforeAttemptAuthentication(this, httpServletRequest, httpServletResponse);
@@ -215,4 +214,6 @@ private String getUsernameFromAuth(String authenticationValue, String charSet) t
return token.substring(0, delimiter);
}
}
+
+
}
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/security/authentication/AmbariDelegatingAuthenticationFilter.java b/ambari-server/src/main/java/org/apache/ambari/server/security/authentication/AmbariDelegatingAuthenticationFilter.java
index c494995ee50..e48f0198c85 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/security/authentication/AmbariDelegatingAuthenticationFilter.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/security/authentication/AmbariDelegatingAuthenticationFilter.java
@@ -21,13 +21,13 @@
import java.util.Collection;
import java.util.Collections;
-import javax.servlet.Filter;
-import javax.servlet.FilterChain;
-import javax.servlet.FilterConfig;
-import javax.servlet.ServletException;
-import javax.servlet.ServletRequest;
-import javax.servlet.ServletResponse;
-import javax.servlet.http.HttpServletRequest;
+import jakarta.servlet.Filter;
+import jakarta.servlet.FilterChain;
+import jakarta.servlet.FilterConfig;
+import jakarta.servlet.ServletException;
+import jakarta.servlet.ServletRequest;
+import jakarta.servlet.ServletResponse;
+import jakarta.servlet.http.HttpServletRequest;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/security/authentication/RequestBodyCachingFilter.java b/ambari-server/src/main/java/org/apache/ambari/server/security/authentication/RequestBodyCachingFilter.java
new file mode 100644
index 00000000000..cc3f0aa72a3
--- /dev/null
+++ b/ambari-server/src/main/java/org/apache/ambari/server/security/authentication/RequestBodyCachingFilter.java
@@ -0,0 +1,104 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.ambari.server.security.authentication;
+
+import java.io.BufferedReader;
+import java.io.ByteArrayInputStream;
+import java.io.IOException;
+import java.io.InputStream;
+import java.io.InputStreamReader;
+
+import jakarta.servlet.Filter;
+import jakarta.servlet.FilterChain;
+import jakarta.servlet.ReadListener;
+import jakarta.servlet.ServletException;
+import jakarta.servlet.ServletInputStream;
+import jakarta.servlet.ServletRequest;
+import jakarta.servlet.ServletResponse;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletRequestWrapper;
+
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+
+public class RequestBodyCachingFilter implements Filter {
+ private static final Logger LOG = LoggerFactory.getLogger(RequestBodyCachingFilter.class);
+ @Override
+ public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain)
+ throws IOException, ServletException {
+ if (request instanceof HttpServletRequest) {
+ HttpServletRequest httpRequest = (HttpServletRequest) request;
+ HttpServletRequestWrapper wrappedRequest = new CachedBodyHttpServletRequest(httpRequest);
+ chain.doFilter(wrappedRequest, response);
+ } else {
+ chain.doFilter(request, response);
+ }
+ }
+
+ private static class CachedBodyHttpServletRequest extends HttpServletRequestWrapper {
+
+ private byte[] cachedBody;
+
+ public CachedBodyHttpServletRequest(HttpServletRequest request) throws IOException {
+ super(request);
+ InputStream requestInputStream = request.getInputStream();
+ this.cachedBody = requestInputStream.readAllBytes();
+ }
+
+ @Override
+ public ServletInputStream getInputStream() throws IOException {
+ return new CachedBodyServletInputStream(this.cachedBody);
+ }
+
+ @Override
+ public BufferedReader getReader() throws IOException {
+ ByteArrayInputStream byteArrayInputStream = new ByteArrayInputStream(this.cachedBody);
+ return new BufferedReader(new InputStreamReader(byteArrayInputStream));
+ }
+ }
+
+ private static class CachedBodyServletInputStream extends ServletInputStream {
+
+ private final ByteArrayInputStream byteArrayInputStream;
+
+ public CachedBodyServletInputStream(byte[] cachedBody) {
+ this.byteArrayInputStream = new ByteArrayInputStream(cachedBody);
+ }
+
+ @Override
+ public boolean isFinished() {
+ return byteArrayInputStream.available() == 0;
+ }
+
+ @Override
+ public boolean isReady() {
+ return true;
+ }
+
+ @Override
+ public void setReadListener(ReadListener readListener) {
+ throw new UnsupportedOperationException();
+ }
+
+ @Override
+ public int read() throws IOException {
+ return byteArrayInputStream.read();
+ }
+ }
+}
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/security/authentication/jwt/AmbariJwtAuthenticationFilter.java b/ambari-server/src/main/java/org/apache/ambari/server/security/authentication/jwt/AmbariJwtAuthenticationFilter.java
index 67e060c8ba1..bd29bebf031 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/security/authentication/jwt/AmbariJwtAuthenticationFilter.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/security/authentication/jwt/AmbariJwtAuthenticationFilter.java
@@ -24,14 +24,14 @@
import java.util.Date;
import java.util.List;
-import javax.servlet.FilterChain;
-import javax.servlet.FilterConfig;
-import javax.servlet.ServletException;
-import javax.servlet.ServletRequest;
-import javax.servlet.ServletResponse;
-import javax.servlet.http.Cookie;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
+import jakarta.servlet.FilterChain;
+import jakarta.servlet.FilterConfig;
+import jakarta.servlet.ServletException;
+import jakarta.servlet.ServletRequest;
+import jakarta.servlet.ServletResponse;
+import jakarta.servlet.http.Cookie;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
import org.apache.ambari.server.configuration.AmbariServerConfigurationKey;
import org.apache.ambari.server.security.authentication.AmbariAuthenticationEventHandler;
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/security/authentication/kerberos/AmbariKerberosAuthenticationFilter.java b/ambari-server/src/main/java/org/apache/ambari/server/security/authentication/kerberos/AmbariKerberosAuthenticationFilter.java
index 5e34c2e7d9b..6304ea38677 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/security/authentication/kerberos/AmbariKerberosAuthenticationFilter.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/security/authentication/kerberos/AmbariKerberosAuthenticationFilter.java
@@ -20,12 +20,10 @@
import java.io.IOException;
-import javax.servlet.FilterChain;
-import javax.servlet.ServletException;
-import javax.servlet.ServletRequest;
-import javax.servlet.ServletResponse;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
+import jakarta.servlet.FilterChain;
+import jakarta.servlet.ServletException;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
import org.apache.ambari.server.audit.AuditLogger;
import org.apache.ambari.server.configuration.Configuration;
@@ -153,25 +151,13 @@ public boolean shouldIncrementFailureCount() {
return false;
}
- /**
- * Performs the logic for this filter.
- *
- * Checks whether the authentication information is filled. If it is not, then a login failed audit event is logged.
- *
- * Then, forwards the workflow to {@link SpnegoAuthenticationProcessingFilter#doFilter(ServletRequest, ServletResponse, FilterChain)}
- *
- * @param servletRequest the request
- * @param servletResponse the response
- * @param filterChain the Spring filter chain
- * @throws IOException
- * @throws ServletException
- */
@Override
- public void doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain filterChain) throws IOException, ServletException {
+ protected void doFilterInternal(HttpServletRequest request, HttpServletResponse response, FilterChain filterChain)
+ throws ServletException, IOException {
if (eventHandler != null) {
- eventHandler.beforeAttemptAuthentication(AmbariKerberosAuthenticationFilter.this, servletRequest, servletResponse);
+ eventHandler.beforeAttemptAuthentication(this, request, response);
}
- super.doFilter(servletRequest, servletResponse, filterChain);
+ super.doFilter(request, response, filterChain);
}
}
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/security/authentication/kerberos/AmbariKerberosAuthenticationProvider.java b/ambari-server/src/main/java/org/apache/ambari/server/security/authentication/kerberos/AmbariKerberosAuthenticationProvider.java
index bf5566e4b3c..4112913506f 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/security/authentication/kerberos/AmbariKerberosAuthenticationProvider.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/security/authentication/kerberos/AmbariKerberosAuthenticationProvider.java
@@ -18,7 +18,7 @@
package org.apache.ambari.server.security.authentication.kerberos;
-import javax.inject.Inject;
+import jakarta.inject.Inject;
import org.apache.ambari.server.security.authentication.AmbariProxiedUserDetailsImpl;
import org.apache.ambari.server.security.authentication.tproxy.TrustedProxyAuthenticationDetails;
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/security/authentication/kerberos/AmbariProxiedUserDetailsService.java b/ambari-server/src/main/java/org/apache/ambari/server/security/authentication/kerberos/AmbariProxiedUserDetailsService.java
index 0d11a3c063b..199d8e4b830 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/security/authentication/kerberos/AmbariProxiedUserDetailsService.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/security/authentication/kerberos/AmbariProxiedUserDetailsService.java
@@ -27,7 +27,7 @@
import java.util.regex.Matcher;
import java.util.regex.Pattern;
-import javax.inject.Inject;
+import jakarta.inject.Inject;
import org.apache.ambari.server.configuration.Configuration;
import org.apache.ambari.server.orm.entities.GroupEntity;
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/security/authentication/pam/PamAuthenticationFactory.java b/ambari-server/src/main/java/org/apache/ambari/server/security/authentication/pam/PamAuthenticationFactory.java
index 791f055377e..ebd664d1e8e 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/security/authentication/pam/PamAuthenticationFactory.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/security/authentication/pam/PamAuthenticationFactory.java
@@ -18,7 +18,7 @@
package org.apache.ambari.server.security.authentication.pam;
-import javax.inject.Singleton;
+import jakarta.inject.Singleton;
import org.apache.ambari.server.configuration.Configuration;
import org.jvnet.libpam.PAM;
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/security/authentication/tproxy/TrustedProxyAuthenticationDetails.java b/ambari-server/src/main/java/org/apache/ambari/server/security/authentication/tproxy/TrustedProxyAuthenticationDetails.java
index b254e667d22..9386894708b 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/security/authentication/tproxy/TrustedProxyAuthenticationDetails.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/security/authentication/tproxy/TrustedProxyAuthenticationDetails.java
@@ -18,7 +18,7 @@
package org.apache.ambari.server.security.authentication.tproxy;
-import javax.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletRequest;
import org.apache.ambari.server.utils.RequestUtils;
import org.springframework.security.web.authentication.WebAuthenticationDetails;
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/security/authentication/tproxy/TrustedProxyAuthenticationDetailsSource.java b/ambari-server/src/main/java/org/apache/ambari/server/security/authentication/tproxy/TrustedProxyAuthenticationDetailsSource.java
index 3f0af651c80..677e5fef1f6 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/security/authentication/tproxy/TrustedProxyAuthenticationDetailsSource.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/security/authentication/tproxy/TrustedProxyAuthenticationDetailsSource.java
@@ -18,7 +18,7 @@
package org.apache.ambari.server.security.authentication.tproxy;
-import javax.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletRequest;
import org.springframework.security.authentication.AuthenticationDetailsSource;
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/security/authorization/AmbariAuthorizationFilter.java b/ambari-server/src/main/java/org/apache/ambari/server/security/authorization/AmbariAuthorizationFilter.java
index c37bf02a2df..690ec790980 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/security/authorization/AmbariAuthorizationFilter.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/security/authorization/AmbariAuthorizationFilter.java
@@ -23,14 +23,14 @@
import java.util.EnumSet;
import java.util.regex.Pattern;
-import javax.servlet.Filter;
-import javax.servlet.FilterChain;
-import javax.servlet.FilterConfig;
-import javax.servlet.ServletException;
-import javax.servlet.ServletRequest;
-import javax.servlet.ServletResponse;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
+import jakarta.servlet.Filter;
+import jakarta.servlet.FilterChain;
+import jakarta.servlet.FilterConfig;
+import jakarta.servlet.ServletException;
+import jakarta.servlet.ServletRequest;
+import jakarta.servlet.ServletResponse;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
import org.apache.ambari.server.audit.AuditLogger;
import org.apache.ambari.server.audit.event.AccessUnauthorizedAuditEvent;
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/security/authorization/AmbariUserAuthorizationFilter.java b/ambari-server/src/main/java/org/apache/ambari/server/security/authorization/AmbariUserAuthorizationFilter.java
index 74394e49a34..8fdcf255bec 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/security/authorization/AmbariUserAuthorizationFilter.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/security/authorization/AmbariUserAuthorizationFilter.java
@@ -20,14 +20,14 @@
import java.io.IOException;
-import javax.servlet.Filter;
-import javax.servlet.FilterChain;
-import javax.servlet.FilterConfig;
-import javax.servlet.ServletException;
-import javax.servlet.ServletRequest;
-import javax.servlet.ServletResponse;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
+import jakarta.servlet.Filter;
+import jakarta.servlet.FilterChain;
+import jakarta.servlet.FilterConfig;
+import jakarta.servlet.ServletException;
+import jakarta.servlet.ServletRequest;
+import jakarta.servlet.ServletResponse;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
import org.apache.ambari.server.orm.entities.UserEntity;
import org.apache.ambari.server.scheduler.ExecutionScheduleManager;
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/security/authorization/AuthorizationHelper.java b/ambari-server/src/main/java/org/apache/ambari/server/security/authorization/AuthorizationHelper.java
index c5d22fbcfb5..6659435df55 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/security/authorization/AuthorizationHelper.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/security/authorization/AuthorizationHelper.java
@@ -220,40 +220,44 @@ public static boolean isAuthorized(Authentication authentication, ResourceType r
// If the user has at least one authorization that exists in the set of required authorizations,
// that user is authorized to perform the operation.
for (GrantedAuthority grantedAuthority : authentication.getAuthorities()) {
- AmbariGrantedAuthority ambariGrantedAuthority = (AmbariGrantedAuthority) grantedAuthority;
- PrivilegeEntity privilegeEntity = ambariGrantedAuthority.getPrivilegeEntity();
- ResourceEntity privilegeResource = privilegeEntity.getResource();
- ResourceType privilegeResourceType = ResourceType.translate(privilegeResource.getResourceType().getName());
- boolean resourceOK;
-
- if (ResourceType.AMBARI == privilegeResourceType) {
- // This resource type indicates administrative access
- resourceOK = true;
- } else if ((resourceType == null) || (resourceType == privilegeResourceType)) {
- resourceOK = (resourceId == null) || resourceId.equals(privilegeResource.getId());
- } else {
- resourceOK = false;
- }
+ if (grantedAuthority instanceof AmbariGrantedAuthority) {
+ AmbariGrantedAuthority ambariGrantedAuthority = (AmbariGrantedAuthority) grantedAuthority;
+ PrivilegeEntity privilegeEntity = ambariGrantedAuthority.getPrivilegeEntity();
+ ResourceEntity privilegeResource = privilegeEntity.getResource();
+ ResourceType privilegeResourceType = ResourceType.translate(privilegeResource.getResourceType().getName());
+ boolean resourceOK;
+
+ if (ResourceType.AMBARI == privilegeResourceType) {
+ // This resource type indicates administrative access
+ resourceOK = true;
+ } else if ((resourceType == null) || (resourceType == privilegeResourceType)) {
+ resourceOK = (resourceId == null) || resourceId.equals(privilegeResource.getId());
+ } else {
+ resourceOK = false;
+ }
- // The the authority is for the relevant resource, see if one of the authorizations matches
- // one of the required authorizations...
- if (resourceOK) {
- PermissionEntity permission = privilegeEntity.getPermission();
- Collection userAuthorizations = (permission == null)
- ? null
- : permission.getAuthorizations();
-
- if (userAuthorizations != null) {
- for (RoleAuthorizationEntity userAuthorization : userAuthorizations) {
- try {
- if (requiredAuthorizations.contains(RoleAuthorization.translate(userAuthorization.getAuthorizationId()))) {
- return true;
+ // The the authority is for the relevant resource, see if one of the authorizations matches
+ // one of the required authorizations...
+ if (resourceOK) {
+ PermissionEntity permission = privilegeEntity.getPermission();
+ Collection userAuthorizations = (permission == null)
+ ? null
+ : permission.getAuthorizations();
+
+ if (userAuthorizations != null) {
+ for (RoleAuthorizationEntity userAuthorization : userAuthorizations) {
+ try {
+ if (requiredAuthorizations.contains(RoleAuthorization.translate(userAuthorization.getAuthorizationId()))) {
+ return true;
+ }
+ } catch (IllegalArgumentException e) {
+ LOG.warn("Invalid authorization name, '{}'... ignoring.", userAuthorization.getAuthorizationId());
}
- } catch (IllegalArgumentException e) {
- LOG.warn("Invalid authorization name, '{}'... ignoring.", userAuthorization.getAuthorizationId());
}
}
}
+ }else {
+ LOG.warn("GrantedAuthority is not an instance of AmbariGrantedAuthority. Ignoring.");
}
}
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/security/authorization/Users.java b/ambari-server/src/main/java/org/apache/ambari/server/security/authorization/Users.java
index 9e0650bb58d..89ae99364b2 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/security/authorization/Users.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/security/authorization/Users.java
@@ -30,8 +30,8 @@
import java.util.Set;
import java.util.regex.Pattern;
-import javax.persistence.EntityManager;
-import javax.persistence.OptimisticLockException;
+import jakarta.persistence.EntityManager;
+import jakarta.persistence.OptimisticLockException;
import org.apache.ambari.server.AmbariException;
import org.apache.ambari.server.configuration.Configuration;
@@ -1266,7 +1266,7 @@ public synchronized void modifyAuthentication(UserAuthenticationEntity userAuthe
userAuthenticationEntity.updateAuthenticationKey(passwordEncoder.encode(newKey), configuration.getPasswordPolicyHistoryCount());
} else {
// If we get here the authenticated user is authorized to change the key for the subject.
- userAuthenticationEntity.updateAuthenticationKey(newKey, configuration.getPasswordPolicyHistoryCount());
+ userAuthenticationEntity.setAuthenticationKey(newKey);
}
userAuthenticationDAO.merge(userAuthenticationEntity);
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/security/authorization/internal/InternalTokenClientFilter.java b/ambari-server/src/main/java/org/apache/ambari/server/security/authorization/internal/InternalTokenClientFilter.java
index c37915ee138..4c747a51547 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/security/authorization/internal/InternalTokenClientFilter.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/security/authorization/internal/InternalTokenClientFilter.java
@@ -20,8 +20,8 @@
import java.io.IOException;
-import javax.ws.rs.client.ClientRequestContext;
-import javax.ws.rs.client.ClientRequestFilter;
+import jakarta.ws.rs.client.ClientRequestContext;
+import jakarta.ws.rs.client.ClientRequestFilter;
import com.google.inject.Inject;
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/security/encryption/AESEncryptionService.java b/ambari-server/src/main/java/org/apache/ambari/server/security/encryption/AESEncryptionService.java
index effaddb06ab..48812dc0f2f 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/security/encryption/AESEncryptionService.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/security/encryption/AESEncryptionService.java
@@ -22,7 +22,7 @@
import java.io.UnsupportedEncodingException;
import java.nio.charset.StandardCharsets;
-import javax.inject.Inject;
+import jakarta.inject.Inject;
import org.apache.ambari.server.configuration.Configuration;
import org.apache.ambari.server.utils.TextEncoding;
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/security/unsecured/rest/CertificateDownload.java b/ambari-server/src/main/java/org/apache/ambari/server/security/unsecured/rest/CertificateDownload.java
index 43a9106031b..3911e67beac 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/security/unsecured/rest/CertificateDownload.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/security/unsecured/rest/CertificateDownload.java
@@ -17,10 +17,10 @@
*/
package org.apache.ambari.server.security.unsecured.rest;
-import javax.ws.rs.GET;
-import javax.ws.rs.Path;
-import javax.ws.rs.Produces;
-import javax.ws.rs.core.MediaType;
+import jakarta.ws.rs.GET;
+import jakarta.ws.rs.Path;
+import jakarta.ws.rs.Produces;
+import jakarta.ws.rs.core.MediaType;
import org.apache.ambari.annotations.ApiIgnore;
import org.apache.ambari.server.security.CertificateManager;
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/security/unsecured/rest/CertificateSign.java b/ambari-server/src/main/java/org/apache/ambari/server/security/unsecured/rest/CertificateSign.java
index bfc3f3a13df..2a9a00247fa 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/security/unsecured/rest/CertificateSign.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/security/unsecured/rest/CertificateSign.java
@@ -17,14 +17,14 @@
*/
package org.apache.ambari.server.security.unsecured.rest;
-import javax.servlet.http.HttpServletRequest;
-import javax.ws.rs.Consumes;
-import javax.ws.rs.POST;
-import javax.ws.rs.Path;
-import javax.ws.rs.PathParam;
-import javax.ws.rs.Produces;
-import javax.ws.rs.core.Context;
-import javax.ws.rs.core.MediaType;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.ws.rs.Consumes;
+import jakarta.ws.rs.POST;
+import jakarta.ws.rs.Path;
+import jakarta.ws.rs.PathParam;
+import jakarta.ws.rs.Produces;
+import jakarta.ws.rs.core.Context;
+import jakarta.ws.rs.core.MediaType;
import org.apache.ambari.annotations.ApiIgnore;
import org.apache.ambari.server.security.CertificateManager;
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/security/unsecured/rest/ConnectionInfo.java b/ambari-server/src/main/java/org/apache/ambari/server/security/unsecured/rest/ConnectionInfo.java
index 2ab4639e88d..452f2f6b9b9 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/security/unsecured/rest/ConnectionInfo.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/security/unsecured/rest/ConnectionInfo.java
@@ -20,10 +20,10 @@
import java.util.HashMap;
import java.util.Map;
-import javax.ws.rs.GET;
-import javax.ws.rs.Path;
-import javax.ws.rs.Produces;
-import javax.ws.rs.core.MediaType;
+import jakarta.ws.rs.GET;
+import jakarta.ws.rs.Path;
+import jakarta.ws.rs.Produces;
+import jakarta.ws.rs.core.MediaType;
import org.apache.ambari.annotations.ApiIgnore;
import org.apache.ambari.server.configuration.Configuration;
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/serveraction/users/CsvFilePersisterService.java b/ambari-server/src/main/java/org/apache/ambari/server/serveraction/users/CsvFilePersisterService.java
index 5c869e01bfb..a4501b736a9 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/serveraction/users/CsvFilePersisterService.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/serveraction/users/CsvFilePersisterService.java
@@ -31,7 +31,7 @@
import java.util.Map;
import java.util.Set;
-import javax.inject.Inject;
+import jakarta.inject.Inject;
import org.apache.commons.csv.CSVFormat;
import org.apache.commons.csv.CSVPrinter;
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/serveraction/users/PostUserCreationHookServerAction.java b/ambari-server/src/main/java/org/apache/ambari/server/serveraction/users/PostUserCreationHookServerAction.java
index 17c55ba1895..1ac366488c6 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/serveraction/users/PostUserCreationHookServerAction.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/serveraction/users/PostUserCreationHookServerAction.java
@@ -24,8 +24,8 @@
import java.util.Map;
import java.util.concurrent.ConcurrentMap;
-import javax.inject.Inject;
-import javax.inject.Singleton;
+import jakarta.inject.Inject;
+import jakarta.inject.Singleton;
import org.apache.ambari.server.AmbariException;
import org.apache.ambari.server.actionmanager.HostRoleStatus;
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/serveraction/users/ShellCommandUtilityCallable.java b/ambari-server/src/main/java/org/apache/ambari/server/serveraction/users/ShellCommandUtilityCallable.java
index 18cfe5d03b6..778ed67ead5 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/serveraction/users/ShellCommandUtilityCallable.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/serveraction/users/ShellCommandUtilityCallable.java
@@ -20,7 +20,7 @@
import java.util.concurrent.Callable;
-import javax.inject.Singleton;
+import jakarta.inject.Singleton;
import org.apache.ambari.server.utils.ShellCommandUtil;
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/serveraction/users/ShellCommandUtilityWrapper.java b/ambari-server/src/main/java/org/apache/ambari/server/serveraction/users/ShellCommandUtilityWrapper.java
index 4ab1e6d39cb..79b81cef24c 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/serveraction/users/ShellCommandUtilityWrapper.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/serveraction/users/ShellCommandUtilityWrapper.java
@@ -21,8 +21,8 @@
import java.io.IOException;
import java.util.Map;
-import javax.inject.Inject;
-import javax.inject.Singleton;
+import jakarta.inject.Inject;
+import jakarta.inject.Singleton;
import org.apache.ambari.server.utils.ShellCommandUtil;
import org.slf4j.Logger;
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/stack/ThemeModule.java b/ambari-server/src/main/java/org/apache/ambari/server/stack/ThemeModule.java
index ed13ea9fb0b..17015cfd33a 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/stack/ThemeModule.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/stack/ThemeModule.java
@@ -58,7 +58,10 @@ public ThemeModule(File themeFile, ThemeInfo moduleInfo) {
try {
reader = new FileReader(themeFile);
} catch (FileNotFoundException e) {
- LOG.error("Theme file not found");
+ LOG.error("Theme file not found: {}", themeFile.getAbsolutePath());
+ setValid(false);
+ addError("Theme file not found: " + themeFile.getAbsolutePath());
+ return;
}
try {
Theme theme = mapper.readValue(reader, Theme.class);
@@ -70,6 +73,14 @@ public ThemeModule(File themeFile, ThemeInfo moduleInfo) {
LOG.error("Unable to parse theme file ", e);
setValid(false);
addError("Unable to parse theme file " + themeFile);
+ } finally {
+ if (reader != null) {
+ try {
+ reader.close();
+ } catch (IOException e) {
+ LOG.warn("Failed to close theme file reader", e);
+ }
+ }
}
}
}
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/state/StackInfo.java b/ambari-server/src/main/java/org/apache/ambari/server/state/StackInfo.java
index ec541e76e2f..ca89f6c7163 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/state/StackInfo.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/state/StackInfo.java
@@ -513,27 +513,44 @@ public Map getRequiredProperties() {
}
public Map> getConfigPropertiesTypes(String configType) {
- if(!propertiesTypesCache.containsKey(configType)) {
+ if (!propertiesTypesCache.containsKey(configType)) {
Map> propertiesTypes = new HashMap<>();
+
+ collectPropertyTypes(propertiesTypes, getProperties(), configType);
+
Collection services = getServices();
for (ServiceInfo serviceInfo : services) {
- for (PropertyInfo propertyInfo : serviceInfo.getProperties()) {
- if (propertyInfo.getFilename().contains(configType) && !propertyInfo.getPropertyTypes().isEmpty()) {
- Set types = propertyInfo.getPropertyTypes();
- for (PropertyInfo.PropertyType propertyType : types) {
- if (!propertiesTypes.containsKey(propertyType)) {
- propertiesTypes.put(propertyType, new HashSet<>());
- }
- propertiesTypes.get(propertyType).add(propertyInfo.getName());
- }
- }
- }
+ collectPropertyTypes(propertiesTypes, serviceInfo.getProperties(), configType);
}
propertiesTypesCache.put(configType, propertiesTypes);
}
return propertiesTypesCache.get(configType);
}
+ private void collectPropertyTypes(Map> target,
+ Collection sources,
+ String configType) {
+ if (sources == null) {
+ return;
+ }
+
+ for (PropertyInfo propertyInfo : sources) {
+ String filename = propertyInfo.getFilename();
+ if (filename == null || !filename.contains(configType)) {
+ continue;
+ }
+
+ Set types = propertyInfo.getPropertyTypes();
+ if (types == null || types.isEmpty()) {
+ continue;
+ }
+
+ for (PropertyInfo.PropertyType propertyType : types) {
+ target.computeIfAbsent(propertyType, key -> new HashSet<>()).add(propertyInfo.getName());
+ }
+ }
+ }
+
/**
* Return default config attributes for specified config type.
* @param configType config type
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/state/cluster/ClusterImpl.java b/ambari-server/src/main/java/org/apache/ambari/server/state/cluster/ClusterImpl.java
index 37970acbff8..c4eb82176ad 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/state/cluster/ClusterImpl.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/state/cluster/ClusterImpl.java
@@ -44,8 +44,9 @@
import java.util.stream.Collectors;
import javax.annotation.Nullable;
-import javax.persistence.EntityManager;
-import javax.persistence.RollbackException;
+
+import jakarta.persistence.EntityManager;
+import jakarta.persistence.RollbackException;
import org.apache.ambari.annotations.Experimental;
import org.apache.ambari.annotations.ExperimentalFeature;
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/state/cluster/ClustersImpl.java b/ambari-server/src/main/java/org/apache/ambari/server/state/cluster/ClustersImpl.java
index d8d91313720..10497e100ae 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/state/cluster/ClustersImpl.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/state/cluster/ClustersImpl.java
@@ -31,7 +31,7 @@
import java.util.concurrent.ConcurrentHashMap;
import java.util.concurrent.CopyOnWriteArrayList;
-import javax.persistence.RollbackException;
+import jakarta.persistence.RollbackException;
import org.apache.ambari.server.AmbariException;
import org.apache.ambari.server.AmbariRuntimeException;
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/topology/AmbariContext.java b/ambari-server/src/main/java/org/apache/ambari/server/topology/AmbariContext.java
index e6b778c67a2..8c06f83ce4d 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/topology/AmbariContext.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/topology/AmbariContext.java
@@ -34,7 +34,8 @@
import java.util.concurrent.locks.Lock;
import javax.annotation.Nullable;
-import javax.inject.Inject;
+
+import jakarta.inject.Inject;
import org.apache.ambari.server.AmbariException;
import org.apache.ambari.server.ClusterNotFoundException;
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/topology/PersistedStateImpl.java b/ambari-server/src/main/java/org/apache/ambari/server/topology/PersistedStateImpl.java
index bb1f85234d7..d659e985f39 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/topology/PersistedStateImpl.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/topology/PersistedStateImpl.java
@@ -24,7 +24,7 @@
import java.util.List;
import java.util.Map;
-import javax.inject.Singleton;
+import jakarta.inject.Singleton;
import org.apache.ambari.server.AmbariException;
import org.apache.ambari.server.actionmanager.HostRoleCommand;
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/topology/TopologyManager.java b/ambari-server/src/main/java/org/apache/ambari/server/topology/TopologyManager.java
index b0cb3c2d16e..fc793359f8a 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/topology/TopologyManager.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/topology/TopologyManager.java
@@ -36,7 +36,7 @@
import java.util.concurrent.TimeUnit;
import java.util.concurrent.TimeoutException;
-import javax.inject.Inject;
+import jakarta.inject.Inject;
import org.apache.ambari.server.AmbariException;
import org.apache.ambari.server.actionmanager.HostRoleCommand;
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/topology/addservice/AddServiceOrchestrator.java b/ambari-server/src/main/java/org/apache/ambari/server/topology/addservice/AddServiceOrchestrator.java
index 6eed1af11dd..65e658eb58f 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/topology/addservice/AddServiceOrchestrator.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/topology/addservice/AddServiceOrchestrator.java
@@ -22,8 +22,8 @@
import java.util.Optional;
import java.util.Set;
-import javax.inject.Inject;
-import javax.inject.Singleton;
+import jakarta.inject.Inject;
+import jakarta.inject.Singleton;
import org.apache.ambari.server.AmbariException;
import org.apache.ambari.server.actionmanager.ActionManager;
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/topology/addservice/RequestValidator.java b/ambari-server/src/main/java/org/apache/ambari/server/topology/addservice/RequestValidator.java
index 5ccd3b61005..ebf80f9d1f8 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/topology/addservice/RequestValidator.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/topology/addservice/RequestValidator.java
@@ -31,7 +31,7 @@
import java.util.TreeSet;
import java.util.concurrent.atomic.AtomicBoolean;
-import javax.inject.Inject;
+import jakarta.inject.Inject;
import org.apache.ambari.server.AmbariException;
import org.apache.ambari.server.actionmanager.ActionManager;
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/topology/addservice/ResourceProviderAdapter.java b/ambari-server/src/main/java/org/apache/ambari/server/topology/addservice/ResourceProviderAdapter.java
index 95fcc178495..dbc90582f97 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/topology/addservice/ResourceProviderAdapter.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/topology/addservice/ResourceProviderAdapter.java
@@ -28,8 +28,8 @@
import java.util.Set;
import java.util.stream.Stream;
-import javax.inject.Inject;
-import javax.inject.Singleton;
+import jakarta.inject.Inject;
+import jakarta.inject.Singleton;
import org.apache.ambari.server.AmbariException;
import org.apache.ambari.server.controller.AmbariManagementController;
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/topology/addservice/StackAdvisorAdapter.java b/ambari-server/src/main/java/org/apache/ambari/server/topology/addservice/StackAdvisorAdapter.java
index de0a2ac3ecf..427d64775a6 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/topology/addservice/StackAdvisorAdapter.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/topology/addservice/StackAdvisorAdapter.java
@@ -32,7 +32,7 @@
import java.util.Set;
import java.util.function.Function;
-import javax.inject.Inject;
+import jakarta.inject.Inject;
import org.apache.ambari.server.AmbariException;
import org.apache.ambari.server.api.services.stackadvisor.StackAdvisorException;
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/topology/validators/TopologyValidatorService.java b/ambari-server/src/main/java/org/apache/ambari/server/topology/validators/TopologyValidatorService.java
index 425cf1ec591..5a9bdd61985 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/topology/validators/TopologyValidatorService.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/topology/validators/TopologyValidatorService.java
@@ -14,7 +14,7 @@
package org.apache.ambari.server.topology.validators;
-import javax.inject.Inject;
+import jakarta.inject.Inject;
import org.apache.ambari.server.topology.ClusterTopology;
import org.apache.ambari.server.topology.InvalidTopologyException;
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/upgrade/AbstractUpgradeCatalog.java b/ambari-server/src/main/java/org/apache/ambari/server/upgrade/AbstractUpgradeCatalog.java
index 3afcf1e23f7..9ac14649736 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/upgrade/AbstractUpgradeCatalog.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/upgrade/AbstractUpgradeCatalog.java
@@ -38,10 +38,11 @@
import java.util.StringTokenizer;
import java.util.TreeMap;
-import javax.persistence.EntityManager;
import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;
+import jakarta.persistence.EntityManager;
+
import org.apache.ambari.annotations.Experimental;
import org.apache.ambari.annotations.ExperimentalFeature;
import org.apache.ambari.server.AmbariException;
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/upgrade/UpdateAlertScriptPaths.java b/ambari-server/src/main/java/org/apache/ambari/server/upgrade/UpdateAlertScriptPaths.java
index 087a5af5e5f..d3fefba0605 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/upgrade/UpdateAlertScriptPaths.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/upgrade/UpdateAlertScriptPaths.java
@@ -19,7 +19,7 @@
import java.sql.SQLException;
-import javax.inject.Inject;
+import jakarta.inject.Inject;
import org.apache.ambari.server.AmbariException;
import org.apache.ambari.server.api.services.AmbariMetaInfo;
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/upgrade/UpgradeCatalog260.java b/ambari-server/src/main/java/org/apache/ambari/server/upgrade/UpgradeCatalog260.java
index 42bde6f0151..7efbc950a8c 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/upgrade/UpgradeCatalog260.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/upgrade/UpgradeCatalog260.java
@@ -25,8 +25,8 @@
import java.util.List;
import java.util.Map;
-import javax.persistence.EntityManager;
-import javax.persistence.Query;
+import jakarta.persistence.EntityManager;
+import jakarta.persistence.Query;
import org.apache.ambari.server.AmbariException;
import org.apache.ambari.server.controller.AmbariManagementController;
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/upgrade/UpgradeCatalog270.java b/ambari-server/src/main/java/org/apache/ambari/server/upgrade/UpgradeCatalog270.java
index d053b73331e..e48d8cb2d18 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/upgrade/UpgradeCatalog270.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/upgrade/UpgradeCatalog270.java
@@ -38,8 +38,8 @@
import java.util.stream.Collectors;
import java.util.stream.Stream;
-import javax.persistence.EntityManager;
-import javax.persistence.TypedQuery;
+import jakarta.persistence.EntityManager;
+import jakarta.persistence.TypedQuery;
import org.apache.ambari.server.AmbariException;
import org.apache.ambari.server.actionmanager.HostRoleCommand;
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/upgrade/UpgradeCatalog271.java b/ambari-server/src/main/java/org/apache/ambari/server/upgrade/UpgradeCatalog271.java
index 179113cb90d..b4164eaf5ab 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/upgrade/UpgradeCatalog271.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/upgrade/UpgradeCatalog271.java
@@ -31,8 +31,8 @@
import java.util.regex.Matcher;
import java.util.regex.Pattern;
-import javax.persistence.EntityManager;
-import javax.persistence.TypedQuery;
+import jakarta.persistence.EntityManager;
+import jakarta.persistence.TypedQuery;
import org.apache.ambari.server.AmbariException;
import org.apache.ambari.server.ServiceComponentNotFoundException;
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/upgrade/UpgradeCatalog274.java b/ambari-server/src/main/java/org/apache/ambari/server/upgrade/UpgradeCatalog274.java
index b85b88ae459..3cd43f1a3e9 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/upgrade/UpgradeCatalog274.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/upgrade/UpgradeCatalog274.java
@@ -19,7 +19,7 @@
import java.sql.SQLException;
-import javax.persistence.Table;
+import jakarta.persistence.Table;
import org.apache.ambari.server.AmbariException;
import org.apache.ambari.server.orm.DBAccessor;
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/utils/RequestUtils.java b/ambari-server/src/main/java/org/apache/ambari/server/utils/RequestUtils.java
index d0efb97af64..c8296ee7bdd 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/utils/RequestUtils.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/utils/RequestUtils.java
@@ -23,7 +23,7 @@
import java.util.Map;
import java.util.Set;
-import javax.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletRequest;
import org.apache.commons.lang.StringUtils;
import org.slf4j.Logger;
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/view/AmbariViewsMDCLoggingFilter.java b/ambari-server/src/main/java/org/apache/ambari/server/view/AmbariViewsMDCLoggingFilter.java
index 90b46145dbe..0a2edbd5fc5 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/view/AmbariViewsMDCLoggingFilter.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/view/AmbariViewsMDCLoggingFilter.java
@@ -22,13 +22,13 @@
import java.util.regex.Matcher;
import java.util.regex.Pattern;
-import javax.servlet.Filter;
-import javax.servlet.FilterChain;
-import javax.servlet.FilterConfig;
-import javax.servlet.ServletException;
-import javax.servlet.ServletRequest;
-import javax.servlet.ServletResponse;
-import javax.servlet.http.HttpServletRequest;
+import jakarta.servlet.Filter;
+import jakarta.servlet.FilterChain;
+import jakarta.servlet.FilterConfig;
+import jakarta.servlet.ServletException;
+import jakarta.servlet.ServletRequest;
+import jakarta.servlet.ServletResponse;
+import jakarta.servlet.http.HttpServletRequest;
import org.slf4j.MDC;
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/view/RemoteAmbariClusterRegistry.java b/ambari-server/src/main/java/org/apache/ambari/server/view/RemoteAmbariClusterRegistry.java
index 12ba9283fe3..3674f9d9fed 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/view/RemoteAmbariClusterRegistry.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/view/RemoteAmbariClusterRegistry.java
@@ -25,8 +25,8 @@
import java.util.Set;
import java.util.concurrent.ConcurrentHashMap;
-import javax.inject.Inject;
-import javax.inject.Singleton;
+import jakarta.inject.Inject;
+import jakarta.inject.Singleton;
import org.apache.ambari.server.AmbariException;
import org.apache.ambari.server.ClusterNotFoundException;
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/view/ViewClassLoader.java b/ambari-server/src/main/java/org/apache/ambari/server/view/ViewClassLoader.java
index d5b2c0b53d5..1464eb0ef16 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/view/ViewClassLoader.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/view/ViewClassLoader.java
@@ -25,6 +25,7 @@
import org.eclipse.jetty.webapp.WebAppClassLoader;
import org.eclipse.jetty.webapp.WebAppContext;
+
/**
* Class loader used to load classes and resources from a search path of URLs referring to both JAR files
* and directories. The URLs will be searched in the order specified for classes and resources before
@@ -67,21 +68,21 @@ public ViewClassLoader(ViewConfig viewConfig, ClassLoader parent, URL[] urls) th
// ----- helper methods ----------------------------------------------------
// Get a context to initialize the class loader.
- private static WebAppContext getInitContext(ViewConfig viewConfig) {
+ private static WebAppContext getInitContext(ViewConfig viewConfig) throws IOException {
WebAppContext webAppContext = new WebAppContext();
// add ambari classes as system classes
- webAppContext.addSystemClass("org.apache.ambari.server.");
- webAppContext.addSystemClass("org.apache.ambari.view.");
+ webAppContext.getSystemClassMatcher().add("org.apache.ambari.server.");
+ webAppContext.getSystemClassMatcher().add("org.apache.ambari.view.");
// add com.google.inject as system classes to allow for injection in view components using the google annotation
- webAppContext.addSystemClass("com.google.inject.");
+ webAppContext.getSystemClassMatcher().add("com.google.inject.");
// add as system classes to avoid conflicts and linkage errors
- webAppContext.addSystemClass("org.slf4j.");
- webAppContext.addSystemClass("com.sun.jersey.");
- webAppContext.addSystemClass("org.apache.velocity.");
+ webAppContext.getSystemClassMatcher().add("org.slf4j.");
+ webAppContext.getSystemClassMatcher().add("com.sun.jersey.");
+ webAppContext.getSystemClassMatcher().add("org.apache.velocity.");
// set the class loader settings from the configuration
if (viewConfig != null) {
@@ -92,4 +93,26 @@ private static WebAppContext getInitContext(ViewConfig viewConfig) {
}
return webAppContext;
}
+
+ @Override
+ public Class> loadClass(String name) throws ClassNotFoundException {
+ System.out.println("Attempting to load class: " + name);
+ try {
+ // First, try to load the class using the current class loader
+ Class> loadedClass = super.loadClass(name);
+ System.out.println("Class loaded successfully: " + name + " by " + this);
+ return loadedClass;
+ } catch (ClassNotFoundException e) {
+ System.out.println("Class not found in current loader: " + name + ", delegating to parent.");
+ // If not found, delegate to the parent class loader
+ if (getParent() != null) {
+ Class> parentLoadedClass = getParent().loadClass(name);
+ System.out.println("Class loaded successfully by parent: " + name);
+ return parentLoadedClass;
+ } else {
+ System.out.println("Class not found: " + name + " in both current and parent class loaders.");
+ throw e;
+ }
+ }
+ }
}
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/view/ViewExtractor.java b/ambari-server/src/main/java/org/apache/ambari/server/view/ViewExtractor.java
index ad99950dde1..69cb9ac72e9 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/view/ViewExtractor.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/view/ViewExtractor.java
@@ -27,7 +27,7 @@
import java.util.jar.JarEntry;
import java.util.jar.JarInputStream;
-import javax.inject.Inject;
+import jakarta.inject.Inject;
import org.apache.ambari.server.orm.entities.ViewEntity;
import org.apache.ambari.server.view.configuration.ViewConfig;
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/view/ViewInstanceOperationHandler.java b/ambari-server/src/main/java/org/apache/ambari/server/view/ViewInstanceOperationHandler.java
index 56850f70315..d0cf8ade734 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/view/ViewInstanceOperationHandler.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/view/ViewInstanceOperationHandler.java
@@ -20,8 +20,8 @@
import java.util.List;
-import javax.inject.Inject;
-import javax.inject.Singleton;
+import jakarta.inject.Inject;
+import jakarta.inject.Singleton;
import org.apache.ambari.server.orm.dao.PrivilegeDAO;
import org.apache.ambari.server.orm.dao.ViewDAO;
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/view/ViewRegistry.java b/ambari-server/src/main/java/org/apache/ambari/server/view/ViewRegistry.java
index 15ebb0121bc..89fe4fd2a75 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/view/ViewRegistry.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/view/ViewRegistry.java
@@ -40,11 +40,12 @@
import java.util.concurrent.ThreadPoolExecutor;
import java.util.concurrent.TimeUnit;
-import javax.inject.Inject;
-import javax.inject.Provider;
-import javax.inject.Singleton;
import javax.xml.bind.JAXBException;
+import jakarta.inject.Inject;
+import jakarta.inject.Provider;
+import jakarta.inject.Singleton;
+
import org.apache.ambari.server.AmbariException;
import org.apache.ambari.server.ClusterNotFoundException;
import org.apache.ambari.server.api.resources.ResourceInstanceFactoryImpl;
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/view/ViewThrottleFilter.java b/ambari-server/src/main/java/org/apache/ambari/server/view/ViewThrottleFilter.java
index 9092e772c22..d2d0015ab59 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/view/ViewThrottleFilter.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/view/ViewThrottleFilter.java
@@ -21,17 +21,16 @@
import java.util.concurrent.Semaphore;
import java.util.concurrent.TimeUnit;
-import javax.servlet.Filter;
-import javax.servlet.FilterChain;
-import javax.servlet.FilterConfig;
-import javax.servlet.ServletException;
-import javax.servlet.ServletRequest;
-import javax.servlet.ServletResponse;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
+import jakarta.servlet.Filter;
+import jakarta.servlet.FilterChain;
+import jakarta.servlet.FilterConfig;
+import jakarta.servlet.ServletException;
+import jakarta.servlet.ServletRequest;
+import jakarta.servlet.ServletResponse;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
import org.apache.ambari.server.configuration.Configuration;
-import org.eclipse.jetty.continuation.Continuation;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/view/persistence/DataStoreImpl.java b/ambari-server/src/main/java/org/apache/ambari/server/view/persistence/DataStoreImpl.java
index aa4831587ad..82e789f1f01 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/view/persistence/DataStoreImpl.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/view/persistence/DataStoreImpl.java
@@ -35,11 +35,11 @@
import java.util.Set;
import java.util.StringTokenizer;
-import javax.inject.Inject;
-import javax.persistence.EntityManager;
-import javax.persistence.EntityManagerFactory;
-import javax.persistence.EntityTransaction;
-import javax.persistence.Query;
+import jakarta.inject.Inject;
+import jakarta.persistence.EntityManager;
+import jakarta.persistence.EntityManagerFactory;
+import jakarta.persistence.EntityTransaction;
+import jakarta.persistence.Query;
import org.apache.ambari.server.orm.entities.ViewEntityEntity;
import org.apache.ambari.server.orm.entities.ViewInstanceEntity;
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/view/persistence/DataStoreModule.java b/ambari-server/src/main/java/org/apache/ambari/server/view/persistence/DataStoreModule.java
index 6e68f93140f..224889425dd 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/view/persistence/DataStoreModule.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/view/persistence/DataStoreModule.java
@@ -23,8 +23,8 @@
import java.util.Map;
-import javax.persistence.EntityManagerFactory;
-import javax.persistence.Persistence;
+import jakarta.persistence.EntityManagerFactory;
+import jakarta.persistence.Persistence;
import org.apache.ambari.server.configuration.Configuration;
import org.apache.ambari.server.controller.ControllerModule;
diff --git a/ambari-server/src/main/python/ambari_server/dbCleanup.py b/ambari-server/src/main/python/ambari_server/dbCleanup.py
index fe792c23f4f..22883dc9e37 100644
--- a/ambari-server/src/main/python/ambari_server/dbCleanup.py
+++ b/ambari-server/src/main/python/ambari_server/dbCleanup.py
@@ -20,13 +20,18 @@
from ambari_commons.logging_utils import print_info_msg, print_error_msg
from ambari_commons.os_utils import run_os_command
-from ambari_server.dbConfiguration import ensure_jdbc_driver_is_installed
+from ambari_server.dbConfiguration import (
+ ensure_jdbc_driver_is_installed,
+ LINUX_DBMS_KEYS_LIST,
+)
from ambari_server.serverConfiguration import (
configDefaults,
get_ambari_properties,
get_java_exe_path,
read_ambari_user,
get_db_type,
+ parse_properties_file,
+ JDBC_DATABASE_PROPERTY,
)
from ambari_server.setupSecurity import (
generate_env,
@@ -106,6 +111,9 @@ def run_db_purge(options):
)
return 1
+ properties = get_ambari_properties()
+ parse_properties_file(options)
+ options.database_index = LINUX_DBMS_KEYS_LIST.index(properties[JDBC_DATABASE_PROPERTY])
ensure_jdbc_driver_is_installed(options, get_ambari_properties())
server_class_path = ServerClassPath(get_ambari_properties(), options)
diff --git a/ambari-server/src/main/python/ambari_server/dbConfiguration_linux.py b/ambari-server/src/main/python/ambari_server/dbConfiguration_linux.py
index 44521cbcd5b..d2e572a35f1 100644
--- a/ambari-server/src/main/python/ambari_server/dbConfiguration_linux.py
+++ b/ambari-server/src/main/python/ambari_server/dbConfiguration_linux.py
@@ -524,6 +524,7 @@ class PGConfig(LinuxDBMSConfig):
PG_STATUS_STOPPED = "stopped"
PG_SERVICE_NAME = "postgresql"
PG_HBA_DIR = None
+ PG_INITDB_CMD = None
if (
OSCheck.is_redhat_family()
@@ -541,8 +542,6 @@ class PGConfig(LinuxDBMSConfig):
if psql_service_file:
psql_service_file_name = os.path.basename(psql_service_file[0])
PG_SERVICE_NAME = psql_service_file_name[:-8] # remove .service
- else:
- raise FatalException(1, "Cannot find postgresql-setup script.")
SERVICE_CMD = "/usr/bin/env systemctl"
PG_ST_CMD = f"{SERVICE_CMD} status {PG_SERVICE_NAME}"
@@ -598,6 +597,8 @@ class PGConfig(LinuxDBMSConfig):
)
def __init__(self, options, properties, storage_type):
+ if PGConfig.PG_INITDB_CMD is None:
+ raise FatalException(1, "Cannot find postgresql-setup script.")
super(PGConfig, self).__init__(options, properties, storage_type)
# Init the database configuration data here, if any
diff --git a/ambari-server/src/main/python/ambari_server/serverConfiguration.py b/ambari-server/src/main/python/ambari_server/serverConfiguration.py
index f1b8c9cb745..99c247f4b1d 100644
--- a/ambari-server/src/main/python/ambari_server/serverConfiguration.py
+++ b/ambari-server/src/main/python/ambari_server/serverConfiguration.py
@@ -48,7 +48,7 @@
)
from ambari_server.properties import Properties
from ambari_server.userInput import get_validated_string_input
-from ambari_server.utils import compare_versions, locate_file, on_powerpc
+from ambari_server.utils import compare_versions, locate_file
from ambari_server.ambariPath import AmbariPath
from ambari_server.userInput import get_YN_input
@@ -209,10 +209,6 @@ class JavaHomeType(Enum):
GLOBAL = JAVA_HOME_PROPERTY
AMBARI = AMBARI_JAVA_HOME_PROPERTY
-
-if on_powerpc():
- JDK_RELEASES += ".ppc64le"
-
VIEWS_DIR_PROPERTY = "views.dir"
ACTIVE_INSTANCE_PROPERTY = "active.instance"
diff --git a/ambari-server/src/main/python/ambari_server/serverSetup.py b/ambari-server/src/main/python/ambari_server/serverSetup.py
index c4ffae0c7b9..3e1db86dd64 100644
--- a/ambari-server/src/main/python/ambari_server/serverSetup.py
+++ b/ambari-server/src/main/python/ambari_server/serverSetup.py
@@ -535,7 +535,16 @@ def download_and_install_jdk(self, args, properties, ambariOnly=False):
properties.process_pair(AMBARI_JAVA_HOME_PROPERTY, args.ambari_java_home)
properties.removeOldProp(JDK_NAME_PROPERTY)
properties.removeOldProp(JCE_NAME_PROPERTY)
- print("Setting AMBARI_JAVA_HOME for Ambari finished")
+
+ if not ambariOnly:
+ properties.process_pair(STACK_JAVA_HOME_PROPERTY, args.ambari_java_home)
+ properties.removeOldProp(STACK_JDK_NAME_PROPERTY)
+ properties.removeOldProp(STACK_JCE_NAME_PROPERTY)
+
+ self._ensure_java_home_env_var_is_set(args.ambari_java_home)
+ self.jdk_index = self.custom_jdk_number
+ print('Setting AMBARI_JAVA_HOME for Ambari finished')
+
if args.java_home:
# java_home was specified among the command-line arguments. Use it as custom JDK location.
diff --git a/ambari-server/src/main/python/ambari_server/utils.py b/ambari-server/src/main/python/ambari_server/utils.py
index c6057568a4b..090fe537fda 100644
--- a/ambari-server/src/main/python/ambari_server/utils.py
+++ b/ambari-server/src/main/python/ambari_server/utils.py
@@ -365,11 +365,6 @@ def check_reverse_lookup():
return False
-def on_powerpc():
- """True if we are running on a Power PC platform."""
- return platform.processor() == "powerpc" or platform.machine().startswith("ppc")
-
-
XML_HEADER = """
-
+
org.eclipse.persistence.jpa.PersistenceProvider
diff --git a/ambari-server/src/main/resources/common-services/AMBARI_INFRA_SOLR/3.0.0/package/scripts/params.py b/ambari-server/src/main/resources/common-services/AMBARI_INFRA_SOLR/3.0.0/package/scripts/params.py
index cf6d00069d6..a3291ff6259 100755
--- a/ambari-server/src/main/resources/common-services/AMBARI_INFRA_SOLR/3.0.0/package/scripts/params.py
+++ b/ambari-server/src/main/resources/common-services/AMBARI_INFRA_SOLR/3.0.0/package/scripts/params.py
@@ -77,7 +77,7 @@ def get_name_from_principal(principal):
# shared configs
java_home = config["ambariLevelParams"]["java_home"]
ambari_java_home = default("/ambariLevelParams/ambari_java_home", None)
-ambari_java_exec = f"{ambari_java_home}/bin/java"
+ambari_java_exec = f"{ambari_java_home}/bin/java"
java64_home = java_home
java_exec = format("{java64_home}/bin/java")
zookeeper_hosts_list = config["clusterHostInfo"]["zookeeper_server_hosts"]
diff --git a/ambari-server/src/main/resources/common-services/AMBARI_METRICS/3.0.0/configuration/ams-env.xml b/ambari-server/src/main/resources/common-services/AMBARI_METRICS/3.0.0/configuration/ams-env.xml
index 1014dee9a97..da3e8b5b003 100644
--- a/ambari-server/src/main/resources/common-services/AMBARI_METRICS/3.0.0/configuration/ams-env.xml
+++ b/ambari-server/src/main/resources/common-services/AMBARI_METRICS/3.0.0/configuration/ams-env.xml
@@ -161,7 +161,7 @@
export AMS_INSTANCE_NAME={{hostname}}
# The java implementation to use. Java 1.6 required.
-export JAVA_HOME={{java64_home}}
+export JAVA_HOME={{java_home}}
# Collector Log directory for log4j
export AMS_COLLECTOR_LOG_DIR={{ams_collector_log_dir}}
diff --git a/ambari-server/src/main/resources/common-services/AMBARI_METRICS/3.0.0/package/files/grafana-dashboards/default/grafana-ambari-server-stats.json b/ambari-server/src/main/resources/common-services/AMBARI_METRICS/3.0.0/package/files/grafana-dashboards/default/grafana-ambari-server-stats.json
new file mode 100644
index 00000000000..0a5d7504bf5
--- /dev/null
+++ b/ambari-server/src/main/resources/common-services/AMBARI_METRICS/3.0.0/package/files/grafana-dashboards/default/grafana-ambari-server-stats.json
@@ -0,0 +1,1619 @@
+{
+ "id": null,
+ "title": "Ambari Server Stomp Stats",
+ "originalTitle": "Ambari Server Stats",
+ "tags": [
+ "ambari_server"
+ ],
+ "style": "dark",
+ "timezone": "browser",
+ "editable": true,
+ "hideControls": false,
+ "sharedCrosshair": false,
+ "rows": [
+ {
+ "collapse": false,
+ "editable": true,
+ "height": "100px",
+ "panels": [
+ {
+ "content": "Metrics to see the overall status for Stomp Stats. Click on each row title to expand on demand to look at various metrics.
",
+ "editable": true,
+ "error": false,
+ "id": 22,
+ "isNew": true,
+ "links": [],
+ "mode": "html",
+ "span": 12,
+ "style": {},
+ "title": "",
+ "type": "text"
+ }
+ ],
+ "title": "Stomp Stats"
+ },
+ {
+ "collapse": true,
+ "editable": true,
+ "height": "250px",
+ "panels": [
+ {
+ "aliasColors": {},
+ "bars": false,
+ "datasource": null,
+ "editable": true,
+ "error": false,
+ "fill": 0,
+ "grid": {
+ "leftLogBase": 10,
+ "leftMax": null,
+ "leftMin": 0,
+ "rightLogBase": 1,
+ "rightMax": null,
+ "rightMin": 0,
+ "threshold1": null,
+ "threshold1Color": "rgba(216, 200, 27, 0.27)",
+ "threshold2": null,
+ "threshold2Color": "rgba(234, 112, 112, 0.22)"
+ },
+ "id": 11,
+ "isNew": true,
+ "legend": {
+ "avg": false,
+ "current": false,
+ "max": false,
+ "min": false,
+ "show": true,
+ "total": false,
+ "values": false
+ },
+ "lines": true,
+ "linewidth": 2,
+ "links": [],
+ "nullPointMode": "connected",
+ "percentage": false,
+ "pointradius": 5,
+ "points": false,
+ "renderer": "flot",
+ "seriesOverrides": [],
+ "span": 6,
+ "stack": false,
+ "steppedLine": false,
+ "targets": [
+ {
+ "aggregator": "none",
+ "alias": "current_client_session",
+ "app": "ambari_server",
+ "downsampleAggregator": "avg",
+ "errors": {},
+ "metric": "stomp.api.websocket.current_client_session",
+ "precision": "default",
+ "seriesAggregator": "none",
+ "transform":"none",
+ "refId": "A"
+ },
+ {
+ "aggregator": "none",
+ "alias": "current_web_socket_session",
+ "app": "ambari_server",
+ "downsampleAggregator": "avg",
+ "errors": {},
+ "metric": "stomp.api.websocket.current_web_socket_session",
+ "precision": "default",
+ "seriesAggregator": "none",
+ "transform": "none",
+ "refId": "B"
+ },
+ {
+ "aggregator": "none",
+ "alias": "current_http_stream",
+ "app": "ambari_server",
+ "downsampleAggregator": "avg",
+ "errors": {},
+ "metric": "stomp.api.websocket.current_http_stream",
+ "precision": "default",
+ "seriesAggregator": "none",
+ "transform": "none",
+ "refId": "C"
+ },
+ {
+ "aggregator": "none",
+ "alias": "current_http_polling",
+ "app": "ambari_server",
+ "downsampleAggregator": "avg",
+ "errors": {},
+ "metric": "stomp.api.websocket.current_http_polling",
+ "precision": "default",
+ "seriesAggregator": "none",
+ "transform": "none",
+ "refId": "D"
+ }
+ ],
+ "timeFrom": null,
+ "timeShift": null,
+ "title": "API Web Socket Stats",
+ "tooltip": {
+ "shared": true,
+ "value_type": "cumulative"
+ },
+ "type": "graph",
+ "xaxis": {
+ "mode": "time",
+ "show": true,
+ "values": []
+ },
+ "yaxes": [
+ {
+ "$$hashKey": "object:86",
+ "format": "none",
+ "logBase": 1,
+ "min": 0,
+ "show": true
+ },
+ {
+ "$$hashKey": "object:87",
+ "logBase": 1,
+ "min": 0,
+ "show": true
+ }
+ ],
+ "yaxis": {
+ "align": false
+ }
+ },
+ {
+ "aliasColors": {},
+ "bars": false,
+ "datasource": null,
+ "editable": true,
+ "error": false,
+ "fill": 0,
+ "grid": {
+ "leftLogBase": 10,
+ "leftMax": null,
+ "leftMin": 0,
+ "rightLogBase": 1,
+ "rightMax": null,
+ "rightMin": 0,
+ "threshold1": null,
+ "threshold1Color": "rgba(216, 200, 27, 0.27)",
+ "threshold2": null,
+ "threshold2Color": "rgba(234, 112, 112, 0.22)"
+ },
+ "id": 12,
+ "isNew": true,
+ "legend": {
+ "avg": false,
+ "current": false,
+ "max": false,
+ "min": false,
+ "show": true,
+ "total": false,
+ "values": false
+ },
+ "lines": true,
+ "linewidth": 2,
+ "links": [],
+ "nullPointMode": "connected",
+ "percentage": false,
+ "pointradius": 5,
+ "points": false,
+ "renderer": "flot",
+ "seriesOverrides": [],
+ "span": 6,
+ "stack": false,
+ "steppedLine": false,
+ "targets": [
+ {
+ "aggregator": "none",
+ "alias": "current_client_session",
+ "app": "ambari_server",
+ "downsampleAggregator": "avg",
+ "errors": {},
+ "metric": "stomp.agent.websocket.current_client_session",
+ "precision": "default",
+ "seriesAggregator": "none",
+ "transform": "none",
+ "refId": "A"
+ },
+ {
+ "aggregator": "none",
+ "alias": "current_web_socket_session",
+ "app": "ambari_server",
+ "downsampleAggregator": "avg",
+ "errors": {},
+ "metric": "stomp.agent.websocket.current_web_socket_session",
+ "precision": "default",
+ "seriesAggregator": "none",
+ "transform": "none",
+ "refId": "B"
+ },
+ {
+ "aggregator": "none",
+ "alias": "current_http_stream",
+ "app": "ambari_server",
+ "downsampleAggregator": "avg",
+ "errors": {},
+ "metric": "stomp.agent.websocket.current_http_stream",
+ "precision": "default",
+ "seriesAggregator": "none",
+ "transform": "none",
+ "refId": "C"
+ },
+ {
+ "aggregator": "none",
+ "alias": "current_http_polling",
+ "app": "ambari_server",
+ "downsampleAggregator": "avg",
+ "errors": {},
+ "metric": "stomp.agent.websocket.current_http_polling",
+ "precision": "default",
+ "seriesAggregator": "none",
+ "transform": "none",
+ "refId": "D"
+ }
+ ],
+ "timeFrom": null,
+ "timeShift": null,
+ "title": "Agent Web Socket Stats",
+ "tooltip": {
+ "shared": true,
+ "value_type": "cumulative"
+ },
+ "type": "graph",
+ "xaxis": {
+ "mode": "time",
+ "show": true,
+ "values": []
+ },
+ "yaxes": [
+ {
+ "$$hashKey": "object:86",
+ "format": "none",
+ "logBase": 1,
+ "min": 0,
+ "show": true
+ },
+ {
+ "$$hashKey": "object:87",
+ "logBase": 1,
+ "min": 0,
+ "show": true
+ }
+ ],
+ "yaxis": {
+ "align": false
+ }
+ },
+ {
+ "aliasColors": {},
+ "bars": false,
+ "datasource": null,
+ "editable": true,
+ "error": false,
+ "fill": 0,
+ "grid": {
+ "leftLogBase": 10,
+ "leftMax": null,
+ "leftMin": 0,
+ "rightLogBase": 1,
+ "rightMax": null,
+ "rightMin": 0,
+ "threshold1": null,
+ "threshold1Color": "rgba(216, 200, 27, 0.27)",
+ "threshold2": null,
+ "threshold2Color": "rgba(234, 112, 112, 0.22)"
+ },
+ "id": 13,
+ "isNew": true,
+ "legend": {
+ "avg": false,
+ "current": false,
+ "max": false,
+ "min": false,
+ "show": true,
+ "total": false,
+ "values": false
+ },
+ "lines": true,
+ "linewidth": 2,
+ "links": [],
+ "nullPointMode": "connected",
+ "percentage": false,
+ "pointradius": 5,
+ "points": false,
+ "renderer": "flot",
+ "seriesOverrides": [],
+ "span": 6,
+ "stack": false,
+ "steppedLine": false,
+ "targets": [
+ {
+ "aggregator": "none",
+ "alias": "total_sessions_established",
+ "app": "ambari_server",
+ "downsampleAggregator": "avg",
+ "errors": {},
+ "metric": "stomp.api.websocket.total_sessions_established",
+ "precision": "default",
+ "seriesAggregator": "none",
+ "transform": "none",
+ "refId": "A"
+ },
+ {
+ "aggregator": "none",
+ "alias": "abnormally_closed_session",
+ "app": "ambari_server",
+ "downsampleAggregator": "avg",
+ "errors": {},
+ "metric": "stomp.api.websocket.abnormally_closed_session",
+ "precision": "default",
+ "seriesAggregator": "none",
+ "transform": "none",
+ "refId": "B"
+ },
+ {
+ "aggregator": "none",
+ "alias": "connect_failure_session",
+ "app": "ambari_server",
+ "downsampleAggregator": "avg",
+ "errors": {},
+ "metric": "stomp.api.websocket.connect_failure_session",
+ "precision": "default",
+ "seriesAggregator": "none",
+ "transform": "none",
+ "refId": "C"
+ },
+ {
+ "aggregator": "none",
+ "alias": "send_time_limit_exceeded",
+ "app": "ambari_server",
+ "downsampleAggregator": "avg",
+ "errors": {},
+ "metric": "stomp.api.websocket.send_time_limit_exceeded",
+ "precision": "default",
+ "seriesAggregator": "none",
+ "transform": "none",
+ "refId": "D"
+ },
+ {
+ "aggregator": "none",
+ "alias": "transport_errors_sessions",
+ "app": "ambari_server",
+ "downsampleAggregator": "avg",
+ "errors": {},
+ "metric": "stomp.api.websocket.transport_errors_sessions",
+ "precision": "default",
+ "seriesAggregator": "none",
+ "transform": "none",
+ "refId": "E"
+ }
+ ],
+ "timeFrom": null,
+ "timeShift": null,
+ "title": "API Web Socket Stats",
+ "tooltip": {
+ "shared": true,
+ "value_type": "cumulative"
+ },
+ "type": "graph",
+ "xaxis": {
+ "mode": "time",
+ "show": true,
+ "values": []
+ },
+ "yaxes": [
+ {
+ "$$hashKey": "object:86",
+ "format": "none",
+ "logBase": 1,
+ "min": 0,
+ "show": true
+ },
+ {
+ "$$hashKey": "object:87",
+ "logBase": 1,
+ "min": 0,
+ "show": true
+ }
+ ],
+ "yaxis": {
+ "align": false
+ }
+ },
+ {
+ "aliasColors": {},
+ "bars": false,
+ "datasource": null,
+ "editable": true,
+ "error": false,
+ "fill": 0,
+ "grid": {
+ "leftLogBase": 10,
+ "leftMax": null,
+ "leftMin": 0,
+ "rightLogBase": 1,
+ "rightMax": null,
+ "rightMin": 0,
+ "threshold1": null,
+ "threshold1Color": "rgba(216, 200, 27, 0.27)",
+ "threshold2": null,
+ "threshold2Color": "rgba(234, 112, 112, 0.22)"
+ },
+ "id": 14,
+ "isNew": true,
+ "legend": {
+ "avg": false,
+ "current": false,
+ "max": false,
+ "min": false,
+ "show": true,
+ "total": false,
+ "values": false
+ },
+ "lines": true,
+ "linewidth": 2,
+ "links": [],
+ "nullPointMode": "connected",
+ "percentage": false,
+ "pointradius": 5,
+ "points": false,
+ "renderer": "flot",
+ "seriesOverrides": [],
+ "span": 6,
+ "stack": false,
+ "steppedLine": false,
+ "targets": [
+ {
+ "aggregator": "none",
+ "alias": "total_sessions_established",
+ "app": "ambari_server",
+ "downsampleAggregator": "avg",
+ "errors": {},
+ "metric": "stomp.agent.websocket.total_sessions_established",
+ "precision": "default",
+ "seriesAggregator": "none",
+ "transform": "none",
+ "refId": "A"
+ },
+ {
+ "aggregator": "none",
+ "alias": "abnormally_closed_session",
+ "app": "ambari_server",
+ "downsampleAggregator": "avg",
+ "errors": {},
+ "metric": "stomp.agent.websocket.abnormally_closed_session",
+ "precision": "default",
+ "seriesAggregator": "none",
+ "transform": "none",
+ "refId": "B"
+ },
+ {
+ "aggregator": "none",
+ "alias": "connect_failure_session",
+ "app": "ambari_server",
+ "downsampleAggregator": "avg",
+ "errors": {},
+ "metric": "stomp.agent.websocket.connect_failure_session",
+ "precision": "default",
+ "seriesAggregator": "none",
+ "transform": "none",
+ "refId": "C"
+ },
+ {
+ "aggregator": "none",
+ "alias": "send_time_limit_exceeded",
+ "app": "ambari_server",
+ "downsampleAggregator": "avg",
+ "errors": {},
+ "metric": "stomp.agent.websocket.send_time_limit_exceeded",
+ "precision": "default",
+ "seriesAggregator": "none",
+ "transform": "none",
+ "refId": "D"
+ },
+ {
+ "aggregator": "none",
+ "alias": "transport_errors_sessions",
+ "app": "ambari_server",
+ "downsampleAggregator": "avg",
+ "errors": {},
+ "metric": "stomp.agent.websocket.transport_errors_sessions",
+ "precision": "default",
+ "seriesAggregator": "none",
+ "transform": "none",
+ "refId": "E"
+ }
+ ],
+ "timeFrom": null,
+ "timeShift": null,
+ "title": "Agent Web Socket Stats",
+ "tooltip": {
+ "shared": true,
+ "value_type": "cumulative"
+ },
+ "type": "graph",
+ "xaxis": {
+ "mode": "time",
+ "show": true,
+ "values": []
+ },
+ "yaxes": [
+ {
+ "$$hashKey": "object:86",
+ "format": "none",
+ "logBase": 1,
+ "min": 0,
+ "show": true
+ },
+ {
+ "$$hashKey": "object:87",
+ "logBase": 1,
+ "min": 0,
+ "show": true
+ }
+ ],
+ "yaxis": {
+ "align": false
+ }
+ }
+ ],
+ "showTitle": true,
+ "title": "Web Socket Stats"
+ },
+ {
+ "collapse": true,
+ "editable": true,
+ "height": "250px",
+ "panels": [
+ {
+ "aliasColors": {},
+ "bars": false,
+ "datasource": null,
+ "editable": true,
+ "error": false,
+ "fill": 0,
+ "grid": {
+ "leftLogBase": 10,
+ "leftMax": null,
+ "leftMin": 0,
+ "rightLogBase": 1,
+ "rightMax": null,
+ "rightMin": 0,
+ "threshold1": null,
+ "threshold1Color": "rgba(216, 200, 27, 0.27)",
+ "threshold2": null,
+ "threshold2Color": "rgba(234, 112, 112, 0.22)"
+ },
+ "id": 15,
+ "isNew": true,
+ "legend": {
+ "avg": false,
+ "current": false,
+ "max": false,
+ "min": false,
+ "show": true,
+ "total": false,
+ "values": false
+ },
+ "lines": true,
+ "linewidth": 2,
+ "links": [],
+ "nullPointMode": "connected",
+ "percentage": false,
+ "pointradius": 5,
+ "points": false,
+ "renderer": "flot",
+ "seriesOverrides": [],
+ "span": 6,
+ "stack": false,
+ "steppedLine": false,
+ "targets": [
+ {
+ "aggregator": "none",
+ "alias": "connect",
+ "app": "ambari_server",
+ "downsampleAggregator": "avg",
+ "errors": {},
+ "metric": "stomp.api.stomp_sub_protocol.connnect",
+ "precision": "default",
+ "seriesAggregator": "none",
+ "transform": "none",
+ "refId": "A"
+ },
+ {
+ "aggregator": "none",
+ "alias": "connected",
+ "app": "ambari_server",
+ "downsampleAggregator": "avg",
+ "errors": {},
+ "metric": "stomp.api.stomp_sub_protocol.connected",
+ "precision": "default",
+ "seriesAggregator": "none",
+ "transform": "none",
+ "refId": "B"
+ },
+ {
+ "aggregator": "none",
+ "alias": "disconnect",
+ "app": "ambari_server",
+ "downsampleAggregator": "avg",
+ "errors": {},
+ "metric": "stomp.api.stomp_sub_protocol.disconnect",
+ "precision": "default",
+ "seriesAggregator": "none",
+ "transform": "none",
+ "refId": "C"
+ }
+ ],
+ "timeFrom": null,
+ "timeShift": null,
+ "title": "API Stomp SubProtocol Stats",
+ "tooltip": {
+ "shared": true,
+ "value_type": "cumulative"
+ },
+ "type": "graph",
+ "xaxis": {
+ "mode": "time",
+ "show": true,
+ "values": []
+ },
+ "yaxes": [
+ {
+ "$$hashKey": "object:86",
+ "format": "none",
+ "logBase": 1,
+ "min": 0,
+ "show": true
+ },
+ {
+ "$$hashKey": "object:87",
+ "logBase": 1,
+ "min": 0,
+ "show": true
+ }
+ ],
+ "yaxis": {
+ "align": false
+ }
+ },
+ {
+ "aliasColors": {},
+ "bars": false,
+ "datasource": null,
+ "editable": true,
+ "error": false,
+ "fill": 0,
+ "grid": {
+ "leftLogBase": 10,
+ "leftMax": null,
+ "leftMin": 0,
+ "rightLogBase": 1,
+ "rightMax": null,
+ "rightMin": 0,
+ "threshold1": null,
+ "threshold1Color": "rgba(216, 200, 27, 0.27)",
+ "threshold2": null,
+ "threshold2Color": "rgba(234, 112, 112, 0.22)"
+ },
+ "id": 16,
+ "isNew": true,
+ "legend": {
+ "avg": false,
+ "current": false,
+ "max": false,
+ "min": false,
+ "show": true,
+ "total": false,
+ "values": false
+ },
+ "lines": true,
+ "linewidth": 2,
+ "links": [],
+ "nullPointMode": "connected",
+ "percentage": false,
+ "pointradius": 5,
+ "points": false,
+ "renderer": "flot",
+ "seriesOverrides": [],
+ "span": 6,
+ "stack": false,
+ "steppedLine": false,
+ "targets": [
+ {
+ "aggregator": "none",
+ "alias": "connect",
+ "app": "ambari_server",
+ "downsampleAggregator": "avg",
+ "errors": {},
+ "metric": "stomp.agent.stomp_sub_protocol.connnect",
+ "precision": "default",
+ "seriesAggregator": "none",
+ "transform": "none",
+ "refId": "A"
+ },
+ {
+ "aggregator": "none",
+ "alias": "connected",
+ "app": "ambari_server",
+ "downsampleAggregator": "avg",
+ "errors": {},
+ "metric": "stomp.agent.stomp_sub_protocol.connected",
+ "precision": "default",
+ "seriesAggregator": "none",
+ "transform": "none",
+ "refId": "B"
+ },
+ {
+ "aggregator": "none",
+ "alias": "disconnect",
+ "app": "ambari_server",
+ "downsampleAggregator": "avg",
+ "errors": {},
+ "metric": "stomp.agent.stomp_sub_protocol.disconnect",
+ "precision": "default",
+ "seriesAggregator": "none",
+ "transform": "none",
+ "refId": "C"
+ }
+ ],
+ "timeFrom": null,
+ "timeShift": null,
+ "title": "Agent Stomp SubProtocol Stats",
+ "tooltip": {
+ "shared": true,
+ "value_type": "cumulative"
+ },
+ "type": "graph",
+ "xaxis": {
+ "mode": "time",
+ "show": true,
+ "values": []
+ },
+ "yaxes": [
+ {
+ "$$hashKey": "object:86",
+ "format": "none",
+ "logBase": 1,
+ "min": 0,
+ "show": true
+ },
+ {
+ "$$hashKey": "object:87",
+ "logBase": 1,
+ "min": 0,
+ "show": true
+ }
+ ],
+ "yaxis": {
+ "align": false
+ }
+ }
+ ],
+ "showTitle": true,
+ "title": "Stomp SubProtocol Stats"
+ },
+ {
+ "collapse": true,
+ "editable": true,
+ "height": "250px",
+ "panels": [
+ {
+ "aliasColors": {},
+ "bars": false,
+ "datasource": null,
+ "editable": true,
+ "error": false,
+ "fill": 0,
+ "grid": {
+ "leftLogBase": 10,
+ "leftMax": null,
+ "leftMin": 0,
+ "rightLogBase": 1,
+ "rightMax": null,
+ "rightMin": 0,
+ "threshold1": null,
+ "threshold1Color": "rgba(216, 200, 27, 0.27)",
+ "threshold2": null,
+ "threshold2Color": "rgba(234, 112, 112, 0.22)"
+ },
+ "id": 19,
+ "isNew": true,
+ "legend": {
+ "avg": false,
+ "current": false,
+ "max": false,
+ "min": false,
+ "show": true,
+ "total": false,
+ "values": false
+ },
+ "lines": true,
+ "linewidth": 2,
+ "links": [],
+ "nullPointMode": "connected",
+ "percentage": false,
+ "pointradius": 5,
+ "points": false,
+ "renderer": "flot",
+ "seriesOverrides": [],
+ "span": 6,
+ "stack": false,
+ "steppedLine": false,
+ "targets": [
+ {
+ "aggregator": "none",
+ "alias": "Pool size",
+ "app": "ambari_server",
+ "downsampleAggregator": "avg",
+ "errors": {},
+ "metric": "stomp.api.inbound_channel.pool_size",
+ "precision": "default",
+ "seriesAggregator": "none",
+ "transform": "none",
+ "refId": "A"
+ },
+ {
+ "aggregator": "none",
+ "alias": "active threads",
+ "app": "ambari_server",
+ "downsampleAggregator": "avg",
+ "errors": {},
+ "metric": "stomp.api.inbound_channel.active_threads",
+ "precision": "default",
+ "seriesAggregator": "none",
+ "transform": "none",
+ "refId": "B"
+ },
+ {
+ "aggregator": "none",
+ "alias": "queued tasks",
+ "app": "ambari_server",
+ "downsampleAggregator": "avg",
+ "errors": {},
+ "metric": "stomp.api.inbound_channel.queued_tasks",
+ "precision": "default",
+ "seriesAggregator": "none",
+ "transform": "none",
+ "refId": "C"
+ },
+ {
+ "aggregator": "none",
+ "alias": "completed tasks",
+ "app": "ambari_server",
+ "downsampleAggregator": "avg",
+ "errors": {},
+ "metric": "stomp.api.inbound_channel.completed_tasks",
+ "precision": "default",
+ "seriesAggregator": "none",
+ "transform": "none",
+ "refId": "D"
+ }
+ ],
+ "timeFrom": null,
+ "timeShift": null,
+ "title": "API Client Inbound Executor Stats",
+ "tooltip": {
+ "shared": true,
+ "value_type": "cumulative"
+ },
+ "type": "graph",
+ "xaxis": {
+ "mode": "time",
+ "show": true,
+ "values": []
+ },
+ "yaxes": [
+ {
+ "$$hashKey": "object:86",
+ "format": "none",
+ "logBase": 1,
+ "min": 0,
+ "show": true
+ },
+ {
+ "$$hashKey": "object:87",
+ "logBase": 1,
+ "min": 0,
+ "show": true
+ }
+ ],
+ "yaxis": {
+ "align": false
+ }
+ },
+ {
+ "aliasColors": {},
+ "bars": false,
+ "datasource": null,
+ "editable": true,
+ "error": false,
+ "fill": 0,
+ "grid": {
+ "leftLogBase": 10,
+ "leftMax": null,
+ "leftMin": 0,
+ "rightLogBase": 1,
+ "rightMax": null,
+ "rightMin": 0,
+ "threshold1": null,
+ "threshold1Color": "rgba(216, 200, 27, 0.27)",
+ "threshold2": null,
+ "threshold2Color": "rgba(234, 112, 112, 0.22)"
+ },
+ "id": 20,
+ "isNew": true,
+ "legend": {
+ "avg": false,
+ "current": false,
+ "max": false,
+ "min": false,
+ "show": true,
+ "total": false,
+ "values": false
+ },
+ "lines": true,
+ "linewidth": 2,
+ "links": [],
+ "nullPointMode": "connected",
+ "percentage": false,
+ "pointradius": 5,
+ "points": false,
+ "renderer": "flot",
+ "seriesOverrides": [],
+ "span": 6,
+ "stack": false,
+ "steppedLine": false,
+ "targets": [
+ {
+ "aggregator": "none",
+ "alias": "Pool size",
+ "app": "ambari_server",
+ "downsampleAggregator": "avg",
+ "errors": {},
+ "metric": "stomp.agent.inbound_channel.pool_size",
+ "precision": "default",
+ "seriesAggregator": "none",
+ "transform": "none",
+ "refId": "A"
+ },
+ {
+ "aggregator": "none",
+ "alias": "active threads",
+ "app": "ambari_server",
+ "downsampleAggregator": "avg",
+ "errors": {},
+ "metric": "stomp.agent.inbound_channel.active_threads",
+ "precision": "default",
+ "seriesAggregator": "none",
+ "transform": "none",
+ "refId": "B"
+ },
+ {
+ "aggregator": "none",
+ "alias": "queued tasks",
+ "app": "ambari_server",
+ "downsampleAggregator": "avg",
+ "errors": {},
+ "metric": "stomp.agent.inbound_channel.queued_tasks",
+ "precision": "default",
+ "seriesAggregator": "none",
+ "transform": "none",
+ "refId": "C"
+ },
+ {
+ "aggregator": "none",
+ "alias": "completed tasks",
+ "app": "ambari_server",
+ "downsampleAggregator": "avg",
+ "errors": {},
+ "metric": "stomp.agent.inbound_channel.completed_tasks",
+ "precision": "default",
+ "seriesAggregator": "none",
+ "transform": "none",
+ "refId": "D"
+ }
+ ],
+ "timeFrom": null,
+ "timeShift": null,
+ "title": "Agent Client Inbound Executor Stats",
+ "tooltip": {
+ "shared": true,
+ "value_type": "cumulative"
+ },
+ "type": "graph",
+ "xaxis": {
+ "mode": "time",
+ "show": true,
+ "values": []
+ },
+ "yaxes": [
+ {
+ "$$hashKey": "object:86",
+ "format": "none",
+ "logBase": 1,
+ "min": 0,
+ "show": true
+ },
+ {
+ "$$hashKey": "object:87",
+ "logBase": 1,
+ "min": 0,
+ "show": true
+ }
+ ],
+ "yaxis": {
+ "align": false
+ }
+ }
+ ],
+ "showTitle": true,
+ "title": "Client Inbound Executor Stats"
+ },
+ {
+ "collapse": true,
+ "editable": true,
+ "height": "250px",
+ "panels": [
+ {
+ "aliasColors": {},
+ "bars": false,
+ "datasource": null,
+ "editable": true,
+ "error": false,
+ "fill": 0,
+ "grid": {
+ "leftLogBase": 10,
+ "leftMax": null,
+ "leftMin": 0,
+ "rightLogBase": 1,
+ "rightMax": null,
+ "rightMin": 0,
+ "threshold1": null,
+ "threshold1Color": "rgba(216, 200, 27, 0.27)",
+ "threshold2": null,
+ "threshold2Color": "rgba(234, 112, 112, 0.22)"
+ },
+ "id": 21,
+ "isNew": true,
+ "legend": {
+ "avg": false,
+ "current": false,
+ "max": false,
+ "min": false,
+ "show": true,
+ "total": false,
+ "values": false
+ },
+ "lines": true,
+ "linewidth": 2,
+ "links": [],
+ "nullPointMode": "connected",
+ "percentage": false,
+ "pointradius": 5,
+ "points": false,
+ "renderer": "flot",
+ "seriesOverrides": [],
+ "span": 6,
+ "stack": false,
+ "steppedLine": false,
+ "targets": [
+ {
+ "aggregator": "none",
+ "alias": "Pool size",
+ "app": "ambari_server",
+ "downsampleAggregator": "avg",
+ "errors": {},
+ "metric": "stomp.api.outbound_channel.pool_size",
+ "precision": "default",
+ "seriesAggregator": "none",
+ "transform": "none",
+ "refId": "A"
+ },
+ {
+ "aggregator": "none",
+ "alias": "active threads",
+ "app": "ambari_server",
+ "downsampleAggregator": "avg",
+ "errors": {},
+ "metric": "stomp.api.outbound_channel.active_threads",
+ "precision": "default",
+ "seriesAggregator": "none",
+ "transform": "none",
+ "refId": "B"
+ },
+ {
+ "aggregator": "none",
+ "alias": "queued tasks",
+ "app": "ambari_server",
+ "downsampleAggregator": "avg",
+ "errors": {},
+ "metric": "stomp.api.outbound_channel.queued_tasks",
+ "precision": "default",
+ "seriesAggregator": "none",
+ "transform": "none",
+ "refId": "C"
+ },
+ {
+ "aggregator": "none",
+ "alias": "completed tasks",
+ "app": "ambari_server",
+ "downsampleAggregator": "avg",
+ "errors": {},
+ "metric": "stomp.api.outbound_channel.completed_tasks",
+ "precision": "default",
+ "seriesAggregator": "none",
+ "transform": "none",
+ "refId": "D"
+ }
+ ],
+ "timeFrom": null,
+ "timeShift": null,
+ "title": "API Client Outbound executor Stats",
+ "tooltip": {
+ "shared": true,
+ "value_type": "cumulative"
+ },
+ "type": "graph",
+ "xaxis": {
+ "mode": "time",
+ "show": true,
+ "values": []
+ },
+ "yaxes": [
+ {
+ "$$hashKey": "object:86",
+ "format": "none",
+ "logBase": 1,
+ "min": 0,
+ "show": true
+ },
+ {
+ "$$hashKey": "object:87",
+ "logBase": 1,
+ "min": 0,
+ "show": true
+ }
+ ],
+ "yaxis": {
+ "align": false
+ }
+ },
+ {
+ "aliasColors": {},
+ "bars": false,
+ "datasource": null,
+ "editable": true,
+ "error": false,
+ "fill": 0,
+ "grid": {
+ "leftLogBase": 10,
+ "leftMax": null,
+ "leftMin": 0,
+ "rightLogBase": 1,
+ "rightMax": null,
+ "rightMin": 0,
+ "threshold1": null,
+ "threshold1Color": "rgba(216, 200, 27, 0.27)",
+ "threshold2": null,
+ "threshold2Color": "rgba(234, 112, 112, 0.22)"
+ },
+ "id": 22,
+ "isNew": true,
+ "legend": {
+ "avg": false,
+ "current": false,
+ "max": false,
+ "min": false,
+ "show": true,
+ "total": false,
+ "values": false
+ },
+ "lines": true,
+ "linewidth": 2,
+ "links": [],
+ "nullPointMode": "connected",
+ "percentage": false,
+ "pointradius": 5,
+ "points": false,
+ "renderer": "flot",
+ "seriesOverrides": [],
+ "span": 6,
+ "stack": false,
+ "steppedLine": false,
+ "targets": [
+ {
+ "aggregator": "none",
+ "alias": "Pool size",
+ "app": "ambari_server",
+ "downsampleAggregator": "avg",
+ "errors": {},
+ "metric": "stomp.agent.outbound_channel.pool_size",
+ "precision": "default",
+ "seriesAggregator": "none",
+ "transform": "none",
+ "refId": "A"
+ },
+ {
+ "aggregator": "none",
+ "alias": "active threads",
+ "app": "ambari_server",
+ "downsampleAggregator": "avg",
+ "errors": {},
+ "metric": "stomp.agent.outbound_channel.active_threads",
+ "precision": "default",
+ "seriesAggregator": "none",
+ "transform": "none",
+ "refId": "B"
+ },
+ {
+ "aggregator": "none",
+ "alias": "queued tasks",
+ "app": "ambari_server",
+ "downsampleAggregator": "avg",
+ "errors": {},
+ "metric": "stomp.agent.outbound_channel.queued_tasks",
+ "precision": "default",
+ "seriesAggregator": "none",
+ "transform": "none",
+ "refId": "C"
+ },
+ {
+ "aggregator": "none",
+ "alias": "completed tasks",
+ "app": "ambari_server",
+ "downsampleAggregator": "avg",
+ "errors": {},
+ "metric": "stomp.agent.outbound_channel.completed_tasks",
+ "precision": "default",
+ "seriesAggregator": "none",
+ "transform": "none",
+ "refId": "D"
+ }
+ ],
+ "timeFrom": null,
+ "timeShift": null,
+ "title": "Agent Client Outbound executor Stats",
+ "tooltip": {
+ "shared": true,
+ "value_type": "cumulative"
+ },
+ "type": "graph",
+ "xaxis": {
+ "mode": "time",
+ "show": true,
+ "values": []
+ },
+ "yaxes": [
+ {
+ "$$hashKey": "object:86",
+ "format": "none",
+ "logBase": 1,
+ "min": 0,
+ "show": true
+ },
+ {
+ "$$hashKey": "object:87",
+ "logBase": 1,
+ "min": 0,
+ "show": true
+ }
+ ],
+ "yaxis": {
+ "align": false
+ }
+ }
+ ],
+ "showTitle": true,
+ "title": "Client Outbound executor Stats"
+ },
+ {
+ "collapse": true,
+ "editable": true,
+ "height": "250px",
+ "panels": [
+ {
+ "aliasColors": {},
+ "bars": false,
+ "datasource": null,
+ "editable": true,
+ "error": false,
+ "fill": 0,
+ "grid": {
+ "leftLogBase": 10,
+ "leftMax": null,
+ "leftMin": 0,
+ "rightLogBase": 1,
+ "rightMax": null,
+ "rightMin": 0,
+ "threshold1": null,
+ "threshold1Color": "rgba(216, 200, 27, 0.27)",
+ "threshold2": null,
+ "threshold2Color": "rgba(234, 112, 112, 0.22)"
+ },
+ "id": 23,
+ "isNew": true,
+ "legend": {
+ "avg": false,
+ "current": false,
+ "max": false,
+ "min": false,
+ "show": true,
+ "total": false,
+ "values": false
+ },
+ "lines": true,
+ "linewidth": 2,
+ "links": [],
+ "nullPointMode": "connected",
+ "percentage": false,
+ "pointradius": 5,
+ "points": false,
+ "renderer": "flot",
+ "seriesOverrides": [],
+ "span": 6,
+ "stack": false,
+ "steppedLine": false,
+ "targets": [
+ {
+ "aggregator": "none",
+ "alias": "Pool size",
+ "app": "ambari_server",
+ "downsampleAggregator": "avg",
+ "errors": {},
+ "metric": "stomp.api.sockJsScheduler.pool_size",
+ "precision": "default",
+ "seriesAggregator": "none",
+ "transform": "none",
+ "refId": "A"
+ },
+ {
+ "aggregator": "none",
+ "alias": "active threads",
+ "app": "ambari_server",
+ "downsampleAggregator": "avg",
+ "errors": {},
+ "metric": "stomp.api.sockJsScheduler.active_threads",
+ "precision": "default",
+ "seriesAggregator": "none",
+ "transform": "none",
+ "refId": "B"
+ },
+ {
+ "aggregator": "none",
+ "alias": "queued tasks",
+ "app": "ambari_server",
+ "downsampleAggregator": "avg",
+ "errors": {},
+ "metric": "stomp.api.sockJsScheduler.queued_tasks",
+ "precision": "default",
+ "seriesAggregator": "none",
+ "transform": "none",
+ "refId": "C"
+ },
+ {
+ "aggregator": "none",
+ "alias": "completed tasks",
+ "app": "ambari_server",
+ "downsampleAggregator": "avg",
+ "errors": {},
+ "metric": "stomp.api.sockJsScheduler.completed_tasks",
+ "precision": "default",
+ "seriesAggregator": "none",
+ "transform": "none",
+ "refId": "D"
+ }
+ ],
+ "timeFrom": null,
+ "timeShift": null,
+ "title": "API sockJs Task Scheduler Stats",
+ "tooltip": {
+ "shared": true,
+ "value_type": "cumulative"
+ },
+ "type": "graph",
+ "xaxis": {
+ "mode": "time",
+ "show": true,
+ "values": []
+ },
+ "yaxes": [
+ {
+ "$$hashKey": "object:86",
+ "format": "none",
+ "logBase": 1,
+ "min": 0,
+ "show": true
+ },
+ {
+ "$$hashKey": "object:87",
+ "logBase": 1,
+ "min": 0,
+ "show": true
+ }
+ ],
+ "yaxis": {
+ "align": false
+ }
+ },
+ {
+ "aliasColors": {},
+ "bars": false,
+ "datasource": null,
+ "editable": true,
+ "error": false,
+ "fill": 0,
+ "grid": {
+ "leftLogBase": 10,
+ "leftMax": null,
+ "leftMin": 0,
+ "rightLogBase": 1,
+ "rightMax": null,
+ "rightMin": 0,
+ "threshold1": null,
+ "threshold1Color": "rgba(216, 200, 27, 0.27)",
+ "threshold2": null,
+ "threshold2Color": "rgba(234, 112, 112, 0.22)"
+ },
+ "id": 24,
+ "isNew": true,
+ "legend": {
+ "avg": false,
+ "current": false,
+ "max": false,
+ "min": false,
+ "show": true,
+ "total": false,
+ "values": false
+ },
+ "lines": true,
+ "linewidth": 2,
+ "links": [],
+ "nullPointMode": "connected",
+ "percentage": false,
+ "pointradius": 5,
+ "points": false,
+ "renderer": "flot",
+ "seriesOverrides": [],
+ "span": 6,
+ "stack": false,
+ "steppedLine": false,
+ "targets": [
+ {
+ "aggregator": "none",
+ "alias": "Pool size",
+ "app": "ambari_server",
+ "downsampleAggregator": "avg",
+ "errors": {},
+ "metric": "stomp.agent.sockJsScheduler.pool_size",
+ "precision": "default",
+ "seriesAggregator": "none",
+ "transform": "none",
+ "refId": "A"
+ },
+ {
+ "aggregator": "none",
+ "alias": "active threads",
+ "app": "ambari_server",
+ "downsampleAggregator": "avg",
+ "errors": {},
+ "metric": "stomp.agent.sockJsScheduler.active_threads",
+ "precision": "default",
+ "seriesAggregator": "none",
+ "transform": "none",
+ "refId": "B"
+ },
+ {
+ "aggregator": "none",
+ "alias": "queued tasks",
+ "app": "ambari_server",
+ "downsampleAggregator": "avg",
+ "errors": {},
+ "metric": "stomp.agent.sockJsScheduler.queued_tasks",
+ "precision": "default",
+ "seriesAggregator": "none",
+ "transform": "none",
+ "refId": "C"
+ },
+ {
+ "aggregator": "none",
+ "alias": "completed tasks",
+ "app": "ambari_server",
+ "downsampleAggregator": "avg",
+ "errors": {},
+ "metric": "stomp.agent.sockJsScheduler.completed_tasks",
+ "precision": "default",
+ "seriesAggregator": "none",
+ "transform": "none",
+ "refId": "D"
+ }
+ ],
+ "timeFrom": null,
+ "timeShift": null,
+ "title": "Agent sockJs Task Scheduler Stats",
+ "tooltip": {
+ "shared": true,
+ "value_type": "cumulative"
+ },
+ "type": "graph",
+ "xaxis": {
+ "mode": "time",
+ "show": true,
+ "values": []
+ },
+ "yaxes": [
+ {
+ "$$hashKey": "object:86",
+ "format": "none",
+ "logBase": 1,
+ "min": 0,
+ "show": true
+ },
+ {
+ "$$hashKey": "object:87",
+ "logBase": 1,
+ "min": 0,
+ "show": true
+ }
+ ],
+ "yaxis": {
+ "align": false
+ }
+ }
+ ],
+ "showTitle": true,
+ "title": "Get Sock JS Task Scheduler Stats"
+ }
+ ],
+ "time": {
+ "from": "now-6h",
+ "to": "now"
+ },
+ "timepicker": {
+ "now": true,
+ "refresh_intervals": [
+ "5s",
+ "10s",
+ "30s",
+ "1m",
+ "5m",
+ "15m",
+ "30m",
+ "1h",
+ "2h",
+ "1d"
+ ],
+ "time_options": [
+ "5m",
+ "15m",
+ "1h",
+ "6h",
+ "12h",
+ "24h",
+ "2d",
+ "7d",
+ "30d"
+ ]
+ },
+ "templating": {
+ "list": []
+ },
+ "annotations": {
+ "list": []
+ },
+ "schemaVersion": 8,
+ "version": 0,
+ "links": [
+ {
+ "asDropdown": true,
+ "icon": "external link",
+ "keepTime": true,
+ "tags": [
+ "ambari_server"
+ ],
+ "title": "Ambari Server Stomp Stats",
+ "type": "dashboards"
+ }
+ ]
+}
\ No newline at end of file
diff --git a/ambari-server/src/main/resources/custom_actions/scripts/check_host.py b/ambari-server/src/main/resources/custom_actions/scripts/check_host.py
index a8226dba19c..0d32adbdb7c 100644
--- a/ambari-server/src/main/resources/custom_actions/scripts/check_host.py
+++ b/ambari-server/src/main/resources/custom_actions/scripts/check_host.py
@@ -371,7 +371,8 @@ def execute_db_connection_check(self, config, tmp_dir):
ambari_server_hostname = config["commandParams"]["ambari_server_host"]
check_db_connection_jar_name = "DBConnectionVerification.jar"
jdk_location = config["commandParams"]["jdk_location"]
- java_home = config["commandParams"]["java_home"]
+ ambari_java_home = config["ambariLevelParams"]["ambari_java_home"]
+ java_home = ambari_java_home
db_name = config["commandParams"]["db_name"]
no_jdbc_error_message = None
@@ -596,7 +597,7 @@ def execute_db_connection_check(self, config, tmp_dir):
if isinstance(db_connection_check_command, str):
code, out = shell.call(
- split(db_connection_check_command, comments=True), shell=False
+ split(db_connection_check_command, comments=True), shell=False, quiet=True
)
else:
code, out = shell.call(db_connection_check_command, shell=False)
diff --git a/ambari-server/src/main/resources/host_scripts/alert_disk_space.py b/ambari-server/src/main/resources/host_scripts/alert_disk_space.py
index eaa7793dc95..c3ede9a4999 100644
--- a/ambari-server/src/main/resources/host_scripts/alert_disk_space.py
+++ b/ambari-server/src/main/resources/host_scripts/alert_disk_space.py
@@ -185,7 +185,7 @@ def _get_disk_usage(path=None):
free = 0
drives = []
bitmask = ctypes.windll.kernel32.GetLogicalDrives()
- for letter in string.uppercase:
+ for letter in string.ascii_uppercase:
if bitmask & 1:
drives.append(letter)
bitmask >>= 1
diff --git a/ambari-server/src/main/resources/scripts/configs.py b/ambari-server/src/main/resources/scripts/configs.py
index a3394ce85ce..11574bd467e 100644
--- a/ambari-server/src/main/resources/scripts/configs.py
+++ b/ambari-server/src/main/resources/scripts/configs.py
@@ -195,13 +195,13 @@ def read_xml_data_to_map(path):
if name != None:
name_text = name.text if name.text else ""
else:
- logger.warn(f"No name is found for one of the properties in {path}, ignoring it")
+ logger.warning(f"No name is found for one of the properties in {path}, ignoring it")
continue
if value != None:
value_text = value.text if value.text else ""
else:
- logger.warn(
+ logger.warning(
f'No value is found for "{name_text}" in {path}, using empty string for it'
)
value_text = ""
diff --git a/ambari-server/src/main/resources/scripts/export_ams_metrics.py b/ambari-server/src/main/resources/scripts/export_ams_metrics.py
index 0457a548ca0..07675526d7d 100644
--- a/ambari-server/src/main/resources/scripts/export_ams_metrics.py
+++ b/ambari-server/src/main/resources/scripts/export_ams_metrics.py
@@ -117,7 +117,7 @@ def get_data_from_url(collector_uri):
try:
response_data = json.loads(connection.read())
except Exception as e:
- logger.warn(f"Error parsing json data returned from URI: {collector_uri}")
+ logger.warning(f"Error parsing json data returned from URI: {collector_uri}")
logger.debug(str(e))
return response_data
@@ -159,7 +159,7 @@ def get_configs():
Params.END_TIME = json["END_TIME"]
Params.AGGREGATE = json["AGGREGATE"]
else:
- logger.warn(
+ logger.warning(
"Not found config file in {0}".format(
os.path.join(Params.INPUT_DIR), "configs"
)
@@ -576,7 +576,7 @@ def main():
)
if Params.START_TIME == -1:
- logger.warn(
+ logger.warning(
"No start time provided, or it is in the wrong format. Please "
"provide milliseconds since epoch or a value in YYYY-MM-DDTHH:mm:ssZ format"
)
@@ -586,7 +586,7 @@ def main():
Params.END_TIME = Utils.get_epoch(options.end_time)
if Params.END_TIME == -1:
- logger.warn(
+ logger.warning(
"No end time provided, or it is in the wrong format. Please "
"provide milliseconds since epoch or a value in YYYY-MM-DDTHH:mm:ssZ format"
)
@@ -609,7 +609,7 @@ def main():
FlaskServer(ams_metrics_processor)
else:
- logger.warn(
+ logger.warning(
"Action '{0}' not supported. Please use action 'export' for exporting AMS metrics "
"or use action 'run' for starting REST server".format(Params.ACTION)
)
diff --git a/ambari-server/src/main/resources/scripts/takeover_config_merge.py b/ambari-server/src/main/resources/scripts/takeover_config_merge.py
index b5632a667ae..66875bf6d48 100644
--- a/ambari-server/src/main/resources/scripts/takeover_config_merge.py
+++ b/ambari-server/src/main/resources/scripts/takeover_config_merge.py
@@ -136,7 +136,7 @@ def read_data_to_map(self, path):
if name != None:
name_text = name.text if name.text else ""
else:
- logger.warn(
+ logger.warning(
f"No name is found for one of the properties in {path}, ignoring it"
)
continue
@@ -144,7 +144,7 @@ def read_data_to_map(self, path):
if value != None:
value_text = value.text if value.text else ""
else:
- logger.warn(
+ logger.warning(
f'No value is found for "{name_text}" in {path}, using empty string for it'
)
value_text = ""
@@ -205,7 +205,7 @@ def get_all_supported_files_grouped_by_name(
ext in ConfigMerge.SUPPORTED_FILENAME_ENDINGS
and not ConfigMerge.SUPPORTED_FILENAME_ENDINGS[ext] in root
):
- logger.warn(f"File {file_path} is not configurable by Ambari. Skipping...")
+ logger.warning(f"File {file_path} is not configurable by Ambari. Skipping...")
continue
config_name = None
@@ -356,7 +356,7 @@ def perform_merge(self):
conflict_filename = os.path.join(
self.OUTPUT_DIR, configuration_type + "-conflicts.txt"
)
- logger.warn(
+ logger.warning(
f"You have configurations conflicts for {configuration_type}. Please check {conflict_filename}"
)
with open(conflict_filename, "w") as fp:
@@ -367,7 +367,7 @@ def perform_merge(self):
conflict_filename = os.path.join(
self.OUTPUT_DIR, configuration_type + "-attributes-conflicts.txt"
)
- logger.warn(
+ logger.warning(
f"You have property attribute conflicts for {configuration_type}. Please check {conflict_filename}"
)
with open(conflict_filename, "w") as fp:
@@ -430,7 +430,7 @@ def perform_diff(self):
if configuration_diff_output and configuration_diff_output != "":
conflict_filename = os.path.join(ConfigMerge.OUTPUT_DIR, "file-diff.txt")
- logger.warn(f"You have file diff conflicts. Please check {conflict_filename}")
+ logger.warning(f"You have file diff conflicts. Please check {conflict_filename}")
with open(conflict_filename, "w") as fp:
fp.write(configuration_diff_output)
diff --git a/ambari-server/src/main/resources/stacks/BIGTOP/3.2.0/properties/stack_features.json b/ambari-server/src/main/resources/stacks/BIGTOP/3.2.0/properties/stack_features.json
index 206f901a0b1..49d71190978 100644
--- a/ambari-server/src/main/resources/stacks/BIGTOP/3.2.0/properties/stack_features.json
+++ b/ambari-server/src/main/resources/stacks/BIGTOP/3.2.0/properties/stack_features.json
@@ -185,6 +185,11 @@
"name": "ranger_kms_pid_support",
"description": "Ranger KMS Service support pid generation",
"min_version": "3.3.0"
+ },
+ {
+ "name": "secure_zookeeper",
+ "description": "Protect ZNodes with SASL acl in secure clusters",
+ "min_version": "3.2.0"
}
]
}
diff --git a/ambari-server/src/main/resources/stacks/BIGTOP/3.2.0/services/ALLUXIO/configuration/alluxio-site-properties.xml b/ambari-server/src/main/resources/stacks/BIGTOP/3.2.0/services/ALLUXIO/configuration/alluxio-site-properties.xml
index e61c58e779f..b2c58b3417c 100755
--- a/ambari-server/src/main/resources/stacks/BIGTOP/3.2.0/services/ALLUXIO/configuration/alluxio-site-properties.xml
+++ b/ambari-server/src/main/resources/stacks/BIGTOP/3.2.0/services/ALLUXIO/configuration/alluxio-site-properties.xml
@@ -149,5 +149,6 @@ alluxio.worker.rpc.port={{alluxio_worker_rpc_port}}
alluxio.worker.web.port={{alluxio_worker_web_port}}
+
diff --git a/ambari-server/src/main/resources/stacks/BIGTOP/3.2.0/services/HDFS/package/scripts/params_linux.py b/ambari-server/src/main/resources/stacks/BIGTOP/3.2.0/services/HDFS/package/scripts/params_linux.py
index 93f88fe2f8b..be6e21b44fe 100644
--- a/ambari-server/src/main/resources/stacks/BIGTOP/3.2.0/services/HDFS/package/scripts/params_linux.py
+++ b/ambari-server/src/main/resources/stacks/BIGTOP/3.2.0/services/HDFS/package/scripts/params_linux.py
@@ -550,6 +550,9 @@
java_version = expect("/ambariLevelParams/java_version", int)
java_exec = format("{java_home}/bin/java")
+ambari_java_home = config['ambariLevelParams']['ambari_java_home']
+ambari_java_exec = format("{ambari_java_home}/bin/java")
+
hadoop_heapsize = config["configurations"]["hadoop-env"]["hadoop_heapsize"]
namenode_heapsize = config["configurations"]["hadoop-env"]["namenode_heapsize"]
namenode_opt_newsize = config["configurations"]["hadoop-env"]["namenode_opt_newsize"]
diff --git a/ambari-server/src/main/resources/stacks/BIGTOP/3.2.0/services/HDFS/package/scripts/zkfc_slave.py b/ambari-server/src/main/resources/stacks/BIGTOP/3.2.0/services/HDFS/package/scripts/zkfc_slave.py
index 1cf83a3328e..9bce519a757 100644
--- a/ambari-server/src/main/resources/stacks/BIGTOP/3.2.0/services/HDFS/package/scripts/zkfc_slave.py
+++ b/ambari-server/src/main/resources/stacks/BIGTOP/3.2.0/services/HDFS/package/scripts/zkfc_slave.py
@@ -145,8 +145,8 @@ def disable_security(self, env):
zkmigrator = ZkMigrator(
params.ha_zookeeper_quorum,
- params.java_exec,
- params.java_home,
+ params.ambari_java_exec,
+ params.ambari_java_home,
params.jaas_file,
params.hdfs_user,
)
diff --git a/ambari-server/src/main/resources/stacks/BIGTOP/3.2.0/services/HDFS/service_advisor.py b/ambari-server/src/main/resources/stacks/BIGTOP/3.2.0/services/HDFS/service_advisor.py
index fdd9ad296c2..518b648c74b 100644
--- a/ambari-server/src/main/resources/stacks/BIGTOP/3.2.0/services/HDFS/service_advisor.py
+++ b/ambari-server/src/main/resources/stacks/BIGTOP/3.2.0/services/HDFS/service_advisor.py
@@ -747,7 +747,7 @@ def recommendConfigurationsForSSO(self, configurations, clusterData, services, h
)
else:
# Since Kerberos is not enabled, we can not enable SSO
- self.logger.warn(
+ self.logger.warning(
"Enabling SSO integration for HDFS requires Kerberos, Since Kerberos is not enabled, SSO integration is not being recommended."
)
putHdfsSiteProperty("hadoop.http.authentication.type", "simple")
diff --git a/ambari-server/src/main/resources/stacks/BIGTOP/3.2.0/services/HIVE/configuration/hive-env.xml b/ambari-server/src/main/resources/stacks/BIGTOP/3.2.0/services/HIVE/configuration/hive-env.xml
index d04b194d87b..14b5f8c6c25 100644
--- a/ambari-server/src/main/resources/stacks/BIGTOP/3.2.0/services/HIVE/configuration/hive-env.xml
+++ b/ambari-server/src/main/resources/stacks/BIGTOP/3.2.0/services/HIVE/configuration/hive-env.xml
@@ -388,7 +388,7 @@ fi
export HADOOP_OPTS="$HADOOP_OPTS -Dzookeeper.sasl.client.username={{zk_principal_user}}"
{% endif %}
-export HADOOP_CLIENT_OPTS="$HADOOP_CLIENT_OPTS -Xmx${HADOOP_HEAPSIZE}m"
+export HADOOP_CLIENT_OPTS="$HADOOP_CLIENT_OPTS -Xms${HADOOP_HEAPSIZE}m -Xmx${HADOOP_HEAPSIZE}m"
export HADOOP_CLIENT_OPTS="$HADOOP_CLIENT_OPTS{{heap_dump_opts}}"
# Larger heap size may be required when running queries over large number of files or partitions.
diff --git a/ambari-server/src/main/resources/stacks/BIGTOP/3.2.0/services/HIVE/package/scripts/hive_server.py b/ambari-server/src/main/resources/stacks/BIGTOP/3.2.0/services/HIVE/package/scripts/hive_server.py
index c65dabd6723..45697d70b18 100644
--- a/ambari-server/src/main/resources/stacks/BIGTOP/3.2.0/services/HIVE/package/scripts/hive_server.py
+++ b/ambari-server/src/main/resources/stacks/BIGTOP/3.2.0/services/HIVE/package/scripts/hive_server.py
@@ -106,8 +106,8 @@ def disable_security(self, env):
zkmigrator = ZkMigrator(
params.hive_zookeeper_quorum,
- params.java_exec,
- params.java64_home,
+ params.ambari_java_exec,
+ params.ambari_java_home,
params.jaas_file,
params.hive_user,
)
diff --git a/ambari-server/src/main/resources/stacks/BIGTOP/3.2.0/services/HIVE/package/scripts/params.py b/ambari-server/src/main/resources/stacks/BIGTOP/3.2.0/services/HIVE/package/scripts/params.py
index 9e48a2b23bc..211bf37b828 100644
--- a/ambari-server/src/main/resources/stacks/BIGTOP/3.2.0/services/HIVE/package/scripts/params.py
+++ b/ambari-server/src/main/resources/stacks/BIGTOP/3.2.0/services/HIVE/package/scripts/params.py
@@ -163,6 +163,10 @@
hive_server2_hive_dir = None
hive_server2_hive_lib = None
+java64_home = config["ambariLevelParams"]["java_home"]
+ambari_java_home = config["ambariLevelParams"]["ambari_java_home"]
+ambari_java_exec = format("{ambari_java_home}/bin/java")
+java_version = expect("/ambariLevelParams/java_version", int)
# Heap dump related
heap_dump_enabled = default("/configurations/hive-env/enable_heap_dump", None)
@@ -232,7 +236,7 @@
]
hive_metastore_user_passwd = PasswordString(
get_password_from_credential_store(
- alias, provider_path, cs_lib_path, java_home, jdk_location
+ alias, provider_path, cs_lib_path, ambari_java_home, jdk_location
)
)
else:
@@ -498,10 +502,7 @@
"hive.metastore.heapsize"
]
-java64_home = config["ambariLevelParams"]["java_home"]
-ambari_java_home = config["ambariLevelParams"]["ambari_java_home"]
-ambari_java_exec = format("{ambari_java_home}/bin/java")
-java_version = expect("/ambariLevelParams/java_version", int)
+
##### MYSQL
db_name = config["configurations"]["hive-env"]["hive_database_name"]
diff --git a/ambari-server/src/main/resources/stacks/BIGTOP/3.2.0/services/SOLR/package/scripts/params.py b/ambari-server/src/main/resources/stacks/BIGTOP/3.2.0/services/SOLR/package/scripts/params.py
index 191ff73886c..cb83ba73cea 100644
--- a/ambari-server/src/main/resources/stacks/BIGTOP/3.2.0/services/SOLR/package/scripts/params.py
+++ b/ambari-server/src/main/resources/stacks/BIGTOP/3.2.0/services/SOLR/package/scripts/params.py
@@ -85,9 +85,12 @@ def get_name_from_principal(principal):
# shared configs
java_home = config["ambariLevelParams"]["java_home"]
-ambari_java_home = default("/ambariLevelParams/ambari_java_home", None)
-java64_home = ambari_java_home if ambari_java_home is not None else java_home
+ambari_java_home = config['ambariLevelParams']['ambari_java_home']
+ambari_java_exec = format("{ambari_java_home}/bin/java")
+
+java64_home = java_home
java_exec = format("{java64_home}/bin/java")
+
zookeeper_hosts_list = config["clusterHostInfo"]["zookeeper_server_hosts"]
zookeeper_hosts_list.sort()
# get comma separated list of zookeeper hosts from clusterHostInfo
diff --git a/ambari-server/src/main/resources/stacks/BIGTOP/3.2.0/services/SOLR/package/scripts/solr.py b/ambari-server/src/main/resources/stacks/BIGTOP/3.2.0/services/SOLR/package/scripts/solr.py
index 0d836b0dd8e..e4f22538ea7 100644
--- a/ambari-server/src/main/resources/stacks/BIGTOP/3.2.0/services/SOLR/package/scripts/solr.py
+++ b/ambari-server/src/main/resources/stacks/BIGTOP/3.2.0/services/SOLR/package/scripts/solr.py
@@ -166,8 +166,8 @@ def disable_security(self, env):
return
zkmigrator = ZkMigrator(
zk_host=params.zk_quorum,
- java_exec=params.java_exec,
- java_home=params.java64_home,
+ java_exec=params.ambari_java_exec,
+ java_home=params.ambari_java_home,
jaas_file=params.solr_jaas_file,
user=params.solr_user,
)
diff --git a/ambari-server/src/main/resources/stacks/BIGTOP/3.2.0/services/YARN/package/scripts/params_linux.py b/ambari-server/src/main/resources/stacks/BIGTOP/3.2.0/services/YARN/package/scripts/params_linux.py
index 112bb357be5..709e95ba4f1 100644
--- a/ambari-server/src/main/resources/stacks/BIGTOP/3.2.0/services/YARN/package/scripts/params_linux.py
+++ b/ambari-server/src/main/resources/stacks/BIGTOP/3.2.0/services/YARN/package/scripts/params_linux.py
@@ -282,6 +282,10 @@ def get_spark_version(service_name, component_name, yarn_version):
java64_home = config["ambariLevelParams"]["java_home"]
java_exec = format("{java64_home}/bin/java")
+
+ambari_java_home = config['ambariLevelParams']['ambari_java_home']
+ambari_java_exec = format("{ambari_java_home}/bin/java")
+
hadoop_ssl_enabled = default("/configurations/core-site/hadoop.ssl.enabled", False)
java_version = expect("/ambariLevelParams/java_version", int)
diff --git a/ambari-server/src/main/resources/stacks/BIGTOP/3.2.0/services/YARN/package/scripts/resourcemanager.py b/ambari-server/src/main/resources/stacks/BIGTOP/3.2.0/services/YARN/package/scripts/resourcemanager.py
index 0382ed89595..6b7ab4b4b35 100644
--- a/ambari-server/src/main/resources/stacks/BIGTOP/3.2.0/services/YARN/package/scripts/resourcemanager.py
+++ b/ambari-server/src/main/resources/stacks/BIGTOP/3.2.0/services/YARN/package/scripts/resourcemanager.py
@@ -206,8 +206,8 @@ def disable_security(self, env):
return
zkmigrator = ZkMigrator(
params.rm_zk_address,
- params.java_exec,
- params.java64_home,
+ params.ambari_java_exec,
+ params.ambari_java_home,
params.yarn_jaas_file,
params.yarn_user,
)
diff --git a/ambari-server/src/main/resources/stacks/BIGTOP/3.2.0/services/YARN/service_advisor.py b/ambari-server/src/main/resources/stacks/BIGTOP/3.2.0/services/YARN/service_advisor.py
index 1a9cf3255eb..a1345e4a9b7 100644
--- a/ambari-server/src/main/resources/stacks/BIGTOP/3.2.0/services/YARN/service_advisor.py
+++ b/ambari-server/src/main/resources/stacks/BIGTOP/3.2.0/services/YARN/service_advisor.py
@@ -1460,7 +1460,7 @@ def recommendConfigurationsForSSO(self, configurations, clusterData, services, h
)
else:
# Since Kerberos is not enabled, we can not enable SSO
- self.logger.warn(
+ self.logger.warning(
"Enabling SSO integration for Yarn requires Kerberos, Since Kerberos is not enabled, SSO integration is not being recommended."
)
putYarnSiteProperty("hadoop.http.authentication.type", "simple")
@@ -3814,7 +3814,7 @@ def recommendConfigurationsForSSO(self, configurations, clusterData, services, h
)
else:
# Since Kerberos is not enabled, we can not enable SSO
- self.logger.warn(
+ self.logger.warning(
"Enabling SSO integration for MapReduce requires Kerberos, Since Kerberos is not enabled, SSO integration is not being recommended."
)
putMapRedSiteProperty("hadoop.http.authentication.type", "simple")
diff --git a/ambari-server/src/main/resources/stacks/BIGTOP/3.2.0/services/ZEPPELIN/package/scripts/zeppelin_server.py b/ambari-server/src/main/resources/stacks/BIGTOP/3.2.0/services/ZEPPELIN/package/scripts/zeppelin_server.py
index 515bc6b7772..70e00821566 100644
--- a/ambari-server/src/main/resources/stacks/BIGTOP/3.2.0/services/ZEPPELIN/package/scripts/zeppelin_server.py
+++ b/ambari-server/src/main/resources/stacks/BIGTOP/3.2.0/services/ZEPPELIN/package/scripts/zeppelin_server.py
@@ -346,11 +346,17 @@ def start(self, env, upgrade_type=None):
+ params.zeppelin_log_file,
user=params.zeppelin_user,
)
- pidfile = glob.glob(
+ pid_files = glob.glob(
os.path.join(
status_params.zeppelin_pid_dir, "zeppelin-" + params.zeppelin_user + "*.pid"
)
- )[0]
+ )
+ if pid_files:
+ pidfile = pid_files[0]
+ else:
+ # Handle the case when no PID files are found
+ Logger.info("No Zeppelin PID files found in directory: %s" % status_params.zeppelin_pid_dir)
+ pidfile = None
Logger.info(format("Pid file is: {pidfile}"))
def status(self, env):
@@ -729,7 +735,7 @@ def update_zeppelin_interpreter(self):
del interpreter_settings[key]
hive_interactive_properties_key = "hive_interactive"
- for setting_key in interpreter_settings.keys():
+ for setting_key in list(interpreter_settings.keys()):
interpreter = interpreter_settings[setting_key]
if (
interpreter["group"] == "jdbc"
diff --git a/ambari-server/src/main/resources/stacks/BIGTOP/3.2.0/services/ZOOKEEPER/package/templates/zoo.cfg.j2 b/ambari-server/src/main/resources/stacks/BIGTOP/3.2.0/services/ZOOKEEPER/package/templates/zoo.cfg.j2
index 1fbc0cc65d9..5091428e7e8 100644
--- a/ambari-server/src/main/resources/stacks/BIGTOP/3.2.0/services/ZOOKEEPER/package/templates/zoo.cfg.j2
+++ b/ambari-server/src/main/resources/stacks/BIGTOP/3.2.0/services/ZOOKEEPER/package/templates/zoo.cfg.j2
@@ -38,7 +38,7 @@
#
#
-{% for key, value in zoo_cfg_properties_map.iteritems() -%}
+{% for key, value in zoo_cfg_properties_map.items() -%}
{{key}}={{value}}
{% endfor %}
{% for host in zookeeper_hosts -%}
diff --git a/ambari-server/src/main/resources/stacks/BIGTOP/3.3.0/services/RANGER/package/scripts/params.py b/ambari-server/src/main/resources/stacks/BIGTOP/3.3.0/services/RANGER/package/scripts/params.py
index 9f33f47254b..f470ab87ebb 100755
--- a/ambari-server/src/main/resources/stacks/BIGTOP/3.3.0/services/RANGER/package/scripts/params.py
+++ b/ambari-server/src/main/resources/stacks/BIGTOP/3.3.0/services/RANGER/package/scripts/params.py
@@ -297,11 +297,8 @@
downloaded_custom_connector = format("{tmp_dir}/{jdbc_jar_name}")
driver_curl_source = format("{jdk_location}/{jdbc_jar_name}")
-driver_curl_target = format("{java_share_dir}/{jdbc_jar_name}")
-previous_jdbc_jar = format("{java_share_dir}/{previous_jdbc_jar_name}")
-if stack_supports_config_versioning:
- driver_curl_target = format("{ranger_home}/ews/lib/{jdbc_jar_name}")
- previous_jdbc_jar = format("{ranger_home}/ews/lib/{previous_jdbc_jar_name}")
+driver_curl_target = format("{ranger_home}/ews/lib/{jdbc_jar_name}")
+previous_jdbc_jar = format("{ranger_home}/ews/lib/{previous_jdbc_jar_name}")
if db_flavor.lower() == "sqla":
downloaded_custom_connector = format("{tmp_dir}/sqla-client-jdbc.tar.gz")
diff --git a/ambari-server/src/main/resources/stacks/BIGTOP/3.3.0/services/RANGER/package/scripts/setup_ranger_xml.py b/ambari-server/src/main/resources/stacks/BIGTOP/3.3.0/services/RANGER/package/scripts/setup_ranger_xml.py
index 95f0772bba0..1bf6a145eb1 100755
--- a/ambari-server/src/main/resources/stacks/BIGTOP/3.3.0/services/RANGER/package/scripts/setup_ranger_xml.py
+++ b/ambari-server/src/main/resources/stacks/BIGTOP/3.3.0/services/RANGER/package/scripts/setup_ranger_xml.py
@@ -465,15 +465,36 @@ def password_validation(password):
def copy_jdbc_connector(ranger_home):
import params
- if params.jdbc_jar_name is None and params.driver_curl_source.endswith("/None"):
+ if params.jdbc_jar_name is None or params.driver_curl_source.endswith("/None"):
error_message = format(
"{db_flavor} jdbc driver cannot be downloaded from {jdk_location}\nPlease run 'ambari-server setup --jdbc-db={db_flavor} --jdbc-driver={{path_to_jdbc}}' on ambari-server host."
)
raise Fail(error_message)
- if params.driver_curl_source and not params.driver_curl_source.endswith("/None"):
- if params.previous_jdbc_jar and os.path.isfile(params.previous_jdbc_jar):
- File(params.previous_jdbc_jar, action="delete")
+ ModifyPropertiesFile(
+ format("{ranger_home}/install.properties"),
+ properties=params.config["configurations"]["admin-properties"],
+ owner=params.unix_user,
+ )
+
+ if params.db_flavor.lower() == "sqla":
+ ModifyPropertiesFile(
+ format("{ranger_home}/install.properties"),
+ properties={"SQL_CONNECTOR_JAR": format("{ranger_home}/ews/lib/sajdbc4.jar")},
+ owner=params.unix_user,
+ )
+ else:
+ ModifyPropertiesFile(
+ format("{ranger_home}/install.properties"),
+ properties={"SQL_CONNECTOR_JAR": format("{driver_curl_target}")},
+ owner=params.unix_user,
+ )
+
+ if params.previous_jdbc_jar and os.path.isfile(params.previous_jdbc_jar):
+ if params.previous_jdbc_jar_name == params.jdbc_jar_name:
+ Logger.info(format("{params.previous_jdbc_jar} already exists. Skip to download it."))
+ return
+ File(params.previous_jdbc_jar, action="delete")
File(
params.downloaded_custom_connector,
@@ -481,8 +502,6 @@ def copy_jdbc_connector(ranger_home):
mode=0o644,
)
- driver_curl_target = format("{ranger_home}/ews/lib/{jdbc_jar_name}")
-
if params.db_flavor.lower() == "sqla":
Execute(
("tar", "-xvf", params.downloaded_custom_connector, "-C", params.tmp_dir),
@@ -525,25 +544,6 @@ def copy_jdbc_connector(ranger_home):
File(os.path.join(ranger_home, "ews", "lib", params.jdbc_jar_name), mode=0o644)
- ModifyPropertiesFile(
- format("{ranger_home}/install.properties"),
- properties=params.config["configurations"]["admin-properties"],
- owner=params.unix_user,
- )
-
- if params.db_flavor.lower() == "sqla":
- ModifyPropertiesFile(
- format("{ranger_home}/install.properties"),
- properties={"SQL_CONNECTOR_JAR": format("{ranger_home}/ews/lib/sajdbc4.jar")},
- owner=params.unix_user,
- )
- else:
- ModifyPropertiesFile(
- format("{ranger_home}/install.properties"),
- properties={"SQL_CONNECTOR_JAR": format("{driver_curl_target}")},
- owner=params.unix_user,
- )
-
def setup_usersync(upgrade_type=None):
import params
diff --git a/ambari-server/src/main/resources/stacks/BIGTOP/3.4.0/blueprints/multinode-default.json b/ambari-server/src/main/resources/stacks/BIGTOP/3.4.0/blueprints/multinode-default.json
new file mode 100644
index 00000000000..b819d7723dc
--- /dev/null
+++ b/ambari-server/src/main/resources/stacks/BIGTOP/3.4.0/blueprints/multinode-default.json
@@ -0,0 +1,107 @@
+{
+ "configurations": [
+ ],
+ "host_groups": [
+ {
+ "name": "master_1",
+ "components": [
+ {
+ "name": "NAMENODE"
+ },
+ {
+ "name": "ZOOKEEPER_SERVER"
+ },
+ {
+ "name": "HDFS_CLIENT"
+ },
+ {
+ "name": "YARN_CLIENT"
+ }
+ ],
+ "cardinality": "1"
+ },
+ {
+ "name": "master_2",
+ "components": [
+ {
+ "name": "ZOOKEEPER_CLIENT"
+ },
+ {
+ "name": "HISTORYSERVER"
+ },
+ {
+ "name": "SECONDARY_NAMENODE"
+ },
+ {
+ "name": "HDFS_CLIENT"
+ },
+ {
+ "name": "YARN_CLIENT"
+ },
+ {
+ "name": "POSTGRESQL_SERVER"
+ }
+ ],
+ "cardinality": "1"
+ },
+ {
+ "name": "master_3",
+ "components": [
+ {
+ "name": "RESOURCEMANAGER"
+ },
+ {
+ "name": "ZOOKEEPER_SERVER"
+ }
+ ],
+ "cardinality": "1"
+ },
+ {
+ "name": "master_4",
+ "components": [
+ {
+ "name": "ZOOKEEPER_SERVER"
+ }
+ ],
+ "cardinality": "1"
+ },
+ {
+ "name": "slave",
+ "components": [
+ {
+ "name": "NODEMANAGER"
+ },
+ {
+ "name": "DATANODE"
+ }
+ ],
+ "cardinality": "${slavesCount}"
+ },
+ {
+ "name": "gateway",
+ "components": [
+ {
+ "name": "AMBARI_SERVER"
+ },
+ {
+ "name": "ZOOKEEPER_CLIENT"
+ },
+ {
+ "name": "HDFS_CLIENT"
+ },
+ {
+ "name": "YARN_CLIENT"
+ },
+ {
+ "name": "MAPREDUCE2_CLIENT"
+ }
+ ],
+ "cardinality": "1"
+ }
+ ],
+ "Blueprints": {
+ "blueprint_name": "blueprint-multinode-default",
+ "stack_name": "BIGTOP",
+ "stack_version": "3.4.0"
+ }
+}
diff --git a/ambari-server/src/main/resources/stacks/BIGTOP/3.4.0/blueprints/singlenode-default.json b/ambari-server/src/main/resources/stacks/BIGTOP/3.4.0/blueprints/singlenode-default.json
new file mode 100644
index 00000000000..5b51027fcb6
--- /dev/null
+++ b/ambari-server/src/main/resources/stacks/BIGTOP/3.4.0/blueprints/singlenode-default.json
@@ -0,0 +1,65 @@
+{
+ "configurations": [
+ ],
+ "host_groups": [
+ {
+ "name": "host_group_1",
+ "components": [
+ {
+ "name": "HISTORYSERVER"
+ },
+ {
+ "name": "NAMENODE"
+ },
+ {
+ "name": "SUPERVISOR"
+ },
+ {
+ "name": "AMBARI_SERVER"
+ },
+ {
+ "name": "APP_TIMELINE_SERVER"
+ },
+ {
+ "name": "HDFS_CLIENT"
+ },
+ {
+ "name": "NODEMANAGER"
+ },
+ {
+ "name": "DATANODE"
+ },
+ {
+ "name": "RESOURCEMANAGER"
+ },
+ {
+ "name": "ZOOKEEPER_SERVER"
+ },
+ {
+ "name": "ZOOKEEPER_CLIENT"
+ },
+ {
+ "name": "SECONDARY_NAMENODE"
+ },
+ {
+ "name": "YARN_CLIENT"
+ },
+ {
+ "name": "MAPREDUCE2_CLIENT"
+ },
+ {
+ "name": "POSTGRESQL_SERVER"
+ },
+ {
+ "name": "DRPC_SERVER"
+ }
+ ],
+ "cardinality": "1"
+ }
+ ],
+ "Blueprints": {
+ "blueprint_name": "blueprint-singlenode-default",
+ "stack_name": "BIGTOP",
+ "stack_version": "3.4.0"
+ }
+}
diff --git a/contrib/management-packs/odpi-ambari-mpack/src/main/resources/stacks/ODPi/2.0/metainfo.xml b/ambari-server/src/main/resources/stacks/BIGTOP/3.4.0/metainfo.xml
old mode 100755
new mode 100644
similarity index 93%
rename from contrib/management-packs/odpi-ambari-mpack/src/main/resources/stacks/ODPi/2.0/metainfo.xml
rename to ambari-server/src/main/resources/stacks/BIGTOP/3.4.0/metainfo.xml
index ca458226042..833c3d68ba7
--- a/contrib/management-packs/odpi-ambari-mpack/src/main/resources/stacks/ODPi/2.0/metainfo.xml
+++ b/ambari-server/src/main/resources/stacks/BIGTOP/3.4.0/metainfo.xml
@@ -17,6 +17,7 @@
-->
- true
+ true
+ 3.3.0
diff --git a/contrib/management-packs/odpi-ambari-mpack/src/main/resources/stacks/ODPi/2.0/repos/repoinfo.xml b/ambari-server/src/main/resources/stacks/BIGTOP/3.4.0/repos/repoinfo.xml
old mode 100755
new mode 100644
similarity index 53%
rename from contrib/management-packs/odpi-ambari-mpack/src/main/resources/stacks/ODPi/2.0/repos/repoinfo.xml
rename to ambari-server/src/main/resources/stacks/BIGTOP/3.4.0/repos/repoinfo.xml
index 06a16b0540c..0acd9165216
--- a/contrib/management-packs/odpi-ambari-mpack/src/main/resources/stacks/ODPi/2.0/repos/repoinfo.xml
+++ b/ambari-server/src/main/resources/stacks/BIGTOP/3.4.0/repos/repoinfo.xml
@@ -16,18 +16,25 @@
limitations under the License.
-->
-
-
- http://repo.odpi.org/ODPi/2.0/centos-6/
- ODPi-2.0
- ODPi
-
-
-
-
- http://repo.odpi.org/ODPi/2.0/ubuntu-14.04/apt
- ODPi-2.0
- odpi
-
-
+
+
+ https://bigtop-snapshot.s3.amazonaws.com/centos-8/$basearch
+ BIGTOP-3.4.0
+ bigtop
+
+
+
+
+ https://bigtop-snapshot.s3.amazonaws.com/centos-9/$basearch
+ BIGTOP-3.4.0
+ bigtop
+
+
+
+
+ https://bigtop-snapshot.s3.amazonaws.com/openeuler-22/$basearch
+ BIGTOP-3.4.0
+ bigtop
+
+
diff --git a/ambari-server/src/main/resources/stacks/BIGTOP/3.4.0/role_command_order.json b/ambari-server/src/main/resources/stacks/BIGTOP/3.4.0/role_command_order.json
new file mode 100644
index 00000000000..6f26c217d32
--- /dev/null
+++ b/ambari-server/src/main/resources/stacks/BIGTOP/3.4.0/role_command_order.json
@@ -0,0 +1,193 @@
+{
+ "_comment": "Record format:",
+ "_comment": "blockedRole-blockedCommand: [blockerRole1-blockerCommand1, blockerRole2-blockerCommand2, ...]",
+ "general_deps": {
+ "_comment": "dependencies for all cases",
+ "HBASE_MASTER-START": [
+ "ZOOKEEPER_SERVER-START"
+ ],
+ "HBASE_REGIONSERVER-START": [
+ "HBASE_MASTER-START"
+ ],
+ "APP_TIMELINE_SERVER-START": [
+ "NAMENODE-START",
+ "DATANODE-START"
+ ],
+ "WEBHCAT_SERVER-START": [
+ "NODEMANAGER-START",
+ "HIVE_SERVER-START"
+ ],
+ "WEBHCAT_SERVER-RESTART": [
+ "NODEMANAGER-RESTART",
+ "HIVE_SERVER-RESTART"
+ ],
+ "HIVE_METASTORE-START": [
+ "MYSQL_SERVER-START",
+ "NAMENODE-START"
+ ],
+ "HIVE_METASTORE-RESTART": [
+ "MYSQL_SERVER-RESTART",
+ "NAMENODE-RESTART"
+ ],
+ "HIVE_SERVER-START": [
+ "NODEMANAGER-START",
+ "MYSQL_SERVER-START"
+ ],
+ "HIVE_SERVER-RESTART": [
+ "NODEMANAGER-RESTART",
+ "MYSQL_SERVER-RESTART",
+ "ZOOKEEPER_SERVER-RESTART"
+ ],
+ "MAPREDUCE_SERVICE_CHECK-SERVICE_CHECK": [
+ "NODEMANAGER-START",
+ "RESOURCEMANAGER-START"
+ ],
+ "HBASE_SERVICE_CHECK-SERVICE_CHECK": [
+ "HBASE_MASTER-START",
+ "HBASE_REGIONSERVER-START"
+ ],
+ "HIVE_SERVICE_CHECK-SERVICE_CHECK": [
+ "HIVE_SERVER-START",
+ "HIVE_METASTORE-START",
+ "WEBHCAT_SERVER-START"
+ ],
+ "ZOOKEEPER_SERVICE_CHECK-SERVICE_CHECK": [
+ "ZOOKEEPER_SERVER-START"
+ ],
+ "ZOOKEEPER_QUORUM_SERVICE_CHECK-SERVICE_CHECK": [
+ "ZOOKEEPER_SERVER-START"
+ ],
+ "ZOOKEEPER_SERVER-STOP": [
+ "HBASE_MASTER-STOP",
+ "HBASE_REGIONSERVER-STOP",
+ "METRICS_COLLECTOR-STOP",
+ "SOLR_SERVER-STOP"
+ ],
+ "HBASE_MASTER-STOP": [
+ "HBASE_REGIONSERVER-STOP"
+ ],
+ "SOLR_SERVER-START": [
+ "ZOOKEEPER_SERVER-START"
+ ]
+ },
+ "_comment": "GLUSTERFS-specific dependencies",
+ "optional_glusterfs": {
+ "HBASE_MASTER-START": [
+ "PEERSTATUS-START"
+ ],
+ "GLUSTERFS_SERVICE_CHECK-SERVICE_CHECK": [
+ "PEERSTATUS-START"
+ ]
+ },
+ "_comment": "Dependencies that are used when GLUSTERFS is not present in cluster",
+ "optional_no_glusterfs": {
+ "METRICS_COLLECTOR-START": [
+ "NAMENODE-START",
+ "DATANODE-START",
+ "SECONDARY_NAMENODE-START",
+ "ZOOKEEPER_SERVER-START"
+ ],
+ "AMBARI_METRICS_SERVICE_CHECK-SERVICE_CHECK": [
+ "METRICS_COLLECTOR-START",
+ "HDFS_SERVICE_CHECK-SERVICE_CHECK"
+ ],
+ "SECONDARY_NAMENODE-START": [
+ "NAMENODE-START"
+ ],
+ "SECONDARY_NAMENODE-RESTART": [
+ "NAMENODE-RESTART"
+ ],
+ "RESOURCEMANAGER-START": [
+ "NAMENODE-START",
+ "DATANODE-START"
+ ],
+ "NODEMANAGER-START": [
+ "NAMENODE-START",
+ "DATANODE-START",
+ "RESOURCEMANAGER-START"
+ ],
+ "HISTORYSERVER-START": [
+ "NAMENODE-START",
+ "DATANODE-START"
+ ],
+ "HBASE_MASTER-START": [
+ "NAMENODE-START",
+ "DATANODE-START"
+ ],
+ "HIVE_SERVER-START": [
+ "DATANODE-START"
+ ],
+ "WEBHCAT_SERVER-START": [
+ "DATANODE-START"
+ ],
+ "HISTORYSERVER-RESTART": [
+ "NAMENODE-RESTART"
+ ],
+ "RESOURCEMANAGER-RESTART": [
+ "NAMENODE-RESTART"
+ ],
+ "NODEMANAGER-RESTART": [
+ "NAMENODE-RESTART"
+ ],
+ "HDFS_SERVICE_CHECK-SERVICE_CHECK": [
+ "NAMENODE-START",
+ "DATANODE-START",
+ "SECONDARY_NAMENODE-START"
+ ],
+ "MAPREDUCE2_SERVICE_CHECK-SERVICE_CHECK": [
+ "NODEMANAGER-START",
+ "RESOURCEMANAGER-START",
+ "HISTORYSERVER-START",
+ "YARN_SERVICE_CHECK-SERVICE_CHECK"
+ ],
+ "YARN_SERVICE_CHECK-SERVICE_CHECK": [
+ "NODEMANAGER-START",
+ "RESOURCEMANAGER-START"
+ ],
+ "RESOURCEMANAGER_SERVICE_CHECK-SERVICE_CHECK": [
+ "RESOURCEMANAGER-START"
+ ],
+ "NAMENODE-STOP": [
+ "RESOURCEMANAGER-STOP",
+ "NODEMANAGER-STOP",
+ "HISTORYSERVER-STOP",
+ "HBASE_MASTER-STOP",
+ "METRICS_COLLECTOR-STOP"
+ ],
+ "DATANODE-STOP": [
+ "RESOURCEMANAGER-STOP",
+ "NODEMANAGER-STOP",
+ "HISTORYSERVER-STOP",
+ "HBASE_MASTER-STOP"
+ ],
+ "METRICS_GRAFANA-START": [
+ "METRICS_COLLECTOR-START"
+ ],
+ "METRICS_COLLECTOR-STOP": [
+ "METRICS_GRAFANA-STOP"
+ ]
+ },
+ "_comment": "Dependencies that are used in HA NameNode cluster",
+ "namenode_optional_ha": {
+ "NAMENODE-START": [
+ "ZKFC-START",
+ "JOURNALNODE-START",
+ "ZOOKEEPER_SERVER-START"
+ ],
+ "ZKFC-START": [
+ "ZOOKEEPER_SERVER-START"
+ ],
+ "ZKFC-STOP": [
+ "NAMENODE-STOP"
+ ],
+ "JOURNALNODE-STOP": [
+ "NAMENODE-STOP"
+ ]
+ },
+ "_comment": "Dependencies that are used in ResourceManager HA cluster",
+ "resourcemanager_optional_ha": {
+ "RESOURCEMANAGER-START": [
+ "ZOOKEEPER_SERVER-START"
+ ]
+ }
+}
diff --git a/ambari-server/src/main/resources/stacks/BIGTOP/3.4.0/services/AMBARI-METRICS/metainfo.xml b/ambari-server/src/main/resources/stacks/BIGTOP/3.4.0/services/AMBARI-METRICS/metainfo.xml
new file mode 100644
index 00000000000..3ed06306738
--- /dev/null
+++ b/ambari-server/src/main/resources/stacks/BIGTOP/3.4.0/services/AMBARI-METRICS/metainfo.xml
@@ -0,0 +1,26 @@
+
+
+
+ 2.0
+
+
+ AMBARI_METRICS
+ common-services/AMBARI_METRICS/3.0.0
+
+
+
\ No newline at end of file
diff --git a/contrib/management-packs/odpi-ambari-mpack/src/main/resources/stacks/ODPi/2.0/services/ZOOKEEPER/metainfo.xml b/ambari-server/src/main/resources/stacks/BIGTOP/3.4.0/services/AMBARI_INFRA_SOLR/metainfo.xml
old mode 100755
new mode 100644
similarity index 79%
rename from contrib/management-packs/odpi-ambari-mpack/src/main/resources/stacks/ODPi/2.0/services/ZOOKEEPER/metainfo.xml
rename to ambari-server/src/main/resources/stacks/BIGTOP/3.4.0/services/AMBARI_INFRA_SOLR/metainfo.xml
index 0a89dc2845e..a2f36a0b661
--- a/contrib/management-packs/odpi-ambari-mpack/src/main/resources/stacks/ODPi/2.0/services/ZOOKEEPER/metainfo.xml
+++ b/ambari-server/src/main/resources/stacks/BIGTOP/3.4.0/services/AMBARI_INFRA_SOLR/metainfo.xml
@@ -16,12 +16,11 @@
limitations under the License.
-->
- 2.0
-
-
- ZOOKEEPER
- 3.4.6+odpi
- common-services/ZOOKEEPER/3.4.5
-
-
+ 2.0
+
+
+ AMBARI_INFRA_SOLR
+ common-services/AMBARI_INFRA_SOLR/3.0.0
+
+
diff --git a/ambari-server/src/main/resources/stacks/BIGTOP/3.4.0/services/FLINK/metainfo.xml b/ambari-server/src/main/resources/stacks/BIGTOP/3.4.0/services/FLINK/metainfo.xml
new file mode 100644
index 00000000000..fc3d69d656e
--- /dev/null
+++ b/ambari-server/src/main/resources/stacks/BIGTOP/3.4.0/services/FLINK/metainfo.xml
@@ -0,0 +1,26 @@
+
+
+
+ 2.0
+
+
+ FLINK
+ 1.20.0-1
+
+
+
\ No newline at end of file
diff --git a/ambari-server/src/main/resources/stacks/BIGTOP/3.4.0/services/HBASE/metainfo.xml b/ambari-server/src/main/resources/stacks/BIGTOP/3.4.0/services/HBASE/metainfo.xml
new file mode 100644
index 00000000000..7e275e7eef7
--- /dev/null
+++ b/ambari-server/src/main/resources/stacks/BIGTOP/3.4.0/services/HBASE/metainfo.xml
@@ -0,0 +1,26 @@
+
+
+
+ 2.0
+
+
+ HBASE
+ 2.6.1-1
+
+
+
\ No newline at end of file
diff --git a/ambari-server/src/main/resources/stacks/BIGTOP/3.4.0/services/HDFS/metainfo.xml b/ambari-server/src/main/resources/stacks/BIGTOP/3.4.0/services/HDFS/metainfo.xml
new file mode 100644
index 00000000000..d9d3812ec0e
--- /dev/null
+++ b/ambari-server/src/main/resources/stacks/BIGTOP/3.4.0/services/HDFS/metainfo.xml
@@ -0,0 +1,26 @@
+
+
+
+ 2.0
+
+
+ HDFS
+ 3.3.6-1
+
+
+
\ No newline at end of file
diff --git a/ambari-server/src/main/resources/stacks/BIGTOP/3.4.0/services/HIVE/metainfo.xml b/ambari-server/src/main/resources/stacks/BIGTOP/3.4.0/services/HIVE/metainfo.xml
new file mode 100644
index 00000000000..31a55ab7467
--- /dev/null
+++ b/ambari-server/src/main/resources/stacks/BIGTOP/3.4.0/services/HIVE/metainfo.xml
@@ -0,0 +1,26 @@
+
+
+
+ 2.0
+
+
+ HIVE
+ 4.0.1-1
+
+
+
\ No newline at end of file
diff --git a/ambari-server/src/main/resources/stacks/BIGTOP/3.4.0/services/KAFKA/metainfo.xml b/ambari-server/src/main/resources/stacks/BIGTOP/3.4.0/services/KAFKA/metainfo.xml
new file mode 100644
index 00000000000..d59a8a5bd29
--- /dev/null
+++ b/ambari-server/src/main/resources/stacks/BIGTOP/3.4.0/services/KAFKA/metainfo.xml
@@ -0,0 +1,26 @@
+
+
+
+ 2.0
+
+
+ KAFKA
+ 3.4.1-1
+
+
+
\ No newline at end of file
diff --git a/contrib/management-packs/odpi-ambari-mpack/src/main/resources/stacks/ODPi/2.0/services/HDFS/metainfo.xml b/ambari-server/src/main/resources/stacks/BIGTOP/3.4.0/services/KERBEROS/metainfo.xml
old mode 100755
new mode 100644
similarity index 80%
rename from contrib/management-packs/odpi-ambari-mpack/src/main/resources/stacks/ODPi/2.0/services/HDFS/metainfo.xml
rename to ambari-server/src/main/resources/stacks/BIGTOP/3.4.0/services/KERBEROS/metainfo.xml
index d6e30b71d6c..9fc0894207e
--- a/contrib/management-packs/odpi-ambari-mpack/src/main/resources/stacks/ODPi/2.0/services/HDFS/metainfo.xml
+++ b/ambari-server/src/main/resources/stacks/BIGTOP/3.4.0/services/KERBEROS/metainfo.xml
@@ -16,12 +16,11 @@
limitations under the License.
-->
- 2.0
-
-
- HDFS
- 2.7.1+odpi
- common-services/HDFS/2.1.0.2.0
-
-
+ 2.0
+
+
+ KERBEROS
+ 1.10.3-30
+
+
diff --git a/ambari-server/src/main/resources/stacks/BIGTOP/3.4.0/services/LIVY/metainfo.xml b/ambari-server/src/main/resources/stacks/BIGTOP/3.4.0/services/LIVY/metainfo.xml
new file mode 100644
index 00000000000..608b26b83cd
--- /dev/null
+++ b/ambari-server/src/main/resources/stacks/BIGTOP/3.4.0/services/LIVY/metainfo.xml
@@ -0,0 +1,27 @@
+
+
+
+ 2.0
+
+
+ LIVY
+ 0.8.0-1
+
+
+
\ No newline at end of file
diff --git a/ambari-server/src/main/resources/stacks/BIGTOP/3.4.0/services/RANGER/metainfo.xml b/ambari-server/src/main/resources/stacks/BIGTOP/3.4.0/services/RANGER/metainfo.xml
new file mode 100644
index 00000000000..8612150434d
--- /dev/null
+++ b/ambari-server/src/main/resources/stacks/BIGTOP/3.4.0/services/RANGER/metainfo.xml
@@ -0,0 +1,27 @@
+
+
+
+ 2.0
+
+
+ RANGER
+ 2.5.0-1
+
+
+
\ No newline at end of file
diff --git a/ambari-server/src/main/resources/stacks/BIGTOP/3.4.0/services/RANGER_KMS/metainfo.xml b/ambari-server/src/main/resources/stacks/BIGTOP/3.4.0/services/RANGER_KMS/metainfo.xml
new file mode 100644
index 00000000000..966a20c85cf
--- /dev/null
+++ b/ambari-server/src/main/resources/stacks/BIGTOP/3.4.0/services/RANGER_KMS/metainfo.xml
@@ -0,0 +1,27 @@
+
+
+
+ 2.0
+
+
+ RANGER_KMS
+ 2.5.0-1
+
+
+
\ No newline at end of file
diff --git a/ambari-server/src/main/resources/stacks/BIGTOP/3.4.0/services/SOLR/metainfo.xml b/ambari-server/src/main/resources/stacks/BIGTOP/3.4.0/services/SOLR/metainfo.xml
new file mode 100644
index 00000000000..2b9a064c5d6
--- /dev/null
+++ b/ambari-server/src/main/resources/stacks/BIGTOP/3.4.0/services/SOLR/metainfo.xml
@@ -0,0 +1,26 @@
+
+
+
+ 2.0
+
+
+ SOLR
+ 8.11.4-1
+
+
+
\ No newline at end of file
diff --git a/ambari-server/src/main/resources/stacks/BIGTOP/3.4.0/services/SPARK/metainfo.xml b/ambari-server/src/main/resources/stacks/BIGTOP/3.4.0/services/SPARK/metainfo.xml
new file mode 100644
index 00000000000..8e48df27d4f
--- /dev/null
+++ b/ambari-server/src/main/resources/stacks/BIGTOP/3.4.0/services/SPARK/metainfo.xml
@@ -0,0 +1,27 @@
+
+
+
+ 2.0
+
+
+ SPARK
+ 3.5.3-1
+
+
+
\ No newline at end of file
diff --git a/ambari-server/src/main/resources/stacks/BIGTOP/3.4.0/services/TEZ/metainfo.xml b/ambari-server/src/main/resources/stacks/BIGTOP/3.4.0/services/TEZ/metainfo.xml
new file mode 100644
index 00000000000..a2475af4a74
--- /dev/null
+++ b/ambari-server/src/main/resources/stacks/BIGTOP/3.4.0/services/TEZ/metainfo.xml
@@ -0,0 +1,27 @@
+
+
+
+ 2.0
+
+
+ TEZ
+ Tez
+ 0.10.4-1
+
+
+
\ No newline at end of file
diff --git a/ambari-server/src/main/resources/stacks/BIGTOP/3.4.0/services/YARN/metainfo.xml b/ambari-server/src/main/resources/stacks/BIGTOP/3.4.0/services/YARN/metainfo.xml
new file mode 100644
index 00000000000..0718d496967
--- /dev/null
+++ b/ambari-server/src/main/resources/stacks/BIGTOP/3.4.0/services/YARN/metainfo.xml
@@ -0,0 +1,31 @@
+
+
+
+
+ 2.0
+
+
+ YARN
+ 3.3.6-1
+
+
+ MAPREDUCE2
+ 3.3.6-1
+
+
+
\ No newline at end of file
diff --git a/ambari-server/src/main/resources/stacks/BIGTOP/3.4.0/services/ZEPPELIN/metainfo.xml b/ambari-server/src/main/resources/stacks/BIGTOP/3.4.0/services/ZEPPELIN/metainfo.xml
new file mode 100644
index 00000000000..0d2c4d0035f
--- /dev/null
+++ b/ambari-server/src/main/resources/stacks/BIGTOP/3.4.0/services/ZEPPELIN/metainfo.xml
@@ -0,0 +1,26 @@
+
+
+
+ 2.0
+
+
+ ZEPPELIN
+ 0.11.2-1
+
+
+
\ No newline at end of file
diff --git a/contrib/management-packs/odpi-ambari-mpack/src/main/resources/stacks/ODPi/2.0/services/KERBEROS/metainfo.xml b/ambari-server/src/main/resources/stacks/BIGTOP/3.4.0/services/ZOOKEEPER/metainfo.xml
old mode 100755
new mode 100644
similarity index 82%
rename from contrib/management-packs/odpi-ambari-mpack/src/main/resources/stacks/ODPi/2.0/services/KERBEROS/metainfo.xml
rename to ambari-server/src/main/resources/stacks/BIGTOP/3.4.0/services/ZOOKEEPER/metainfo.xml
index 25cfcc6cd63..6788d9d230c
--- a/contrib/management-packs/odpi-ambari-mpack/src/main/resources/stacks/ODPi/2.0/services/KERBEROS/metainfo.xml
+++ b/ambari-server/src/main/resources/stacks/BIGTOP/3.4.0/services/ZOOKEEPER/metainfo.xml
@@ -16,11 +16,11 @@
limitations under the License.
-->
- 2.0
-
-
- KERBEROS
- common-services/KERBEROS/1.10.3-10
-
-
+ 2.0
+
+
+ ZOOKEEPER
+ 3.8.4-1
+
+
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/H2DatabaseCleaner.java b/ambari-server/src/test/java/org/apache/ambari/server/H2DatabaseCleaner.java
index 047c600a904..5c60a01085e 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/H2DatabaseCleaner.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/H2DatabaseCleaner.java
@@ -26,9 +26,9 @@
import java.util.ArrayList;
import java.util.List;
-import javax.persistence.EntityManager;
-import javax.persistence.Query;
-import javax.persistence.metamodel.EntityType;
+import jakarta.persistence.EntityManager;
+import jakarta.persistence.Query;
+import jakarta.persistence.metamodel.EntityType;
import org.apache.ambari.server.configuration.Configuration;
import org.apache.ambari.server.orm.DBAccessorImpl;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/actionmanager/TestActionDBAccessorImpl.java b/ambari-server/src/test/java/org/apache/ambari/server/actionmanager/TestActionDBAccessorImpl.java
index 94799cc6382..3ebed6a288a 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/actionmanager/TestActionDBAccessorImpl.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/actionmanager/TestActionDBAccessorImpl.java
@@ -27,8 +27,8 @@
import java.util.Collections;
import java.util.List;
-import javax.persistence.EntityManager;
-import javax.persistence.NamedQuery;
+import jakarta.persistence.EntityManager;
+import jakarta.persistence.NamedQuery;
import org.apache.ambari.server.AmbariException;
import org.apache.ambari.server.H2DatabaseCleaner;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/actionmanager/TestActionScheduler.java b/ambari-server/src/test/java/org/apache/ambari/server/actionmanager/TestActionScheduler.java
index 17d8ce9a7d3..5952df1b46d 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/actionmanager/TestActionScheduler.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/actionmanager/TestActionScheduler.java
@@ -60,7 +60,7 @@
import java.util.concurrent.TimeUnit;
import java.util.concurrent.atomic.AtomicInteger;
-import javax.persistence.EntityManager;
+import jakarta.persistence.EntityManager;
import org.apache.ambari.server.AmbariException;
import org.apache.ambari.server.H2DatabaseCleaner;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/actionmanager/TestActionSchedulerThreading.java b/ambari-server/src/test/java/org/apache/ambari/server/actionmanager/TestActionSchedulerThreading.java
index 96269f8f183..31ca0885bc8 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/actionmanager/TestActionSchedulerThreading.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/actionmanager/TestActionSchedulerThreading.java
@@ -26,7 +26,7 @@
import java.util.UUID;
import java.util.concurrent.Semaphore;
-import javax.persistence.EntityManager;
+import jakarta.persistence.EntityManager;
import org.apache.ambari.server.AmbariException;
import org.apache.ambari.server.H2DatabaseCleaner;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/api/AmbariCsrfProtectionFilterTest.java b/ambari-server/src/test/java/org/apache/ambari/server/api/AmbariCsrfProtectionFilterTest.java
index d46f9aca65c..8eb097d65df 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/api/AmbariCsrfProtectionFilterTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/api/AmbariCsrfProtectionFilterTest.java
@@ -24,9 +24,9 @@
import java.io.IOException;
-import javax.ws.rs.WebApplicationException;
-import javax.ws.rs.container.ContainerRequestContext;
-import javax.ws.rs.core.MultivaluedHashMap;
+import jakarta.ws.rs.WebApplicationException;
+import jakarta.ws.rs.container.ContainerRequestContext;
+import jakarta.ws.rs.core.MultivaluedHashMap;
import org.junit.Test;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/api/AmbariErrorHandlerIT.java b/ambari-server/src/test/java/org/apache/ambari/server/api/AmbariErrorHandlerIT.java
index 29e09fd3865..e343ed6338c 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/api/AmbariErrorHandlerIT.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/api/AmbariErrorHandlerIT.java
@@ -27,14 +27,14 @@
import java.util.Map;
import java.util.Scanner;
-import javax.servlet.ServletException;
-import javax.servlet.http.HttpServlet;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
-import javax.ws.rs.client.Client;
-import javax.ws.rs.client.ClientBuilder;
-import javax.ws.rs.client.WebTarget;
-import javax.ws.rs.core.Response;
+import jakarta.servlet.ServletException;
+import jakarta.servlet.http.HttpServlet;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
+import jakarta.ws.rs.client.Client;
+import jakarta.ws.rs.client.ClientBuilder;
+import jakarta.ws.rs.client.WebTarget;
+import jakarta.ws.rs.core.Response;
import org.apache.ambari.server.security.authentication.jwt.JwtAuthenticationPropertiesProvider;
import org.easymock.EasyMockSupport;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/api/AmbariErrorHandlerTest.java b/ambari-server/src/test/java/org/apache/ambari/server/api/AmbariErrorHandlerTest.java
index c28b7e5b78c..0e599c02dc6 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/api/AmbariErrorHandlerTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/api/AmbariErrorHandlerTest.java
@@ -30,9 +30,9 @@
import java.io.StringWriter;
import java.util.UUID;
-import javax.servlet.RequestDispatcher;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
+import jakarta.servlet.RequestDispatcher;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
import org.apache.ambari.server.security.authentication.jwt.JwtAuthenticationPropertiesProvider;
import org.apache.http.HttpStatus;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/api/AmbariViewErrorHandlerProxyTest.java b/ambari-server/src/test/java/org/apache/ambari/server/api/AmbariViewErrorHandlerProxyTest.java
index 8718bbf4f6c..b2670ea0378 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/api/AmbariViewErrorHandlerProxyTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/api/AmbariViewErrorHandlerProxyTest.java
@@ -26,9 +26,9 @@
import static org.easymock.EasyMock.replay;
import static org.easymock.EasyMock.verify;
-import javax.servlet.RequestDispatcher;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
+import jakarta.servlet.RequestDispatcher;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
import org.apache.http.HttpStatus;
import org.easymock.Capture;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/api/ContentTypeOverrideFilterTest.java b/ambari-server/src/test/java/org/apache/ambari/server/api/ContentTypeOverrideFilterTest.java
index 048f6c8f253..1e0cb1ed4e0 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/api/ContentTypeOverrideFilterTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/api/ContentTypeOverrideFilterTest.java
@@ -23,14 +23,14 @@
import java.io.IOException;
import java.util.Vector;
-import javax.servlet.FilterChain;
-import javax.servlet.ServletException;
-import javax.servlet.ServletRequest;
-import javax.servlet.ServletResponse;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
-import javax.ws.rs.core.HttpHeaders;
-import javax.ws.rs.core.MediaType;
+import jakarta.servlet.FilterChain;
+import jakarta.servlet.ServletException;
+import jakarta.servlet.ServletRequest;
+import jakarta.servlet.ServletResponse;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
+import jakarta.ws.rs.core.HttpHeaders;
+import jakarta.ws.rs.core.MediaType;
import org.easymock.EasyMockRule;
import org.easymock.EasyMockSupport;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/api/UserNameOverrideFilterTest.java b/ambari-server/src/test/java/org/apache/ambari/server/api/UserNameOverrideFilterTest.java
index 6d0635e4e91..90bad9506fb 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/api/UserNameOverrideFilterTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/api/UserNameOverrideFilterTest.java
@@ -30,10 +30,10 @@
import java.net.URLEncoder;
import java.util.regex.Matcher;
-import javax.servlet.FilterChain;
-import javax.servlet.ServletRequest;
-import javax.servlet.ServletResponse;
-import javax.servlet.http.HttpServletRequest;
+import jakarta.servlet.FilterChain;
+import jakarta.servlet.ServletRequest;
+import jakarta.servlet.ServletResponse;
+import jakarta.servlet.http.HttpServletRequest;
import org.apache.ambari.server.security.authorization.AuthorizationHelper;
import org.easymock.Capture;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/api/query/JpaSortBuilderTest.java b/ambari-server/src/test/java/org/apache/ambari/server/api/query/JpaSortBuilderTest.java
index 5798de0a26f..74cd3818dcc 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/api/query/JpaSortBuilderTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/api/query/JpaSortBuilderTest.java
@@ -21,11 +21,11 @@
import java.util.List;
import java.util.Set;
-import javax.persistence.EntityManager;
-import javax.persistence.criteria.CriteriaQuery;
-import javax.persistence.criteria.Order;
-import javax.persistence.criteria.Root;
-import javax.persistence.metamodel.SingularAttribute;
+import jakarta.persistence.EntityManager;
+import jakarta.persistence.criteria.CriteriaQuery;
+import jakarta.persistence.criteria.Order;
+import jakarta.persistence.criteria.Root;
+import jakarta.persistence.metamodel.SingularAttribute;
import org.apache.ambari.server.H2DatabaseCleaner;
import org.apache.ambari.server.controller.internal.AlertHistoryResourceProvider;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/api/services/ActionServiceTest.java b/ambari-server/src/test/java/org/apache/ambari/server/api/services/ActionServiceTest.java
index 78bd1eba0da..976c6bda56b 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/api/services/ActionServiceTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/api/services/ActionServiceTest.java
@@ -24,8 +24,8 @@
import java.util.ArrayList;
import java.util.List;
-import javax.ws.rs.core.HttpHeaders;
-import javax.ws.rs.core.UriInfo;
+import jakarta.ws.rs.core.HttpHeaders;
+import jakarta.ws.rs.core.UriInfo;
import org.apache.ambari.server.api.resources.ResourceInstance;
import org.apache.ambari.server.api.services.parsers.RequestBodyParser;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/api/services/AmbariMetaInfoTest.java b/ambari-server/src/test/java/org/apache/ambari/server/api/services/AmbariMetaInfoTest.java
index 11c19096d92..134f3e47df7 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/api/services/AmbariMetaInfoTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/api/services/AmbariMetaInfoTest.java
@@ -40,7 +40,7 @@
import java.util.Set;
import java.util.UUID;
-import javax.persistence.EntityManager;
+import jakarta.persistence.EntityManager;
import org.apache.ambari.server.AmbariException;
import org.apache.ambari.server.H2DatabaseCleaner;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/api/services/BaseRequestTest.java b/ambari-server/src/test/java/org/apache/ambari/server/api/services/BaseRequestTest.java
index 819c5c75824..ae84f2c7ca7 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/api/services/BaseRequestTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/api/services/BaseRequestTest.java
@@ -35,10 +35,10 @@
import java.util.Map;
import java.util.Set;
-import javax.ws.rs.core.HttpHeaders;
-import javax.ws.rs.core.MultivaluedHashMap;
-import javax.ws.rs.core.MultivaluedMap;
-import javax.ws.rs.core.UriInfo;
+import jakarta.ws.rs.core.HttpHeaders;
+import jakarta.ws.rs.core.MultivaluedHashMap;
+import jakarta.ws.rs.core.MultivaluedMap;
+import jakarta.ws.rs.core.UriInfo;
import org.apache.ambari.server.api.handlers.RequestHandler;
import org.apache.ambari.server.api.predicate.InvalidQueryException;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/api/services/BaseServiceTest.java b/ambari-server/src/test/java/org/apache/ambari/server/api/services/BaseServiceTest.java
index a126b7fd9e1..51eabdbfe76 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/api/services/BaseServiceTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/api/services/BaseServiceTest.java
@@ -35,9 +35,9 @@
import java.util.List;
import java.util.Map;
-import javax.ws.rs.core.HttpHeaders;
-import javax.ws.rs.core.Response;
-import javax.ws.rs.core.UriInfo;
+import jakarta.ws.rs.core.HttpHeaders;
+import jakarta.ws.rs.core.Response;
+import jakarta.ws.rs.core.UriInfo;
import org.apache.ambari.server.api.resources.ResourceInstance;
import org.apache.ambari.server.api.services.parsers.BodyParseException;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/api/services/BlueprintServiceTest.java b/ambari-server/src/test/java/org/apache/ambari/server/api/services/BlueprintServiceTest.java
index 0dc311ba5bd..2336b477c2b 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/api/services/BlueprintServiceTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/api/services/BlueprintServiceTest.java
@@ -24,8 +24,8 @@
import java.util.ArrayList;
import java.util.List;
-import javax.ws.rs.core.HttpHeaders;
-import javax.ws.rs.core.UriInfo;
+import jakarta.ws.rs.core.HttpHeaders;
+import jakarta.ws.rs.core.UriInfo;
import org.apache.ambari.server.api.resources.ResourceInstance;
import org.apache.ambari.server.api.services.parsers.RequestBodyParser;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/api/services/ClusterKerberosDescriptorServiceTest.java b/ambari-server/src/test/java/org/apache/ambari/server/api/services/ClusterKerberosDescriptorServiceTest.java
index ab83dfdfbcc..706f0515da3 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/api/services/ClusterKerberosDescriptorServiceTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/api/services/ClusterKerberosDescriptorServiceTest.java
@@ -24,8 +24,8 @@
import java.util.ArrayList;
import java.util.List;
-import javax.ws.rs.core.HttpHeaders;
-import javax.ws.rs.core.UriInfo;
+import jakarta.ws.rs.core.HttpHeaders;
+import jakarta.ws.rs.core.UriInfo;
import org.apache.ambari.server.api.resources.ResourceInstance;
import org.apache.ambari.server.api.services.parsers.RequestBodyParser;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/api/services/ClusterPrivilegeServiceTest.java b/ambari-server/src/test/java/org/apache/ambari/server/api/services/ClusterPrivilegeServiceTest.java
index f55a162c350..710383a6a89 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/api/services/ClusterPrivilegeServiceTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/api/services/ClusterPrivilegeServiceTest.java
@@ -22,8 +22,8 @@
import java.util.ArrayList;
import java.util.List;
-import javax.ws.rs.core.HttpHeaders;
-import javax.ws.rs.core.UriInfo;
+import jakarta.ws.rs.core.HttpHeaders;
+import jakarta.ws.rs.core.UriInfo;
import org.apache.ambari.server.api.resources.ResourceInstance;
import org.apache.ambari.server.api.services.parsers.RequestBodyParser;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/api/services/ClusterServiceTest.java b/ambari-server/src/test/java/org/apache/ambari/server/api/services/ClusterServiceTest.java
index deed296b29d..0972d17aa98 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/api/services/ClusterServiceTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/api/services/ClusterServiceTest.java
@@ -24,8 +24,8 @@
import java.util.ArrayList;
import java.util.List;
-import javax.ws.rs.core.HttpHeaders;
-import javax.ws.rs.core.UriInfo;
+import jakarta.ws.rs.core.HttpHeaders;
+import jakarta.ws.rs.core.UriInfo;
import org.apache.ambari.server.api.resources.ResourceInstance;
import org.apache.ambari.server.api.services.parsers.RequestBodyParser;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/api/services/ClusterStackVersionServiceTest.java b/ambari-server/src/test/java/org/apache/ambari/server/api/services/ClusterStackVersionServiceTest.java
index 838184c99da..bd398a83069 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/api/services/ClusterStackVersionServiceTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/api/services/ClusterStackVersionServiceTest.java
@@ -23,8 +23,8 @@
import java.util.List;
import java.util.Map;
-import javax.ws.rs.core.HttpHeaders;
-import javax.ws.rs.core.UriInfo;
+import jakarta.ws.rs.core.HttpHeaders;
+import jakarta.ws.rs.core.UriInfo;
import org.apache.ambari.server.api.resources.ResourceInstance;
import org.apache.ambari.server.api.services.parsers.RequestBodyParser;
@@ -66,7 +66,7 @@ public List getTestInvocations() throws Exception {
public void testGetRepositoryVersionService() {
ClusterStackVersionService clusterStackVersionService = new TestClusterStackVersionService("cluster");
RepositoryVersionService rvs =
- clusterStackVersionService.getRepositoryVersionService(EasyMock.createMock(javax.ws.rs.core.Request.class), "1");
+ clusterStackVersionService.getRepositoryVersionService(EasyMock.createMock(jakarta.ws.rs.core.Request.class), "1");
TestCase.assertNotNull(rvs);
}
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/api/services/ComponentServiceTest.java b/ambari-server/src/test/java/org/apache/ambari/server/api/services/ComponentServiceTest.java
index e4285d09604..0d37538158a 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/api/services/ComponentServiceTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/api/services/ComponentServiceTest.java
@@ -26,8 +26,8 @@
import java.util.ArrayList;
import java.util.List;
-import javax.ws.rs.core.HttpHeaders;
-import javax.ws.rs.core.UriInfo;
+import jakarta.ws.rs.core.HttpHeaders;
+import jakarta.ws.rs.core.UriInfo;
import org.apache.ambari.server.api.resources.ResourceInstance;
import org.apache.ambari.server.api.services.parsers.RequestBodyParser;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/api/services/ConfigGroupServiceTest.java b/ambari-server/src/test/java/org/apache/ambari/server/api/services/ConfigGroupServiceTest.java
index 924cf8679f0..c1beef25b09 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/api/services/ConfigGroupServiceTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/api/services/ConfigGroupServiceTest.java
@@ -23,8 +23,8 @@
import java.util.ArrayList;
import java.util.List;
-import javax.ws.rs.core.HttpHeaders;
-import javax.ws.rs.core.UriInfo;
+import jakarta.ws.rs.core.HttpHeaders;
+import jakarta.ws.rs.core.UriInfo;
import org.apache.ambari.server.api.resources.ResourceInstance;
import org.apache.ambari.server.api.services.parsers.RequestBodyParser;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/api/services/ConfigurationServiceTest.java b/ambari-server/src/test/java/org/apache/ambari/server/api/services/ConfigurationServiceTest.java
index 679e645150f..80c29d2ac5a 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/api/services/ConfigurationServiceTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/api/services/ConfigurationServiceTest.java
@@ -23,8 +23,8 @@
import java.util.ArrayList;
import java.util.List;
-import javax.ws.rs.core.HttpHeaders;
-import javax.ws.rs.core.UriInfo;
+import jakarta.ws.rs.core.HttpHeaders;
+import jakarta.ws.rs.core.UriInfo;
import org.apache.ambari.server.api.resources.ResourceInstance;
import org.apache.ambari.server.api.services.parsers.RequestBodyParser;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/api/services/CredentialServiceTest.java b/ambari-server/src/test/java/org/apache/ambari/server/api/services/CredentialServiceTest.java
index 73d338328ad..6fb9e5d7e75 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/api/services/CredentialServiceTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/api/services/CredentialServiceTest.java
@@ -24,8 +24,8 @@
import java.util.ArrayList;
import java.util.List;
-import javax.ws.rs.core.HttpHeaders;
-import javax.ws.rs.core.UriInfo;
+import jakarta.ws.rs.core.HttpHeaders;
+import jakarta.ws.rs.core.UriInfo;
import org.apache.ambari.server.api.resources.ResourceInstance;
import org.apache.ambari.server.api.services.parsers.RequestBodyParser;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/api/services/DeleteRequestTest.java b/ambari-server/src/test/java/org/apache/ambari/server/api/services/DeleteRequestTest.java
index f0c335ca3da..9ff943b4287 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/api/services/DeleteRequestTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/api/services/DeleteRequestTest.java
@@ -20,8 +20,8 @@
import static org.junit.Assert.assertSame;
-import javax.ws.rs.core.HttpHeaders;
-import javax.ws.rs.core.UriInfo;
+import jakarta.ws.rs.core.HttpHeaders;
+import jakarta.ws.rs.core.UriInfo;
import org.apache.ambari.server.api.handlers.RequestHandler;
import org.apache.ambari.server.api.predicate.PredicateCompiler;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/api/services/ExtensionsServiceTest.java b/ambari-server/src/test/java/org/apache/ambari/server/api/services/ExtensionsServiceTest.java
index 0ce14ccc9dc..5ea9e234ddf 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/api/services/ExtensionsServiceTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/api/services/ExtensionsServiceTest.java
@@ -24,8 +24,8 @@
import java.util.ArrayList;
import java.util.List;
-import javax.ws.rs.core.HttpHeaders;
-import javax.ws.rs.core.UriInfo;
+import jakarta.ws.rs.core.HttpHeaders;
+import jakarta.ws.rs.core.UriInfo;
import org.apache.ambari.server.api.resources.ResourceInstance;
import org.apache.ambari.server.api.services.parsers.RequestBodyParser;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/api/services/FeedServiceTest.java b/ambari-server/src/test/java/org/apache/ambari/server/api/services/FeedServiceTest.java
index 2ddd161b81d..8bba0091db5 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/api/services/FeedServiceTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/api/services/FeedServiceTest.java
@@ -24,8 +24,8 @@
import java.util.ArrayList;
import java.util.List;
-import javax.ws.rs.core.HttpHeaders;
-import javax.ws.rs.core.UriInfo;
+import jakarta.ws.rs.core.HttpHeaders;
+import jakarta.ws.rs.core.UriInfo;
import org.apache.ambari.server.api.resources.ResourceInstance;
import org.apache.ambari.server.api.services.parsers.RequestBodyParser;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/api/services/GetRequestTest.java b/ambari-server/src/test/java/org/apache/ambari/server/api/services/GetRequestTest.java
index 854e2aefb23..a1e12497665 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/api/services/GetRequestTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/api/services/GetRequestTest.java
@@ -20,8 +20,8 @@
import static org.junit.Assert.assertSame;
-import javax.ws.rs.core.HttpHeaders;
-import javax.ws.rs.core.UriInfo;
+import jakarta.ws.rs.core.HttpHeaders;
+import jakarta.ws.rs.core.UriInfo;
import org.apache.ambari.server.api.handlers.RequestHandler;
import org.apache.ambari.server.api.predicate.PredicateCompiler;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/api/services/GroupServiceTest.java b/ambari-server/src/test/java/org/apache/ambari/server/api/services/GroupServiceTest.java
index e3bb1c1375b..f28c13e614c 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/api/services/GroupServiceTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/api/services/GroupServiceTest.java
@@ -23,8 +23,8 @@
import java.util.List;
import java.util.Map;
-import javax.ws.rs.core.HttpHeaders;
-import javax.ws.rs.core.UriInfo;
+import jakarta.ws.rs.core.HttpHeaders;
+import jakarta.ws.rs.core.UriInfo;
import org.apache.ambari.server.api.resources.ResourceInstance;
import org.apache.ambari.server.api.services.groups.GroupService;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/api/services/HostComponentServiceTest.java b/ambari-server/src/test/java/org/apache/ambari/server/api/services/HostComponentServiceTest.java
index ffe4f4088cb..62220091461 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/api/services/HostComponentServiceTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/api/services/HostComponentServiceTest.java
@@ -25,8 +25,8 @@
import java.util.ArrayList;
import java.util.List;
-import javax.ws.rs.core.HttpHeaders;
-import javax.ws.rs.core.UriInfo;
+import jakarta.ws.rs.core.HttpHeaders;
+import jakarta.ws.rs.core.UriInfo;
import org.apache.ambari.server.api.resources.ResourceInstance;
import org.apache.ambari.server.api.services.parsers.RequestBodyParser;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/api/services/HostKerberosIdentityServiceTest.java b/ambari-server/src/test/java/org/apache/ambari/server/api/services/HostKerberosIdentityServiceTest.java
index c9200b0f2a2..05e2d9f6913 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/api/services/HostKerberosIdentityServiceTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/api/services/HostKerberosIdentityServiceTest.java
@@ -26,8 +26,8 @@
import java.util.ArrayList;
import java.util.List;
-import javax.ws.rs.core.HttpHeaders;
-import javax.ws.rs.core.UriInfo;
+import jakarta.ws.rs.core.HttpHeaders;
+import jakarta.ws.rs.core.UriInfo;
import org.apache.ambari.server.api.resources.ResourceInstance;
import org.apache.ambari.server.api.services.parsers.RequestBodyParser;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/api/services/HostServiceTest.java b/ambari-server/src/test/java/org/apache/ambari/server/api/services/HostServiceTest.java
index 33eb12ceef8..af0c68eae36 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/api/services/HostServiceTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/api/services/HostServiceTest.java
@@ -25,8 +25,8 @@
import java.util.ArrayList;
import java.util.List;
-import javax.ws.rs.core.HttpHeaders;
-import javax.ws.rs.core.UriInfo;
+import jakarta.ws.rs.core.HttpHeaders;
+import jakarta.ws.rs.core.UriInfo;
import org.apache.ambari.server.api.resources.ResourceInstance;
import org.apache.ambari.server.api.services.parsers.RequestBodyParser;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/api/services/HostStackVersionServiceTest.java b/ambari-server/src/test/java/org/apache/ambari/server/api/services/HostStackVersionServiceTest.java
index 6e2d66588ae..aacd972035b 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/api/services/HostStackVersionServiceTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/api/services/HostStackVersionServiceTest.java
@@ -23,8 +23,8 @@
import java.util.List;
import java.util.Map;
-import javax.ws.rs.core.HttpHeaders;
-import javax.ws.rs.core.UriInfo;
+import jakarta.ws.rs.core.HttpHeaders;
+import jakarta.ws.rs.core.UriInfo;
import org.apache.ambari.server.api.resources.ResourceInstance;
import org.apache.ambari.server.api.services.parsers.RequestBodyParser;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/api/services/InstanceServiceTest.java b/ambari-server/src/test/java/org/apache/ambari/server/api/services/InstanceServiceTest.java
index 34fa73a18dd..e7c3843b813 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/api/services/InstanceServiceTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/api/services/InstanceServiceTest.java
@@ -25,8 +25,8 @@
import java.util.ArrayList;
import java.util.List;
-import javax.ws.rs.core.HttpHeaders;
-import javax.ws.rs.core.UriInfo;
+import jakarta.ws.rs.core.HttpHeaders;
+import jakarta.ws.rs.core.UriInfo;
import org.apache.ambari.server.api.resources.ResourceInstance;
import org.apache.ambari.server.api.services.parsers.RequestBodyParser;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/api/services/JobServiceTest.java b/ambari-server/src/test/java/org/apache/ambari/server/api/services/JobServiceTest.java
index 128b3457859..e425f8f0a9b 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/api/services/JobServiceTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/api/services/JobServiceTest.java
@@ -22,8 +22,8 @@
import java.util.ArrayList;
import java.util.List;
-import javax.ws.rs.core.HttpHeaders;
-import javax.ws.rs.core.UriInfo;
+import jakarta.ws.rs.core.HttpHeaders;
+import jakarta.ws.rs.core.UriInfo;
import org.apache.ambari.server.api.resources.ResourceInstance;
import org.apache.ambari.server.api.services.parsers.RequestBodyParser;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/api/services/LdapSyncEventServiceTest.java b/ambari-server/src/test/java/org/apache/ambari/server/api/services/LdapSyncEventServiceTest.java
index ac3454f3652..b5f6a639372 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/api/services/LdapSyncEventServiceTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/api/services/LdapSyncEventServiceTest.java
@@ -23,8 +23,8 @@
import java.util.List;
import java.util.Map;
-import javax.ws.rs.core.HttpHeaders;
-import javax.ws.rs.core.UriInfo;
+import jakarta.ws.rs.core.HttpHeaders;
+import jakarta.ws.rs.core.UriInfo;
import org.apache.ambari.server.api.resources.ResourceInstance;
import org.apache.ambari.server.api.services.parsers.RequestBodyParser;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/api/services/LoggingServiceTest.java b/ambari-server/src/test/java/org/apache/ambari/server/api/services/LoggingServiceTest.java
index 054a06be73f..b957f7869a0 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/api/services/LoggingServiceTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/api/services/LoggingServiceTest.java
@@ -23,9 +23,9 @@
import java.net.HttpURLConnection;
-import javax.ws.rs.core.MultivaluedHashMap;
-import javax.ws.rs.core.Response;
-import javax.ws.rs.core.UriInfo;
+import jakarta.ws.rs.core.MultivaluedHashMap;
+import jakarta.ws.rs.core.Response;
+import jakarta.ws.rs.core.UriInfo;
import org.apache.ambari.server.controller.AmbariManagementController;
import org.apache.ambari.server.controller.logging.LoggingRequestHelperFactory;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/api/services/MpacksServiceTest.java b/ambari-server/src/test/java/org/apache/ambari/server/api/services/MpacksServiceTest.java
index ec7525153ad..ccd7231ff2a 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/api/services/MpacksServiceTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/api/services/MpacksServiceTest.java
@@ -22,8 +22,8 @@
import java.util.List;
import java.util.Map;
-import javax.ws.rs.core.HttpHeaders;
-import javax.ws.rs.core.UriInfo;
+import jakarta.ws.rs.core.HttpHeaders;
+import jakarta.ws.rs.core.UriInfo;
import org.apache.ambari.server.api.resources.ResourceInstance;
import org.apache.ambari.server.api.services.parsers.RequestBodyParser;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/api/services/PermissionServiceTest.java b/ambari-server/src/test/java/org/apache/ambari/server/api/services/PermissionServiceTest.java
index 97fd0799ca2..6dc511fc5d9 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/api/services/PermissionServiceTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/api/services/PermissionServiceTest.java
@@ -24,8 +24,8 @@
import java.util.ArrayList;
import java.util.List;
-import javax.ws.rs.core.HttpHeaders;
-import javax.ws.rs.core.UriInfo;
+import jakarta.ws.rs.core.HttpHeaders;
+import jakarta.ws.rs.core.UriInfo;
import org.apache.ambari.server.api.resources.ResourceInstance;
import org.apache.ambari.server.api.services.parsers.RequestBodyParser;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/api/services/PersistServiceTest.java b/ambari-server/src/test/java/org/apache/ambari/server/api/services/PersistServiceTest.java
index eb43c67e1a6..0a601ab4fa7 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/api/services/PersistServiceTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/api/services/PersistServiceTest.java
@@ -24,8 +24,8 @@
import java.util.Collection;
import java.util.Map;
-import javax.ws.rs.client.Client;
-import javax.ws.rs.client.Entity;
+import jakarta.ws.rs.client.Client;
+import jakarta.ws.rs.client.Entity;
import org.apache.ambari.server.H2DatabaseCleaner;
import org.apache.ambari.server.RandomPortJerseyTest;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/api/services/PostRequestTest.java b/ambari-server/src/test/java/org/apache/ambari/server/api/services/PostRequestTest.java
index 420f9f5f752..4a2fdc3ae7e 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/api/services/PostRequestTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/api/services/PostRequestTest.java
@@ -20,8 +20,8 @@
import static org.junit.Assert.assertSame;
-import javax.ws.rs.core.HttpHeaders;
-import javax.ws.rs.core.UriInfo;
+import jakarta.ws.rs.core.HttpHeaders;
+import jakarta.ws.rs.core.UriInfo;
import org.apache.ambari.server.api.handlers.RequestHandler;
import org.apache.ambari.server.api.predicate.PredicateCompiler;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/api/services/PreUpgradeCheckServiceTest.java b/ambari-server/src/test/java/org/apache/ambari/server/api/services/PreUpgradeCheckServiceTest.java
index f1466c3fba6..bcf48aaaa1e 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/api/services/PreUpgradeCheckServiceTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/api/services/PreUpgradeCheckServiceTest.java
@@ -23,8 +23,8 @@
import java.util.List;
import java.util.Map;
-import javax.ws.rs.core.HttpHeaders;
-import javax.ws.rs.core.UriInfo;
+import jakarta.ws.rs.core.HttpHeaders;
+import jakarta.ws.rs.core.UriInfo;
import org.apache.ambari.server.api.resources.ResourceInstance;
import org.apache.ambari.server.api.services.parsers.RequestBodyParser;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/api/services/PrivilegeServiceTest.java b/ambari-server/src/test/java/org/apache/ambari/server/api/services/PrivilegeServiceTest.java
index 6a467b5630c..13c9bed8e11 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/api/services/PrivilegeServiceTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/api/services/PrivilegeServiceTest.java
@@ -24,8 +24,8 @@
import java.util.ArrayList;
import java.util.List;
-import javax.ws.rs.core.HttpHeaders;
-import javax.ws.rs.core.UriInfo;
+import jakarta.ws.rs.core.HttpHeaders;
+import jakarta.ws.rs.core.UriInfo;
import org.apache.ambari.server.api.resources.ResourceInstance;
import org.apache.ambari.server.api.services.parsers.RequestBodyParser;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/api/services/PutRequestTest.java b/ambari-server/src/test/java/org/apache/ambari/server/api/services/PutRequestTest.java
index 5b471042986..42a9340ef0e 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/api/services/PutRequestTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/api/services/PutRequestTest.java
@@ -20,8 +20,8 @@
import static org.junit.Assert.assertSame;
-import javax.ws.rs.core.HttpHeaders;
-import javax.ws.rs.core.UriInfo;
+import jakarta.ws.rs.core.HttpHeaders;
+import jakarta.ws.rs.core.UriInfo;
import org.apache.ambari.server.api.handlers.RequestHandler;
import org.apache.ambari.server.api.predicate.PredicateCompiler;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/api/services/QueryPostRequestTest.java b/ambari-server/src/test/java/org/apache/ambari/server/api/services/QueryPostRequestTest.java
index 56ddd1a960c..786291edab5 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/api/services/QueryPostRequestTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/api/services/QueryPostRequestTest.java
@@ -20,8 +20,8 @@
import static org.junit.Assert.assertSame;
-import javax.ws.rs.core.HttpHeaders;
-import javax.ws.rs.core.UriInfo;
+import jakarta.ws.rs.core.HttpHeaders;
+import jakarta.ws.rs.core.UriInfo;
import org.apache.ambari.server.api.handlers.RequestHandler;
import org.apache.ambari.server.api.predicate.PredicateCompiler;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/api/services/RecommendationServiceTest.java b/ambari-server/src/test/java/org/apache/ambari/server/api/services/RecommendationServiceTest.java
index 4332bd275f0..fc7393bd71a 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/api/services/RecommendationServiceTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/api/services/RecommendationServiceTest.java
@@ -24,8 +24,8 @@
import java.util.ArrayList;
import java.util.List;
-import javax.ws.rs.core.HttpHeaders;
-import javax.ws.rs.core.UriInfo;
+import jakarta.ws.rs.core.HttpHeaders;
+import jakarta.ws.rs.core.UriInfo;
import org.apache.ambari.server.api.resources.ResourceInstance;
import org.apache.ambari.server.api.services.parsers.RequestBodyParser;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/api/services/RepositoryServiceTest.java b/ambari-server/src/test/java/org/apache/ambari/server/api/services/RepositoryServiceTest.java
index 647578c4289..ed62e4898d2 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/api/services/RepositoryServiceTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/api/services/RepositoryServiceTest.java
@@ -24,8 +24,8 @@
import java.util.List;
import java.util.Map;
-import javax.ws.rs.core.HttpHeaders;
-import javax.ws.rs.core.UriInfo;
+import jakarta.ws.rs.core.HttpHeaders;
+import jakarta.ws.rs.core.UriInfo;
import org.apache.ambari.server.api.resources.ResourceInstance;
import org.apache.ambari.server.api.services.parsers.RequestBodyParser;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/api/services/RequestFactoryTest.java b/ambari-server/src/test/java/org/apache/ambari/server/api/services/RequestFactoryTest.java
index 65cb2094c6b..c60c319bfad 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/api/services/RequestFactoryTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/api/services/RequestFactoryTest.java
@@ -31,9 +31,9 @@
import java.util.List;
import java.util.Map;
-import javax.ws.rs.core.HttpHeaders;
-import javax.ws.rs.core.MultivaluedMap;
-import javax.ws.rs.core.UriInfo;
+import jakarta.ws.rs.core.HttpHeaders;
+import jakarta.ws.rs.core.MultivaluedMap;
+import jakarta.ws.rs.core.UriInfo;
import org.apache.ambari.server.api.resources.ResourceDefinition;
import org.apache.ambari.server.api.resources.ResourceInstance;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/api/services/RoleAuthorizationServiceTest.java b/ambari-server/src/test/java/org/apache/ambari/server/api/services/RoleAuthorizationServiceTest.java
index 517a6a0f7a9..14796865d32 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/api/services/RoleAuthorizationServiceTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/api/services/RoleAuthorizationServiceTest.java
@@ -24,8 +24,8 @@
import java.util.ArrayList;
import java.util.List;
-import javax.ws.rs.core.HttpHeaders;
-import javax.ws.rs.core.UriInfo;
+import jakarta.ws.rs.core.HttpHeaders;
+import jakarta.ws.rs.core.UriInfo;
import org.apache.ambari.server.api.resources.ResourceInstance;
import org.apache.ambari.server.api.services.parsers.RequestBodyParser;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/api/services/RootServiceServiceTest.java b/ambari-server/src/test/java/org/apache/ambari/server/api/services/RootServiceServiceTest.java
index cbf203651f4..eafdb54a493 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/api/services/RootServiceServiceTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/api/services/RootServiceServiceTest.java
@@ -24,8 +24,8 @@
import java.util.ArrayList;
import java.util.List;
-import javax.ws.rs.core.HttpHeaders;
-import javax.ws.rs.core.UriInfo;
+import jakarta.ws.rs.core.HttpHeaders;
+import jakarta.ws.rs.core.UriInfo;
import org.apache.ambari.server.api.resources.ResourceInstance;
import org.apache.ambari.server.api.services.parsers.RequestBodyParser;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/api/services/ServiceServiceTest.java b/ambari-server/src/test/java/org/apache/ambari/server/api/services/ServiceServiceTest.java
index a51d7105ff0..61fbbad260c 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/api/services/ServiceServiceTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/api/services/ServiceServiceTest.java
@@ -24,8 +24,8 @@
import java.util.ArrayList;
import java.util.List;
-import javax.ws.rs.core.HttpHeaders;
-import javax.ws.rs.core.UriInfo;
+import jakarta.ws.rs.core.HttpHeaders;
+import jakarta.ws.rs.core.UriInfo;
import org.apache.ambari.server.api.resources.ResourceInstance;
import org.apache.ambari.server.api.services.parsers.RequestBodyParser;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/api/services/SettingServiceTest.java b/ambari-server/src/test/java/org/apache/ambari/server/api/services/SettingServiceTest.java
index 3520b692a65..6bc1ba26bfb 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/api/services/SettingServiceTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/api/services/SettingServiceTest.java
@@ -23,8 +23,8 @@
import java.util.ArrayList;
import java.util.List;
-import javax.ws.rs.core.HttpHeaders;
-import javax.ws.rs.core.UriInfo;
+import jakarta.ws.rs.core.HttpHeaders;
+import jakarta.ws.rs.core.UriInfo;
import org.apache.ambari.server.api.resources.ResourceInstance;
import org.apache.ambari.server.api.services.parsers.RequestBodyParser;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/api/services/StacksServiceTest.java b/ambari-server/src/test/java/org/apache/ambari/server/api/services/StacksServiceTest.java
index 56478e1424b..77d74d823f8 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/api/services/StacksServiceTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/api/services/StacksServiceTest.java
@@ -24,8 +24,8 @@
import java.util.ArrayList;
import java.util.List;
-import javax.ws.rs.core.HttpHeaders;
-import javax.ws.rs.core.UriInfo;
+import jakarta.ws.rs.core.HttpHeaders;
+import jakarta.ws.rs.core.UriInfo;
import org.apache.ambari.server.api.resources.ResourceInstance;
import org.apache.ambari.server.api.services.parsers.RequestBodyParser;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/api/services/TargetClusterServiceTest.java b/ambari-server/src/test/java/org/apache/ambari/server/api/services/TargetClusterServiceTest.java
index c961d214025..605894fb3cc 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/api/services/TargetClusterServiceTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/api/services/TargetClusterServiceTest.java
@@ -24,8 +24,8 @@
import java.util.ArrayList;
import java.util.List;
-import javax.ws.rs.core.HttpHeaders;
-import javax.ws.rs.core.UriInfo;
+import jakarta.ws.rs.core.HttpHeaders;
+import jakarta.ws.rs.core.UriInfo;
import org.apache.ambari.server.api.resources.ResourceInstance;
import org.apache.ambari.server.api.services.parsers.RequestBodyParser;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/api/services/TaskAttemptServiceTest.java b/ambari-server/src/test/java/org/apache/ambari/server/api/services/TaskAttemptServiceTest.java
index 072cd65e84f..6d5c0bef0ca 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/api/services/TaskAttemptServiceTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/api/services/TaskAttemptServiceTest.java
@@ -22,8 +22,8 @@
import java.util.ArrayList;
import java.util.List;
-import javax.ws.rs.core.HttpHeaders;
-import javax.ws.rs.core.UriInfo;
+import jakarta.ws.rs.core.HttpHeaders;
+import jakarta.ws.rs.core.UriInfo;
import org.apache.ambari.server.api.resources.ResourceInstance;
import org.apache.ambari.server.api.services.parsers.RequestBodyParser;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/api/services/UpgradeItemServiceTest.java b/ambari-server/src/test/java/org/apache/ambari/server/api/services/UpgradeItemServiceTest.java
index dd335bae7a4..f4981b5f419 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/api/services/UpgradeItemServiceTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/api/services/UpgradeItemServiceTest.java
@@ -22,8 +22,8 @@
import java.util.ArrayList;
import java.util.List;
-import javax.ws.rs.core.HttpHeaders;
-import javax.ws.rs.core.UriInfo;
+import jakarta.ws.rs.core.HttpHeaders;
+import jakarta.ws.rs.core.UriInfo;
import org.apache.ambari.server.api.resources.ResourceInstance;
import org.apache.ambari.server.api.services.parsers.RequestBodyParser;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/api/services/ValidationServiceTest.java b/ambari-server/src/test/java/org/apache/ambari/server/api/services/ValidationServiceTest.java
index 97fc3b64001..85caff61c0e 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/api/services/ValidationServiceTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/api/services/ValidationServiceTest.java
@@ -24,8 +24,8 @@
import java.util.ArrayList;
import java.util.List;
-import javax.ws.rs.core.HttpHeaders;
-import javax.ws.rs.core.UriInfo;
+import jakarta.ws.rs.core.HttpHeaders;
+import jakarta.ws.rs.core.UriInfo;
import org.apache.ambari.server.api.resources.ResourceInstance;
import org.apache.ambari.server.api.services.parsers.RequestBodyParser;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/api/services/ViewSubResourceServiceTest.java b/ambari-server/src/test/java/org/apache/ambari/server/api/services/ViewSubResourceServiceTest.java
index 2158b73a550..0823966a393 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/api/services/ViewSubResourceServiceTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/api/services/ViewSubResourceServiceTest.java
@@ -33,12 +33,12 @@
import java.util.List;
import java.util.Map;
-import javax.ws.rs.PathParam;
-import javax.ws.rs.core.Context;
-import javax.ws.rs.core.HttpHeaders;
-import javax.ws.rs.core.MediaType;
-import javax.ws.rs.core.Response;
-import javax.ws.rs.core.UriInfo;
+import jakarta.ws.rs.PathParam;
+import jakarta.ws.rs.core.Context;
+import jakarta.ws.rs.core.HttpHeaders;
+import jakarta.ws.rs.core.MediaType;
+import jakarta.ws.rs.core.Response;
+import jakarta.ws.rs.core.UriInfo;
import org.apache.ambari.server.api.resources.ResourceInstance;
import org.apache.ambari.server.api.services.parsers.RequestBodyParser;
@@ -274,7 +274,7 @@ protected ResultSerializer getResultSerializer() {
}
@Override
- protected ResultSerializer getResultSerializer(javax.ws.rs.core.MediaType mediaType) {
+ protected ResultSerializer getResultSerializer(jakarta.ws.rs.core.MediaType mediaType) {
return getTestResultSerializer();
}
}
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/api/services/WorkflowServiceTest.java b/ambari-server/src/test/java/org/apache/ambari/server/api/services/WorkflowServiceTest.java
index b9cc5457d3c..82c7b3086a4 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/api/services/WorkflowServiceTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/api/services/WorkflowServiceTest.java
@@ -22,8 +22,8 @@
import java.util.ArrayList;
import java.util.List;
-import javax.ws.rs.core.HttpHeaders;
-import javax.ws.rs.core.UriInfo;
+import jakarta.ws.rs.core.HttpHeaders;
+import jakarta.ws.rs.core.UriInfo;
import org.apache.ambari.server.api.resources.ResourceInstance;
import org.apache.ambari.server.api.services.parsers.RequestBodyParser;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/api/services/serializers/JsonSerializerTest.java b/ambari-server/src/test/java/org/apache/ambari/server/api/services/serializers/JsonSerializerTest.java
index 5cf5c19159f..763ddd47e50 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/api/services/serializers/JsonSerializerTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/api/services/serializers/JsonSerializerTest.java
@@ -27,7 +27,7 @@
import java.util.LinkedHashMap;
import java.util.Map;
-import javax.ws.rs.core.UriInfo;
+import jakarta.ws.rs.core.UriInfo;
import org.apache.ambari.server.api.services.DeleteResultMetadata;
import org.apache.ambari.server.api.services.Result;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/api/services/stackadvisor/commands/StackAdvisorCommandTest.java b/ambari-server/src/test/java/org/apache/ambari/server/api/services/stackadvisor/commands/StackAdvisorCommandTest.java
index 3d61e2b8dd9..433c32afb81 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/api/services/stackadvisor/commands/StackAdvisorCommandTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/api/services/stackadvisor/commands/StackAdvisorCommandTest.java
@@ -41,11 +41,11 @@
import java.util.List;
import java.util.Map;
-import javax.ws.rs.WebApplicationException;
-import javax.ws.rs.core.HttpHeaders;
-import javax.ws.rs.core.MediaType;
-import javax.ws.rs.core.Response;
-import javax.ws.rs.core.UriInfo;
+import jakarta.ws.rs.WebApplicationException;
+import jakarta.ws.rs.core.HttpHeaders;
+import jakarta.ws.rs.core.MediaType;
+import jakarta.ws.rs.core.Response;
+import jakarta.ws.rs.core.UriInfo;
import org.apache.ambari.server.api.resources.ResourceInstance;
import org.apache.ambari.server.api.services.AmbariMetaInfo;
@@ -442,7 +442,7 @@ protected TestResource updateResponse(StackAdvisorRequest request, TestResource
// Overridden to ensure visiblity in tests
@Override
- public javax.ws.rs.core.Response handleRequest(HttpHeaders headers, String body,
+ public jakarta.ws.rs.core.Response handleRequest(HttpHeaders headers, String body,
UriInfo uriInfo, Request.Type requestType,
MediaType mediaType, ResourceInstance resource) {
return super.handleRequest(headers, body, uriInfo, requestType, mediaType, resource);
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/api/services/views/ViewDataMigrationServiceTest.java b/ambari-server/src/test/java/org/apache/ambari/server/api/services/views/ViewDataMigrationServiceTest.java
index 113cedea0ca..417c7b849cc 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/api/services/views/ViewDataMigrationServiceTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/api/services/views/ViewDataMigrationServiceTest.java
@@ -25,7 +25,7 @@
import static org.easymock.EasyMock.replay;
import static org.easymock.EasyMock.verify;
-import javax.ws.rs.WebApplicationException;
+import jakarta.ws.rs.WebApplicationException;
import org.apache.ambari.server.orm.entities.ViewInstanceEntity;
import org.apache.ambari.server.view.ViewDataMigrationUtility;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/audit/request/DefaultEventCreatorTest.java b/ambari-server/src/test/java/org/apache/ambari/server/audit/request/DefaultEventCreatorTest.java
index 8b01752e1d8..794e5bf1f8a 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/audit/request/DefaultEventCreatorTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/audit/request/DefaultEventCreatorTest.java
@@ -29,19 +29,20 @@
import java.util.Locale;
import java.util.Map;
-import javax.servlet.AsyncContext;
-import javax.servlet.DispatcherType;
-import javax.servlet.RequestDispatcher;
-import javax.servlet.ServletContext;
-import javax.servlet.ServletException;
-import javax.servlet.ServletInputStream;
-import javax.servlet.ServletRequest;
-import javax.servlet.ServletResponse;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
-import javax.servlet.http.HttpSession;
-import javax.servlet.http.HttpUpgradeHandler;
-import javax.servlet.http.Part;
+import jakarta.servlet.AsyncContext;
+import jakarta.servlet.DispatcherType;
+import jakarta.servlet.RequestDispatcher;
+import jakarta.servlet.ServletConnection;
+import jakarta.servlet.ServletContext;
+import jakarta.servlet.ServletException;
+import jakarta.servlet.ServletInputStream;
+import jakarta.servlet.ServletRequest;
+import jakarta.servlet.ServletResponse;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
+import jakarta.servlet.http.HttpSession;
+import jakarta.servlet.http.HttpUpgradeHandler;
+import jakarta.servlet.http.Part;
import org.apache.ambari.server.api.query.QueryImpl;
import org.apache.ambari.server.api.resources.HostComponentResourceDefinition;
@@ -132,8 +133,8 @@ public String getAuthType() {
}
@Override
- public javax.servlet.http.Cookie[] getCookies() {
- return new javax.servlet.http.Cookie[0];
+ public jakarta.servlet.http.Cookie[] getCookies() {
+ return new jakarta.servlet.http.Cookie[0];
}
@Override
@@ -250,11 +251,6 @@ public boolean isRequestedSessionIdFromURL() {
return false;
}
- @Override
- public boolean isRequestedSessionIdFromUrl() {
- return false;
- }
-
@Override
public boolean authenticate(HttpServletResponse httpServletResponse) throws IOException, ServletException {
return false;
@@ -408,11 +404,6 @@ public RequestDispatcher getRequestDispatcher(String s) {
return null;
}
- @Override
- public String getRealPath(String s) {
- return null;
- }
-
@Override
public int getRemotePort() {
return 0;
@@ -467,6 +458,21 @@ public AsyncContext getAsyncContext() {
public DispatcherType getDispatcherType() {
return null;
}
+
+ @Override
+ public String getRequestId() {
+ return "";
+ }
+
+ @Override
+ public String getProtocolRequestId() {
+ return "";
+ }
+
+ @Override
+ public ServletConnection getServletConnection() {
+ return null;
+ }
}));
}
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/bootstrap/BootStrapResourceTest.java b/ambari-server/src/test/java/org/apache/ambari/server/bootstrap/BootStrapResourceTest.java
index 1bb068eb26b..2615b2ff982 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/bootstrap/BootStrapResourceTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/bootstrap/BootStrapResourceTest.java
@@ -26,9 +26,9 @@
import java.net.ServerSocket;
import java.util.ArrayList;
-import javax.ws.rs.client.Entity;
-import javax.ws.rs.client.WebTarget;
-import javax.ws.rs.core.MediaType;
+import jakarta.ws.rs.client.Entity;
+import jakarta.ws.rs.client.WebTarget;
+import jakarta.ws.rs.core.MediaType;
import org.apache.ambari.server.api.rest.BootStrapResource;
import org.apache.ambari.server.bootstrap.BSResponse.BSRunStat;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/checks/AmbariMetricsHadoopSinkVersionCheckTest.java b/ambari-server/src/test/java/org/apache/ambari/server/checks/AmbariMetricsHadoopSinkVersionCheckTest.java
index 6b5976af2d8..433489e04d3 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/checks/AmbariMetricsHadoopSinkVersionCheckTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/checks/AmbariMetricsHadoopSinkVersionCheckTest.java
@@ -169,33 +169,44 @@ public void testPerform() throws Exception {
AmbariManagementController ambariManagementControllerMock = Mockito.mock(AmbariManagementController.class);
PowerMockito.mockStatic(AmbariServer.class);
- when(AmbariServer.getController()).thenReturn(ambariManagementControllerMock);
+ when(AmbariServer.getController()).thenAnswer(
+ invocation -> ambariManagementControllerMock);
ResourceProvider resourceProviderMock = mock(ResourceProvider.class);
PowerMockito.mockStatic(AbstractControllerResourceProvider.class);
- when(AbstractControllerResourceProvider.getResourceProvider(Mockito.eq(Resource.Type.Request), any(AmbariManagementController.class))).thenReturn(resourceProviderMock);
+ when(AbstractControllerResourceProvider.getResourceProvider(Mockito.eq(Resource.Type.Request), any(AmbariManagementController.class))).thenAnswer(
+ invocation -> resourceProviderMock);
PowerMockito.mockStatic(PropertyHelper.class);
Request requestMock = mock(Request.class);
- when(PropertyHelper.getCreateRequest(any(), any())).thenReturn(requestMock);
- when(PropertyHelper.getPropertyId("Requests", "id")).thenReturn("requestIdProp");
+ when(PropertyHelper.getCreateRequest(any(), any())).thenAnswer(invocation -> requestMock);
+ when(PropertyHelper.getPropertyId("Requests", "id")).thenAnswer(
+ invocation -> "requestIdProp");
RequestStatus requestStatusMock = mock(RequestStatus.class);
Resource responseResourceMock = mock(Resource.class);
- when(resourceProviderMock.createResources(requestMock)).thenReturn(requestStatusMock);
- when(requestStatusMock.getRequestResource()).thenReturn(responseResourceMock);
- when(responseResourceMock.getPropertyValue(anyString())).thenReturn(100l);
+ when(resourceProviderMock.createResources(requestMock)).thenAnswer(
+ invocation -> requestStatusMock);
+ when(requestStatusMock.getRequestResource()).thenAnswer(
+ invocation -> responseResourceMock);
+ when(responseResourceMock.getPropertyValue(anyString())).thenAnswer(
+ invocation -> 100l);
Clusters clustersMock = mock(Clusters.class);
- when(ambariManagementControllerMock.getClusters()).thenReturn(clustersMock);
+ when(ambariManagementControllerMock.getClusters()).thenAnswer(
+ invocation -> clustersMock);
Cluster clusterMock = mock(Cluster.class);
- when(clustersMock.getCluster("c1")).thenReturn(clusterMock);
- when(clusterMock.getHosts(eq("AMBARI_METRICS"), eq("METRICS_MONITOR"))).thenReturn(Collections.singleton("h1"));
+ when(clustersMock.getCluster("c1")).thenAnswer(invocation -> clusterMock);
+ when(clusterMock.getHosts(eq("AMBARI_METRICS"), eq("METRICS_MONITOR"))).thenAnswer(
+ invocation -> Collections.singleton("h1"));
RequestDAO requestDAOMock = mock(RequestDAO.class);
RequestEntity requestEntityMock = mock(RequestEntity.class);
- when(requestDAOMock.findByPks(Collections.singleton(100l), true)).thenReturn(Collections.singletonList(requestEntityMock));
- when(requestEntityMock.getStatus()).thenReturn(HostRoleStatus.IN_PROGRESS).thenReturn(HostRoleStatus.COMPLETED);
+ when(requestDAOMock.findByPks(Collections.singleton(100l), true)).thenAnswer(
+ invocation -> Collections.singletonList(requestEntityMock));
+ when(requestEntityMock.getStatus()).thenAnswer(
+ invocation -> HostRoleStatus.IN_PROGRESS
+ ).thenAnswer(invocation -> HostRoleStatus.COMPLETED);
Field requestDaoField = m_check.getClass().getDeclaredField("requestDAO");
requestDaoField.setAccessible(true);
@@ -216,16 +227,16 @@ public void testPerform() throws Exception {
public void testPerformFail() throws Exception{
AmbariManagementController ambariManagementControllerMock = Mockito.mock(AmbariManagementController.class);
PowerMockito.mockStatic(AmbariServer.class);
- when(AmbariServer.getController()).thenReturn(ambariManagementControllerMock);
+ when(AmbariServer.getController()).thenAnswer(invocation -> ambariManagementControllerMock);
ResourceProvider resourceProviderMock = mock(ResourceProvider.class);
PowerMockito.mockStatic(AbstractControllerResourceProvider.class);
- when(AbstractControllerResourceProvider.getResourceProvider(Mockito.eq(Resource.Type.Request), any(AmbariManagementController.class))).thenReturn(resourceProviderMock);
+ when(AbstractControllerResourceProvider.getResourceProvider(Mockito.eq(Resource.Type.Request), any(AmbariManagementController.class))).thenAnswer(invocation -> resourceProviderMock);
PowerMockito.mockStatic(PropertyHelper.class);
Request requestMock = mock(Request.class);
- when(PropertyHelper.getCreateRequest(any(), any())).thenReturn(requestMock);
- when(PropertyHelper.getPropertyId("Requests", "id")).thenReturn("requestIdProp");
+ when(PropertyHelper.getCreateRequest(any(), any())).thenAnswer(invocation -> requestMock);
+ when(PropertyHelper.getPropertyId("Requests", "id")).thenAnswer(invocation -> "requestIdProp");
RequestStatus requestStatusMock = mock(RequestStatus.class);
Resource responseResourceMock = mock(Resource.class);
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/checks/ComponentsInstallationCheckTest.java b/ambari-server/src/test/java/org/apache/ambari/server/checks/ComponentsInstallationCheckTest.java
index 40b556a1c2a..03d1dabc755 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/checks/ComponentsInstallationCheckTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/checks/ComponentsInstallationCheckTest.java
@@ -293,12 +293,12 @@ public ComponentInfo answer(InvocationOnMock invocation) throws Throwable {
Mockito.when(hcsMetricsMonitor.getHostName()).thenReturn("host3");
// Mock the static method
- PowerMockito.when(HostComponentSummary.getHostComponentSummaries("HDFS", "NAMENODE")).thenReturn(Arrays.asList(hcsNameNode));
- PowerMockito.when(HostComponentSummary.getHostComponentSummaries("HDFS", "DATANODE")).thenReturn(Arrays.asList(hcsDataNode1, hcsDataNode2, hcsDataNode3));
- PowerMockito.when(HostComponentSummary.getHostComponentSummaries("HDFS", "ZKFC")).thenReturn(Arrays.asList(hcsZKFC));
- PowerMockito.when(HostComponentSummary.getHostComponentSummaries("TEZ", "TEZ_CLIENT")).thenReturn(Arrays.asList(hcsTezClient));
- PowerMockito.when(HostComponentSummary.getHostComponentSummaries("AMBARI_METRICS", "METRICS_COLLECTOR")).thenReturn(Arrays.asList(hcsMetricsCollector));
- PowerMockito.when(HostComponentSummary.getHostComponentSummaries("AMBARI_METRICS", "METRICS_MONITOR")).thenReturn(Arrays.asList(hcsMetricsMonitor));
+ PowerMockito.when(HostComponentSummary.getHostComponentSummaries("HDFS", "NAMENODE")).thenAnswer(invocation -> Arrays.asList(hcsNameNode));
+ PowerMockito.when(HostComponentSummary.getHostComponentSummaries("HDFS", "DATANODE")).thenAnswer(invocation -> Arrays.asList(hcsDataNode1, hcsDataNode2, hcsDataNode3));
+ PowerMockito.when(HostComponentSummary.getHostComponentSummaries("HDFS", "ZKFC")).thenAnswer(invocation -> Arrays.asList(hcsZKFC));
+ PowerMockito.when(HostComponentSummary.getHostComponentSummaries("TEZ", "TEZ_CLIENT")).thenAnswer(invocation -> Arrays.asList(hcsTezClient));
+ PowerMockito.when(HostComponentSummary.getHostComponentSummaries("AMBARI_METRICS", "METRICS_COLLECTOR")).thenAnswer(invocation -> Arrays.asList(hcsMetricsCollector));
+ PowerMockito.when(HostComponentSummary.getHostComponentSummaries("AMBARI_METRICS", "METRICS_MONITOR")).thenAnswer(invocation -> Arrays.asList(hcsMetricsMonitor));
for (String hostName : hosts.keySet()) {
Mockito.when(clusters.getHost(hostName)).thenReturn(hosts.get(hostName));
}
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/checks/DatabaseConsistencyCheckHelperTest.java b/ambari-server/src/test/java/org/apache/ambari/server/checks/DatabaseConsistencyCheckHelperTest.java
index 43c15f7b2d9..560e49a9d6d 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/checks/DatabaseConsistencyCheckHelperTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/checks/DatabaseConsistencyCheckHelperTest.java
@@ -43,8 +43,8 @@
import java.util.Map;
import java.util.Set;
-import javax.persistence.EntityManager;
-import javax.persistence.TypedQuery;
+import jakarta.persistence.EntityManager;
+import jakarta.persistence.TypedQuery;
import org.apache.ambari.server.AmbariException;
import org.apache.ambari.server.H2DatabaseCleaner;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/checks/KerberosAdminPersistedCredentialCheckTest.java b/ambari-server/src/test/java/org/apache/ambari/server/checks/KerberosAdminPersistedCredentialCheckTest.java
index dfcad29d615..27feba0b8a8 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/checks/KerberosAdminPersistedCredentialCheckTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/checks/KerberosAdminPersistedCredentialCheckTest.java
@@ -25,7 +25,7 @@
import java.util.HashMap;
import java.util.Map;
-import javax.persistence.EntityManager;
+import jakarta.persistence.EntityManager;
import org.apache.ambari.server.actionmanager.ActionDBAccessor;
import org.apache.ambari.server.actionmanager.ActionDBAccessorImpl;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/checks/ServicesUpCheckTest.java b/ambari-server/src/test/java/org/apache/ambari/server/checks/ServicesUpCheckTest.java
index ad84f02aaaf..246c8369773 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/checks/ServicesUpCheckTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/checks/ServicesUpCheckTest.java
@@ -295,12 +295,12 @@ public ComponentInfo answer(InvocationOnMock invocation) throws Throwable {
allHostComponentSummaries.add(hcsMetricsMonitor);
// Mock the static method
- Mockito.when(HostComponentSummary.getHostComponentSummaries("HDFS", "NAMENODE")).thenReturn(Arrays.asList(hcsNameNode));
- Mockito.when(HostComponentSummary.getHostComponentSummaries("HDFS", "DATANODE")).thenReturn(Arrays.asList(hcsDataNode1, hcsDataNode2, hcsDataNode3));
- Mockito.when(HostComponentSummary.getHostComponentSummaries("HDFS", "ZKFC")).thenReturn(Arrays.asList(hcsZKFC));
- Mockito.when(HostComponentSummary.getHostComponentSummaries("TEZ", "TEZ_CLIENT")).thenReturn(Arrays.asList(hcsTezClient));
- Mockito.when(HostComponentSummary.getHostComponentSummaries("AMBARI_METRICS", "METRICS_COLLECTOR")).thenReturn(Arrays.asList(hcsMetricsCollector));
- Mockito.when(HostComponentSummary.getHostComponentSummaries("AMBARI_METRICS", "METRICS_MONITOR")).thenReturn(Arrays.asList(hcsMetricsMonitor));
+ Mockito.when(HostComponentSummary.getHostComponentSummaries("HDFS", "NAMENODE")).thenAnswer(invocation -> Arrays.asList(hcsNameNode));
+ Mockito.when(HostComponentSummary.getHostComponentSummaries("HDFS", "DATANODE")).thenAnswer(invocation -> Arrays.asList(hcsDataNode1, hcsDataNode2, hcsDataNode3));
+ Mockito.when(HostComponentSummary.getHostComponentSummaries("HDFS", "ZKFC")).thenAnswer(invocation -> Arrays.asList(hcsZKFC));
+ Mockito.when(HostComponentSummary.getHostComponentSummaries("TEZ", "TEZ_CLIENT")).thenAnswer(invocation -> Arrays.asList(hcsTezClient));
+ Mockito.when(HostComponentSummary.getHostComponentSummaries("AMBARI_METRICS", "METRICS_COLLECTOR")).thenAnswer(invocation -> Arrays.asList(hcsMetricsCollector));
+ Mockito.when(HostComponentSummary.getHostComponentSummaries("AMBARI_METRICS", "METRICS_MONITOR")).thenAnswer(invocation -> Arrays.asList(hcsMetricsMonitor));
// Case 1. Initialize with good values
for (HostComponentSummary hcs : allHostComponentSummaries) {
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/configuration/AmbariServerConfigurationProviderTest.java b/ambari-server/src/test/java/org/apache/ambari/server/configuration/AmbariServerConfigurationProviderTest.java
index c2e10c26e2c..d1147b8fcb4 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/configuration/AmbariServerConfigurationProviderTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/configuration/AmbariServerConfigurationProviderTest.java
@@ -28,7 +28,7 @@
import java.util.List;
import java.util.Map;
-import javax.persistence.EntityManager;
+import jakarta.persistence.EntityManager;
import org.apache.ambari.server.events.AmbariConfigurationChangedEvent;
import org.apache.ambari.server.events.JpaInitializedEvent;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/configuration/ConfigurationTest.java b/ambari-server/src/test/java/org/apache/ambari/server/configuration/ConfigurationTest.java
index f863d920d3f..d3b3993af20 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/configuration/ConfigurationTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/configuration/ConfigurationTest.java
@@ -28,6 +28,7 @@
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
+import java.lang.annotation.Annotation;
import java.lang.reflect.Field;
import java.lang.reflect.Method;
import java.nio.charset.Charset;
@@ -37,6 +38,7 @@
import org.apache.ambari.annotations.ConfigurationMarkdown;
import org.apache.ambari.annotations.Markdown;
+import org.apache.ambari.annotations.ConfigurationMarkdown;
import org.apache.ambari.server.AmbariException;
import org.apache.ambari.server.configuration.Configuration.ConfigurationProperty;
import org.apache.ambari.server.configuration.Configuration.ConnectionPoolType;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/controller/AmbariHandlerListTest.java b/ambari-server/src/test/java/org/apache/ambari/server/controller/AmbariHandlerListTest.java
index b6d5555c303..8edd234a1c8 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/controller/AmbariHandlerListTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/controller/AmbariHandlerListTest.java
@@ -18,19 +18,22 @@
package org.apache.ambari.server.controller;
-import static org.easymock.EasyMock.capture;
-import static org.easymock.EasyMock.createNiceMock;
-import static org.easymock.EasyMock.eq;
-import static org.easymock.EasyMock.expect;
-import static org.easymock.EasyMock.replay;
-import static org.easymock.EasyMock.verify;
-
-import java.util.ArrayList;
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertNull;
+import static org.junit.Assert.assertTrue;
+import static org.mockito.ArgumentMatchers.eq;
+import static org.mockito.Mockito.atLeastOnce;
+import static org.mockito.Mockito.mock;
+import static org.mockito.Mockito.times;
+import static org.mockito.Mockito.verify;
+import static org.mockito.Mockito.when;
+
import java.util.Arrays;
+import java.util.List;
-import javax.inject.Provider;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
+import jakarta.inject.Provider;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
import org.apache.ambari.server.api.AmbariPersistFilter;
import org.apache.ambari.server.configuration.Configuration;
@@ -39,8 +42,6 @@
import org.apache.ambari.server.orm.entities.ViewInstanceEntityTest;
import org.apache.ambari.server.security.AmbariViewsSecurityHeaderFilter;
import org.apache.ambari.server.view.ViewRegistry;
-import org.easymock.Capture;
-import org.easymock.EasyMock;
import org.eclipse.jetty.server.Handler;
import org.eclipse.jetty.server.Request;
import org.eclipse.jetty.server.Server;
@@ -50,130 +51,128 @@
import org.eclipse.jetty.server.session.SessionHandler;
import org.eclipse.jetty.servlet.FilterHolder;
import org.eclipse.jetty.webapp.WebAppContext;
-import org.junit.Assert;
import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.mockito.ArgumentCaptor;
+import org.mockito.Captor;
+import org.mockito.Mock;
+import org.mockito.junit.MockitoJUnitRunner;
import org.springframework.web.filter.DelegatingFilterProxy;
/**
* AmbariHandlerList tests.
*/
+@RunWith(MockitoJUnitRunner.class)
public class AmbariHandlerListTest {
- private final AmbariViewsSecurityHeaderFilter ambariViewsSecurityHeaderFilter = createNiceMock(AmbariViewsSecurityHeaderFilter.class);
- private final AmbariPersistFilter persistFilter = createNiceMock(AmbariPersistFilter.class);
- private final DelegatingFilterProxy springSecurityFilter = createNiceMock(DelegatingFilterProxy.class);
- private final SessionHandler sessionHandler = createNiceMock(SessionHandler.class);
- private final SessionIdManager sessionIdManager = createNiceMock(SessionIdManager.class);
- private final SessionHandlerConfigurer sessionHandlerConfigurer = createNiceMock(SessionHandlerConfigurer.class);
- private final SessionCache sessionCache = createNiceMock(SessionCache.class);
- private final Configuration configuration = createNiceMock(Configuration.class);
+ @Mock private AmbariViewsSecurityHeaderFilter ambariViewsSecurityHeaderFilter;
+ @Mock private AmbariPersistFilter persistFilter;
+ @Mock private DelegatingFilterProxy springSecurityFilter;
+ @Mock private SessionHandler sessionHandler;
+ @Mock private SessionIdManager sessionIdManager;
+ @Mock private SessionHandlerConfigurer sessionHandlerConfigurer;
+ @Mock private SessionCache sessionCache;
+ @Mock private Configuration configuration;
+ @Mock private WebAppContext handler;
+ @Mock private Server server;
+ @Mock private ErrorHandler errorHandler;
+
+ @Captor private ArgumentCaptor filterHolderCaptor;
+ @Captor private ArgumentCaptor showStackCaptor;
+
+ private AmbariHandlerList getAmbariHandlerList(WebAppContext ctx) {
+ AmbariHandlerList list = new AmbariHandlerList();
+ //doNothing().when(sessionHandler).setSessionIdManager(sessionIdManager);
+ when(sessionHandler.getSessionCache()).thenReturn(sessionCache);
+ list.webAppContextProvider = new HandlerProvider(ctx);
+ list.ambariViewsSecurityHeaderFilter = ambariViewsSecurityHeaderFilter;
+ list.persistFilter = persistFilter;
+ list.springSecurityFilter = springSecurityFilter;
+ list.sessionHandler = sessionHandler;
+ list.sessionHandlerConfigurer = sessionHandlerConfigurer;
+ list.configuration = configuration;
+ return list;
+ }
@Test
public void testAddViewInstance() throws Exception {
-
ViewInstanceEntity viewInstanceEntity = ViewInstanceEntityTest.getViewInstanceEntity();
- final WebAppContext handler = createNiceMock(WebAppContext.class);
- Server server = createNiceMock(Server.class);
-
- expect(handler.getServer()).andReturn(server);
- expect(handler.getChildHandlers()).andReturn(new Handler[]{});
- expect(handler.getSessionHandler()).andReturn(createNiceMock(SessionHandler.class));
+ when(handler.getServer()).thenReturn(server);
+ when(handler.getChildHandlers()).thenReturn(new Handler[]{});
+ when(handler.getSessionHandler()).thenReturn(mock(SessionHandler.class));
handler.setServer(null);
- expect(sessionHandler.getSessionCache()).andReturn(sessionCache);
-
- Capture securityHeaderFilterCapture = EasyMock.newCapture();
- Capture persistFilterCapture = EasyMock.newCapture();
- Capture securityFilterCapture = EasyMock.newCapture();
-
- handler.addFilter(capture(securityHeaderFilterCapture), eq("/*"), eq(AmbariServer.DISPATCHER_TYPES));
- handler.addFilter(capture(persistFilterCapture), eq("/*"), eq(AmbariServer.DISPATCHER_TYPES));
- handler.addFilter(capture(securityFilterCapture), eq("/*"), eq(AmbariServer.DISPATCHER_TYPES));
- handler.setAllowNullPathInfo(true);
-
final boolean showErrorStacks = true;
- expect(configuration.isServerShowErrorStacks()).andReturn(showErrorStacks);
-
- ErrorHandler errorHandler = createNiceMock(ErrorHandler.class);
- Capture showStackCapture = EasyMock.newCapture();
- errorHandler.setShowStacks(EasyMock.captureBoolean(showStackCapture));
-
- expect(handler.getErrorHandler()).andReturn(errorHandler).times(3);
+ when(configuration.isServerShowErrorStacks()).thenReturn(showErrorStacks);
- replay(handler, server, sessionHandler, configuration, errorHandler);
+ when(handler.getErrorHandler()).thenReturn(errorHandler);
AmbariHandlerList handlerList = getAmbariHandlerList(handler);
-
+ handlerList.start();
+ handlerList.start();
+ handlerList.start();
handlerList.addViewInstance(viewInstanceEntity);
- ArrayList handlers = new ArrayList<>(Arrays.asList(handlerList.getHandlers()));
-
- Assert.assertTrue(handlers.contains(handler));
-
- Assert.assertEquals(ambariViewsSecurityHeaderFilter, securityHeaderFilterCapture.getValue().getFilter());
- Assert.assertEquals(persistFilter, persistFilterCapture.getValue().getFilter());
- Assert.assertEquals(springSecurityFilter, securityFilterCapture.getValue().getFilter());
- Assert.assertEquals(showErrorStacks, showStackCapture.getValue());
-
- verify(handler, server, sessionHandler, configuration, errorHandler);
+ // capture all 3 filter additions
+ verify(handler, times(3))
+ .addFilter(filterHolderCaptor.capture(), eq("/*"), eq(AmbariServer.DISPATCHER_TYPES));
+ List holders = filterHolderCaptor.getAllValues();
+
+ // Verify filter classes by comparing class names
+ assertEquals(ambariViewsSecurityHeaderFilter.getClass().getName(), holders.get(0).getClassName());
+ assertEquals(persistFilter.getClass().getName(), holders.get(1).getClassName());
+ assertEquals(springSecurityFilter.getClass().getName(), holders.get(2).getClassName());
+
+ // verify allowNullPathInfo and error handler
+ verify(handler).setAllowNullPathInfo(true);
+ verify(handler, times(3)).getErrorHandler();
+ verify(errorHandler).setShowStacks(showStackCaptor.capture());
+ assertEquals(showErrorStacks, showStackCaptor.getValue());
+
+ // assert handler registered
+ List registered = Arrays.asList(handlerList.getHandlers());
+ assertTrue(registered.contains(handler));
}
@Test
public void testRemoveViewInstance() throws Exception {
ViewInstanceEntity viewInstanceEntity = ViewInstanceEntityTest.getViewInstanceEntity();
- final WebAppContext handler = createNiceMock(WebAppContext.class);
- Server server = createNiceMock(Server.class);
-
- expect(handler.getServer()).andReturn(server);
- expect(handler.getChildHandlers()).andReturn(new Handler[]{});
- expect(handler.getSessionHandler()).andReturn(createNiceMock(SessionHandler.class));
+ // Stub required for handlerList.addViewInstance to work
+ when(handler.getServer()).thenReturn(server);
+ when(handler.getChildHandlers()).thenReturn(new Handler[]{});
+ when(handler.getSessionHandler()).thenReturn(mock(SessionHandler.class));
handler.setServer(null);
- expect(sessionHandler.getSessionCache()).andReturn(sessionCache);
-
- replay(handler, server, sessionHandler);
+ when(sessionHandler.getSessionCache()).thenReturn(sessionCache);
AmbariHandlerList handlerList = getAmbariHandlerList(handler);
-
handlerList.addViewInstance(viewInstanceEntity);
-
- ArrayList handlers = new ArrayList<>(Arrays.asList(handlerList.getHandlers()));
-
- Assert.assertTrue(handlers.contains(handler));
+ List registered = Arrays.asList(handlerList.getHandlers());
+ assertTrue(registered.contains(handler));
handlerList.removeViewInstance(viewInstanceEntity);
+ assertNull(handlerList.getHandlers());
- handlers = new ArrayList<>(Arrays.asList(handlerList.getHandlers()));
-
- Assert.assertFalse(handlers.contains(handler));
-
- verify(handler, server, sessionHandler);
-
+ verify(handler).getServer();
+ verify(handler).getChildHandlers();
+ verify(handler).getSessionHandler();
}
@Test
public void testHandle() throws Exception {
- final WebAppContext handler = createNiceMock(WebAppContext.class);
- ViewRegistry viewRegistry = createNiceMock(ViewRegistry.class);
- ViewEntity viewEntity = createNiceMock(ViewEntity.class);
- ClassLoader classLoader = createNiceMock(ClassLoader.class);
-
- Request baseRequest = createNiceMock(Request.class);
+ ViewRegistry viewRegistry = mock(ViewRegistry.class);
+ ViewEntity viewEntity = mock(ViewEntity.class);
+ ClassLoader classLoader = mock(ClassLoader.class);
+ Request baseRequest = mock(Request.class);
+ HttpServletRequest request = mock(HttpServletRequest.class);
+ HttpServletResponse response = mock(HttpServletResponse.class);
- HttpServletRequest request = createNiceMock(HttpServletRequest.class);
- HttpServletResponse response = createNiceMock(HttpServletResponse.class);
+ when(viewRegistry.getDefinition("TEST", "1.0.0")).thenReturn(viewEntity);
+ when(viewEntity.getClassLoader()).thenReturn(classLoader);
- expect(viewRegistry.getDefinition("TEST", "1.0.0")).andReturn(viewEntity).anyTimes();
- expect(viewEntity.getClassLoader()).andReturn(classLoader).anyTimes();
-
- expect(handler.isStarted()).andReturn(true).anyTimes();
- expect(handler.getChildHandlers()).andReturn(new Handler[]{});
-
- replay(handler, viewRegistry, viewEntity);
- handler.handle("/api/v1/views/TEST/versions/1.0.0/instances/INSTANCE_1/resources/test",
- baseRequest, request, response);
+ when(handler.getChildHandlers()).thenReturn(new Handler[]{});
AmbariHandlerList handlerList = getAmbariHandlerList(handler);
handlerList.viewRegistry = viewRegistry;
@@ -183,22 +182,10 @@ public void testHandle() throws Exception {
handlerList.handle("/api/v1/views/TEST/versions/1.0.0/instances/INSTANCE_1/resources/test",
baseRequest, request, response);
- verify(handler, viewRegistry, viewEntity);
- }
-
- private AmbariHandlerList getAmbariHandlerList(final WebAppContext handler) {
-
- AmbariHandlerList handlerList = new AmbariHandlerList();
- sessionHandler.setSessionIdManager(sessionIdManager);
-
- handlerList.webAppContextProvider = new HandlerProvider(handler);
- handlerList.ambariViewsSecurityHeaderFilter = ambariViewsSecurityHeaderFilter;
- handlerList.persistFilter = persistFilter;
- handlerList.springSecurityFilter = springSecurityFilter;
- handlerList.sessionHandler = sessionHandler;
- handlerList.sessionHandlerConfigurer = sessionHandlerConfigurer;
- handlerList.configuration = configuration;
- return handlerList;
+ verify(handler).handle("/api/v1/views/TEST/versions/1.0.0/instances/INSTANCE_1/resources/test",
+ baseRequest, request, response);
+ verify(viewRegistry, atLeastOnce()).getDefinition("TEST", "1.0.0");
+ verify(viewEntity, atLeastOnce()).getClassLoader();
}
private static class HandlerProvider implements Provider {
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/controller/AmbariManagementControllerImplTest.java b/ambari-server/src/test/java/org/apache/ambari/server/controller/AmbariManagementControllerImplTest.java
index c1ac73241ae..51e032934ee 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/controller/AmbariManagementControllerImplTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/controller/AmbariManagementControllerImplTest.java
@@ -58,7 +58,7 @@
import java.util.Properties;
import java.util.Set;
-import javax.persistence.RollbackException;
+import jakarta.persistence.RollbackException;
import org.apache.ambari.server.AmbariException;
import org.apache.ambari.server.ClusterNotFoundException;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/controller/AmbariManagementControllerTest.java b/ambari-server/src/test/java/org/apache/ambari/server/controller/AmbariManagementControllerTest.java
index e0c80b34d4c..a7dcd421671 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/controller/AmbariManagementControllerTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/controller/AmbariManagementControllerTest.java
@@ -48,7 +48,7 @@
import java.util.Set;
import java.util.UUID;
-import javax.persistence.EntityManager;
+import jakarta.persistence.EntityManager;
import org.apache.ambari.server.AmbariException;
import org.apache.ambari.server.ClusterNotFoundException;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/controller/AmbariServerTest.java b/ambari-server/src/test/java/org/apache/ambari/server/controller/AmbariServerTest.java
index c06d3c0e9b9..df07791aa40 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/controller/AmbariServerTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/controller/AmbariServerTest.java
@@ -38,10 +38,9 @@
import java.util.ArrayList;
import java.util.EnumSet;
-import javax.persistence.EntityManager;
-import javax.persistence.TypedQuery;
-import javax.servlet.DispatcherType;
-import javax.servlet.SessionCookieConfig;
+import jakarta.persistence.EntityManager;
+import jakarta.persistence.TypedQuery;
+import jakarta.servlet.SessionCookieConfig;
import org.apache.ambari.server.AmbariException;
import org.apache.ambari.server.H2DatabaseCleaner;
@@ -64,7 +63,6 @@
import org.eclipse.jetty.server.session.SessionHandler;
import org.eclipse.jetty.servlet.FilterHolder;
import org.eclipse.jetty.servlet.ServletContextHandler;
-import org.eclipse.jetty.servlets.GzipFilter;
import org.eclipse.jetty.util.thread.QueuedThreadPool;
import org.junit.After;
import org.junit.Assert;
@@ -165,8 +163,6 @@ public void testConfigureRootHandler() throws Exception {
handler.setMaxFormContentSize(-1);
EasyMock.expectLastCall().once();
- EasyMock.expect(handler.addFilter(GzipFilter.class, "/*",
- EnumSet.of(DispatcherType.REQUEST))).andReturn(filter).once();
EasyMock.expect(handler.getMimeTypes()).andReturn(new MimeTypes()).anyTimes();
replay(handler, filter);
@@ -181,8 +177,6 @@ public void testConfigureCompression() throws Exception {
EasyMock.createNiceMock(ServletContextHandler.class);
final FilterHolder filter = EasyMock.createNiceMock(FilterHolder.class);
- EasyMock.expect(handler.addFilter(GzipFilter.class, "/*",
- EnumSet.of(DispatcherType.REQUEST))).andReturn(filter).once();
filter.setInitParameter(anyObject(String.class),anyObject(String.class));
EasyMock.expectLastCall().times(3);
replay(handler, filter);
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/controller/AmbariSessionManagerTest.java b/ambari-server/src/test/java/org/apache/ambari/server/controller/AmbariSessionManagerTest.java
index de2d992de09..613fb174562 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/controller/AmbariSessionManagerTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/controller/AmbariSessionManagerTest.java
@@ -26,8 +26,8 @@
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertNull;
-import javax.servlet.SessionCookieConfig;
-import javax.servlet.http.HttpSession;
+import jakarta.servlet.SessionCookieConfig;
+import jakarta.servlet.http.HttpSession;
import org.eclipse.jetty.server.session.SessionHandler;
import org.junit.Test;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/controller/KerberosHelperTest.java b/ambari-server/src/test/java/org/apache/ambari/server/controller/KerberosHelperTest.java
index 72033f21d4f..f8cf329de6e 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/controller/KerberosHelperTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/controller/KerberosHelperTest.java
@@ -55,7 +55,7 @@
import java.util.TreeSet;
import java.util.concurrent.TimeUnit;
-import javax.persistence.EntityManager;
+import jakarta.persistence.EntityManager;
import org.apache.ambari.server.AmbariException;
import org.apache.ambari.server.Role;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/ActiveWidgetLayoutResourceProviderTest.java b/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/ActiveWidgetLayoutResourceProviderTest.java
index 82a9b064bb2..298348ccbb5 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/ActiveWidgetLayoutResourceProviderTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/ActiveWidgetLayoutResourceProviderTest.java
@@ -30,7 +30,7 @@
import java.util.Map;
import java.util.Set;
-import javax.persistence.EntityManager;
+import jakarta.persistence.EntityManager;
import org.apache.ambari.server.actionmanager.ActionDBAccessor;
import org.apache.ambari.server.actionmanager.ActionManager;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/AlertResourceProviderTest.java b/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/AlertResourceProviderTest.java
index 9d59720f4cd..391b08e5592 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/AlertResourceProviderTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/AlertResourceProviderTest.java
@@ -37,7 +37,7 @@
import java.util.concurrent.atomic.AtomicInteger;
import java.util.concurrent.atomic.AtomicLong;
-import javax.persistence.EntityManager;
+import jakarta.persistence.EntityManager;
import org.apache.ambari.server.api.query.render.AlertStateSummary;
import org.apache.ambari.server.api.query.render.AlertSummaryGroupedRenderer;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/AmbariPrivilegeResourceProviderTest.java b/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/AmbariPrivilegeResourceProviderTest.java
index 2cfe4cfd41d..944c326a33f 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/AmbariPrivilegeResourceProviderTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/AmbariPrivilegeResourceProviderTest.java
@@ -35,7 +35,7 @@
import java.util.Map;
import java.util.Set;
-import javax.persistence.EntityManager;
+import jakarta.persistence.EntityManager;
import org.apache.ambari.server.controller.spi.Predicate;
import org.apache.ambari.server.controller.spi.Request;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/ArtifactResourceProviderTest.java b/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/ArtifactResourceProviderTest.java
index 2a0fdaad23f..5e7d06634fd 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/ArtifactResourceProviderTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/ArtifactResourceProviderTest.java
@@ -44,7 +44,7 @@
import java.util.Set;
import java.util.TreeMap;
-import javax.persistence.EntityManager;
+import jakarta.persistence.EntityManager;
import org.apache.ambari.server.controller.AmbariManagementController;
import org.apache.ambari.server.controller.spi.Predicate;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/CalculatedStatusTest.java b/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/CalculatedStatusTest.java
index 5c7814e8bb8..02f089efede 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/CalculatedStatusTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/CalculatedStatusTest.java
@@ -34,7 +34,7 @@
import java.util.Map;
import java.util.Set;
-import javax.persistence.EntityManager;
+import jakarta.persistence.EntityManager;
import org.apache.ambari.server.H2DatabaseCleaner;
import org.apache.ambari.server.Role;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/ClusterPrivilegeResourceProviderTest.java b/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/ClusterPrivilegeResourceProviderTest.java
index 962f793e2b6..2f833f55e86 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/ClusterPrivilegeResourceProviderTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/ClusterPrivilegeResourceProviderTest.java
@@ -30,7 +30,7 @@
import java.util.Map;
import java.util.Set;
-import javax.persistence.EntityManager;
+import jakarta.persistence.EntityManager;
import org.apache.ambari.server.controller.spi.Predicate;
import org.apache.ambari.server.controller.spi.Request;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/GroupPrivilegeResourceProviderTest.java b/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/GroupPrivilegeResourceProviderTest.java
index 5e5769e7441..5dc45ce4c7a 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/GroupPrivilegeResourceProviderTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/GroupPrivilegeResourceProviderTest.java
@@ -27,7 +27,7 @@
import java.util.List;
import java.util.Set;
-import javax.persistence.EntityManager;
+import jakarta.persistence.EntityManager;
import org.apache.ambari.server.configuration.AmbariServerConfiguration;
import org.apache.ambari.server.controller.GroupPrivilegeResponse;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/HostResourceProviderTest.java b/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/HostResourceProviderTest.java
index 5a2e131d9e7..eee0fe07961 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/HostResourceProviderTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/HostResourceProviderTest.java
@@ -43,7 +43,7 @@
import java.util.Set;
import java.util.UUID;
-import javax.persistence.EntityManager;
+import jakarta.persistence.EntityManager;
import org.apache.ambari.server.AmbariException;
import org.apache.ambari.server.HostNotFoundException;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/KerberosDescriptorResourceProviderTest.java b/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/KerberosDescriptorResourceProviderTest.java
index fcdadc5e755..8bffd41928c 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/KerberosDescriptorResourceProviderTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/KerberosDescriptorResourceProviderTest.java
@@ -31,7 +31,7 @@
import java.util.Map;
import java.util.Set;
-import javax.persistence.PersistenceException;
+import jakarta.persistence.PersistenceException;
import org.apache.ambari.server.controller.spi.Request;
import org.apache.ambari.server.controller.spi.ResourceAlreadyExistsException;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/MpackResourceProviderTest.java b/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/MpackResourceProviderTest.java
index 245884e4f09..ff0a02ee0ae 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/MpackResourceProviderTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/MpackResourceProviderTest.java
@@ -29,7 +29,7 @@
import java.util.Map;
import java.util.Set;
-import javax.persistence.EntityManager;
+import jakarta.persistence.EntityManager;
import org.apache.ambari.server.controller.AmbariManagementController;
import org.apache.ambari.server.controller.MpackRequest;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/PreUpgradeCheckResourceProviderTest.java b/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/PreUpgradeCheckResourceProviderTest.java
index a8490a3192f..697e866ce9c 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/PreUpgradeCheckResourceProviderTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/PreUpgradeCheckResourceProviderTest.java
@@ -34,7 +34,7 @@
import java.util.Map;
import java.util.Set;
-import javax.persistence.EntityManager;
+import jakarta.persistence.EntityManager;
import org.apache.ambari.server.AmbariException;
import org.apache.ambari.server.actionmanager.ActionDBAccessor;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/RoleAuthorizationResourceProviderTest.java b/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/RoleAuthorizationResourceProviderTest.java
index dcaa61be920..7e06bc7ea3a 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/RoleAuthorizationResourceProviderTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/RoleAuthorizationResourceProviderTest.java
@@ -25,7 +25,7 @@
import java.util.List;
import java.util.Set;
-import javax.persistence.EntityManager;
+import jakarta.persistence.EntityManager;
import org.apache.ambari.server.controller.AmbariManagementController;
import org.apache.ambari.server.controller.spi.Predicate;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/RootServiceComponentConfigurationResourceProviderTest.java b/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/RootServiceComponentConfigurationResourceProviderTest.java
index d2e7934aa0b..2358f675873 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/RootServiceComponentConfigurationResourceProviderTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/RootServiceComponentConfigurationResourceProviderTest.java
@@ -34,7 +34,7 @@
import java.util.Set;
import java.util.TreeMap;
-import javax.persistence.EntityManager;
+import jakarta.persistence.EntityManager;
import org.apache.ambari.server.api.services.RootServiceComponentConfigurationService;
import org.apache.ambari.server.api.services.stackadvisor.StackAdvisorHelper;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/StackUpgradeConfigurationMergeTest.java b/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/StackUpgradeConfigurationMergeTest.java
index 933f6a645ba..bac0b8e0ca7 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/StackUpgradeConfigurationMergeTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/StackUpgradeConfigurationMergeTest.java
@@ -28,7 +28,7 @@
import java.util.List;
import java.util.Map;
-import javax.persistence.EntityManager;
+import jakarta.persistence.EntityManager;
import org.apache.ambari.server.actionmanager.ActionDBAccessor;
import org.apache.ambari.server.actionmanager.ActionDBAccessorImpl;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/UserAuthenticationSourceResourceProviderTest.java b/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/UserAuthenticationSourceResourceProviderTest.java
index de5337d84ab..eb9d1b608b2 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/UserAuthenticationSourceResourceProviderTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/UserAuthenticationSourceResourceProviderTest.java
@@ -31,7 +31,7 @@
import java.util.Map;
import java.util.Set;
-import javax.persistence.EntityManager;
+import jakarta.persistence.EntityManager;
import org.apache.ambari.server.api.services.AmbariMetaInfo;
import org.apache.ambari.server.controller.predicate.AndPredicate;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/UserAuthorizationResourceProviderTest.java b/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/UserAuthorizationResourceProviderTest.java
index 93d05ffb5ad..9cdca96b55e 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/UserAuthorizationResourceProviderTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/UserAuthorizationResourceProviderTest.java
@@ -28,7 +28,7 @@
import java.util.LinkedList;
import java.util.Set;
-import javax.persistence.EntityManager;
+import jakarta.persistence.EntityManager;
import org.apache.ambari.server.actionmanager.ActionDBAccessor;
import org.apache.ambari.server.actionmanager.ActionManager;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/UserPrivilegeResourceProviderTest.java b/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/UserPrivilegeResourceProviderTest.java
index 62e3bf448c5..692676c9b8b 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/UserPrivilegeResourceProviderTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/UserPrivilegeResourceProviderTest.java
@@ -28,7 +28,7 @@
import java.util.List;
import java.util.Set;
-import javax.persistence.EntityManager;
+import jakarta.persistence.EntityManager;
import org.apache.ambari.server.configuration.AmbariServerConfiguration;
import org.apache.ambari.server.controller.UserPrivilegeResponse;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/UserResourceProviderTest.java b/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/UserResourceProviderTest.java
index b595ec439b5..4327ba6b61d 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/UserResourceProviderTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/UserResourceProviderTest.java
@@ -36,7 +36,7 @@
import java.util.Map;
import java.util.Set;
-import javax.persistence.EntityManager;
+import jakarta.persistence.EntityManager;
import org.apache.ambari.server.actionmanager.ActionDBAccessor;
import org.apache.ambari.server.actionmanager.ActionManager;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/WidgetResourceProviderTest.java b/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/WidgetResourceProviderTest.java
index 8160d13ecd3..83bac71322b 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/WidgetResourceProviderTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/WidgetResourceProviderTest.java
@@ -361,7 +361,13 @@ public void testUpdateResources() throws Exception {
Assert.assertFalse(oldName.equals(entity.getWidgetName()));
Assert.assertFalse(oldMetrics.equals(entity.getMetrics()));
Assert.assertFalse(oldProperties.equals(entity.getProperties()));
- Assert.assertEquals("[{\"name\":\"new_value\",\"new_name\":\"new_value2\"}]",entity.getMetrics());
+ Assert.assertEquals("[\n" +
+ " {\n" +
+ " \"name\": \"new_value\",\n" +
+ " \"new_name\": \"new_value2\"\n" +
+ " }\n" +
+ "]",entity.getMetrics());
+
// Depends on hashing, string representation can be different
Assert.assertTrue(CollectionPresentationUtils.isJsonsEquals("{\"new_property\":\"new_value2\",\"property1\":\"new_value1\"}", entity.getProperties()));
Assert.assertEquals("widget name2",entity.getWidgetName());
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/events/EventsTest.java b/ambari-server/src/test/java/org/apache/ambari/server/events/EventsTest.java
index 454f6c1bea5..6631ea642ae 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/events/EventsTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/events/EventsTest.java
@@ -22,7 +22,7 @@
import java.util.Map;
import java.util.UUID;
-import javax.persistence.EntityManager;
+import jakarta.persistence.EntityManager;
import org.apache.ambari.server.H2DatabaseCleaner;
import org.apache.ambari.server.controller.internal.DeleteHostComponentStatusMetaData;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/events/listeners/upgrade/AlertMaintenanceModeListenerTest.java b/ambari-server/src/test/java/org/apache/ambari/server/events/listeners/upgrade/AlertMaintenanceModeListenerTest.java
index bedb0e24ba2..4d475db938f 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/events/listeners/upgrade/AlertMaintenanceModeListenerTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/events/listeners/upgrade/AlertMaintenanceModeListenerTest.java
@@ -22,7 +22,7 @@
import java.util.ArrayList;
import java.util.List;
-import javax.persistence.EntityManager;
+import jakarta.persistence.EntityManager;
import org.apache.ambari.server.events.AlertUpdateEvent;
import org.apache.ambari.server.events.MaintenanceModeEvent;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/ldap/LdapModuleFunctionalTest.java b/ambari-server/src/test/java/org/apache/ambari/server/ldap/LdapModuleFunctionalTest.java
index a5ab04d2887..962baa086a1 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/ldap/LdapModuleFunctionalTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/ldap/LdapModuleFunctionalTest.java
@@ -18,7 +18,7 @@
import java.util.Map;
-import javax.persistence.EntityManager;
+import jakarta.persistence.EntityManager;
import org.apache.ambari.server.configuration.AmbariServerConfigurationKey;
import org.apache.ambari.server.ldap.domain.AmbariLdapConfiguration;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/metadata/AgentAlertDefinitionsTest.java b/ambari-server/src/test/java/org/apache/ambari/server/metadata/AgentAlertDefinitionsTest.java
index cb234ea6d30..0b358ccb6bb 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/metadata/AgentAlertDefinitionsTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/metadata/AgentAlertDefinitionsTest.java
@@ -19,7 +19,7 @@
import java.util.List;
-import javax.persistence.EntityManager;
+import jakarta.persistence.EntityManager;
import org.apache.ambari.server.H2DatabaseCleaner;
import org.apache.ambari.server.controller.RootComponent;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/metrics/system/impl/StompStatsMetricsSourceTest.java b/ambari-server/src/test/java/org/apache/ambari/server/metrics/system/impl/StompStatsMetricsSourceTest.java
new file mode 100644
index 00000000000..a7a09a3f76b
--- /dev/null
+++ b/ambari-server/src/test/java/org/apache/ambari/server/metrics/system/impl/StompStatsMetricsSourceTest.java
@@ -0,0 +1,112 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.ambari.server.metrics.system.impl;
+
+import static org.easymock.EasyMock.createNiceMock;
+import static org.junit.Assert.assertEquals;
+
+import java.util.List;
+
+import org.apache.ambari.server.metrics.system.SingleMetric;
+import org.easymock.EasyMock;
+import org.junit.Test;
+import org.springframework.web.socket.config.WebSocketMessageBrokerStats;
+
+public class StompStatsMetricsSourceTest {
+ @Test
+ public void testStatsMetrics() {
+ String webStat = "[1 current WS(2)-HttpStream(3)-HttpPoll(4), 5 total, 6 closed abnormally (7 connect failure, 8 send limit, 9 transport error)]";
+ String poolStat = "[pool size = 10, active threads = 20, queued tasks = 30, completed tasks = 40";
+ String stompSubProtocolStat = "[1 connect, 2 connected, 3 disconnect]";
+ Double[] webStatArray = { 1D, 2D, 3D, 4D, 5D, 6D, 7D, 8D, 9D };
+ Double[] poolStatArray = { 10D, 20D, 30D, 40D };
+ Double[] stompSubProtocolStatArray = { 1D, 2D, 3D };
+
+ WebSocketMessageBrokerStats apiStompStatsMock = createNiceMock(WebSocketMessageBrokerStats.class);
+ WebSocketMessageBrokerStats agentStompStatsMock = createNiceMock(WebSocketMessageBrokerStats.class);
+
+ StompStatsMetricsSource stompStatsMetricsSource = new StompStatsMetricsSource();
+
+ stompStatsMetricsSource.setApiStompStats(apiStompStatsMock);
+ stompStatsMetricsSource.setAgentStompStats(agentStompStatsMock);
+
+ EasyMock.expect(apiStompStatsMock.getWebSocketSessionStatsInfo()).andReturn(webStat).anyTimes();
+ EasyMock.expect(apiStompStatsMock.getStompSubProtocolStatsInfo()).andReturn(stompSubProtocolStat).anyTimes();
+ EasyMock.expect(apiStompStatsMock.getClientInboundExecutorStatsInfo()).andReturn(poolStat).anyTimes();
+ EasyMock.expect(apiStompStatsMock.getClientOutboundExecutorStatsInfo()).andReturn(poolStat).anyTimes();
+ EasyMock.expect(apiStompStatsMock.getSockJsTaskSchedulerStatsInfo()).andReturn(poolStat).anyTimes();
+
+ EasyMock.expect(agentStompStatsMock.getWebSocketSessionStatsInfo()).andReturn(webStat).anyTimes();
+ EasyMock.expect(agentStompStatsMock.getStompSubProtocolStatsInfo()).andReturn(stompSubProtocolStat).anyTimes();
+ EasyMock.expect(agentStompStatsMock.getClientInboundExecutorStatsInfo()).andReturn(poolStat).anyTimes();
+ EasyMock.expect(agentStompStatsMock.getClientOutboundExecutorStatsInfo()).andReturn(poolStat).anyTimes();
+ EasyMock.expect(agentStompStatsMock.getSockJsTaskSchedulerStatsInfo()).andReturn(poolStat).anyTimes();
+
+ EasyMock.replay(apiStompStatsMock);
+ EasyMock.replay(agentStompStatsMock);
+
+ List metricList = stompStatsMetricsSource.getStompStatMetrics();
+
+ for (int i = 0; i < StompStatsMetricsSource.webSocketMetrics.length; i++) {
+ assertEquals(webStatArray[i], getMetricValues(metricList, StompStatsMetricsSource.metricsTypes[0]
+ + ".websocket." + StompStatsMetricsSource.webSocketMetrics[i]), 0.00);
+ assertEquals(webStatArray[i], getMetricValues(metricList, StompStatsMetricsSource.metricsTypes[1]
+ + ".websocket." + StompStatsMetricsSource.webSocketMetrics[i]), 0.00);
+ }
+
+ for (int i = 0; i < StompStatsMetricsSource.stompSubProtocolMetrics.length; i++) {
+ assertEquals(stompSubProtocolStatArray[i],
+ getMetricValues(metricList, StompStatsMetricsSource.metricsTypes[0] + ".stomp_sub_protocol."
+ + StompStatsMetricsSource.stompSubProtocolMetrics[i]),
+ 0.00);
+ assertEquals(stompSubProtocolStatArray[i],
+ getMetricValues(metricList, StompStatsMetricsSource.metricsTypes[1] + ".stomp_sub_protocol."
+ + StompStatsMetricsSource.stompSubProtocolMetrics[i]),
+ 0.00);
+ }
+ for (int i = 0; i < StompStatsMetricsSource.poolMetrics.length; i++) {
+ assertEquals(poolStatArray[i], getMetricValues(metricList, StompStatsMetricsSource.metricsTypes[0]
+ + ".inbound_channel." + StompStatsMetricsSource.poolMetrics[i]), 0.00);
+ assertEquals(poolStatArray[i], getMetricValues(metricList, StompStatsMetricsSource.metricsTypes[1]
+ + ".inbound_channel." + StompStatsMetricsSource.poolMetrics[i]), 0.00);
+ }
+ for (int i = 0; i < StompStatsMetricsSource.poolMetrics.length; i++) {
+ assertEquals(poolStatArray[i], getMetricValues(metricList, StompStatsMetricsSource.metricsTypes[0]
+ + ".outbound_channel." + StompStatsMetricsSource.poolMetrics[i]), 0.00);
+ assertEquals(poolStatArray[i], getMetricValues(metricList, StompStatsMetricsSource.metricsTypes[1]
+ + ".outbound_channel." + StompStatsMetricsSource.poolMetrics[i]), 0.00);
+ }
+
+ for (int i = 0; i < StompStatsMetricsSource.poolMetrics.length; i++) {
+ assertEquals(poolStatArray[i], getMetricValues(metricList, StompStatsMetricsSource.metricsTypes[0]
+ + ".sockJsScheduler." + StompStatsMetricsSource.poolMetrics[i]), 0.00);
+ assertEquals(poolStatArray[i], getMetricValues(metricList, StompStatsMetricsSource.metricsTypes[1]
+ + ".sockJsScheduler." + StompStatsMetricsSource.poolMetrics[i]), 0.00);
+ }
+ }
+
+ private double getMetricValues(List metricList, String metricName) {
+ for (SingleMetric metric : metricList) {
+ if (metric.getMetricName().equals(metricName)) {
+ return metric.getValue();
+ }
+ }
+ throw new RuntimeException("Metric " + metricName + " not found");
+ }
+}
\ No newline at end of file
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/orm/AmbariJpaLocalTxnInterceptorTest.java b/ambari-server/src/test/java/org/apache/ambari/server/orm/AmbariJpaLocalTxnInterceptorTest.java
index 3f5286d6d98..11caf1d0c76 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/orm/AmbariJpaLocalTxnInterceptorTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/orm/AmbariJpaLocalTxnInterceptorTest.java
@@ -23,7 +23,7 @@
import java.io.FileNotFoundException;
import java.io.IOException;
-import javax.persistence.EntityTransaction;
+import jakarta.persistence.EntityTransaction;
import org.easymock.EasyMockSupport;
import org.junit.Assert;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/orm/OrmTestHelper.java b/ambari-server/src/test/java/org/apache/ambari/server/orm/OrmTestHelper.java
index fd1f053ef92..d4f0539a344 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/orm/OrmTestHelper.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/orm/OrmTestHelper.java
@@ -35,7 +35,7 @@
import java.util.UUID;
import java.util.concurrent.atomic.AtomicInteger;
-import javax.persistence.EntityManager;
+import jakarta.persistence.EntityManager;
import org.apache.ambari.server.AmbariException;
import org.apache.ambari.server.Role;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/orm/TestOrmImpl.java b/ambari-server/src/test/java/org/apache/ambari/server/orm/TestOrmImpl.java
index 62ac31cb289..1a4527f2402 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/orm/TestOrmImpl.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/orm/TestOrmImpl.java
@@ -24,8 +24,8 @@
import java.util.Date;
import java.util.List;
-import javax.persistence.EntityManager;
-import javax.persistence.RollbackException;
+import jakarta.persistence.EntityManager;
+import jakarta.persistence.RollbackException;
import org.apache.ambari.server.AmbariException;
import org.apache.ambari.server.H2DatabaseCleaner;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/orm/dao/AlertDispatchDAOTest.java b/ambari-server/src/test/java/org/apache/ambari/server/orm/dao/AlertDispatchDAOTest.java
index 4dac0196d9a..ea0cdd265ff 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/orm/dao/AlertDispatchDAOTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/orm/dao/AlertDispatchDAOTest.java
@@ -32,7 +32,7 @@
import java.util.Set;
import java.util.UUID;
-import javax.persistence.EntityManager;
+import jakarta.persistence.EntityManager;
import org.apache.ambari.server.AmbariException;
import org.apache.ambari.server.H2DatabaseCleaner;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/orm/dao/AlertsDAOCachedTest.java b/ambari-server/src/test/java/org/apache/ambari/server/orm/dao/AlertsDAOCachedTest.java
index eeff82dbdd3..8d87d4eb790 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/orm/dao/AlertsDAOCachedTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/orm/dao/AlertsDAOCachedTest.java
@@ -19,8 +19,8 @@
import java.util.List;
-import javax.persistence.EntityManager;
-import javax.persistence.TypedQuery;
+import jakarta.persistence.EntityManager;
+import jakarta.persistence.TypedQuery;
import org.apache.ambari.server.configuration.Configuration;
import org.apache.ambari.server.orm.entities.AlertCurrentEntity;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/orm/dao/AlertsDAOTest.java b/ambari-server/src/test/java/org/apache/ambari/server/orm/dao/AlertsDAOTest.java
index 26c49d698c7..a3963ca03af 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/orm/dao/AlertsDAOTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/orm/dao/AlertsDAOTest.java
@@ -33,7 +33,7 @@
import java.util.TimeZone;
import java.util.UUID;
-import javax.persistence.EntityManager;
+import jakarta.persistence.EntityManager;
import org.apache.ambari.server.H2DatabaseCleaner;
import org.apache.ambari.server.controller.AlertCurrentRequest;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/orm/dao/AmbariConfigurationDAOTest.java b/ambari-server/src/test/java/org/apache/ambari/server/orm/dao/AmbariConfigurationDAOTest.java
index f801fd61ee6..4fa5a6465c0 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/orm/dao/AmbariConfigurationDAOTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/orm/dao/AmbariConfigurationDAOTest.java
@@ -31,7 +31,7 @@
import java.util.Map;
import java.util.TreeMap;
-import javax.persistence.EntityManager;
+import jakarta.persistence.EntityManager;
import org.apache.ambari.server.orm.entities.AmbariConfigurationEntity;
import org.easymock.Capture;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/orm/dao/BlueprintDAOTest.java b/ambari-server/src/test/java/org/apache/ambari/server/orm/dao/BlueprintDAOTest.java
index d44b81fee7f..b33c6581988 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/orm/dao/BlueprintDAOTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/orm/dao/BlueprintDAOTest.java
@@ -31,8 +31,8 @@
import java.util.Collections;
import java.util.List;
-import javax.persistence.EntityManager;
-import javax.persistence.TypedQuery;
+import jakarta.persistence.EntityManager;
+import jakarta.persistence.TypedQuery;
import org.apache.ambari.server.orm.entities.BlueprintEntity;
import org.junit.Before;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/orm/dao/GroupDAOTest.java b/ambari-server/src/test/java/org/apache/ambari/server/orm/dao/GroupDAOTest.java
index b63276ba292..9297fa6ee7a 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/orm/dao/GroupDAOTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/orm/dao/GroupDAOTest.java
@@ -26,8 +26,8 @@
import static org.easymock.EasyMock.verify;
import static org.junit.Assert.assertSame;
-import javax.persistence.EntityManager;
-import javax.persistence.TypedQuery;
+import jakarta.persistence.EntityManager;
+import jakarta.persistence.TypedQuery;
import org.apache.ambari.server.orm.entities.GroupEntity;
import org.junit.Before;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/orm/dao/HostComponentDesiredStateDAOTest.java b/ambari-server/src/test/java/org/apache/ambari/server/orm/dao/HostComponentDesiredStateDAOTest.java
index d2856910eee..5dea9605879 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/orm/dao/HostComponentDesiredStateDAOTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/orm/dao/HostComponentDesiredStateDAOTest.java
@@ -23,7 +23,7 @@
import static org.easymock.EasyMock.replay;
import static org.easymock.EasyMock.verify;
-import javax.persistence.EntityManager;
+import jakarta.persistence.EntityManager;
import org.apache.ambari.server.orm.entities.HostComponentDesiredStateEntity;
import org.apache.ambari.server.orm.entities.HostEntity;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/orm/dao/HostComponentStateDAOTest.java b/ambari-server/src/test/java/org/apache/ambari/server/orm/dao/HostComponentStateDAOTest.java
index 7896c342e58..ce718c883ff 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/orm/dao/HostComponentStateDAOTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/orm/dao/HostComponentStateDAOTest.java
@@ -23,7 +23,7 @@
import static org.easymock.EasyMock.replay;
import static org.easymock.EasyMock.verify;
-import javax.persistence.EntityManager;
+import jakarta.persistence.EntityManager;
import org.apache.ambari.server.orm.entities.HostComponentStateEntity;
import org.apache.ambari.server.orm.entities.HostEntity;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/orm/dao/HostRoleCommandDAOTest.java b/ambari-server/src/test/java/org/apache/ambari/server/orm/dao/HostRoleCommandDAOTest.java
index 8d453c47721..791d12a70e4 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/orm/dao/HostRoleCommandDAOTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/orm/dao/HostRoleCommandDAOTest.java
@@ -22,7 +22,7 @@
import java.util.List;
import java.util.concurrent.atomic.AtomicLong;
-import javax.persistence.EntityManager;
+import jakarta.persistence.EntityManager;
import org.apache.ambari.server.AmbariException;
import org.apache.ambari.server.H2DatabaseCleaner;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/orm/dao/KerberosDescriptorDAOTest.java b/ambari-server/src/test/java/org/apache/ambari/server/orm/dao/KerberosDescriptorDAOTest.java
index 3df44e6feab..ed4c027a2fb 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/orm/dao/KerberosDescriptorDAOTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/orm/dao/KerberosDescriptorDAOTest.java
@@ -5,7 +5,7 @@
import static org.easymock.EasyMock.replay;
import static org.easymock.EasyMock.reset;
-import javax.persistence.EntityManager;
+import jakarta.persistence.EntityManager;
import org.apache.ambari.server.orm.entities.KerberosDescriptorEntity;
import org.easymock.Capture;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/orm/dao/KerberosKeytabPrincipalDAOTest.java b/ambari-server/src/test/java/org/apache/ambari/server/orm/dao/KerberosKeytabPrincipalDAOTest.java
index 3fe38e23184..56a09644694 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/orm/dao/KerberosKeytabPrincipalDAOTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/orm/dao/KerberosKeytabPrincipalDAOTest.java
@@ -24,7 +24,7 @@
import java.util.ArrayList;
import java.util.List;
-import javax.persistence.EntityManager;
+import jakarta.persistence.EntityManager;
import org.apache.ambari.server.orm.entities.HostEntity;
import org.apache.ambari.server.orm.entities.KerberosKeytabEntity;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/orm/dao/PrincipalDAOTest.java b/ambari-server/src/test/java/org/apache/ambari/server/orm/dao/PrincipalDAOTest.java
index 074c7dd39b0..2e9d6c51b1b 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/orm/dao/PrincipalDAOTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/orm/dao/PrincipalDAOTest.java
@@ -23,7 +23,7 @@
import static org.easymock.EasyMock.replay;
import static org.easymock.EasyMock.reset;
-import javax.persistence.EntityManager;
+import jakarta.persistence.EntityManager;
import org.apache.ambari.server.orm.entities.PrincipalEntity;
import org.junit.Assert;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/orm/dao/PrincipalTypeDAOTest.java b/ambari-server/src/test/java/org/apache/ambari/server/orm/dao/PrincipalTypeDAOTest.java
index 2093b32a4cf..afebb06d6fc 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/orm/dao/PrincipalTypeDAOTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/orm/dao/PrincipalTypeDAOTest.java
@@ -23,7 +23,7 @@
import static org.easymock.EasyMock.replay;
import static org.easymock.EasyMock.reset;
-import javax.persistence.EntityManager;
+import jakarta.persistence.EntityManager;
import org.apache.ambari.server.orm.entities.PrincipalTypeEntity;
import org.junit.Assert;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/orm/dao/ResourceDAOTest.java b/ambari-server/src/test/java/org/apache/ambari/server/orm/dao/ResourceDAOTest.java
index 1289e7a1b0a..29c218af4ff 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/orm/dao/ResourceDAOTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/orm/dao/ResourceDAOTest.java
@@ -23,7 +23,7 @@
import static org.easymock.EasyMock.replay;
import static org.easymock.EasyMock.reset;
-import javax.persistence.EntityManager;
+import jakarta.persistence.EntityManager;
import org.apache.ambari.server.orm.entities.ResourceEntity;
import org.junit.Assert;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/orm/dao/ResourceTypeDAOTest.java b/ambari-server/src/test/java/org/apache/ambari/server/orm/dao/ResourceTypeDAOTest.java
index deb5f7d0b84..e74929ce0a8 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/orm/dao/ResourceTypeDAOTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/orm/dao/ResourceTypeDAOTest.java
@@ -23,7 +23,7 @@
import static org.easymock.EasyMock.replay;
import static org.easymock.EasyMock.reset;
-import javax.persistence.EntityManager;
+import jakarta.persistence.EntityManager;
import org.apache.ambari.server.orm.entities.ResourceTypeEntity;
import org.junit.Assert;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/orm/dao/UserDAOTest.java b/ambari-server/src/test/java/org/apache/ambari/server/orm/dao/UserDAOTest.java
index e3c904d7233..d20c9e76999 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/orm/dao/UserDAOTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/orm/dao/UserDAOTest.java
@@ -26,8 +26,8 @@
import static org.easymock.EasyMock.replay;
import static org.junit.Assert.assertEquals;
-import javax.persistence.EntityManager;
-import javax.persistence.TypedQuery;
+import jakarta.persistence.EntityManager;
+import jakarta.persistence.TypedQuery;
import org.apache.ambari.server.orm.DBAccessor;
import org.apache.ambari.server.orm.entities.UserEntity;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/orm/dao/ViewInstanceDAOTest.java b/ambari-server/src/test/java/org/apache/ambari/server/orm/dao/ViewInstanceDAOTest.java
index d27d779a33c..ed804b92e80 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/orm/dao/ViewInstanceDAOTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/orm/dao/ViewInstanceDAOTest.java
@@ -26,7 +26,7 @@
import static org.easymock.EasyMock.verify;
import static org.junit.Assert.assertSame;
-import javax.persistence.EntityManager;
+import jakarta.persistence.EntityManager;
import org.apache.ambari.server.orm.entities.ViewInstanceDataEntity;
import org.junit.Before;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/proxy/ProxyServiceTest.java b/ambari-server/src/test/java/org/apache/ambari/server/proxy/ProxyServiceTest.java
index 5c31ec06cb8..d200f1b0a9b 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/proxy/ProxyServiceTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/proxy/ProxyServiceTest.java
@@ -18,7 +18,7 @@
package org.apache.ambari.server.proxy;
-import static javax.ws.rs.core.MediaType.APPLICATION_FORM_URLENCODED_TYPE;
+import static jakarta.ws.rs.core.MediaType.APPLICATION_FORM_URLENCODED_TYPE;
import static org.easymock.EasyMock.createMock;
import static org.easymock.EasyMock.expect;
import static org.easymock.EasyMock.replay;
@@ -35,10 +35,10 @@
import java.util.List;
import java.util.Map;
-import javax.ws.rs.core.MultivaluedHashMap;
-import javax.ws.rs.core.MultivaluedMap;
-import javax.ws.rs.core.Response;
-import javax.ws.rs.core.UriBuilder;
+import jakarta.ws.rs.core.MultivaluedHashMap;
+import jakarta.ws.rs.core.MultivaluedMap;
+import jakarta.ws.rs.core.Response;
+import jakarta.ws.rs.core.UriBuilder;
import org.apache.ambari.server.api.services.BaseServiceTest;
import org.apache.ambari.server.controller.internal.URLStreamProvider;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/scheduler/ExecutionScheduleManagerTest.java b/ambari-server/src/test/java/org/apache/ambari/server/scheduler/ExecutionScheduleManagerTest.java
index 8f2b0f0b7b7..64885cc6979 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/scheduler/ExecutionScheduleManagerTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/scheduler/ExecutionScheduleManagerTest.java
@@ -39,9 +39,9 @@
import java.util.List;
import java.util.Map;
-import javax.ws.rs.client.Client;
-import javax.ws.rs.client.ClientBuilder;
-import javax.ws.rs.client.WebTarget;
+import jakarta.ws.rs.client.Client;
+import jakarta.ws.rs.client.ClientBuilder;
+import jakarta.ws.rs.client.WebTarget;
import org.apache.ambari.server.AmbariException;
import org.apache.ambari.server.H2DatabaseCleaner;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/security/AbstractSecurityHeaderFilterTest.java b/ambari-server/src/test/java/org/apache/ambari/server/security/AbstractSecurityHeaderFilterTest.java
index dc9772564e0..bb728c99e36 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/security/AbstractSecurityHeaderFilterTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/security/AbstractSecurityHeaderFilterTest.java
@@ -24,10 +24,10 @@
import java.util.Map;
import java.util.Properties;
-import javax.servlet.FilterChain;
-import javax.servlet.FilterConfig;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
+import jakarta.servlet.FilterChain;
+import jakarta.servlet.FilterConfig;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
import org.apache.ambari.server.configuration.Configuration;
import org.apache.ambari.server.state.stack.OsFamily;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/security/AmbariEntryPointTest.java b/ambari-server/src/test/java/org/apache/ambari/server/security/AmbariEntryPointTest.java
index ba752f48213..991240d30f0 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/security/AmbariEntryPointTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/security/AmbariEntryPointTest.java
@@ -24,9 +24,9 @@
import java.io.IOException;
import java.util.Properties;
-import javax.servlet.ServletException;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
+import jakarta.servlet.ServletException;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
import org.apache.ambari.server.configuration.Configuration;
import org.easymock.EasyMockSupport;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/security/AmbariServerSecurityHeaderFilterTest.java b/ambari-server/src/test/java/org/apache/ambari/server/security/AmbariServerSecurityHeaderFilterTest.java
index a2db5ceb505..5896a8872d4 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/security/AmbariServerSecurityHeaderFilterTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/security/AmbariServerSecurityHeaderFilterTest.java
@@ -24,7 +24,7 @@
import java.util.HashMap;
import java.util.Map;
-import javax.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletRequest;
import org.apache.ambari.server.configuration.Configuration;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/security/AmbariViewsSecurityHeaderFilterTest.java b/ambari-server/src/test/java/org/apache/ambari/server/security/AmbariViewsSecurityHeaderFilterTest.java
index d317399db63..3c091c26894 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/security/AmbariViewsSecurityHeaderFilterTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/security/AmbariViewsSecurityHeaderFilterTest.java
@@ -24,7 +24,7 @@
import java.util.HashMap;
import java.util.Map;
-import javax.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletRequest;
import org.apache.ambari.server.configuration.Configuration;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/security/authentication/AbstractAuthenticationProviderTest.java b/ambari-server/src/test/java/org/apache/ambari/server/security/authentication/AbstractAuthenticationProviderTest.java
index ecb991dff26..93cc6aff94b 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/security/authentication/AbstractAuthenticationProviderTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/security/authentication/AbstractAuthenticationProviderTest.java
@@ -24,7 +24,7 @@
import static org.junit.Assert.assertNotNull;
import static org.junit.Assert.assertTrue;
-import javax.persistence.EntityManager;
+import jakarta.persistence.EntityManager;
import org.apache.ambari.server.configuration.AmbariServerConfiguration;
import org.apache.ambari.server.configuration.Configuration;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/security/authentication/AmbariBasicAuthenticationFilterTest.java b/ambari-server/src/test/java/org/apache/ambari/server/security/authentication/AmbariBasicAuthenticationFilterTest.java
index 863be2fb052..1eb5093f8a8 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/security/authentication/AmbariBasicAuthenticationFilterTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/security/authentication/AmbariBasicAuthenticationFilterTest.java
@@ -28,11 +28,11 @@
import java.io.IOException;
import java.util.List;
-import javax.servlet.FilterChain;
-import javax.servlet.ServletException;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
-import javax.servlet.http.HttpSession;
+import jakarta.servlet.FilterChain;
+import jakarta.servlet.ServletException;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
+import jakarta.servlet.http.HttpSession;
import org.apache.ambari.server.security.AmbariEntryPoint;
import org.easymock.Capture;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/security/authentication/AmbariDelegatingAuthenticationFilterTest.java b/ambari-server/src/test/java/org/apache/ambari/server/security/authentication/AmbariDelegatingAuthenticationFilterTest.java
index cf1be4be0e9..c77d69a448f 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/security/authentication/AmbariDelegatingAuthenticationFilterTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/security/authentication/AmbariDelegatingAuthenticationFilterTest.java
@@ -23,11 +23,11 @@
import java.util.Arrays;
-import javax.servlet.Filter;
-import javax.servlet.FilterChain;
-import javax.servlet.FilterConfig;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
+import jakarta.servlet.Filter;
+import jakarta.servlet.FilterChain;
+import jakarta.servlet.FilterConfig;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
import org.easymock.EasyMockSupport;
import org.junit.Test;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/security/authentication/jwt/AmbariJwtAuthenticationFilterTest.java b/ambari-server/src/test/java/org/apache/ambari/server/security/authentication/jwt/AmbariJwtAuthenticationFilterTest.java
index 4e35a5eb619..be6d962dce6 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/security/authentication/jwt/AmbariJwtAuthenticationFilterTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/security/authentication/jwt/AmbariJwtAuthenticationFilterTest.java
@@ -42,10 +42,10 @@
import java.util.List;
import java.util.Map;
-import javax.servlet.FilterChain;
-import javax.servlet.http.Cookie;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
+import jakarta.servlet.FilterChain;
+import jakarta.servlet.http.Cookie;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
import org.apache.ambari.server.configuration.AmbariServerConfigurationKey;
import org.apache.ambari.server.configuration.Configuration;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/security/authentication/kerberos/AmbariKerberosAuthenticationFilterTest.java b/ambari-server/src/test/java/org/apache/ambari/server/security/authentication/kerberos/AmbariKerberosAuthenticationFilterTest.java
index f5087a12a2c..f8ed060a043 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/security/authentication/kerberos/AmbariKerberosAuthenticationFilterTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/security/authentication/kerberos/AmbariKerberosAuthenticationFilterTest.java
@@ -31,11 +31,11 @@
import java.io.IOException;
import java.util.List;
-import javax.servlet.FilterChain;
-import javax.servlet.ServletException;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
-import javax.servlet.http.HttpSession;
+import jakarta.servlet.FilterChain;
+import jakarta.servlet.ServletException;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
+import jakarta.servlet.http.HttpSession;
import org.apache.ambari.server.configuration.Configuration;
import org.apache.ambari.server.security.AmbariEntryPoint;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/security/authentication/pam/AmbariPamAuthenticationProviderTest.java b/ambari-server/src/test/java/org/apache/ambari/server/security/authentication/pam/AmbariPamAuthenticationProviderTest.java
index d5a0854f654..2073a865f24 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/security/authentication/pam/AmbariPamAuthenticationProviderTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/security/authentication/pam/AmbariPamAuthenticationProviderTest.java
@@ -24,7 +24,7 @@
import java.util.Collections;
import java.util.Properties;
-import javax.persistence.EntityManager;
+import jakarta.persistence.EntityManager;
import org.apache.ambari.server.configuration.AmbariServerConfiguration;
import org.apache.ambari.server.configuration.Configuration;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/security/authorization/AmbariAuthorizationFilterTest.java b/ambari-server/src/test/java/org/apache/ambari/server/security/authorization/AmbariAuthorizationFilterTest.java
index 459bccb1aa9..2790e664cb0 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/security/authorization/AmbariAuthorizationFilterTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/security/authorization/AmbariAuthorizationFilterTest.java
@@ -26,11 +26,11 @@
import java.util.Collections;
-import javax.persistence.EntityManager;
-import javax.servlet.FilterChain;
-import javax.servlet.FilterConfig;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
+import jakarta.persistence.EntityManager;
+import jakarta.servlet.FilterChain;
+import jakarta.servlet.FilterConfig;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
import org.apache.ambari.server.audit.AuditLogger;
import org.apache.ambari.server.configuration.AmbariServerConfiguration;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/security/authorization/AmbariUserAuthenticationFilterTest.java b/ambari-server/src/test/java/org/apache/ambari/server/security/authorization/AmbariUserAuthenticationFilterTest.java
index 7c3a7fd2d5b..cca32a464cb 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/security/authorization/AmbariUserAuthenticationFilterTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/security/authorization/AmbariUserAuthenticationFilterTest.java
@@ -33,10 +33,10 @@
import java.io.IOException;
import java.util.HashSet;
-import javax.servlet.FilterChain;
-import javax.servlet.ServletException;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
+import jakarta.servlet.FilterChain;
+import jakarta.servlet.ServletException;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
import org.apache.ambari.server.orm.entities.PrincipalEntity;
import org.apache.ambari.server.orm.entities.UserEntity;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/security/authorization/UsersTest.java b/ambari-server/src/test/java/org/apache/ambari/server/security/authorization/UsersTest.java
index c6f2d924d75..8c91450b012 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/security/authorization/UsersTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/security/authorization/UsersTest.java
@@ -35,7 +35,8 @@
import java.util.Objects;
import javax.annotation.Nullable;
-import javax.persistence.EntityManager;
+
+import jakarta.persistence.EntityManager;
import org.apache.ambari.server.AmbariException;
import org.apache.ambari.server.configuration.AmbariServerConfiguration;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/security/encryption/SensitiveDataEncryptionTest.java b/ambari-server/src/test/java/org/apache/ambari/server/security/encryption/SensitiveDataEncryptionTest.java
index 842b5704088..7e5dd7c92f2 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/security/encryption/SensitiveDataEncryptionTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/security/encryption/SensitiveDataEncryptionTest.java
@@ -25,7 +25,7 @@
import java.util.List;
import java.util.Map;
-import javax.persistence.EntityManager;
+import jakarta.persistence.EntityManager;
import org.apache.ambari.server.controller.AmbariManagementController;
import org.apache.ambari.server.orm.DBAccessor;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/serveraction/kerberos/AbstractPrepareKerberosServerActionTest.java b/ambari-server/src/test/java/org/apache/ambari/server/serveraction/kerberos/AbstractPrepareKerberosServerActionTest.java
index 8bfe2fe56ec..ee0e9c4a21f 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/serveraction/kerberos/AbstractPrepareKerberosServerActionTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/serveraction/kerberos/AbstractPrepareKerberosServerActionTest.java
@@ -37,7 +37,7 @@
import java.util.Set;
import java.util.concurrent.ConcurrentMap;
-import javax.persistence.EntityManager;
+import jakarta.persistence.EntityManager;
import org.apache.ambari.server.actionmanager.ActionDBAccessor;
import org.apache.ambari.server.actionmanager.ActionManager;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/serveraction/kerberos/ConfigureAmbariIdentitiesServerActionTest.java b/ambari-server/src/test/java/org/apache/ambari/server/serveraction/kerberos/ConfigureAmbariIdentitiesServerActionTest.java
index 78e3592a7fc..d9234aa7d25 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/serveraction/kerberos/ConfigureAmbariIdentitiesServerActionTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/serveraction/kerberos/ConfigureAmbariIdentitiesServerActionTest.java
@@ -27,7 +27,7 @@
import java.lang.reflect.Method;
import java.nio.charset.Charset;
-import javax.persistence.EntityManager;
+import jakarta.persistence.EntityManager;
import org.apache.ambari.server.audit.AuditLogger;
import org.apache.ambari.server.controller.KerberosHelper;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/serveraction/kerberos/FinalizeKerberosServerActionTest.java b/ambari-server/src/test/java/org/apache/ambari/server/serveraction/kerberos/FinalizeKerberosServerActionTest.java
index 3968e3abbaa..9a6770e7432 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/serveraction/kerberos/FinalizeKerberosServerActionTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/serveraction/kerberos/FinalizeKerberosServerActionTest.java
@@ -30,7 +30,7 @@
import java.util.concurrent.ConcurrentHashMap;
import java.util.concurrent.ConcurrentMap;
-import javax.persistence.EntityManager;
+import jakarta.persistence.EntityManager;
import org.apache.ambari.server.AmbariException;
import org.apache.ambari.server.Role;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/serveraction/kerberos/KerberosServerActionTest.java b/ambari-server/src/test/java/org/apache/ambari/server/serveraction/kerberos/KerberosServerActionTest.java
index 4c467282571..2ddbfaf4259 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/serveraction/kerberos/KerberosServerActionTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/serveraction/kerberos/KerberosServerActionTest.java
@@ -32,7 +32,7 @@
import java.util.concurrent.ConcurrentHashMap;
import java.util.concurrent.ConcurrentMap;
-import javax.persistence.EntityManager;
+import jakarta.persistence.EntityManager;
import org.apache.ambari.server.AmbariException;
import org.apache.ambari.server.actionmanager.HostRoleCommand;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/serveraction/kerberos/UpdateKerberosConfigsServerActionTest.java b/ambari-server/src/test/java/org/apache/ambari/server/serveraction/kerberos/UpdateKerberosConfigsServerActionTest.java
index fccf4fec3ae..37a0cffc6d5 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/serveraction/kerberos/UpdateKerberosConfigsServerActionTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/serveraction/kerberos/UpdateKerberosConfigsServerActionTest.java
@@ -29,7 +29,7 @@
import java.util.Map;
import java.util.stream.StreamSupport;
-import javax.persistence.EntityManager;
+import jakarta.persistence.EntityManager;
import org.apache.ambari.server.agent.ExecutionCommand;
import org.apache.ambari.server.controller.AmbariManagementController;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/serveraction/upgrades/AutoSkipFailedSummaryActionTest.java b/ambari-server/src/test/java/org/apache/ambari/server/serveraction/upgrades/AutoSkipFailedSummaryActionTest.java
index e7a1e2e967c..2de480e22b5 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/serveraction/upgrades/AutoSkipFailedSummaryActionTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/serveraction/upgrades/AutoSkipFailedSummaryActionTest.java
@@ -32,7 +32,7 @@
import java.util.concurrent.ConcurrentHashMap;
import java.util.concurrent.ConcurrentMap;
-import javax.persistence.EntityManager;
+import jakarta.persistence.EntityManager;
import org.apache.ambari.server.H2DatabaseCleaner;
import org.apache.ambari.server.Role;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/serveraction/upgrades/ComponentVersionCheckActionTest.java b/ambari-server/src/test/java/org/apache/ambari/server/serveraction/upgrades/ComponentVersionCheckActionTest.java
index a65cea08c0d..bec9380fe30 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/serveraction/upgrades/ComponentVersionCheckActionTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/serveraction/upgrades/ComponentVersionCheckActionTest.java
@@ -26,7 +26,7 @@
import java.util.List;
import java.util.Map;
-import javax.persistence.EntityManager;
+import jakarta.persistence.EntityManager;
import org.apache.ambari.server.AmbariException;
import org.apache.ambari.server.H2DatabaseCleaner;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/serveraction/upgrades/ConfigureActionTest.java b/ambari-server/src/test/java/org/apache/ambari/server/serveraction/upgrades/ConfigureActionTest.java
index eb8512582b1..c3f655fa8db 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/serveraction/upgrades/ConfigureActionTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/serveraction/upgrades/ConfigureActionTest.java
@@ -28,7 +28,7 @@
import java.util.List;
import java.util.Map;
-import javax.persistence.EntityManager;
+import jakarta.persistence.EntityManager;
import org.apache.ambari.server.AmbariException;
import org.apache.ambari.server.H2DatabaseCleaner;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/serveraction/upgrades/CreateAndConfigureActionTest.java b/ambari-server/src/test/java/org/apache/ambari/server/serveraction/upgrades/CreateAndConfigureActionTest.java
index fdbdad143b6..39619b5e285 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/serveraction/upgrades/CreateAndConfigureActionTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/serveraction/upgrades/CreateAndConfigureActionTest.java
@@ -27,7 +27,7 @@
import java.util.List;
import java.util.Map;
-import javax.persistence.EntityManager;
+import jakarta.persistence.EntityManager;
import org.apache.ambari.server.AmbariException;
import org.apache.ambari.server.H2DatabaseCleaner;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/serveraction/upgrades/KerberosKeytabsActionTest.java b/ambari-server/src/test/java/org/apache/ambari/server/serveraction/upgrades/KerberosKeytabsActionTest.java
index 43bfed2fbeb..274368a3d49 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/serveraction/upgrades/KerberosKeytabsActionTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/serveraction/upgrades/KerberosKeytabsActionTest.java
@@ -27,7 +27,7 @@
import java.util.HashMap;
import java.util.Map;
-import javax.persistence.EntityManager;
+import jakarta.persistence.EntityManager;
import org.apache.ambari.server.actionmanager.ExecutionCommandWrapper;
import org.apache.ambari.server.actionmanager.HostRoleCommand;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/serveraction/upgrades/PreconfigureKerberosActionTest.java b/ambari-server/src/test/java/org/apache/ambari/server/serveraction/upgrades/PreconfigureKerberosActionTest.java
index a7697c56c12..c45ef35a468 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/serveraction/upgrades/PreconfigureKerberosActionTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/serveraction/upgrades/PreconfigureKerberosActionTest.java
@@ -48,7 +48,7 @@
import java.util.concurrent.ConcurrentHashMap;
import java.util.concurrent.ConcurrentMap;
-import javax.persistence.EntityManager;
+import jakarta.persistence.EntityManager;
import org.apache.ambari.server.AmbariException;
import org.apache.ambari.server.actionmanager.ActionDBAccessor;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/serveraction/upgrades/UpgradeActionTest.java b/ambari-server/src/test/java/org/apache/ambari/server/serveraction/upgrades/UpgradeActionTest.java
index 38af25f304d..c5082c8927e 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/serveraction/upgrades/UpgradeActionTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/serveraction/upgrades/UpgradeActionTest.java
@@ -30,7 +30,7 @@
import java.util.List;
import java.util.Map;
-import javax.persistence.EntityManager;
+import jakarta.persistence.EntityManager;
import org.apache.ambari.server.AmbariException;
import org.apache.ambari.server.H2DatabaseCleaner;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/serveraction/upgrades/UpgradeUserKerberosDescriptorTest.java b/ambari-server/src/test/java/org/apache/ambari/server/serveraction/upgrades/UpgradeUserKerberosDescriptorTest.java
index 7decb96b9e4..eca2af813a4 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/serveraction/upgrades/UpgradeUserKerberosDescriptorTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/serveraction/upgrades/UpgradeUserKerberosDescriptorTest.java
@@ -137,7 +137,7 @@ public void testUpgrade() throws Exception {
KerberosDescriptor updatedKerberosDescriptor = EasyMock.createMock(KerberosDescriptor.class);
PowerMockito.mockStatic(KerberosDescriptorUpdateHelper.class);
- PowerMockito.when(KerberosDescriptorUpdateHelper.updateUserKerberosDescriptor(previousDescriptor, newDescriptor, userDescriptor)).thenReturn(updatedKerberosDescriptor);
+ PowerMockito.when(KerberosDescriptorUpdateHelper.updateUserKerberosDescriptor(previousDescriptor, newDescriptor, userDescriptor)).thenAnswer(invocation -> updatedKerberosDescriptor);
expect(kerberosDescriptorFactory.createInstance((Map)null)).andReturn(userDescriptor).atLeastOnce();
expect(ambariMetaInfo.getKerberosDescriptor("HDP","2.5", false)).andReturn(newDescriptor).atLeastOnce();
expect(ambariMetaInfo.getKerberosDescriptor("HDP","2.4",false)).andReturn(previousDescriptor).atLeastOnce();
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/state/ConfigHelperTest.java b/ambari-server/src/test/java/org/apache/ambari/server/state/ConfigHelperTest.java
index a472f7cb670..2955d1e1d70 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/state/ConfigHelperTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/state/ConfigHelperTest.java
@@ -39,7 +39,7 @@
import java.util.Map;
import java.util.Set;
-import javax.persistence.EntityManager;
+import jakarta.persistence.EntityManager;
import org.apache.ambari.server.AmbariException;
import org.apache.ambari.server.H2DatabaseCleaner;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/state/alerts/AggregateAlertListenerTest.java b/ambari-server/src/test/java/org/apache/ambari/server/state/alerts/AggregateAlertListenerTest.java
index 2a63b4207cb..64caae1bf32 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/state/alerts/AggregateAlertListenerTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/state/alerts/AggregateAlertListenerTest.java
@@ -17,7 +17,7 @@
*/
package org.apache.ambari.server.state.alerts;
-import javax.persistence.EntityManager;
+import jakarta.persistence.EntityManager;
import org.apache.ambari.server.H2DatabaseCleaner;
import org.apache.ambari.server.events.AlertReceivedEvent;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/state/alerts/AlertReceivedListenerTest.java b/ambari-server/src/test/java/org/apache/ambari/server/state/alerts/AlertReceivedListenerTest.java
index 70ce75a061c..1ba2b9eaf2f 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/state/alerts/AlertReceivedListenerTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/state/alerts/AlertReceivedListenerTest.java
@@ -26,7 +26,7 @@
import java.util.List;
import java.util.UUID;
-import javax.persistence.EntityManager;
+import jakarta.persistence.EntityManager;
import org.apache.ambari.server.AmbariException;
import org.apache.ambari.server.H2DatabaseCleaner;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/state/alerts/InitialAlertEventTest.java b/ambari-server/src/test/java/org/apache/ambari/server/state/alerts/InitialAlertEventTest.java
index 5bbc881ba9a..9919c7e4047 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/state/alerts/InitialAlertEventTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/state/alerts/InitialAlertEventTest.java
@@ -19,7 +19,7 @@
import java.util.List;
-import javax.persistence.EntityManager;
+import jakarta.persistence.EntityManager;
import org.apache.ambari.server.H2DatabaseCleaner;
import org.apache.ambari.server.events.AlertReceivedEvent;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/state/cluster/AlertDataManagerTest.java b/ambari-server/src/test/java/org/apache/ambari/server/state/cluster/AlertDataManagerTest.java
index 0ca170b996e..eabc2d4ba3e 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/state/cluster/AlertDataManagerTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/state/cluster/AlertDataManagerTest.java
@@ -30,7 +30,7 @@
import java.util.UUID;
import java.util.concurrent.atomic.AtomicReference;
-import javax.persistence.EntityManager;
+import jakarta.persistence.EntityManager;
import org.apache.ambari.server.AmbariException;
import org.apache.ambari.server.H2DatabaseCleaner;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/state/cluster/ClusterTest.java b/ambari-server/src/test/java/org/apache/ambari/server/state/cluster/ClusterTest.java
index da75ed24042..499db921b27 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/state/cluster/ClusterTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/state/cluster/ClusterTest.java
@@ -43,7 +43,7 @@
import java.util.Map;
import java.util.Set;
-import javax.persistence.EntityManager;
+import jakarta.persistence.EntityManager;
import org.apache.ambari.server.AmbariException;
import org.apache.ambari.server.H2DatabaseCleaner;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/state/cluster/ClustersTest.java b/ambari-server/src/test/java/org/apache/ambari/server/state/cluster/ClustersTest.java
index 8a7b18ba700..6f8838f6bc7 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/state/cluster/ClustersTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/state/cluster/ClustersTest.java
@@ -35,7 +35,7 @@
import java.util.Set;
import java.util.UUID;
-import javax.persistence.EntityManager;
+import jakarta.persistence.EntityManager;
import org.apache.ambari.server.AmbariException;
import org.apache.ambari.server.ClusterNotFoundException;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/state/kerberos/KerberosDescriptorUpdateHelperTest.java b/ambari-server/src/test/java/org/apache/ambari/server/state/kerberos/KerberosDescriptorUpdateHelperTest.java
index b43f0a7c5a6..8ed080f2d0c 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/state/kerberos/KerberosDescriptorUpdateHelperTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/state/kerberos/KerberosDescriptorUpdateHelperTest.java
@@ -24,8 +24,8 @@
import java.util.Collections;
import java.util.Properties;
-import javax.persistence.EntityManager;
-import javax.persistence.TypedQuery;
+import jakarta.persistence.EntityManager;
+import jakarta.persistence.TypedQuery;
import org.apache.ambari.annotations.Experimental;
import org.apache.ambari.annotations.ExperimentalFeature;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/state/services/MetricsRetrievalServiceTest.java b/ambari-server/src/test/java/org/apache/ambari/server/state/services/MetricsRetrievalServiceTest.java
index 4017a8efba7..37cbff78194 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/state/services/MetricsRetrievalServiceTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/state/services/MetricsRetrievalServiceTest.java
@@ -23,7 +23,7 @@
import java.util.concurrent.TimeUnit;
import java.util.concurrent.TimeoutException;
-import javax.persistence.EntityManager;
+import jakarta.persistence.EntityManager;
import org.apache.ambari.server.configuration.Configuration;
import org.apache.ambari.server.controller.jmx.JMXMetricHolder;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/testing/DBInconsistencyTests.java b/ambari-server/src/test/java/org/apache/ambari/server/testing/DBInconsistencyTests.java
index fb1cd606cc1..0f70e3da8f2 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/testing/DBInconsistencyTests.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/testing/DBInconsistencyTests.java
@@ -20,8 +20,8 @@
import java.util.Collection;
import java.util.List;
-import javax.persistence.EntityManager;
-import javax.persistence.EntityTransaction;
+import jakarta.persistence.EntityManager;
+import jakarta.persistence.EntityTransaction;
import org.apache.ambari.server.controller.internal.DeleteHostComponentStatusMetaData;
import org.apache.ambari.server.mpack.MpackManagerFactory;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/testutils/PartialNiceMockBinder.java b/ambari-server/src/test/java/org/apache/ambari/server/testutils/PartialNiceMockBinder.java
index a6162ff55f6..359906bdc15 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/testutils/PartialNiceMockBinder.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/testutils/PartialNiceMockBinder.java
@@ -22,7 +22,7 @@
import java.util.ArrayList;
import java.util.List;
-import javax.persistence.EntityManager;
+import jakarta.persistence.EntityManager;
import org.apache.ambari.server.actionmanager.ActionDBAccessor;
import org.apache.ambari.server.actionmanager.ActionDBAccessorImpl;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/update/HostUpdateHelperTest.java b/ambari-server/src/test/java/org/apache/ambari/server/update/HostUpdateHelperTest.java
index 145470751d1..607a9b55af7 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/update/HostUpdateHelperTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/update/HostUpdateHelperTest.java
@@ -28,7 +28,7 @@
import java.util.List;
import java.util.Map;
-import javax.persistence.EntityManager;
+import jakarta.persistence.EntityManager;
import org.apache.ambari.server.AmbariException;
import org.apache.ambari.server.actionmanager.ActionDBAccessor;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/upgrade/UpgradeCatalog251Test.java b/ambari-server/src/test/java/org/apache/ambari/server/upgrade/UpgradeCatalog251Test.java
index 3c669918889..9be59678bca 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/upgrade/UpgradeCatalog251Test.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/upgrade/UpgradeCatalog251Test.java
@@ -39,7 +39,7 @@
import java.util.Collections;
import java.util.Map;
-import javax.persistence.EntityManager;
+import jakarta.persistence.EntityManager;
import org.apache.ambari.server.actionmanager.ActionDBAccessor;
import org.apache.ambari.server.actionmanager.ActionDBAccessorImpl;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/upgrade/UpgradeCatalog252Test.java b/ambari-server/src/test/java/org/apache/ambari/server/upgrade/UpgradeCatalog252Test.java
index 354204b041e..5577fb48240 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/upgrade/UpgradeCatalog252Test.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/upgrade/UpgradeCatalog252Test.java
@@ -40,7 +40,7 @@
import java.util.Map;
import java.util.Set;
-import javax.persistence.EntityManager;
+import jakarta.persistence.EntityManager;
import org.apache.ambari.server.AmbariException;
import org.apache.ambari.server.actionmanager.ActionDBAccessor;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/upgrade/UpgradeCatalog260Test.java b/ambari-server/src/test/java/org/apache/ambari/server/upgrade/UpgradeCatalog260Test.java
index be9ee4f5da7..819c819880f 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/upgrade/UpgradeCatalog260Test.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/upgrade/UpgradeCatalog260Test.java
@@ -50,7 +50,7 @@
import java.util.Map;
import java.util.Set;
-import javax.persistence.EntityManager;
+import jakarta.persistence.EntityManager;
import org.apache.ambari.server.AmbariException;
import org.apache.ambari.server.actionmanager.ActionDBAccessor;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/upgrade/UpgradeCatalog270Test.java b/ambari-server/src/test/java/org/apache/ambari/server/upgrade/UpgradeCatalog270Test.java
index 8478c958afc..cc50d3b57a4 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/upgrade/UpgradeCatalog270Test.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/upgrade/UpgradeCatalog270Test.java
@@ -162,7 +162,7 @@
import java.util.Map;
import java.util.Set;
-import javax.persistence.EntityManager;
+import jakarta.persistence.EntityManager;
import org.apache.ambari.server.AmbariException;
import org.apache.ambari.server.actionmanager.ActionDBAccessor;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/utils/RequestUtilsTest.java b/ambari-server/src/test/java/org/apache/ambari/server/utils/RequestUtilsTest.java
index 6452d99f423..7b8611f2ba0 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/utils/RequestUtilsTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/utils/RequestUtilsTest.java
@@ -23,7 +23,7 @@
import java.util.List;
-import javax.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletRequest;
import org.easymock.EasyMockSupport;
import org.junit.Assert;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/view/ViewThrottleFilterTest.java b/ambari-server/src/test/java/org/apache/ambari/server/view/ViewThrottleFilterTest.java
index 54ee50bf42c..1be041cc388 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/view/ViewThrottleFilterTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/view/ViewThrottleFilterTest.java
@@ -20,9 +20,9 @@
import java.util.concurrent.Semaphore;
import java.util.concurrent.TimeUnit;
-import javax.servlet.FilterChain;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
+import jakarta.servlet.FilterChain;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
import org.apache.ambari.server.configuration.Configuration;
import org.apache.ambari.server.state.stack.OsFamily;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/view/configuration/ViewConfigTest.java b/ambari-server/src/test/java/org/apache/ambari/server/view/configuration/ViewConfigTest.java
index 5bd4e4dbfab..0f4ba7b56ea 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/view/configuration/ViewConfigTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/view/configuration/ViewConfigTest.java
@@ -24,11 +24,12 @@
import java.util.Map;
import java.util.Set;
-import javax.servlet.http.HttpServlet;
import javax.xml.bind.JAXBContext;
import javax.xml.bind.JAXBException;
import javax.xml.bind.Unmarshaller;
+import jakarta.servlet.http.HttpServlet;
+
import org.apache.ambari.view.NoSuchResourceException;
import org.apache.ambari.view.ReadRequest;
import org.apache.ambari.view.ResourceAlreadyExistsException;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/view/persistence/DataStoreImplTest.java b/ambari-server/src/test/java/org/apache/ambari/server/view/persistence/DataStoreImplTest.java
index 48e6120f8fa..14f3b970b34 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/view/persistence/DataStoreImplTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/view/persistence/DataStoreImplTest.java
@@ -32,10 +32,10 @@
import java.util.LinkedList;
import java.util.List;
-import javax.persistence.EntityManager;
-import javax.persistence.EntityManagerFactory;
-import javax.persistence.EntityTransaction;
-import javax.persistence.Query;
+import jakarta.persistence.EntityManager;
+import jakarta.persistence.EntityManagerFactory;
+import jakarta.persistence.EntityTransaction;
+import jakarta.persistence.Query;
import org.apache.ambari.server.orm.entities.ViewEntity;
import org.apache.ambari.server.orm.entities.ViewEntityEntity;
diff --git a/ambari-server/src/test/python/TestAmbariServer.py b/ambari-server/src/test/python/TestAmbariServer.py
index 476250c282e..6fee1a4b2ef 100644
--- a/ambari-server/src/test/python/TestAmbariServer.py
+++ b/ambari-server/src/test/python/TestAmbariServer.py
@@ -3354,6 +3354,7 @@ def _init_test_jdk_mocks():
# Test case: JDK already exists
args.java_home = None
args.jdk_location = None
+ args.ambari_java_home = None
get_JAVA_HOME_mock.return_value = "some_jdk"
validate_jdk_mock.return_value = True
get_YN_input_mock.return_value = False
diff --git a/ambari-server/src/test/python/custom_actions/TestCheckHost.py b/ambari-server/src/test/python/custom_actions/TestCheckHost.py
index c8f6781d890..3b9d5011a92 100644
--- a/ambari-server/src/test/python/custom_actions/TestCheckHost.py
+++ b/ambari-server/src/test/python/custom_actions/TestCheckHost.py
@@ -118,7 +118,7 @@ def testDBConnectionCheck(
"user_passwd": "test_user_passwd",
"jdk_name": "test_jdk_name",
},
- "ambariLevelParams": {"custom_mysql_jdbc_name": "mysql-connector-java.jar"},
+ "ambariLevelParams": {"custom_mysql_jdbc_name": "mysql-connector-java.jar","ambari_java_home": "test_java_home"},
"agentLevelParams": {"agentCacheDir": "/nonexistent_tmp"},
}
get_tmp_dir_mock.return_value = "/tmp"
@@ -158,7 +158,7 @@ def testDBConnectionCheck(
"jdk_name": "test_jdk_name",
},
"agentLevelParams": {"agentCacheDir": "/nonexistent_tmp"},
- "ambariLevelParams": {"custom_oracle_jdbc_name": "oracle-jdbc-driver.jar"},
+ "ambariLevelParams": {"custom_oracle_jdbc_name": "oracle-jdbc-driver.jar","ambari_java_home": "test_java_home"},
}
format_mock.reset_mock()
download_file_mock.reset_mock()
@@ -197,7 +197,7 @@ def testDBConnectionCheck(
"jdk_name": "test_jdk_name",
},
"agentLevelParams": {"agentCacheDir": "/nonexistent_tmp"},
- "ambariLevelParams": {"custom_postgres_jdbc_name": "oracle-jdbc-driver.jar"},
+ "ambariLevelParams": {"custom_postgres_jdbc_name": "oracle-jdbc-driver.jar","ambari_java_home": "test_java_home"},
}
format_mock.reset_mock()
download_file_mock.reset_mock()
@@ -251,7 +251,7 @@ def testDBConnectionCheck(
"db_name": "postgres",
},
"agentLevelParams": {"agentCacheDir": "/nonexistent_tmp"},
- "ambariLevelParams": {"custom_postgres_jdbc_name": "test-postgres-jdbc.jar"},
+ "ambariLevelParams": {"custom_postgres_jdbc_name": "test-postgres-jdbc.jar","ambari_java_home": "test_java_home"},
}
isfile_mock.return_value = False
@@ -615,6 +615,7 @@ def testUnsupportedDatabaseType(
"agentCacheDir": "/nonexistent_tmp",
"custom_mysql_jdbc_name": "mysql-connector-java.jar",
},
+ "ambariLevelParams": {"ambari_java_home": "test_java_home"},
}
get_tmp_dir_mock.return_value = "/tmp"
download_file_mock.side_effect = Exception("test exception")
diff --git a/ambari-serviceadvisor/pom.xml b/ambari-serviceadvisor/pom.xml
index 5393d3d5e8b..2a2254acc4d 100644
--- a/ambari-serviceadvisor/pom.xml
+++ b/ambari-serviceadvisor/pom.xml
@@ -30,8 +30,6 @@
${revision}
../ambari-project
-
- org.apache.ambari
ambari-serviceadvisor
Ambari Service Advisor
Service Advisor
diff --git a/ambari-utility/pom.xml b/ambari-utility/pom.xml
index cb1c4ce4be7..0a3be2368e0 100644
--- a/ambari-utility/pom.xml
+++ b/ambari-utility/pom.xml
@@ -26,11 +26,14 @@
${revision}
../ambari-project
-
ambari-utility
- org.apache.ambari
+
+ jakarta.ws.rs
+ jakarta.ws.rs-api
+ 3.1.0
+
com.fasterxml.jackson.core
jackson-databind
@@ -41,6 +44,14 @@
swagger-maven-plugin
provided
+
+ com.sun.jersey
+ jersey-core
+
+
+ com.sun.jersey
+ jersey-server
+
com.fasterxml.jackson.core
jackson-databind
@@ -53,6 +64,18 @@
log4j
log4j
+
+ com.sun.jersey
+ jersey-server
+
+
+ com.sun.jersey
+ jersey-core
+
+
+ com.sun.jersey.contribs
+ jersey-multipart
+
diff --git a/ambari-utility/src/main/java/org/apache/ambari/swagger/AmbariSwaggerReader.java b/ambari-utility/src/main/java/org/apache/ambari/swagger/AmbariSwaggerReader.java
index e2c7b596b2c..63be06b00a1 100644
--- a/ambari-utility/src/main/java/org/apache/ambari/swagger/AmbariSwaggerReader.java
+++ b/ambari-utility/src/main/java/org/apache/ambari/swagger/AmbariSwaggerReader.java
@@ -23,8 +23,6 @@
import java.util.Map;
import java.util.Set;
-import javax.ws.rs.Path;
-
import org.apache.ambari.annotations.SwaggerOverwriteNestedAPI;
import org.apache.ambari.annotations.SwaggerPreferredParent;
import org.apache.maven.plugin.logging.Log;
@@ -47,6 +45,7 @@
import io.swagger.models.parameters.Parameter;
import io.swagger.models.parameters.PathParameter;
import io.swagger.models.properties.StringProperty;
+import jakarta.ws.rs.Path;
/**
* Customized {@link com.github.kongchen.swagger.docgen.reader.ClassSwaggerReader} implementation to
diff --git a/ambari-utility/src/test/java/org/apache/ambari/swagger/AmbariSwaggerReaderTest.java b/ambari-utility/src/test/java/org/apache/ambari/swagger/AmbariSwaggerReaderTest.java
index 8ca519b9ecf..6648499940e 100644
--- a/ambari-utility/src/test/java/org/apache/ambari/swagger/AmbariSwaggerReaderTest.java
+++ b/ambari-utility/src/test/java/org/apache/ambari/swagger/AmbariSwaggerReaderTest.java
@@ -28,10 +28,6 @@
import java.util.List;
import java.util.Set;
-import javax.ws.rs.GET;
-import javax.ws.rs.Path;
-import javax.ws.rs.PathParam;
-
import org.apache.ambari.annotations.SwaggerOverwriteNestedAPI;
import org.apache.ambari.annotations.SwaggerPreferredParent;
import org.apache.maven.plugin.logging.Log;
@@ -47,6 +43,9 @@
import io.swagger.models.Swagger;
import io.swagger.models.parameters.Parameter;
import io.swagger.models.parameters.PathParameter;
+import jakarta.ws.rs.GET;
+import jakarta.ws.rs.Path;
+import jakarta.ws.rs.PathParam;
public class AmbariSwaggerReaderTest {
diff --git a/ambari-utility/src/test/resources/org/apache/ambari/checkstyle/InputRestApiOperation.java b/ambari-utility/src/test/resources/org/apache/ambari/checkstyle/InputRestApiOperation.java
index 9aa35ba2702..d5a5b437243 100644
--- a/ambari-utility/src/test/resources/org/apache/ambari/checkstyle/InputRestApiOperation.java
+++ b/ambari-utility/src/test/resources/org/apache/ambari/checkstyle/InputRestApiOperation.java
@@ -17,12 +17,12 @@
*/
package org.apache.ambari.checkstyle;
-import javax.ws.rs.DELETE;
-import javax.ws.rs.GET;
-import javax.ws.rs.HEAD;
-import javax.ws.rs.OPTIONS;
-import javax.ws.rs.POST;
-import javax.ws.rs.PUT;
+import jakarta.ws.rs.DELETE;
+import jakarta.ws.rs.GET;
+import jakarta.ws.rs.HEAD;
+import jakarta.ws.rs.OPTIONS;
+import jakarta.ws.rs.POST;
+import jakarta.ws.rs.PUT;
import io.swagger.annotations.ApiOperation;
diff --git a/ambari-views/examples/auto-cluster-view/src/main/java/org/apache/ambari/view/examples/AutoClusterService.java b/ambari-views/examples/auto-cluster-view/src/main/java/org/apache/ambari/view/examples/AutoClusterService.java
index f260858677c..579c903fe86 100644
--- a/ambari-views/examples/auto-cluster-view/src/main/java/org/apache/ambari/view/examples/AutoClusterService.java
+++ b/ambari-views/examples/auto-cluster-view/src/main/java/org/apache/ambari/view/examples/AutoClusterService.java
@@ -22,17 +22,17 @@
import org.apache.ambari.view.URLStreamProvider;
import org.apache.ambari.view.cluster.Cluster;
import org.apache.commons.codec.binary.Base64;
-import javax.inject.Inject;
-import javax.ws.rs.GET;
-import javax.ws.rs.POST;
-import javax.ws.rs.Path;
-import javax.ws.rs.PathParam;
-import javax.ws.rs.Produces;
-import javax.ws.rs.Consumes;
-import javax.ws.rs.core.Context;
-import javax.ws.rs.core.HttpHeaders;
-import javax.ws.rs.core.Response;
-import javax.ws.rs.core.UriInfo;
+import jakarta.inject.Inject;
+import jakarta.ws.rs.GET;
+import jakarta.ws.rs.POST;
+import jakarta.ws.rs.Path;
+import jakarta.ws.rs.PathParam;
+import jakarta.ws.rs.Produces;
+import jakarta.ws.rs.Consumes;
+import jakarta.ws.rs.core.Context;
+import jakarta.ws.rs.core.HttpHeaders;
+import jakarta.ws.rs.core.Response;
+import jakarta.ws.rs.core.UriInfo;
import java.io.IOException;
import java.io.InputStream;
import java.io.BufferedReader;
diff --git a/ambari-views/examples/calculator-view/src/main/java/org/apache/ambari/view/proxy/CalculatorResource.java b/ambari-views/examples/calculator-view/src/main/java/org/apache/ambari/view/proxy/CalculatorResource.java
index 9899072fa87..32194d5423c 100644
--- a/ambari-views/examples/calculator-view/src/main/java/org/apache/ambari/view/proxy/CalculatorResource.java
+++ b/ambari-views/examples/calculator-view/src/main/java/org/apache/ambari/view/proxy/CalculatorResource.java
@@ -19,15 +19,15 @@
import org.apache.ambari.view.ViewContext;
-import javax.inject.Inject;
-import javax.ws.rs.GET;
-import javax.ws.rs.Path;
-import javax.ws.rs.PathParam;
-import javax.ws.rs.Produces;
-import javax.ws.rs.core.Context;
-import javax.ws.rs.core.HttpHeaders;
-import javax.ws.rs.core.Response;
-import javax.ws.rs.core.UriInfo;
+import jakarta.inject.Inject;
+import jakarta.ws.rs.GET;
+import jakarta.ws.rs.Path;
+import jakarta.ws.rs.PathParam;
+import jakarta.ws.rs.Produces;
+import jakarta.ws.rs.core.Context;
+import jakarta.ws.rs.core.HttpHeaders;
+import jakarta.ws.rs.core.Response;
+import jakarta.ws.rs.core.UriInfo;
import java.io.IOException;
/**
diff --git a/ambari-views/examples/cluster-view/src/main/java/org/apache/ambari/view/cluster/ClusterConfigServlet.java b/ambari-views/examples/cluster-view/src/main/java/org/apache/ambari/view/cluster/ClusterConfigServlet.java
index e58c1484a33..4af69236116 100644
--- a/ambari-views/examples/cluster-view/src/main/java/org/apache/ambari/view/cluster/ClusterConfigServlet.java
+++ b/ambari-views/examples/cluster-view/src/main/java/org/apache/ambari/view/cluster/ClusterConfigServlet.java
@@ -20,12 +20,12 @@
import org.apache.ambari.view.ViewContext;
-import javax.servlet.ServletConfig;
-import javax.servlet.ServletContext;
-import javax.servlet.ServletException;
-import javax.servlet.http.HttpServlet;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
+import jakarta.servlet.ServletConfig;
+import jakarta.servlet.ServletContext;
+import jakarta.servlet.ServletException;
+import jakarta.servlet.http.HttpServlet;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.io.PrintWriter;
import java.util.Map;
diff --git a/ambari-views/examples/cluster-view/src/main/java/org/apache/ambari/view/cluster/ClusterConfigurationService.java b/ambari-views/examples/cluster-view/src/main/java/org/apache/ambari/view/cluster/ClusterConfigurationService.java
index 84563e76685..7a4515303a7 100644
--- a/ambari-views/examples/cluster-view/src/main/java/org/apache/ambari/view/cluster/ClusterConfigurationService.java
+++ b/ambari-views/examples/cluster-view/src/main/java/org/apache/ambari/view/cluster/ClusterConfigurationService.java
@@ -17,13 +17,13 @@
*/
package org.apache.ambari.view.cluster;
-import javax.ws.rs.GET;
-import javax.ws.rs.Path;
-import javax.ws.rs.Produces;
-import javax.ws.rs.core.Context;
-import javax.ws.rs.core.HttpHeaders;
-import javax.ws.rs.core.Response;
-import javax.ws.rs.core.UriInfo;
+import jakarta.ws.rs.GET;
+import jakarta.ws.rs.Path;
+import jakarta.ws.rs.Produces;
+import jakarta.ws.rs.core.Context;
+import jakarta.ws.rs.core.HttpHeaders;
+import jakarta.ws.rs.core.Response;
+import jakarta.ws.rs.core.UriInfo;
/**
* The cluster configuration service.
diff --git a/ambari-views/examples/cluster-view/src/main/java/org/apache/ambari/view/cluster/PropertyService.java b/ambari-views/examples/cluster-view/src/main/java/org/apache/ambari/view/cluster/PropertyService.java
index abd2fd6b4a0..5424ead9ea7 100644
--- a/ambari-views/examples/cluster-view/src/main/java/org/apache/ambari/view/cluster/PropertyService.java
+++ b/ambari-views/examples/cluster-view/src/main/java/org/apache/ambari/view/cluster/PropertyService.java
@@ -19,7 +19,7 @@
import org.apache.ambari.view.ViewContext;
-import javax.inject.Inject;
+import jakarta.inject.Inject;
import java.util.Map;
/**
diff --git a/ambari-views/examples/cluster-view/src/main/java/org/apache/ambari/view/cluster/SettingService.java b/ambari-views/examples/cluster-view/src/main/java/org/apache/ambari/view/cluster/SettingService.java
index 6012d40078f..657b15e526d 100644
--- a/ambari-views/examples/cluster-view/src/main/java/org/apache/ambari/view/cluster/SettingService.java
+++ b/ambari-views/examples/cluster-view/src/main/java/org/apache/ambari/view/cluster/SettingService.java
@@ -17,13 +17,13 @@
*/
package org.apache.ambari.view.cluster;
-import javax.ws.rs.GET;
-import javax.ws.rs.Path;
-import javax.ws.rs.Produces;
-import javax.ws.rs.core.Context;
-import javax.ws.rs.core.HttpHeaders;
-import javax.ws.rs.core.Response;
-import javax.ws.rs.core.UriInfo;
+import jakarta.ws.rs.GET;
+import jakarta.ws.rs.Path;
+import jakarta.ws.rs.Produces;
+import jakarta.ws.rs.core.Context;
+import jakarta.ws.rs.core.HttpHeaders;
+import jakarta.ws.rs.core.Response;
+import jakarta.ws.rs.core.UriInfo;
/**
* The setting service.
diff --git a/ambari-views/examples/favorite-view/src/main/java/org/apache/ambari/view/favorite/FavoriteService.java b/ambari-views/examples/favorite-view/src/main/java/org/apache/ambari/view/favorite/FavoriteService.java
index 171b23a5bd9..dcf5cd1383e 100644
--- a/ambari-views/examples/favorite-view/src/main/java/org/apache/ambari/view/favorite/FavoriteService.java
+++ b/ambari-views/examples/favorite-view/src/main/java/org/apache/ambari/view/favorite/FavoriteService.java
@@ -19,17 +19,17 @@
import org.apache.ambari.view.ViewContext;
-import javax.inject.Inject;
-import javax.ws.rs.GET;
-import javax.ws.rs.POST;
-import javax.ws.rs.Path;
-import javax.ws.rs.PathParam;
-import javax.ws.rs.Produces;
-import javax.ws.rs.Consumes;
-import javax.ws.rs.core.Context;
-import javax.ws.rs.core.HttpHeaders;
-import javax.ws.rs.core.Response;
-import javax.ws.rs.core.UriInfo;
+import jakarta.inject.Inject;
+import jakarta.ws.rs.GET;
+import jakarta.ws.rs.POST;
+import jakarta.ws.rs.Path;
+import jakarta.ws.rs.PathParam;
+import jakarta.ws.rs.Produces;
+import jakarta.ws.rs.Consumes;
+import jakarta.ws.rs.core.Context;
+import jakarta.ws.rs.core.HttpHeaders;
+import jakarta.ws.rs.core.Response;
+import jakarta.ws.rs.core.UriInfo;
import java.io.IOException;
import java.util.Map;
import java.util.HashMap;
diff --git a/ambari-views/examples/hello-servlet-view/src/main/java/org/apache/ambari/view/hello/HelloServlet.java b/ambari-views/examples/hello-servlet-view/src/main/java/org/apache/ambari/view/hello/HelloServlet.java
index d417c0f80d1..745b4f29d9e 100644
--- a/ambari-views/examples/hello-servlet-view/src/main/java/org/apache/ambari/view/hello/HelloServlet.java
+++ b/ambari-views/examples/hello-servlet-view/src/main/java/org/apache/ambari/view/hello/HelloServlet.java
@@ -20,12 +20,12 @@
import org.apache.ambari.view.ViewContext;
-import javax.servlet.ServletConfig;
-import javax.servlet.ServletContext;
-import javax.servlet.ServletException;
-import javax.servlet.http.HttpServlet;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
+import jakarta.servlet.ServletConfig;
+import jakarta.servlet.ServletContext;
+import jakarta.servlet.ServletException;
+import jakarta.servlet.http.HttpServlet;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.io.PrintWriter;
import java.util.Map;
diff --git a/ambari-views/examples/hello-spring-view/pom.xml b/ambari-views/examples/hello-spring-view/pom.xml
index 8d022da6f63..de621c9a489 100644
--- a/ambari-views/examples/hello-spring-view/pom.xml
+++ b/ambari-views/examples/hello-spring-view/pom.xml
@@ -49,7 +49,7 @@
com.sun.jersey
jersey-server
- 1.8
+ ${jersey.version}
javax.servlet
diff --git a/ambari-views/examples/hello-spring-view/src/main/java/org/apache/ambari/view/hello/HelloController.java b/ambari-views/examples/hello-spring-view/src/main/java/org/apache/ambari/view/hello/HelloController.java
index 665e7afe405..9056efcd8e3 100644
--- a/ambari-views/examples/hello-spring-view/src/main/java/org/apache/ambari/view/hello/HelloController.java
+++ b/ambari-views/examples/hello-spring-view/src/main/java/org/apache/ambari/view/hello/HelloController.java
@@ -24,7 +24,7 @@
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
-import javax.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletRequest;
/**
* Controller for the Hello Spring app view.
diff --git a/ambari-views/examples/helloworld-view/pom.xml b/ambari-views/examples/helloworld-view/pom.xml
index 23be8969c96..6f7bbaf186e 100644
--- a/ambari-views/examples/helloworld-view/pom.xml
+++ b/ambari-views/examples/helloworld-view/pom.xml
@@ -49,7 +49,7 @@
com.sun.jersey
jersey-server
- 1.8
+ ${jersey.version}
diff --git a/ambari-views/examples/phone-list-upgrade-view/pom.xml b/ambari-views/examples/phone-list-upgrade-view/pom.xml
index e12ccfc5348..11043230b61 100644
--- a/ambari-views/examples/phone-list-upgrade-view/pom.xml
+++ b/ambari-views/examples/phone-list-upgrade-view/pom.xml
@@ -54,7 +54,7 @@
com.sun.jersey
jersey-server
- 1.8
+ ${jersey.version}
javax.servlet
diff --git a/ambari-views/examples/phone-list-upgrade-view/src/main/java/org/apache/ambari/view/phonelist/DataMigrator.java b/ambari-views/examples/phone-list-upgrade-view/src/main/java/org/apache/ambari/view/phonelist/DataMigrator.java
index 1cbb199cf26..0670eda281a 100644
--- a/ambari-views/examples/phone-list-upgrade-view/src/main/java/org/apache/ambari/view/phonelist/DataMigrator.java
+++ b/ambari-views/examples/phone-list-upgrade-view/src/main/java/org/apache/ambari/view/phonelist/DataMigrator.java
@@ -25,7 +25,7 @@
import org.apache.ambari.view.migration.ViewDataMigrator;
import org.springframework.beans.BeanUtils;
-import javax.inject.Inject;
+import jakarta.inject.Inject;
import java.util.Map;
/**
diff --git a/ambari-views/examples/phone-list-upgrade-view/src/main/java/org/apache/ambari/view/phonelist/PhoneListServlet.java b/ambari-views/examples/phone-list-upgrade-view/src/main/java/org/apache/ambari/view/phonelist/PhoneListServlet.java
index 6ed87cde8c4..c1dba1dd448 100644
--- a/ambari-views/examples/phone-list-upgrade-view/src/main/java/org/apache/ambari/view/phonelist/PhoneListServlet.java
+++ b/ambari-views/examples/phone-list-upgrade-view/src/main/java/org/apache/ambari/view/phonelist/PhoneListServlet.java
@@ -22,12 +22,12 @@
import org.apache.ambari.view.ViewContext;
import org.apache.ambari.view.PersistenceException;
-import javax.servlet.ServletConfig;
-import javax.servlet.ServletContext;
-import javax.servlet.ServletException;
-import javax.servlet.http.HttpServlet;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
+import jakarta.servlet.ServletConfig;
+import jakarta.servlet.ServletContext;
+import jakarta.servlet.ServletException;
+import jakarta.servlet.http.HttpServlet;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.io.PrintWriter;
import java.util.Collection;
diff --git a/ambari-views/examples/phone-list-view/pom.xml b/ambari-views/examples/phone-list-view/pom.xml
index 15757e8537d..a25f2312aae 100644
--- a/ambari-views/examples/phone-list-view/pom.xml
+++ b/ambari-views/examples/phone-list-view/pom.xml
@@ -49,7 +49,7 @@
com.sun.jersey
jersey-server
- 1.8
+ ${jersey.version}
javax.servlet
diff --git a/ambari-views/examples/phone-list-view/src/main/java/org/apache/ambari/view/phonelist/PhoneListServlet.java b/ambari-views/examples/phone-list-view/src/main/java/org/apache/ambari/view/phonelist/PhoneListServlet.java
index 146a8e3e673..96570018433 100644
--- a/ambari-views/examples/phone-list-view/src/main/java/org/apache/ambari/view/phonelist/PhoneListServlet.java
+++ b/ambari-views/examples/phone-list-view/src/main/java/org/apache/ambari/view/phonelist/PhoneListServlet.java
@@ -22,12 +22,12 @@
import org.apache.ambari.view.ViewContext;
import org.apache.ambari.view.PersistenceException;
-import javax.servlet.ServletConfig;
-import javax.servlet.ServletContext;
-import javax.servlet.ServletException;
-import javax.servlet.http.HttpServlet;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
+import jakarta.servlet.ServletConfig;
+import jakarta.servlet.ServletContext;
+import jakarta.servlet.ServletException;
+import jakarta.servlet.http.HttpServlet;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.io.PrintWriter;
import java.util.Collection;
diff --git a/ambari-views/examples/property-validator-view/pom.xml b/ambari-views/examples/property-validator-view/pom.xml
index c83575e73c4..f081b7a77ba 100644
--- a/ambari-views/examples/property-validator-view/pom.xml
+++ b/ambari-views/examples/property-validator-view/pom.xml
@@ -37,7 +37,7 @@
com.sun.jersey
jersey-server
- 1.8
+ ${jersey.version}
javax.inject
diff --git a/ambari-views/examples/property-validator-view/src/main/java/org/apache/ambari/view/property/PropertyValidatorService.java b/ambari-views/examples/property-validator-view/src/main/java/org/apache/ambari/view/property/PropertyValidatorService.java
index 275720b5e4d..145e8429ef0 100644
--- a/ambari-views/examples/property-validator-view/src/main/java/org/apache/ambari/view/property/PropertyValidatorService.java
+++ b/ambari-views/examples/property-validator-view/src/main/java/org/apache/ambari/view/property/PropertyValidatorService.java
@@ -19,17 +19,17 @@
import org.apache.ambari.view.ViewContext;
-import javax.inject.Inject;
-import javax.ws.rs.GET;
-import javax.ws.rs.POST;
-import javax.ws.rs.Path;
-import javax.ws.rs.PathParam;
-import javax.ws.rs.Produces;
-import javax.ws.rs.Consumes;
-import javax.ws.rs.core.Context;
-import javax.ws.rs.core.HttpHeaders;
-import javax.ws.rs.core.Response;
-import javax.ws.rs.core.UriInfo;
+import jakarta.inject.Inject;
+import jakarta.ws.rs.GET;
+import jakarta.ws.rs.POST;
+import jakarta.ws.rs.Path;
+import jakarta.ws.rs.PathParam;
+import jakarta.ws.rs.Produces;
+import jakarta.ws.rs.Consumes;
+import jakarta.ws.rs.core.Context;
+import jakarta.ws.rs.core.HttpHeaders;
+import jakarta.ws.rs.core.Response;
+import jakarta.ws.rs.core.UriInfo;
import java.io.IOException;
import java.util.Map;
import java.util.Iterator;
diff --git a/ambari-views/examples/property-view/pom.xml b/ambari-views/examples/property-view/pom.xml
index 02434634392..7a6df957765 100644
--- a/ambari-views/examples/property-view/pom.xml
+++ b/ambari-views/examples/property-view/pom.xml
@@ -37,7 +37,7 @@
com.sun.jersey
jersey-server
- 1.8
+ ${jersey.version}
javax.inject
diff --git a/ambari-views/examples/property-view/src/main/java/org/apache/ambari/view/property/PropertyService.java b/ambari-views/examples/property-view/src/main/java/org/apache/ambari/view/property/PropertyService.java
index f6e4bdaf623..79e22b2e207 100644
--- a/ambari-views/examples/property-view/src/main/java/org/apache/ambari/view/property/PropertyService.java
+++ b/ambari-views/examples/property-view/src/main/java/org/apache/ambari/view/property/PropertyService.java
@@ -19,17 +19,17 @@
import org.apache.ambari.view.ViewContext;
-import javax.inject.Inject;
-import javax.ws.rs.GET;
-import javax.ws.rs.POST;
-import javax.ws.rs.Path;
-import javax.ws.rs.PathParam;
-import javax.ws.rs.Produces;
-import javax.ws.rs.Consumes;
-import javax.ws.rs.core.Context;
-import javax.ws.rs.core.HttpHeaders;
-import javax.ws.rs.core.Response;
-import javax.ws.rs.core.UriInfo;
+import jakarta.inject.Inject;
+import jakarta.ws.rs.GET;
+import jakarta.ws.rs.POST;
+import jakarta.ws.rs.Path;
+import jakarta.ws.rs.PathParam;
+import jakarta.ws.rs.Produces;
+import jakarta.ws.rs.Consumes;
+import jakarta.ws.rs.core.Context;
+import jakarta.ws.rs.core.HttpHeaders;
+import jakarta.ws.rs.core.Response;
+import jakarta.ws.rs.core.UriInfo;
import java.io.IOException;
import java.util.Map;
import java.util.Iterator;
diff --git a/ambari-views/examples/restricted-view/pom.xml b/ambari-views/examples/restricted-view/pom.xml
index 15f40d4ecf9..eca2bc6c5e5 100644
--- a/ambari-views/examples/restricted-view/pom.xml
+++ b/ambari-views/examples/restricted-view/pom.xml
@@ -49,7 +49,7 @@
com.sun.jersey
jersey-server
- 1.8
+ ${jersey.version}
javax.inject
diff --git a/ambari-views/examples/restricted-view/src/main/java/org/apache/ambari/view/restricted/RestrictedResource.java b/ambari-views/examples/restricted-view/src/main/java/org/apache/ambari/view/restricted/RestrictedResource.java
index 88d22ee5086..efa63a9b85b 100644
--- a/ambari-views/examples/restricted-view/src/main/java/org/apache/ambari/view/restricted/RestrictedResource.java
+++ b/ambari-views/examples/restricted-view/src/main/java/org/apache/ambari/view/restricted/RestrictedResource.java
@@ -19,10 +19,10 @@
import org.apache.ambari.view.ViewContext;
-import javax.inject.Inject;
-import javax.ws.rs.GET;
-import javax.ws.rs.Produces;
-import javax.ws.rs.core.Response;
+import jakarta.inject.Inject;
+import jakarta.ws.rs.GET;
+import jakarta.ws.rs.Produces;
+import jakarta.ws.rs.core.Response;
import java.io.IOException;
/**
diff --git a/ambari-views/examples/restricted-view/src/main/java/org/apache/ambari/view/restricted/UnrestrictedResource.java b/ambari-views/examples/restricted-view/src/main/java/org/apache/ambari/view/restricted/UnrestrictedResource.java
index f058b8cee7a..bf8798d62b3 100644
--- a/ambari-views/examples/restricted-view/src/main/java/org/apache/ambari/view/restricted/UnrestrictedResource.java
+++ b/ambari-views/examples/restricted-view/src/main/java/org/apache/ambari/view/restricted/UnrestrictedResource.java
@@ -20,10 +20,10 @@
import org.apache.ambari.view.ViewContext;
-import javax.inject.Inject;
-import javax.ws.rs.GET;
-import javax.ws.rs.Produces;
-import javax.ws.rs.core.Response;
+import jakarta.inject.Inject;
+import jakarta.ws.rs.GET;
+import jakarta.ws.rs.Produces;
+import jakarta.ws.rs.core.Response;
import java.io.IOException;
/**
diff --git a/ambari-views/examples/simple-view/pom.xml b/ambari-views/examples/simple-view/pom.xml
index 105cfda9779..ca6a037acf3 100644
--- a/ambari-views/examples/simple-view/pom.xml
+++ b/ambari-views/examples/simple-view/pom.xml
@@ -37,7 +37,7 @@
com.sun.jersey
jersey-server
- 1.8
+ ${jersey.version}
javax.inject
diff --git a/ambari-views/examples/simple-view/src/main/java/org/apache/ambari/view/simple/SimpleService.java b/ambari-views/examples/simple-view/src/main/java/org/apache/ambari/view/simple/SimpleService.java
index e9dcdead48f..e34e95e1b9b 100644
--- a/ambari-views/examples/simple-view/src/main/java/org/apache/ambari/view/simple/SimpleService.java
+++ b/ambari-views/examples/simple-view/src/main/java/org/apache/ambari/view/simple/SimpleService.java
@@ -19,17 +19,17 @@
import org.apache.ambari.view.ViewContext;
-import javax.inject.Inject;
-import javax.ws.rs.GET;
-import javax.ws.rs.POST;
-import javax.ws.rs.Path;
-import javax.ws.rs.PathParam;
-import javax.ws.rs.Produces;
-import javax.ws.rs.Consumes;
-import javax.ws.rs.core.Context;
-import javax.ws.rs.core.HttpHeaders;
-import javax.ws.rs.core.Response;
-import javax.ws.rs.core.UriInfo;
+import jakarta.inject.Inject;
+import jakarta.ws.rs.GET;
+import jakarta.ws.rs.POST;
+import jakarta.ws.rs.Path;
+import jakarta.ws.rs.PathParam;
+import jakarta.ws.rs.Produces;
+import jakarta.ws.rs.Consumes;
+import jakarta.ws.rs.core.Context;
+import jakarta.ws.rs.core.HttpHeaders;
+import jakarta.ws.rs.core.Response;
+import jakarta.ws.rs.core.UriInfo;
import java.io.IOException;
import java.util.Map;
import java.util.HashMap;
diff --git a/ambari-views/pom.xml b/ambari-views/pom.xml
index 62c7d028ffe..089cfa597cf 100644
--- a/ambari-views/pom.xml
+++ b/ambari-views/pom.xml
@@ -24,12 +24,16 @@
../ambari-project
4.0.0
- org.apache.ambari
ambari-views
jar
Ambari Views
Ambari View interfaces.
+
+ org.eclipse.jetty
+ jetty-jndi
+ 11.0.15
+
junit
junit
diff --git a/ambari-views/src/main/java/org/apache/ambari/view/ViewResourceHandler.java b/ambari-views/src/main/java/org/apache/ambari/view/ViewResourceHandler.java
index 92563185db9..97d0698642f 100644
--- a/ambari-views/src/main/java/org/apache/ambari/view/ViewResourceHandler.java
+++ b/ambari-views/src/main/java/org/apache/ambari/view/ViewResourceHandler.java
@@ -18,9 +18,9 @@
package org.apache.ambari.view;
-import javax.ws.rs.core.HttpHeaders;
-import javax.ws.rs.core.Response;
-import javax.ws.rs.core.UriInfo;
+import jakarta.ws.rs.core.HttpHeaders;
+import jakarta.ws.rs.core.Response;
+import jakarta.ws.rs.core.UriInfo;
/**
* Handler object available to the view components used to allow
diff --git a/ambari-web/brunch-config.js b/ambari-web/brunch-config.js
index 09c5dd8b55c..a682c61806a 100755
--- a/ambari-web/brunch-config.js
+++ b/ambari-web/brunch-config.js
@@ -51,6 +51,7 @@ module.exports.config = {
'vendor/scripts/console-helper.js',
'vendor/scripts/jquery-3.7.1.js',
'vendor/scripts/jquery-migrate.js',
+ 'vendor/scripts/jquery-migrate-deprecated.js',
'vendor/scripts/handlebars-1.0.0.beta.6.js',
'vendor/scripts/ember-latest.js',
'vendor/scripts/ember-data-latest.js',
@@ -143,4 +144,4 @@ module.exports.config = {
},
sourceMaps: false
-};
\ No newline at end of file
+};
diff --git a/ambari-web/classic/app/controllers/main/admin/kerberos/step2_controller.js b/ambari-web/classic/app/controllers/main/admin/kerberos/step2_controller.js
index 069c1f63e7c..28078720190 100755
--- a/ambari-web/classic/app/controllers/main/admin/kerberos/step2_controller.js
+++ b/ambari-web/classic/app/controllers/main/admin/kerberos/step2_controller.js
@@ -312,6 +312,7 @@ App.KerberosWizardStep2Controller = App.WizardStep7Controller.extend(App.KDCCred
return App.ajax.send({
name: 'common.cluster.update',
sender: this,
+ dataType: 'text',
data: {
clusterName: App.get('clusterName'),
data: [{
diff --git a/ambari-web/classic/app/controllers/main/host/bulk_operations_controller.js b/ambari-web/classic/app/controllers/main/host/bulk_operations_controller.js
index ef3f56c70af..869a9403ece 100755
--- a/ambari-web/classic/app/controllers/main/host/bulk_operations_controller.js
+++ b/ambari-web/classic/app/controllers/main/host/bulk_operations_controller.js
@@ -438,7 +438,7 @@ App.BulkOperationsController = Em.Controller.extend({
bodyClass: Em.View.extend({
templateName: require('templates/main/host/delete_hosts_result_popup'),
- message: Em.I18n.t('hosts.bulkOperation.deleteHosts.dryRun.message').format(undeletableHosts.length),
+ message: Em.I18n.t('hosts.bulkOperation.deleteHosts.result.cannot.delete').format(undeletableHosts.length),
undeletableHosts: undeletableHosts,
deletedHosts: deletedHosts,
onToggleHost: function (host) {
@@ -778,7 +778,7 @@ App.BulkOperationsController = Em.Controller.extend({
bodyClass: Em.View.extend({
templateName: require('templates/main/host/delete_hosts_result_popup'),
- message: Em.I18n.t('hosts.bulkOperation.delete.component.dryRun.message').format(componentName),
+ message: Em.I18n.t('hosts.bulkOperation.delete.component.result.cannot.delete').format(componentName),
componentName: componentName,
undeletableHosts: undeletableHosts,
deletedHosts: deletedHosts,
diff --git a/ambari-web/classic/app/controllers/wizard/step1_controller.js b/ambari-web/classic/app/controllers/wizard/step1_controller.js
index 489e4672c61..32175658b77 100755
--- a/ambari-web/classic/app/controllers/wizard/step1_controller.js
+++ b/ambari-web/classic/app/controllers/wizard/step1_controller.js
@@ -194,7 +194,7 @@ App.WizardStep1Controller = Em.Controller.extend({
onNetworkIssuesExist: function() {
if (this.get('networkIssuesExist')) {
this.get('content.stacks').forEach(function(stack) {
- if (stack.get('useLocalRepo') !== true) {
+ if (!stack.get('usePublicRepo') && !stack.get('useLocalRepo')) {
stack.setProperties({
usePublicRepo: false,
useLocalRepo: true
diff --git a/ambari-web/classic/app/controllers/wizard/step6_controller.js b/ambari-web/classic/app/controllers/wizard/step6_controller.js
index c17514768c5..88e3ea70315 100755
--- a/ambari-web/classic/app/controllers/wizard/step6_controller.js
+++ b/ambari-web/classic/app/controllers/wizard/step6_controller.js
@@ -251,7 +251,14 @@ App.WizardStep6Controller = Em.Controller.extend(App.HostComponentValidationMixi
host.checkboxes.filterProperty('isInstalled', false).forEach(function (checkbox) {
if (checkbox.component === component) {
if (!checkbox.isDisabled) {
- Em.set(checkbox, 'checked', checked);
+ var newCheckValue = checked;
+ Em.set(checkbox, 'checked', newCheckValue);
+ Em.run.next(() => {
+ var input = document.getElementById(checkbox.uId);
+ if (input && input.checked !== newCheckValue) {
+ input.checked = newCheckValue;
+ }
+ });
}
}
});
diff --git a/ambari-web/classic/app/messages.js b/ambari-web/classic/app/messages.js
index 1abff251c17..f0620571180 100755
--- a/ambari-web/classic/app/messages.js
+++ b/ambari-web/classic/app/messages.js
@@ -2783,6 +2783,7 @@ Em.I18n.translations = {
'hosts.bulkOperation.deleteHosts.confirmation.body.msg3': 'please make sure the Ambari Agent process is completely stopped on these hosts before proceeding.',
'hosts.bulkOperation.deleteHosts.result.header':'Delete Hosts',
'hosts.bulkOperation.deleteHosts.result.body': 'The following hosts were successfully deleted:',
+ 'hosts.bulkOperation.deleteHosts.result.cannot.delete':'The following {0} hosts could not be deleted (expand for reason):',
'hosts.bulkOperation.confirmation.delete.component.cannot1': 'The following hosts will be skipped (expand for reason):',
'hosts.bulkOperation.confirmation.delete.component.cannot2': '{0} cannot be deleted from the selected hosts:',
'hosts.bulkOperation.confirmation.delete.component': '{0} will be deleted from the following hosts',
@@ -2794,7 +2795,7 @@ Em.I18n.translations = {
'hosts.bulkOperation.confirmation.delete.component.notStopped': '{0} not Stopped',
'hosts.bulkOperation.confirmation.delete.component.notInstalled': '{0} not Installed',
'hosts.bulkOperation.delete.component.result.body': ' was successfully removed from the following hosts:',
- 'hosts.bulkOperation.delete.component.dryRun.message':'{0} could not be deleted from the following hosts(expand for reason)',
+ 'hosts.bulkOperation.delete.component.result.cannot.delete':'{0} could not be deleted from the following hosts(expand for reason)',
'hosts.bulkOperation.delete.component.failed.header': 'Delete Component failed',
'hosts.bulkOperation.delete.component.failed.body': 'Delete {0} component from {1} host failed',
diff --git a/ambari-web/classic/app/routes/ra_high_availability_routes.js b/ambari-web/classic/app/routes/ra_high_availability_routes.js
index d2bea4e2c61..84d83682c42 100755
--- a/ambari-web/classic/app/routes/ra_high_availability_routes.js
+++ b/ambari-web/classic/app/routes/ra_high_availability_routes.js
@@ -164,6 +164,7 @@ module.exports = App.WizardRoute.extend({
},
next: function (router) {
router.get('updateController').set('isWorking', true);
+ App.router.get('wizardWatcherController').resetUser();
var rAHighAvailabilityWizardController = router.get('rAHighAvailabilityWizardController');
rAHighAvailabilityWizardController.finish();
App.clusterStatus.setClusterStatus({
diff --git a/ambari-web/classic/app/styles/theme/bootstrap-ambari.css b/ambari-web/classic/app/styles/theme/bootstrap-ambari.css
index 507d4790488..6ae7997321a 100755
--- a/ambari-web/classic/app/styles/theme/bootstrap-ambari.css
+++ b/ambari-web/classic/app/styles/theme/bootstrap-ambari.css
@@ -887,6 +887,11 @@ td[data-qa="toggle-component"] input[checked="checked"] + label::after,
font-size: 9px !important;
background: transparent;
}
+
+table.host-operation-table td[data-qa="toggle-component"] input[checked="checked"] + label::after {
+ position: static !important;
+}
+
th[data-qa="confirm-hosts-table-heading-cell"] label[checked="checked"]:after {
top: -11px !important;
}
@@ -901,6 +906,8 @@ th[data-qa="confirm-hosts-table-heading-cell"] label[checked="checked"]:after {
.navigation-bar-container {
height: auto;
width: 230px;
+ display: flex;
+ flex-direction: column;
background-color: #323544;
padding: 0;
-ms-overflow-style: none;
@@ -909,6 +916,7 @@ th[data-qa="confirm-hosts-table-heading-cell"] label[checked="checked"]:after {
}
.navigation-bar-container ul.nav.side-nav-header {
width: 230px;
+ max-height: 50px;
transition: width 0.5s ease-out;
}
.navigation-bar-container ul.nav.side-nav-header li.navigation-header {
@@ -979,6 +987,12 @@ th[data-qa="confirm-hosts-table-heading-cell"] label[checked="checked"]:after {
width: 230px;
transition: width 0.5s ease-out;
}
+.navigation-bar-container ul.nav.side-nav-menu{
+ max-height: calc(100vh - 110px);
+}
+.navigation-bar-container ul.nav.side-nav-footer{
+ max-height: 50px;
+}
.navigation-bar-container ul.nav.side-nav-menu li,
.navigation-bar-container ul.nav.side-nav-footer li {
padding: 0;
@@ -1329,17 +1343,19 @@ th[data-qa="confirm-hosts-table-heading-cell"] label[checked="checked"]:after {
z-index: 2079;
}
.navigation-bar-fit-height .side-nav-header {
- position: absolute;
- top: 0;
+ /* position: absolute; */
+ /* top: 0; */
}
.navigation-bar-fit-height .side-nav-menu {
- position: absolute;
- top: 55px;
+ /* position: absolute; */
+ /* top: 55px; */
}
.navigation-bar-fit-height .side-nav-footer {
- position: absolute;
+ /* position: absolute; */
+ position: fixed;
bottom: 0;
}
+
.navigation-bar-fit-height .more-actions .dropdown-menu {
position: fixed;
top: auto;
diff --git a/ambari-web/classic/app/templates/main/service/services/ranger.hbs b/ambari-web/classic/app/templates/main/service/services/ranger.hbs
index 2258c1cf911..d8897425527 100755
--- a/ambari-web/classic/app/templates/main/service/services/ranger.hbs
+++ b/ambari-web/classic/app/templates/main/service/services/ranger.hbs
@@ -40,7 +40,7 @@
{{/if}}
{{/if}}
@@ -55,4 +55,4 @@
{{/each}}
-
\ No newline at end of file
+
diff --git a/ambari-web/classic/app/templates/wizard/step6.hbs b/ambari-web/classic/app/templates/wizard/step6.hbs
index e8e851ceb2f..72d92165318 100755
--- a/ambari-web/classic/app/templates/wizard/step6.hbs
+++ b/ambari-web/classic/app/templates/wizard/step6.hbs
@@ -52,7 +52,7 @@