Project

General

Profile

Actions

Bug #11946

open

product-uem 7.0.0 GA - Improvement #11001: Change the 'uploads' UI in app publishing

Task #11947: Validation issues in app publisher

No validation or error when uploading same app/apk in app publisher when adding a new release

Added by Arshana Atapattu 2 months ago. Updated 11 days ago.

Status:
QA
Priority:
Critical
Start date:
21/10/2024
Due date:
01/11/2024 (22 days late)
% Done:

100%

Estimated time:
Device Type:
Component:
Type:
Platform

Description

Environment details
620 server

Prerequisites
Enterprise app

Steps
add a new release with the same apk
Note: Refer to the video [1]
Video has been attached to the ticket.

Description
When try to upload the same apk there is no validation or error notification is shown. But user can still click on submit button.
Need a validation as well a error notification(notification should explain there is already same apk is exist)
carbon log error [2]

Note: Before apim420 this validation was there. In cloud this is working [3]

Result
Refer to video [1]

[2]
[2024-09-13 22:21:05,356] ERROR - ApplicationManagementPublisherAPIImpl Application release exists for the uploaded binary file. Device Type: android
io.entgra.device.mgt.core.application.mgt.core.exception.BadRequestException: Application release exists for the uploaded binary file. Device Type: android
at io.entgra.device.mgt.core.application.mgt.core.impl.ApplicationManagerImpl.addApplicationReleaseArtifacts(ApplicationManagerImpl.java:907) ~[io.entgra.device.mgt.core.application.mgt.core_5.2.4.SNAPSHOT.jar:?]
at io.entgra.device.mgt.core.application.mgt.core.impl.ApplicationManagerImpl.uploadEntAppReleaseArtifacts(ApplicationManagerImpl.java:642) ~[io.entgra.device.mgt.core.application.mgt.core_5.2.4.SNAPSHOT.jar:?]
at io.entgra.device.mgt.core.application.mgt.core.impl.ApplicationManagerImpl.triggerEntAppRelease(ApplicationManagerImpl.java:304) ~[io.entgra.device.mgt.core.application.mgt.core_5.2.4.SNAPSHOT.jar:?]
at io.entgra.device.mgt.core.application.mgt.core.impl.ApplicationManagerImpl.createApplicationReleaseBasedOnRemoteStatus(ApplicationManagerImpl.java:244) ~[io.entgra.device.mgt.core.application.mgt.core_5.2.4.SNAPSHOT.jar:?]
at io.entgra.device.mgt.core.application.mgt.core.impl.ApplicationManagerImpl.createEntAppRelease(ApplicationManagerImpl.java:328) ~[io.entgra.device.mgt.core.application.mgt.core_5.2.4.SNAPSHOT.jar:?]
at io.entgra.proprietary.commons.extension.application.mgt.publisher.api.impl.ApplicationManagementPublisherAPIImpl.createEntAppRelease(ApplicationManagementPublisherAPIImpl.java:277) ~[?:?]
at jdk.internal.reflect.GeneratedMethodAccessor1095.invoke(Unknown Source) ~[?:?]
at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:?]
at java.lang.reflect.Method.invoke(Method.java:566) ~[?:?]
at org.apache.cxf.service.invoker.AbstractInvoker.performInvocation(AbstractInvoker.java:179) ~[?:?]
at org.apache.cxf.service.invoker.AbstractInvoker.invoke(AbstractInvoker.java:96) ~[?:?]
at org.apache.cxf.jaxrs.JAXRSInvoker.invoke(JAXRSInvoker.java:201) ~[?:?]
at org.apache.cxf.jaxrs.JAXRSInvoker.invoke(JAXRSInvoker.java:104) ~[?:?]
at org.apache.cxf.interceptor.ServiceInvokerInterceptor$1.run(ServiceInvokerInterceptor.java:59) ~[?:?]
at org.apache.cxf.interceptor.ServiceInvokerInterceptor.handleMessage(ServiceInvokerInterceptor.java:96) ~[?:?]
at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:307) ~[?:?]
at org.apache.cxf.transport.ChainInitiationObserver.onMessage(ChainInitiationObserver.java:121) ~[?:?]
at org.apache.cxf.transport.http.AbstractHTTPDestination.invoke(AbstractHTTPDestination.java:265) ~[?:?]
at org.apache.cxf.transport.servlet.ServletController.invokeDestination(ServletController.java:234) ~[?:?]
at org.apache.cxf.transport.servlet.ServletController.invoke(ServletController.java:208) ~[?:?]
at org.apache.cxf.transport.servlet.ServletController.invoke(ServletController.java:160) ~[?:?]
at org.apache.cxf.transport.servlet.CXFNonSpringServlet.invoke(CXFNonSpringServlet.java:225) ~[?:?]
at org.apache.cxf.transport.servlet.AbstractHTTPServlet.handleRequest(AbstractHTTPServlet.java:304) ~[?:?]
at org.apache.cxf.transport.servlet.AbstractHTTPServlet.doPost(AbstractHTTPServlet.java:217) ~[?:?]
at javax.servlet.http.HttpServlet.service(HttpServlet.java:555) ~[tomcat-servlet-api_9.0.85.wso2v1.jar:?]
at org.apache.cxf.transport.servlet.AbstractHTTPServlet.service(AbstractHTTPServlet.java:279) ~[?:?]
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:209) ~[tomcat_9.0.85.wso2v1.jar:?]
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153) ~[tomcat_9.0.85.wso2v1.jar:?]
at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:51) ~[tomcat_9.0.85.wso2v1.jar:?]
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:178) ~[tomcat_9.0.85.wso2v1.jar:?]
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153) ~[tomcat_9.0.85.wso2v1.jar:?]
at io.entgra.proprietary.commons.extension.application.mgt.addons.ApiOriginFilter.doFilter(ApiOriginFilter.java:38) ~[?:?]
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:178) ~[tomcat_9.0.85.wso2v1.jar:?]
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153) ~[tomcat_9.0.85.wso2v1.jar:?]
at org.wso2.carbon.ui.filters.cache.ContentTypeBasedCachePreventionFilter.doFilter(ContentTypeBasedCachePreventionFilter.java:53) ~[org.wso2.carbon.ui_4.8.1.13.jar:?]
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:178) ~[tomcat_9.0.85.wso2v1.jar:?]
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153) ~[tomcat_9.0.85.wso2v1.jar:?]
at org.apache.catalina.filters.HttpHeaderSecurityFilter.doFilter(HttpHeaderSecurityFilter.java:129) ~[tomcat_9.0.85.wso2v1.jar:?]
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:178) ~[tomcat_9.0.85.wso2v1.jar:?]
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153) ~[tomcat_9.0.85.wso2v1.jar:?]
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:168) ~[tomcat_9.0.85.wso2v1.jar:?]
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:90) ~[tomcat_9.0.85.wso2v1.jar:?]
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:596) ~[tomcat_9.0.85.wso2v1.jar:?]
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:130) ~[tomcat_9.0.85.wso2v1.jar:?]
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:93) ~[tomcat_9.0.85.wso2v1.jar:?]
at org.wso2.carbon.identity.context.rewrite.valve.TenantContextRewriteValve.invoke(TenantContextRewriteValve.java:119) ~[org.wso2.carbon.identity.context.rewrite.valve_1.7.1.jar:?]
at org.wso2.carbon.identity.context.rewrite.valve.OrganizationContextRewriteValve.invoke(OrganizationContextRewriteValve.java:116) ~[org.wso2.carbon.identity.context.rewrite.valve_1.7.1.jar:?]
at org.wso2.carbon.tomcat.ext.valves.SameSiteCookieValve.invoke(SameSiteCookieValve.java:38) ~[org.wso2.carbon.tomcat.ext_4.8.1.jar:?]
at org.wso2.carbon.identity.authz.valve.AuthorizationValve.invoke(AuthorizationValve.java:165) ~[org.wso2.carbon.identity.authz.valve_1.7.1.jar:?]
at org.wso2.carbon.identity.auth.valve.AuthenticationValve.invoke(AuthenticationValve.java:118) ~[org.wso2.carbon.identity.auth.valve_1.7.1.2.jar:?]
at org.wso2.carbon.tomcat.ext.valves.CompositeValve.continueInvocation(CompositeValve.java:106) ~[org.wso2.carbon.tomcat.ext_4.8.1.jar:?]
at org.wso2.carbon.tomcat.ext.valves.CarbonTomcatValve$1.invoke(CarbonTomcatValve.java:47) ~[org.wso2.carbon.tomcat.ext_4.8.1.jar:?]
at io.entgra.device.mgt.core.webapp.authenticator.framework.WebappAuthenticationValve.processRequest(WebappAuthenticationValve.java:301) ~[io.entgra.device.mgt.core.webapp.authenticator.framework_5.2.4.SNAPSHOT.jar:?]
at io.entgra.device.mgt.core.webapp.authenticator.framework.WebappAuthenticationValve.invoke(WebappAuthenticationValve.java:178) ~[io.entgra.device.mgt.core.webapp.authenticator.framework_5.2.4.SNAPSHOT.jar:?]
at org.wso2.carbon.tomcat.ext.valves.TomcatValveContainer.invokeValves(TomcatValveContainer.java:47) ~[org.wso2.carbon.tomcat.ext_4.8.1.jar:?]
at org.wso2.carbon.tomcat.ext.valves.CompositeValve.invoke(CompositeValve.java:67) ~[org.wso2.carbon.tomcat.ext_4.8.1.jar:?]
at org.wso2.carbon.tomcat.ext.valves.CarbonStuckThreadDetectionValve.invoke(CarbonStuckThreadDetectionValve.java:152) ~[org.wso2.carbon.tomcat.ext_4.8.1.jar:?]
at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:670) ~[tomcat_9.0.85.wso2v1.jar:?]
at org.wso2.carbon.tomcat.ext.valves.CarbonContextCreatorValve.invoke(CarbonContextCreatorValve.java:63) ~[org.wso2.carbon.tomcat.ext_4.8.1.jar:?]
at org.wso2.carbon.tomcat.ext.valves.RequestCorrelationIdValve.invoke(RequestCorrelationIdValve.java:137) ~[org.wso2.carbon.tomcat.ext_4.8.1.jar:?]
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74) ~[tomcat_9.0.85.wso2v1.jar:?]
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:342) ~[tomcat_9.0.85.wso2v1.jar:?]
at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:390) ~[tomcat_9.0.85.wso2v1.jar:?]
at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:63) ~[tomcat_9.0.85.wso2v1.jar:?]
at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:928) ~[tomcat_9.0.85.wso2v1.jar:?]
at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1794) ~[tomcat_9.0.85.wso2v1.jar:?]
at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:52) ~[tomcat_9.0.85.wso2v1.jar:?]
at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1191) ~[tomcat_9.0.85.wso2v1.jar:?]
at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659) ~[tomcat_9.0.85.wso2v1.jar:?]
at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) ~[tomcat_9.0.85.wso2v1.jar:?]
at java.lang.Thread.run(Thread.java:829) [?:?]

[3]
[3]


Files

vokoscreen-2024-09-13_22-20-46.mkv (9.29 MB) vokoscreen-2024-09-13_22-20-46.mkv [1] Arshana Atapattu, 13/09/2024 04:57 PM
Screenshot from 2024-09-20 15-37-00.png (46.8 KB) Screenshot from 2024-09-20 15-37-00.png [3] Arshana Atapattu, 20/09/2024 10:11 AM
clipboard-202409301154-jnr0g.png (143 KB) clipboard-202409301154-jnr0g.png Oshani Silva, 30/09/2024 06:24 AM
clipboard-202409301155-cwdi0.png (127 KB) clipboard-202409301155-cwdi0.png Oshani Silva, 30/09/2024 06:25 AM
Screenshot from 2024-11-12 12-51-49.png (77.8 KB) Screenshot from 2024-11-12 12-51-49.png [4] Arshana Atapattu, 12/11/2024 07:22 AM
Screenshot from 2024-11-12 12-48-02.png (280 KB) Screenshot from 2024-11-12 12-48-02.png [6] Arshana Atapattu, 12/11/2024 07:24 AM
Actions #1

Updated by Arshana Atapattu 2 months ago

  • Parent task set to #11947
Actions #2

Updated by Pahansith Gunathilake 2 months ago

  • Subject changed from No validation or error when uploading same app/apk in app publisher to No validation or error when uploading same app/apk in app publisher when adding a new release
