Uploaded image for project: 'JBoss Enterprise Application Platform'
  1. JBoss Enterprise Application Platform
  2. JBEAP-30656

(8.1.z) RESTEasy IMAGE IIO: PNG Image posting error on RHEL-10 using oracle-jdk 17 & 21

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Unresolved
    • Icon: Critical Critical
    • None
    • 8.1.0.GA-CR10
    • REST, Test Suite
    • None
    • False
    • Hide

      None

      Show
      None
    • False
    • Hide

      Run org.jboss.resteasy.test.providers.iioimage.IIOImageProviderTest.testPostPNGImage on RHEL 10 using oracle-jdk 17 or 21

      Show
      Run org.jboss.resteasy.test.providers.iioimage.IIOImageProviderTest.testPostPNGImage on RHEL 10 using oracle-jdk 17 or 21

      When running test org.jboss.resteasy.test.providers.iioimage.IIOImageProviderTest.testPostPNGImage on RHEL-10 using oracle-jdk 17 (or 21) we get the following error:

      org.opentest4j.AssertionFailedError: ImageResource could change image slightly or ImageResource is wrong ==> expected: <true> but was: <false>
      	at org.junit.jupiter.api.AssertionFailureBuilder.build(AssertionFailureBuilder.java:151)
      	at org.junit.jupiter.api.AssertionFailureBuilder.buildAndThrow(AssertionFailureBuilder.java:132)
      	at org.junit.jupiter.api.AssertTrue.failNotTrue(AssertTrue.java:63)
      	at org.junit.jupiter.api.AssertTrue.assertTrue(AssertTrue.java:36)
      	at org.junit.jupiter.api.Assertions.assertTrue(Assertions.java:214)
      	at org.jboss.resteasy.test.providers.iioimage.IIOImageProviderTest.testPostPNGImage(IIOImageProviderTest.java:94)
      	at java.base/java.lang.reflect.Method.invoke(Method.java:568)
      	at org.jboss.arquillian.junit5.ArquillianExtension$1.invoke(ArquillianExtension.java:187)
      	at org.jboss.arquillian.container.test.impl.execution.LocalTestExecuter.execute(LocalTestExecuter.java:58)
      	at java.base/java.lang.reflect.Method.invoke(Method.java:568)
      	at org.jboss.arquillian.core.impl.ObserverImpl.invoke(ObserverImpl.java:86)
      	at org.jboss.arquillian.core.impl.EventContextImpl.invokeObservers(EventContextImpl.java:103)
      	at org.jboss.arquillian.core.impl.EventContextImpl.proceed(EventContextImpl.java:90)
      	at org.jboss.arquillian.core.impl.ManagerImpl.fire(ManagerImpl.java:134)
      	at org.jboss.arquillian.core.impl.ManagerImpl.fire(ManagerImpl.java:106)
      	at org.jboss.arquillian.core.impl.EventImpl.fire(EventImpl.java:62)
      	at org.jboss.arquillian.container.test.impl.execution.ClientTestExecuter.execute(ClientTestExecuter.java:50)
      	at java.base/java.lang.reflect.Method.invoke(Method.java:568)
      	at org.jboss.arquillian.core.impl.ObserverImpl.invoke(ObserverImpl.java:86)
      	at org.jboss.arquillian.core.impl.EventContextImpl.invokeObservers(EventContextImpl.java:103)
      	at org.jboss.arquillian.core.impl.EventContextImpl.proceed(EventContextImpl.java:90)
      	at org.jboss.arquillian.container.test.impl.client.ContainerEventController.createContext(ContainerEventController.java:128)
      	at org.jboss.arquillian.container.test.impl.client.ContainerEventController.createTestContext(ContainerEventController.java:118)
      	at java.base/java.lang.reflect.Method.invoke(Method.java:568)
      	at org.jboss.arquillian.core.impl.ObserverImpl.invoke(ObserverImpl.java:86)
      	at org.jboss.arquillian.core.impl.EventContextImpl.proceed(EventContextImpl.java:95)
      	at org.jboss.arquillian.test.impl.TestContextHandler.createTestContext(TestContextHandler.java:116)
      	at java.base/java.lang.reflect.Method.invoke(Method.java:568)
      	at org.jboss.arquillian.core.impl.ObserverImpl.invoke(ObserverImpl.java:86)
      	at org.jboss.arquillian.core.impl.EventContextImpl.proceed(EventContextImpl.java:95)
      	at org.jboss.arquillian.test.impl.TestContextHandler.createClassContext(TestContextHandler.java:83)
      	at java.base/java.lang.reflect.Method.invoke(Method.java:568)
      	at org.jboss.arquillian.core.impl.ObserverImpl.invoke(ObserverImpl.java:86)
      	at org.jboss.arquillian.core.impl.EventContextImpl.proceed(EventContextImpl.java:95)
      	at org.jboss.arquillian.test.impl.TestContextHandler.createSuiteContext(TestContextHandler.java:69)
      	at java.base/java.lang.reflect.Method.invoke(Method.java:568)
      	at org.jboss.arquillian.core.impl.ObserverImpl.invoke(ObserverImpl.java:86)
      	at org.jboss.arquillian.core.impl.EventContextImpl.proceed(EventContextImpl.java:95)
      	at org.jboss.arquillian.core.impl.ManagerImpl.fire(ManagerImpl.java:134)
      	at org.jboss.arquillian.test.impl.EventTestRunnerAdaptor.test(EventTestRunnerAdaptor.java:139)
      	at org.jboss.arquillian.junit5.ArquillianExtension.interceptInvocation(ArquillianExtension.java:167)
      	at org.jboss.arquillian.junit5.ArquillianExtension.interceptTestMethod(ArquillianExtension.java:107)
      	at java.base/java.util.ArrayList.forEach(ArrayList.java:1511)
      	at java.base/java.util.ArrayList.forEach(ArrayList.java:1511)
      

      Correspondingly, we observe the following error in the server logs:

      13:10:24,374 INFO  [org.jboss.as.repository] (management-handler-thread - 2) WFLYDR0001: Content added at location /home/hudson/hudson_workspace/workspace/eap-8.x-resteasy-functional-ts-rhel/b8c6919e/resteasy/testsuite/integration-tests/target/jbossas-managed/data/content/56/9e4beb6e2d30cc9bee8e105c14d3510af92916/content
      13:10:24,376 INFO  [org.jboss.as.server.deployment] (MSC service thread 1-3) WFLYSRV0027: Starting deployment of "IIOImageProviderTest.war" (runtime-name: "IIOImageProviderTest.war")
      13:10:24,606 WARN  [org.jboss.weld.deployer] (MSC service thread 1-6) WFLYWELD0013: Deployment IIOImageProviderTest.war contains Jakarta Contexts and Dependency Injection annotations but no bean archive was found (no beans.xml or class with bean defining annotations was present).
      13:10:24,623 INFO  [org.jboss.resteasy.resteasy_jaxrs.i18n] (ServerService Thread Pool -- 90) RESTEASY002225: Deploying jakarta.ws.rs.core.Application: class org.jboss.resteasy.utils.TestApplication
      13:10:24,624 INFO  [org.jboss.resteasy.resteasy_jaxrs.i18n] (ServerService Thread Pool -- 90) RESTEASY002200: Adding class resource org.jboss.resteasy.test.providers.iioimage.resource.ImageResource from Application class org.jboss.resteasy.utils.TestApplication
      13:10:24,629 INFO  [org.wildfly.extension.undertow] (ServerService Thread Pool -- 90) WFLYUT0021: Registered web context: '/IIOImageProviderTest' for server 'default-server'
      13:10:24,643 INFO  [org.jboss.as.server] (management-handler-thread - 2) WFLYSRV0010: Deployed "IIOImageProviderTest.war" (runtime-name : "IIOImageProviderTest.war")
      13:10:24,720 WARN  [org.jboss.resteasy.resteasy_jaxrs.i18n] (default task-1) RESTEASY002170: A reader for image/vnd.ms-photo was not found. This provider is currently configured to handle only [image/vnd.wap.wbmp, image/png, image/x-png, image/jpeg, image/tiff, image/bmp, image/gif]
      13:10:24,721 ERROR [org.jboss.resteasy.resteasy_jaxrs.i18n] (default task-1) RESTEASY002010: Failed to execute: jakarta.ws.rs.WebApplicationException: HTTP 406 Not Acceptable
      	at org.jboss.resteasy.resteasy-core@6.2.12.Final-redhat-00001//org.jboss.resteasy.plugins.providers.IIOImageProviderHelper.getImageReaderByMediaType(IIOImageProviderHelper.java:93)
      	at org.jboss.resteasy.resteasy-core@6.2.12.Final-redhat-00001//org.jboss.resteasy.plugins.providers.IIOImageProvider.readFrom(IIOImageProvider.java:118)
      	at org.jboss.resteasy.resteasy-core@6.2.12.Final-redhat-00001//org.jboss.resteasy.plugins.providers.IIOImageProvider.readFrom(IIOImageProvider.java:38)
      	at org.jboss.resteasy.resteasy-core@6.2.12.Final-redhat-00001//org.jboss.resteasy.core.interception.jaxrs.AbstractReaderInterceptorContext.readFrom(AbstractReaderInterceptorContext.java:99)
      	at org.jboss.resteasy.resteasy-core@6.2.12.Final-redhat-00001//org.jboss.resteasy.core.interception.jaxrs.ServerReaderInterceptorContext.readFrom(ServerReaderInterceptorContext.java:60)
      	at org.jboss.resteasy.resteasy-core@6.2.12.Final-redhat-00001//org.jboss.resteasy.core.interception.jaxrs.AbstractReaderInterceptorContext.proceed(AbstractReaderInterceptorContext.java:81)
      	at org.jboss.resteasy.resteasy-crypto@6.2.12.Final-redhat-00001//org.jboss.resteasy.security.doseta.DigitalVerificationInterceptor.aroundReadFrom(DigitalVerificationInterceptor.java:32)
      	at org.jboss.resteasy.resteasy-core@6.2.12.Final-redhat-00001//org.jboss.resteasy.core.interception.jaxrs.AbstractReaderInterceptorContext.proceed(AbstractReaderInterceptorContext.java:89)
      	at org.jboss.resteasy.resteasy-core@6.2.12.Final-redhat-00001//org.jboss.resteasy.core.MessageBodyParameterInjector.inject(MessageBodyParameterInjector.java:192)
      	at org.jboss.resteasy.resteasy-core@6.2.12.Final-redhat-00001//org.jboss.resteasy.core.MethodInjectorImpl.injectArguments(MethodInjectorImpl.java:87)
      	at org.jboss.resteasy.resteasy-core@6.2.12.Final-redhat-00001//org.jboss.resteasy.core.MethodInjectorImpl.invoke(MethodInjectorImpl.java:116)
      	at org.jboss.resteasy.resteasy-core@6.2.12.Final-redhat-00001//org.jboss.resteasy.core.ResourceMethodInvoker.internalInvokeOnTarget(ResourceMethodInvoker.java:560)
      	at org.jboss.resteasy.resteasy-core@6.2.12.Final-redhat-00001//org.jboss.resteasy.core.ResourceMethodInvoker.invokeOnTargetAfterFilter(ResourceMethodInvoker.java:452)
      	at org.jboss.resteasy.resteasy-core@6.2.12.Final-redhat-00001//org.jboss.resteasy.core.ResourceMethodInvoker.lambda$invokeOnTarget$2(ResourceMethodInvoker.java:413)
      	at org.jboss.resteasy.resteasy-core@6.2.12.Final-redhat-00001//org.jboss.resteasy.core.interception.jaxrs.PreMatchContainerRequestContext.filter(PreMatchContainerRequestContext.java:321)
      	at org.jboss.resteasy.resteasy-core@6.2.12.Final-redhat-00001//org.jboss.resteasy.core.ResourceMethodInvoker.invokeOnTarget(ResourceMethodInvoker.java:415)
      	at org.jboss.resteasy.resteasy-core@6.2.12.Final-redhat-00001//org.jboss.resteasy.core.ResourceMethodInvoker.invoke(ResourceMethodInvoker.java:378)
      	at org.jboss.resteasy.resteasy-core@6.2.12.Final-redhat-00001//org.jboss.resteasy.core.ResourceMethodInvoker.invoke(ResourceMethodInvoker.java:356)
      	at org.jboss.resteasy.resteasy-core@6.2.12.Final-redhat-00001//org.jboss.resteasy.core.ResourceMethodInvoker.invoke(ResourceMethodInvoker.java:70)
      	at org.jboss.resteasy.resteasy-core@6.2.12.Final-redhat-00001//org.jboss.resteasy.core.SynchronousDispatcher.invoke(SynchronousDispatcher.java:429)
      	at org.jboss.resteasy.resteasy-core@6.2.12.Final-redhat-00001//org.jboss.resteasy.core.SynchronousDispatcher.lambda$invoke$4(SynchronousDispatcher.java:240)
      	at org.jboss.resteasy.resteasy-core@6.2.12.Final-redhat-00001//org.jboss.resteasy.core.SynchronousDispatcher.lambda$preprocess$0(SynchronousDispatcher.java:154)
      	at org.jboss.resteasy.resteasy-core@6.2.12.Final-redhat-00001//org.jboss.resteasy.core.interception.jaxrs.PreMatchContainerRequestContext.filter(PreMatchContainerRequestContext.java:321)
      	at org.jboss.resteasy.resteasy-core@6.2.12.Final-redhat-00001//org.jboss.resteasy.core.SynchronousDispatcher.preprocess(SynchronousDispatcher.java:157)
      	at org.jboss.resteasy.resteasy-core@6.2.12.Final-redhat-00001//org.jboss.resteasy.core.SynchronousDispatcher.invoke(SynchronousDispatcher.java:229)
      	at org.jboss.resteasy.resteasy-core@6.2.12.Final-redhat-00001//org.jboss.resteasy.plugins.server.servlet.ServletContainerDispatcher.service(ServletContainerDispatcher.java:222)
      	at org.jboss.resteasy.resteasy-core@6.2.12.Final-redhat-00001//org.jboss.resteasy.plugins.server.servlet.HttpServletDispatcher.service(HttpServletDispatcher.java:55)
      	at org.jboss.resteasy.resteasy-core@6.2.12.Final-redhat-00001//org.jboss.resteasy.plugins.server.servlet.HttpServletDispatcher.service(HttpServletDispatcher.java:51)
      	at jakarta.servlet.api@6.0.0.redhat-00006//jakarta.servlet.http.HttpServlet.service(HttpServlet.java:614)
      	at io.undertow.servlet@2.3.18.SP1-redhat-00001//io.undertow.servlet.handlers.ServletHandler.handleRequest(ServletHandler.java:74)
      	at io.undertow.servlet@2.3.18.SP1-redhat-00001//io.undertow.servlet.handlers.security.ServletSecurityRoleHandler.handleRequest(ServletSecurityRoleHandler.java:62)
      	at io.undertow.servlet@2.3.18.SP1-redhat-00001//io.undertow.servlet.handlers.ServletChain$1.handleRequest(ServletChain.java:68)
      	at io.undertow.servlet@2.3.18.SP1-redhat-00001//io.undertow.servlet.handlers.ServletDispatchingHandler.handleRequest(ServletDispatchingHandler.java:36)
      	at org.wildfly.security.elytron-web.undertow-server@4.1.2.Final-redhat-00001//org.wildfly.elytron.web.undertow.server.ElytronRunAsHandler.lambda$handleRequest$1(ElytronRunAsHandler.java:68)
      	at org.wildfly.security.elytron-base@2.6.4.Final-redhat-00001//org.wildfly.security.auth.server.FlexibleIdentityAssociation.runAsFunctionEx(FlexibleIdentityAssociation.java:103)
      	at org.wildfly.security.elytron-base@2.6.4.Final-redhat-00001//org.wildfly.security.auth.server.Scoped.runAsFunctionEx(Scoped.java:161)
      	at org.wildfly.security.elytron-base@2.6.4.Final-redhat-00001//org.wildfly.security.auth.server.Scoped.runAs(Scoped.java:73)
      	at org.wildfly.security.elytron-web.undertow-server@4.1.2.Final-redhat-00001//org.wildfly.elytron.web.undertow.server.ElytronRunAsHandler.handleRequest(ElytronRunAsHandler.java:67)
      	at io.undertow.servlet@2.3.18.SP1-redhat-00001//io.undertow.servlet.handlers.RedirectDirHandler.handleRequest(RedirectDirHandler.java:68)
      	at io.undertow.servlet@2.3.18.SP1-redhat-00001//io.undertow.servlet.handlers.security.SSLInformationAssociationHandler.handleRequest(SSLInformationAssociationHandler.java:117)
      	at io.undertow.servlet@2.3.18.SP1-redhat-00001//io.undertow.servlet.handlers.security.ServletAuthenticationCallHandler.handleRequest(ServletAuthenticationCallHandler.java:57)
      	at io.undertow.core@2.3.18.SP1-redhat-00001//io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
      	at io.undertow.core@2.3.18.SP1-redhat-00001//io.undertow.security.handlers.AbstractConfidentialityHandler.handleRequest(AbstractConfidentialityHandler.java:46)
      	at io.undertow.servlet@2.3.18.SP1-redhat-00001//io.undertow.servlet.handlers.security.ServletConfidentialityConstraintHandler.handleRequest(ServletConfidentialityConstraintHandler.java:64)
      	at io.undertow.core@2.3.18.SP1-redhat-00001//io.undertow.security.handlers.AbstractSecurityContextAssociationHandler.handleRequest(AbstractSecurityContextAssociationHandler.java:43)
      	at org.wildfly.security.elytron-web.undertow-server-servlet@4.1.0.Final//org.wildfly.elytron.web.undertow.server.servlet.CleanUpHandler.handleRequest(CleanUpHandler.java:38)
      	at io.undertow.core@2.3.18.SP1-redhat-00001//io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
      	at org.wildfly.extension.undertow@8.1.0.GA-redhat-00015//org.wildfly.extension.undertow.security.jacc.JACCContextIdHandler.handleRequest(JACCContextIdHandler.java:44)
      	at io.undertow.core@2.3.18.SP1-redhat-00001//io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
      	at org.wildfly.extension.undertow@8.1.0.GA-redhat-00015//org.wildfly.extension.undertow.deployment.GlobalRequestControllerHandler.handleRequest(GlobalRequestControllerHandler.java:51)
      	at io.undertow.servlet@2.3.18.SP1-redhat-00001//io.undertow.servlet.handlers.SendErrorPageHandler.handleRequest(SendErrorPageHandler.java:52)
      	at io.undertow.core@2.3.18.SP1-redhat-00001//io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
      	at io.undertow.servlet@2.3.18.SP1-redhat-00001//io.undertow.servlet.handlers.ServletInitialHandler.handleFirstRequest(ServletInitialHandler.java:276)
      	at io.undertow.servlet@2.3.18.SP1-redhat-00001//io.undertow.servlet.handlers.ServletInitialHandler$2.call(ServletInitialHandler.java:135)
      	at io.undertow.servlet@2.3.18.SP1-redhat-00001//io.undertow.servlet.handlers.ServletInitialHandler$2.call(ServletInitialHandler.java:132)
      	at io.undertow.servlet@2.3.18.SP1-redhat-00001//io.undertow.servlet.core.ServletRequestContextThreadSetupAction$1.call(ServletRequestContextThreadSetupAction.java:48)
      	at io.undertow.servlet@2.3.18.SP1-redhat-00001//io.undertow.servlet.core.ContextClassLoaderSetupAction$1.call(ContextClassLoaderSetupAction.java:43)
      	at org.wildfly.extension.undertow@8.1.0.GA-redhat-00015//org.wildfly.extension.undertow.deployment.UndertowDeploymentInfoService$UndertowThreadSetupAction.lambda$create$0(UndertowDeploymentInfoService.java:1421)
      	at org.wildfly.extension.undertow@8.1.0.GA-redhat-00015//org.wildfly.extension.undertow.deployment.UndertowDeploymentInfoService$UndertowThreadSetupAction.lambda$create$0(UndertowDeploymentInfoService.java:1421)
      	at org.wildfly.extension.undertow@8.1.0.GA-redhat-00015//org.wildfly.extension.undertow.deployment.UndertowDeploymentInfoService$UndertowThreadSetupAction.lambda$create$0(UndertowDeploymentInfoService.java:1421)
      	at org.wildfly.extension.undertow@8.1.0.GA-redhat-00015//org.wildfly.extension.undertow.deployment.UndertowDeploymentInfoService$UndertowThreadSetupAction.lambda$create$0(UndertowDeploymentInfoService.java:1421)
      	at io.undertow.servlet@2.3.18.SP1-redhat-00001//io.undertow.servlet.handlers.ServletInitialHandler.dispatchRequest(ServletInitialHandler.java:256)
      	at io.undertow.servlet@2.3.18.SP1-redhat-00001//io.undertow.servlet.handlers.ServletInitialHandler$1.handleRequest(ServletInitialHandler.java:101)
      	at io.undertow.core@2.3.18.SP1-redhat-00001//io.undertow.server.Connectors.executeRootHandler(Connectors.java:395)
      	at io.undertow.core@2.3.18.SP1-redhat-00001//io.undertow.server.HttpServerExchange$1.run(HttpServerExchange.java:896)
      	at org.jboss.threads@2.4.0.Final-redhat-00001//org.jboss.threads.ContextClassLoaderSavingRunnable.run(ContextClassLoaderSavingRunnable.java:35)
      	at org.jboss.threads@2.4.0.Final-redhat-00001//org.jboss.threads.EnhancedQueueExecutor.safeRun(EnhancedQueueExecutor.java:1990)
      	at org.jboss.threads@2.4.0.Final-redhat-00001//org.jboss.threads.EnhancedQueueExecutor$ThreadBody.doRunTask(EnhancedQueueExecutor.java:1486)
      	at org.jboss.threads@2.4.0.Final-redhat-00001//org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1377)
      	at org.jboss.xnio@3.8.16.Final-redhat-00001//org.xnio.XnioWorker$WorkerThreadFactory$1$1.run(XnioWorker.java:1282)
      	at java.base/java.lang.Thread.run(Thread.java:842)
      
      13:10:24,840 INFO  [org.wildfly.extension.undertow] (ServerService Thread Pool -- 90) WFLYUT0022: Unregistered web context: '/IIOImageProviderTest' from server 'default-server'
      13:10:24,846 INFO  [org.jboss.as.server.deployment] (MSC service thread 1-3) WFLYSRV0028: Stopped deployment IIOImageProviderTest.war (runtime-name: IIOImageProviderTest.war) in 6ms
      13:10:24,861 INFO  [org.jboss.as.repository] (management-handler-thread - 2) WFLYDR0002: Content removed from location /home/hudson/hudson_workspace/workspace/eap-8.x-resteasy-functional-ts-rhel/b8c6919e/resteasy/testsuite/integration-tests/target/jbossas-managed/data/content/56/9e4beb6e2d30cc9bee8e105c14d3510af92916/content
      13:10:24,862 INFO  [org.jboss.as.server] (management-handler-thread - 2) WFLYSRV0009: Undeployed "IIOImageProviderTest.war" (runtime-name: "IIOImageProviderTest.war")
      
      

      Please note that the error just shows on RHEL-10 when using oracle-jdk (versions 17 and 21)

              jaslee@redhat.com Jason Lee
              tborgato@redhat.com Tommaso Borgato
              Votes:
              0 Vote for this issue
              Watchers:
              7 Start watching this issue

                Created:
                Updated: