[ 
https://issues.apache.org/jira/browse/SLING-12363?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Robert Munteanu closed SLING-12363.
-----------------------------------

> ServerErrorRetryStrategy throws ClassCastException for BasicHttpRequest (not 
> assignable to HttpRequestWrapper)
> --------------------------------------------------------------------------------------------------------------
>
>                 Key: SLING-12363
>                 URL: https://issues.apache.org/jira/browse/SLING-12363
>             Project: Sling
>          Issue Type: Bug
>          Components: Apache Sling Testing Clients
>    Affects Versions: Apache Sling Testing Clients 3.0.20, Apache Sling 
> Testing Clients 3.0.22, Apache Sling Testing Clients 3.0.24
>            Reporter: Mark Adamcin
>            Assignee: Marc Pfaff
>            Priority: Minor
>             Fix For: Testing Clients 3.1.0
>
>
> Relates to SLING-11748 . 
> [https://github.com/apache/sling-org-apache-sling-testing-clients/pull/42]
> During a network outage, some executions of integration tests using 
> SlingClient started failing with the following stack trace:
>  
> {code:java}
> [ERROR] Tests run: 1, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 327.4 
> s <<< FAILURE! -- in com.adobe.cq.cloud.testing.it.smoke.PublishEndToEndIT
> [ERROR] 
> com.adobe.cq.cloud.testing.it.smoke.PublishEndToEndIT.testActivateAndDeactivate
>  -- Time elapsed: 327.2 s <<< ERROR!
> java.lang.ClassCastException: Cannot cast 
> org.apache.http.message.BasicHttpRequest to 
> org.apache.http.client.methods.HttpRequestWrapper
>       at java.base/java.lang.Class.cast(Class.java:3889)
>       at 
> org.apache.http.protocol.HttpCoreContext.getAttribute(HttpCoreContext.java:119)
>       at 
> org.apache.sling.testing.clients.util.ServerErrorRetryStrategy.getRequestDetails(ServerErrorRetryStrategy.java:96)
>       at 
> org.apache.sling.testing.clients.util.ServerErrorRetryStrategy.retryRequest(ServerErrorRetryStrategy.java:58)
>       at 
> org.apache.http.impl.execchain.ServiceUnavailableRetryExec.execute(ServiceUnavailableRetryExec.java:88)
>       at 
> org.apache.http.impl.client.InternalHttpClient.doExecute(InternalHttpClient.java:185)
>       at 
> org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:72)
>       at 
> org.apache.sling.testing.clients.interceptors.FormBasedAuthInterceptor.doLogin(FormBasedAuthInterceptor.java:141)
>       at 
> org.apache.sling.testing.clients.interceptors.FormBasedAuthInterceptor.process(FormBasedAuthInterceptor.java:80)
>       at 
> org.apache.http.protocol.ImmutableHttpProcessor.process(ImmutableHttpProcessor.java:133)
>       at 
> org.apache.http.impl.execchain.ProtocolExec.execute(ProtocolExec.java:184)
>       at org.apache.http.impl.execchain.RetryExec.execute(RetryExec.java:89)
>       at 
> org.apache.http.impl.execchain.ServiceUnavailableRetryExec.execute(ServiceUnavailableRetryExec.java:85)
>       at 
> org.apache.http.impl.execchain.RedirectExec.execute(RedirectExec.java:110)
>       at 
> org.apache.http.impl.client.InternalHttpClient.doExecute(InternalHttpClient.java:185)
>       at 
> org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:83)
>       at 
> org.apache.sling.testing.clients.AbstractSlingClient.execute(AbstractSlingClient.java:698)
>       at 
> org.apache.sling.testing.clients.AbstractSlingClient.doStreamRequest(AbstractSlingClient.java:326)
>       at 
> org.apache.sling.testing.clients.AbstractSlingClient.doStreamGet(AbstractSlingClient.java:440)
>       at 
> org.apache.sling.testing.clients.AbstractSlingClient.doGet(AbstractSlingClient.java:503)
>       at 
> org.apache.sling.testing.clients.AbstractSlingClient.doGet(AbstractSlingClient.java:539)
>       at 
> org.apache.sling.testing.clients.SlingClient.exists(SlingClient.java:202)
>       at com.adobe.cq.testing.junit.rules.Page.prepare(Page.java:151)
>       at com.adobe.cq.testing.junit.rules.Page.before(Page.java:82) {code}
> The type expected by 
> [getRequestDetails()|https://github.com/apache/sling-org-apache-sling-testing-clients/blob/da878173581fd2a8f667b365de0fd05318b12443/src/main/java/org/apache/sling/testing/clients/util/ServerErrorRetryStrategy.java#L96]
>  should probably be changed from HttpRequestWrapper to 
> {{{}org.apache.http.HttpRequest{}}}, which is a common interface for both 
> BasicHttpRequest and HttpRequestWrapper, and which happens to define the 
> getRequestLine() method .
>  
>  



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to