Actions #3

Updated by Pahansith Gunathilake 2 months ago

  • Priority changed from High to Critical
Actions #4

Updated by Pahansith Gunathilake 2 months ago

  • Assignee set to Oshani Silva

Updated by Oshani Silva about 2 months ago

This issue is coming after 420 changes due to the below change in error response format.

Error response ideally should be as below

Actions #7

Updated by Lasantha Dharmakeerthi about 1 month ago

  • Assignee changed from Rajitha Kumara to Nipuni Kavindya
Actions #8

Updated by Nipuni Kavindya 23 days ago

  • Due date set to 01/11/2024
  • Status changed from New to QA
  • Start date changed from 13/09/2024 to 21/10/2024
  • % Done changed from 0 to 100

Updated by Arshana Atapattu 11 days ago

This was not fixed [4].

shown error is also changed
Current shown error: [5]

Note: changes were cherry picked and the changes were in the branch at the time of building: [6]

[4]
[4]

[5]
TID: [2] [api/application-mgt-publisher/v1.0] [2024-11-12 07:19:33,630] ERROR {org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/api/application-mgt-publisher/v1.0].[CXFServlet]} - Servlet.service() for servlet [CXFServlet] in context with path [/api/application-mgt-publisher/v1.0] threw exception java.lang.NullPointerException
at java.base/java.util.Objects.requireNonNull(Objects.java:221)
at io.entgra.device.mgt.core.application.mgt.core.impl.FileDownloaderServiceProvider$RemoteFileDownloaderService.getFileMetaEntry(FileDownloaderServiceProvider.java:125)
at io.entgra.device.mgt.core.application.mgt.core.impl.FileDownloaderServiceProvider$RemoteFileDownloaderService.download(FileDownloaderServiceProvider.java:87)
at io.entgra.device.mgt.core.application.mgt.core.util.ApplicationManagementUtil.constructApplicationArtifact(ApplicationManagementUtil.java:188)
at io.entgra.device.mgt.core.application.mgt.core.impl.ApplicationManagerImpl.triggerEntAppRelease(ApplicationManagerImpl.java:299)
at io.entgra.device.mgt.core.application.mgt.core.impl.ApplicationManagerImpl.createApplicationReleaseBasedOnRemoteStatus(ApplicationManagerImpl.java:244)
at io.entgra.device.mgt.core.application.mgt.core.impl.ApplicationManagerImpl.createEntAppRelease(ApplicationManagerImpl.java:328)
at io.entgra.proprietary.commons.extension.application.mgt.publisher.api.impl.ApplicationManagementPublisherAPIImpl.createEntAppRelease(ApplicationManagementPublisherAPIImpl.java:273)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.base/java.lang.reflect.Method.invoke(Method.java:566)
at org.apache.cxf.service.invoker.AbstractInvoker.performInvocation(AbstractInvoker.java:179)
at org.apache.cxf.service.invoker.AbstractInvoker.invoke(AbstractInvoker.java:96)
at org.apache.cxf.jaxrs.JAXRSInvoker.invoke(JAXRSInvoker.java:201)
at org.apache.cxf.jaxrs.JAXRSInvoker.invoke(JAXRSInvoker.java:104)
at org.apache.cxf.interceptor.ServiceInvokerInterceptor$1.run(ServiceInvokerInterceptor.java:59)
at org.apache.cxf.interceptor.ServiceInvokerInterceptor.handleMessage(ServiceInvokerInterceptor.java:96)
at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:307)
at org.apache.cxf.transport.ChainInitiationObserver.onMessage(ChainInitiationObserver.java:121)
at org.apache.cxf.transport.http.AbstractHTTPDestination.invoke(AbstractHTTPDestination.java:265)
at org.apache.cxf.transport.servlet.ServletController.invokeDestination(ServletController.java:234)
at org.apache.cxf.transport.servlet.ServletController.invoke(ServletController.java:208)
at org.apache.cxf.transport.servlet.ServletController.invoke(ServletController.java:160)
at org.apache.cxf.transport.servlet.CXFNonSpringServlet.invoke(CXFNonSpringServlet.java:225)
at org.apache.cxf.transport.servlet.AbstractHTTPServlet.handleRequest(AbstractHTTPServlet.java:304)
at org.apache.cxf.transport.servlet.AbstractHTTPServlet.doPost(AbstractHTTPServlet.java:217)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:555)
at org.apache.cxf.transport.servlet.AbstractHTTPServlet.service(AbstractHTTPServlet.java:279)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:209)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153)
at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:51)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:178)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153)
at io.entgra.proprietary.commons.extension.application.mgt.addons.ApiOriginFilter.doFilter(ApiOriginFilter.java:38)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:178)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153)
at org.wso2.carbon.ui.filters.cache.ContentTypeBasedCachePreventionFilter.doFilter(ContentTypeBasedCachePreventionFilter.java:53)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:178)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153)
at org.apache.catalina.filters.HttpHeaderSecurityFilter.doFilter(HttpHeaderSecurityFilter.java:129)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:178)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:168)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:90)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:596)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:130)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:93)
at org.wso2.carbon.identity.context.rewrite.valve.TenantContextRewriteValve.invoke(TenantContextRewriteValve.java:119)
at org.wso2.carbon.identity.context.rewrite.valve.OrganizationContextRewriteValve.invoke(OrganizationContextRewriteValve.java:116)
at org.wso2.carbon.tomcat.ext.valves.SameSiteCookieValve.invoke(SameSiteCookieValve.java:38)
at org.wso2.carbon.identity.authz.valve.AuthorizationValve.invoke(AuthorizationValve.java:165)
at org.wso2.carbon.identity.auth.valve.AuthenticationValve.invoke(AuthenticationValve.java:118)
at org.wso2.carbon.tomcat.ext.valves.CompositeValve.continueInvocation(CompositeValve.java:106)
at org.wso2.carbon.tomcat.ext.valves.CarbonTomcatValve$1.invoke(CarbonTomcatValve.java:47)
at io.entgra.device.mgt.core.webapp.authenticator.framework.WebappAuthenticationValve.processRequest(WebappAuthenticationValve.java:311)
at io.entgra.device.mgt.core.webapp.authenticator.framework.WebappAuthenticationValve.invoke(WebappAuthenticationValve.java:188)
at org.wso2.carbon.tomcat.ext.valves.TomcatValveContainer.invokeValves(TomcatValveContainer.java:47)
at org.wso2.carbon.tomcat.ext.valves.CompositeValve.invoke(CompositeValve.java:67)
at org.wso2.carbon.tomcat.ext.valves.CarbonStuckThreadDetectionValve.invoke(CarbonStuckThreadDetectionValve.java:152)
at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:670)
at org.wso2.carbon.tomcat.ext.valves.CarbonContextCreatorValve.invoke(CarbonContextCreatorValve.java:63)
at org.wso2.carbon.tomcat.ext.valves.RequestCorrelationIdValve.invoke(RequestCorrelationIdValve.java:137)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:342)
at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:390)
at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:63)
at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:928)
at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1794)
at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:52)
at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1191)
at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659)
at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
at java.base/java.lang.Thread.run(Thread.java:834)

[6]
[6]

Actions

Also available in: Atom PDF