[richfaces-issues] [JBoss JIRA] (RF-13663) Warp on Chrome

Matej Novotny (JIRA) issues at jboss.org
Thu Jun 12 08:18:38 EDT 2014


    [ https://issues.jboss.org/browse/RF-13663?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12975622#comment-12975622 ] 

Matej Novotny commented on RF-13663:
------------------------------------

Ok after a lot of struggling I managed to resolve this.
The problem is that in Chrome when there is a component (eg. button) which uses different background image (on hover for isntance) Chrome loads this image only when uses attempts to use this component.
That means when the tests attempted to click the button, there were indeed 2 requests, first of which (and the inspected one) was image loading.
The workaround is to first use activity which will hover over the button to force image loading and then start Warp activity. I will push this commit any time soon and resolve this issue.

> Warp on Chrome
> --------------
>
>                 Key: RF-13663
>                 URL: https://issues.jboss.org/browse/RF-13663
>             Project: RichFaces
>          Issue Type: Bug
>      Security Level: Public(Everyone can see) 
>    Affects Versions: 4.5.0.Alpha2
>         Environment: Chrome
> Wildfly 8.0
>            Reporter: Matej Novotny
>            Assignee: Matej Novotny
>
> This issue originates from RF-13651.
> RF 4.5 integration tests (I tried it with a4j tests) fail when there is a @Warp test using @BeforePhase JSF hooks.
> The problem is that the Phase does not get executed.  However this only happens with Chrome, FF and PhantomJS work corectly.
> This is the exception:
> {code}
> testExecuteForm(org.richfaces.component.region.ITExecuteRichAjax)  Time elapsed: 11.187 sec  <<< ERROR!
> org.jboss.arquillian.warp.impl.client.verification.InspectionMethodWasNotInvokedException: Lifecycle test declared on public void org.richfaces.component.region.VerifyExecutedIds.validaExecutedIds(javax.faces.context.FacesContext) with qualifiers [@org.jboss.arquillian.warp.jsf.BeforePhase(value=RENDER_RESPONSE)] was not executed
> 	at org.jboss.arquillian.warp.impl.client.verification.ResponsePayloadVerifier.verifyAllLifecycleTestsExecuted(ResponsePayloadVerifier.java:74)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
> 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> 	at java.lang.reflect.Method.invoke(Method.java:606)
> 	at org.jboss.arquillian.core.impl.ObserverImpl.invoke(ObserverImpl.java:94)
> 	at org.jboss.arquillian.core.impl.EventContextImpl.invokeObservers(EventContextImpl.java:99)
> 	at org.jboss.arquillian.core.impl.EventContextImpl.proceed(EventContextImpl.java:81)
> 	at org.jboss.arquillian.core.impl.ManagerImpl.fire(ManagerImpl.java:145)
> 	at org.jboss.arquillian.core.impl.ManagerImpl.fire(ManagerImpl.java:116)
> 	at org.jboss.arquillian.core.impl.EventImpl.fire(EventImpl.java:67)
> 	at org.jboss.arquillian.warp.impl.client.execution.DefaultResponseDeenrichmentService.deenrichResponse(DefaultResponseDeenrichmentService.java:87)
> 	at org.jboss.arquillian.warp.impl.client.execution.EnrichmentObserver.deenrichResponse(EnrichmentObserver.java:101)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
> 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> 	at java.lang.reflect.Method.invoke(Method.java:606)
> 	at org.jboss.arquillian.core.impl.ObserverImpl.invoke(ObserverImpl.java:94)
> 	at org.jboss.arquillian.core.impl.EventContextImpl.invokeObservers(EventContextImpl.java:99)
> 	at org.jboss.arquillian.core.impl.EventContextImpl.proceed(EventContextImpl.java:81)
> 	at org.jboss.arquillian.core.impl.ManagerImpl.fire(ManagerImpl.java:145)
> 	at org.jboss.arquillian.core.impl.ManagerImpl.fire(ManagerImpl.java:116)
> 	at org.jboss.arquillian.core.impl.EventImpl.fire(EventImpl.java:67)
> 	at org.jboss.arquillian.warp.impl.client.execution.EnrichmentObserver.tryDeenrichResponse(EnrichmentObserver.java:92)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
> 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> 	at java.lang.reflect.Method.invoke(Method.java:606)
> 	at org.jboss.arquillian.core.impl.ObserverImpl.invoke(ObserverImpl.java:94)
> 	at org.jboss.arquillian.core.impl.EventContextImpl.invokeObservers(EventContextImpl.java:99)
> 	at org.jboss.arquillian.core.impl.EventContextImpl.proceed(EventContextImpl.java:81)
> 	at org.jboss.arquillian.core.impl.ManagerImpl.fire(ManagerImpl.java:145)
> 	at org.jboss.arquillian.core.impl.ManagerImpl.fire(ManagerImpl.java:116)
> 	at org.jboss.arquillian.core.impl.EventImpl.fire(EventImpl.java:67)
> 	at org.jboss.arquillian.warp.impl.client.execution.DefaultHttpFiltersSource$1.responsePost(DefaultHttpFiltersSource.java:102)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
> 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> 	at java.lang.reflect.Method.invoke(Method.java:606)
> 	at org.jboss.arquillian.warp.impl.client.context.operation.Contextualizer$2.invoke(Contextualizer.java:68)
> 	at com.sun.proxy.$Proxy27.responsePost(Unknown Source)
> 	at org.littleshoot.proxy.impl.ClientToProxyConnection.respond(ClientToProxyConnection.java:316)
> 	at org.littleshoot.proxy.impl.ProxyToServerConnection.respondWith(ProxyToServerConnection.java:440)
> 	at org.littleshoot.proxy.impl.ProxyToServerConnection.readHTTPInitial(ProxyToServerConnection.java:182)
> 	at org.littleshoot.proxy.impl.ProxyToServerConnection.readHTTPInitial(ProxyToServerConnection.java:66)
> 	at org.littleshoot.proxy.impl.ProxyConnection.readHTTP(ProxyConnection.java:143)
> 	at org.littleshoot.proxy.impl.ProxyConnection.read(ProxyConnection.java:130)
> 	at org.littleshoot.proxy.impl.ProxyToServerConnection.read(ProxyToServerConnection.java:173)
> 	at org.littleshoot.proxy.impl.ProxyConnection.channelRead0(ProxyConnection.java:563)
> 	at io.netty.channel.SimpleChannelInboundHandler.channelRead(SimpleChannelInboundHandler.java:103)
> 	at io.netty.channel.DefaultChannelHandlerContext.invokeChannelRead(DefaultChannelHandlerContext.java:338)
> 	at io.netty.channel.DefaultChannelHandlerContext.fireChannelRead(DefaultChannelHandlerContext.java:324)
> 	at io.netty.handler.timeout.IdleStateHandler.channelRead(IdleStateHandler.java:253)
> 	at io.netty.channel.DefaultChannelHandlerContext.invokeChannelRead(DefaultChannelHandlerContext.java:338)
> 	at io.netty.channel.DefaultChannelHandlerContext.fireChannelRead(DefaultChannelHandlerContext.java:324)
> 	at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:103)
> 	at io.netty.channel.DefaultChannelHandlerContext.invokeChannelRead(DefaultChannelHandlerContext.java:338)
> 	at io.netty.channel.DefaultChannelHandlerContext.fireChannelRead(DefaultChannelHandlerContext.java:324)
> 	at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:103)
> 	at io.netty.channel.DefaultChannelHandlerContext.invokeChannelRead(DefaultChannelHandlerContext.java:338)
> 	at io.netty.channel.DefaultChannelHandlerContext.fireChannelRead(DefaultChannelHandlerContext.java:324)
> 	at io.netty.channel.ChannelInboundHandlerAdapter.channelRead(ChannelInboundHandlerAdapter.java:86)
> 	at org.littleshoot.proxy.impl.ProxyConnection$ResponseReadMonitor.channelRead(ProxyConnection.java:714)
> 	at io.netty.channel.DefaultChannelHandlerContext.invokeChannelRead(DefaultChannelHandlerContext.java:338)
> 	at io.netty.channel.DefaultChannelHandlerContext.fireChannelRead(DefaultChannelHandlerContext.java:324)
> 	at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:153)
> 	at io.netty.channel.DefaultChannelHandlerContext.invokeChannelRead(DefaultChannelHandlerContext.java:338)
> 	at io.netty.channel.DefaultChannelHandlerContext.fireChannelRead(DefaultChannelHandlerContext.java:324)
> 	at io.netty.channel.ChannelInboundHandlerAdapter.channelRead(ChannelInboundHandlerAdapter.java:86)
> 	at org.littleshoot.proxy.impl.ProxyConnection$BytesReadMonitor.channelRead(ProxyConnection.java:668)
> 	at io.netty.channel.DefaultChannelHandlerContext.invokeChannelRead(DefaultChannelHandlerContext.java:338)
> 	at io.netty.channel.DefaultChannelHandlerContext.fireChannelRead(DefaultChannelHandlerContext.java:324)
> 	at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:785)
> 	at io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe.read(AbstractNioByteChannel.java:126)
> 	at io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:485)
> 	at io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:452)
> 	at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:346)
> 	at io.netty.util.concurrent.SingleThreadEventExecutor$2.run(SingleThreadEventExecutor.java:101)
> 	at java.lang.Thread.run(Thread.java:724)
> {code}
> What I tried:
> * I downloaded Arq. warp repo and tried integration tests there (there is a test for JSF lifecycle hooks)
> ** This test works, so I suppose warp works correctly
> * I tried to change dependencies to other version to see whether it would work
> ** No luck, fails all the time



--
This message was sent by Atlassian JIRA
(v6.2.6#6264)


More information about the richfaces-issues mailing list