You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@myfaces.apache.org by "Markus Dreher (Commented) (JIRA)" <de...@myfaces.apache.org> on 2012/02/21 13:54:34 UTC

[jira] [Commented] (TRINIDAD-2223) PPR doesn't work with JsfUNit / HtmlUnit

    [ https://issues.apache.org/jira/browse/TRINIDAD-2223?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13212561#comment-13212561 ] 

Markus Dreher commented on TRINIDAD-2223:
-----------------------------------------

It's possible to solve the problem:

Just add the following check (actionForm.enctype) in RequestQueue.js

{code}
204  // Use enctype - supported on IE >= 6, Moz, and Safari.
205  // encoding is not supported on Safari.
206  if (actionForm.enctype && actionForm.enctype.toLowerCase() != "multipart/form-data")
207    return false;
{code}



                
> PPR doesn't work with JsfUNit / HtmlUnit
> ----------------------------------------
>
>                 Key: TRINIDAD-2223
>                 URL: https://issues.apache.org/jira/browse/TRINIDAD-2223
>             Project: MyFaces Trinidad
>          Issue Type: Bug
>    Affects Versions: 1.2.14-core 
>         Environment: jsfunit 1.3.0.Final
> com.gargoylesoftware.htmlunit.BrowserVersion. FIREFOX_3_6
>            Reporter: Markus Dreher
>            Priority: Minor
>
> When i use JSfuNit to test my App I get this Error wehn clicking a showDetail Component.
> The same happens when i click on an autosubmit component, e.g. radionbutton.
> -- Error Log from JUnit --
> Class: de.dzbw.ewocore.web.einwohnerauskunft.EinwohneraukunftDialogTestRemote
> Method: testEinTrefferShowDetail
> Actual: null
> Expected: null
> Stack Trace:
> ======= EXCEPTION START ========
> EcmaError: lineNumber=[16795] column=[0] lineSource=[null] name=[TypeError] sourceName=[http://localhost:8090/ewo/adf/jsLibs/DebugCommon1_2_14.js] message=[TypeError: Cannot call method "toLowerCase" of undefined (http://localhost:8090/ewo/adf/jsLibs/DebugCommon1_2_14.js#16795)]
> com.gargoylesoftware.htmlunit.ScriptException: TypeError: Cannot call method "toLowerCase" of undefined (http://localhost:8090/ewo/adf/jsLibs/DebugCommon1_2_14.js#16795)
> 	at com.gargoylesoftware.htmlunit.javascript.JavaScriptEngine$HtmlUnitContextAction.run(JavaScriptEngine.java:601)
> 	at net.sourceforge.htmlunit.corejs.javascript.Context.call(Context.java:537)
> 	at net.sourceforge.htmlunit.corejs.javascript.ContextFactory.call(ContextFactory.java:538)
> 	at com.gargoylesoftware.htmlunit.javascript.JavaScriptEngine.callFunction(JavaScriptEngine.java:531)
> 	at com.gargoylesoftware.htmlunit.html.HtmlPage.executeJavaScriptFunctionIfPossible(HtmlPage.java:906)
> 	at com.gargoylesoftware.htmlunit.javascript.host.EventListenersContainer.executeEventHandler(EventListenersContainer.java:197)
> 	at com.gargoylesoftware.htmlunit.javascript.host.EventListenersContainer.executeBubblingListeners(EventListenersContainer.java:216)
> 	at com.gargoylesoftware.htmlunit.javascript.host.Node.fireEvent(Node.java:686)
> 	at com.gargoylesoftware.htmlunit.html.HtmlElement$2.run(HtmlElement.java:885)
> 	at net.sourceforge.htmlunit.corejs.javascript.Context.call(Context.java:537)
> 	at net.sourceforge.htmlunit.corejs.javascript.ContextFactory.call(ContextFactory.java:538)
> 	at com.gargoylesoftware.htmlunit.html.HtmlElement.fireEvent(HtmlElement.java:890)
> 	at com.gargoylesoftware.htmlunit.html.HtmlElement.click(HtmlElement.java:1259)
> 	at com.gargoylesoftware.htmlunit.html.HtmlElement.click(HtmlElement.java:1214)
> 	at com.gargoylesoftware.htmlunit.html.HtmlElement.click(HtmlElement.java:1177)
> 	at org.jboss.jsfunit.jsfsession.JSFClientSession.click(JSFClientSession.java:225)
> 	at de.dzbw.ewocore.web.einwohnerauskunft.EinwohneraukunftDialogTestRemote.testEinTrefferShowDetail(EinwohneraukunftDialogTestRemote.java:73)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
> 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> 	at java.lang.reflect.Method.invoke(Method.java:597)
> 	at junit.framework.TestCase.runTest(TestCase.java:168)
> 	at junit.framework.TestCase.runBare(TestCase.java:134)
> 	at org.apache.cactus.internal.AbstractCactusTestCase.runBareServer(AbstractCactusTestCase.java:153)
> 	at org.apache.cactus.internal.server.AbstractWebTestCaller.doTest(AbstractWebTestCaller.java:119)
> 	at org.apache.cactus.internal.server.AbstractWebTestController.handleRequest_aroundBody0(AbstractWebTestController.java:93)
> 	at org.apache.cactus.internal.server.AbstractWebTestController.handleRequest_aroundBody1$advice(AbstractWebTestController.java:224)
> 	at org.apache.cactus.internal.server.AbstractWebTestController.handleRequest(AbstractWebTestController.java)
> 	at org.apache.cactus.server.ServletTestRedirector.doPost_aroundBody2(ServletTestRedirector.java:101)
> 	at org.apache.cactus.server.ServletTestRedirector.doPost_aroundBody3$advice(ServletTestRedirector.java:224)
> 	at org.apache.cactus.server.ServletTestRedirector.doPost(ServletTestRedirector.java)
> 	at org.jboss.jsfunit.framework.JSFUnitServletRedirector.doPost(JSFUnitServletRedirector.java:46)
> 	at org.apache.cactus.server.ServletTestRedirector.doGet_aroundBody0(ServletTestRedirector.java:72)
> 	at org.apache.cactus.server.ServletTestRedirector.doGet_aroundBody1$advice(ServletTestRedirector.java:224)
> 	at org.apache.cactus.server.ServletTestRedirector.doGet(ServletTestRedirector.java)
> 	at org.jboss.jsfunit.framework.JSFUnitServletRedirector.doGet(JSFUnitServletRedirector.java:52)
> 	at javax.servlet.http.HttpServlet.service(HttpServlet.java:690)
> 	at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
> 	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
> 	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
> 	at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl._doFilterImpl(TrinidadFilterImpl.java:271)
> 	at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl.doFilter(TrinidadFilterImpl.java:177)
> 	at org.apache.myfaces.trinidad.webapp.TrinidadFilter.doFilter(TrinidadFilter.java:92)
> 	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
> 	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
> 	at org.jboss.jsfunit.framework.JSFUnitFilter.doFilter(JSFUnitFilter.java:119)
> 	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
> 	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
> 	at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
> 	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
> 	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
> 	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:230)
> 	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
> 	at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:182)
> 	at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:432)
> 	at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:84)
> 	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
> 	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
> 	at org.jboss.web.tomcat.service.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:157)
> 	at org.apache.catalina.authenticator.SingleSignOn.invoke(SingleSignOn.java:393)
> 	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
> 	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:262)
> 	at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
> 	at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
> 	at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:446)
> 	at java.lang.Thread.run(Thread.java:662)
> Caused by: net.sourceforge.htmlunit.corejs.javascript.EcmaError: TypeError: Cannot call method "toLowerCase" of undefined (http://localhost:8090/ewo/adf/jsLibs/DebugCommon1_2_14.js#16795)
> 	at net.sourceforge.htmlunit.corejs.javascript.ScriptRuntime.constructError(ScriptRuntime.java:3772)
> 	at net.sourceforge.htmlunit.corejs.javascript.ScriptRuntime.constructError(ScriptRuntime.java:3750)
> 	at net.sourceforge.htmlunit.corejs.javascript.ScriptRuntime.typeError(ScriptRuntime.java:3778)
> 	at net.sourceforge.htmlunit.corejs.javascript.ScriptRuntime.typeError2(ScriptRuntime.java:3797)
> 	at net.sourceforge.htmlunit.corejs.javascript.ScriptRuntime.undefCallError(ScriptRuntime.java:3816)
> 	at net.sourceforge.htmlunit.corejs.javascript.ScriptRuntime.getPropFunctionAndThisHelper(ScriptRuntime.java:2320)
> 	at net.sourceforge.htmlunit.corejs.javascript.ScriptRuntime.getPropFunctionAndThis(ScriptRuntime.java:2313)
> 	at net.sourceforge.htmlunit.corejs.javascript.Interpreter.interpretLoop(Interpreter.java:1515)
> 	at net.sourceforge.htmlunit.corejs.javascript.Interpreter.interpret(Interpreter.java:845)
> 	at net.sourceforge.htmlunit.corejs.javascript.InterpretedFunction.call(InterpretedFunction.java:164)
> 	at net.sourceforge.htmlunit.corejs.javascript.ContextFactory.doTopCall(ContextFactory.java:429)
> 	at com.gargoylesoftware.htmlunit.javascript.HtmlUnitContextFactory.doTopCall(HtmlUnitContextFactory.java:269)
> 	at net.sourceforge.htmlunit.corejs.javascript.ScriptRuntime.doTopCall(ScriptRuntime.java:3162)
> 	at net.sourceforge.htmlunit.corejs.javascript.InterpretedFunction.call(InterpretedFunction.java:162)
> 	at com.gargoylesoftware.htmlunit.javascript.host.EventHandler.call(EventHandler.java:82)
> 	at com.gargoylesoftware.htmlunit.javascript.JavaScriptEngine.callFunction(JavaScriptEngine.java:559)
> 	at com.gargoylesoftware.htmlunit.javascript.JavaScriptEngine$4.doRun(JavaScriptEngine.java:524)
> 	at com.gargoylesoftware.htmlunit.javascript.JavaScriptEngine$HtmlUnitContextAction.run(JavaScriptEngine.java:595)
> 	... 65 more
> Enclosed exception: 
> net.sourceforge.htmlunit.corejs.javascript.EcmaError: TypeError: Cannot call method "toLowerCase" of undefined (http://localhost:8090/ewo/adf/jsLibs/DebugCommon1_2_14.js#16795)
> 	at net.sourceforge.htmlunit.corejs.javascript.ScriptRuntime.constructError(ScriptRuntime.java:3772)
> 	at net.sourceforge.htmlunit.corejs.javascript.ScriptRuntime.constructError(ScriptRuntime.java:3750)
> 	at net.sourceforge.htmlunit.corejs.javascript.ScriptRuntime.typeError(ScriptRuntime.java:3778)
> 	at net.sourceforge.htmlunit.corejs.javascript.ScriptRuntime.typeError2(ScriptRuntime.java:3797)
> 	at net.sourceforge.htmlunit.corejs.javascript.ScriptRuntime.undefCallError(ScriptRuntime.java:3816)
> 	at net.sourceforge.htmlunit.corejs.javascript.ScriptRuntime.getPropFunctionAndThisHelper(ScriptRuntime.java:2320)
> 	at net.sourceforge.htmlunit.corejs.javascript.ScriptRuntime.getPropFunctionAndThis(ScriptRuntime.java:2313)
> 	at net.sourceforge.htmlunit.corejs.javascript.Interpreter.interpretLoop(Interpreter.java:1515)
> 	at script(http://localhost:8090/ewo/adf/jsLibs/DebugCommon1_2_14.js:16795)
> 	at script(http://localhost:8090/ewo/adf/jsLibs/DebugCommon1_2_14.js:16742)
> 	at script(http://localhost:8090/ewo/adf/jsLibs/DebugCommon1_2_14.js:15821)
> 	at script.submitForm(http://localhost:8090/ewo/adf/jsLibs/DebugCommon1_2_14.js:7816)
> 	at script._submitPartialChange(http://localhost:8090/ewo/adf/jsLibs/DebugCommon1_2_14.js:9836)
> 	at script._submitHideShow(script in http://localhost:8090/ewo/de/dzbw/ewocore/web/einwohnerauskunft/einwohner-suche.jsf from (543, 214) to (543, 406):543)
> 	at script(onclick event for HtmlAnchor[<a onclick="return _submitHideShow('EinwohnerDetails',1,'show','weitereNamen_sd','weitereNamen_sd__xc_')" href="#" id="weitereNamen_sd__xc_" class="OraLink af_showDetail_disclosure-icon-link">] in http://localhost:8090/ewo/de/dzbw/ewocore/web/einwohnerauskunft/einwohner-suche.jsf)
> 	at net.sourceforge.htmlunit.corejs.javascript.Interpreter.interpret(Interpreter.java:845)
> 	at net.sourceforge.htmlunit.corejs.javascript.InterpretedFunction.call(InterpretedFunction.java:164)
> 	at net.sourceforge.htmlunit.corejs.javascript.ContextFactory.doTopCall(ContextFactory.java:429)
> 	at com.gargoylesoftware.htmlunit.javascript.HtmlUnitContextFactory.doTopCall(HtmlUnitContextFactory.java:269)
> 	at net.sourceforge.htmlunit.corejs.javascript.ScriptRuntime.doTopCall(ScriptRuntime.java:3162)
> 	at net.sourceforge.htmlunit.corejs.javascript.InterpretedFunction.call(InterpretedFunction.java:162)
> 	at com.gargoylesoftware.htmlunit.javascript.host.EventHandler.call(EventHandler.java:82)
> 	at com.gargoylesoftware.htmlunit.javascript.JavaScriptEngine.callFunction(JavaScriptEngine.java:559)
> 	at com.gargoylesoftware.htmlunit.javascript.JavaScriptEngine$4.doRun(JavaScriptEngine.java:524)
> 	at com.gargoylesoftware.htmlunit.javascript.JavaScriptEngine$HtmlUnitContextAction.run(JavaScriptEngine.java:595)
> 	at net.sourceforge.htmlunit.corejs.javascript.Context.call(Context.java:537)
> 	at net.sourceforge.htmlunit.corejs.javascript.ContextFactory.call(ContextFactory.java:538)
> 	at com.gargoylesoftware.htmlunit.javascript.JavaScriptEngine.callFunction(JavaScriptEngine.java:531)
> 	at com.gargoylesoftware.htmlunit.html.HtmlPage.executeJavaScriptFunctionIfPossible(HtmlPage.java:906)
> 	at com.gargoylesoftware.htmlunit.javascript.host.EventListenersContainer.executeEventHandler(EventListenersContainer.java:197)
> 	at com.gargoylesoftware.htmlunit.javascript.host.EventListenersContainer.executeBubblingListeners(EventListenersContainer.java:216)
> 	at com.gargoylesoftware.htmlunit.javascript.host.Node.fireEvent(Node.java:686)
> 	at com.gargoylesoftware.htmlunit.html.HtmlElement$2.run(HtmlElement.java:885)
> 	at net.sourceforge.htmlunit.corejs.javascript.Context.call(Context.java:537)
> 	at net.sourceforge.htmlunit.corejs.javascript.ContextFactory.call(ContextFactory.java:538)
> 	at com.gargoylesoftware.htmlunit.html.HtmlElement.fireEvent(HtmlElement.java:890)
> 	at com.gargoylesoftware.htmlunit.html.HtmlElement.click(HtmlElement.java:1259)
> 	at com.gargoylesoftware.htmlunit.html.HtmlElement.click(HtmlElement.java:1214)
> 	at com.gargoylesoftware.htmlunit.html.HtmlElement.click(HtmlElement.java:1177)
> 	at org.jboss.jsfunit.jsfsession.JSFClientSession.click(JSFClientSession.java:225)
> 	at de.dzbw.ewocore.web.einwohnerauskunft.EinwohneraukunftDialogTestRemote.testEinTrefferShowDetail(EinwohneraukunftDialogTestRemote.java:73)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
> 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> 	at java.lang.reflect.Method.invoke(Method.java:597)
> 	at junit.framework.TestCase.runTest(TestCase.java:168)
> 	at junit.framework.TestCase.runBare(TestCase.java:134)
> 	at org.apache.cactus.internal.AbstractCactusTestCase.runBareServer(AbstractCactusTestCase.java:153)
> 	at org.apache.cactus.internal.server.AbstractWebTestCaller.doTest(AbstractWebTestCaller.java:119)
> 	at org.apache.cactus.internal.server.AbstractWebTestController.handleRequest_aroundBody0(AbstractWebTestController.java:93)
> 	at org.apache.cactus.internal.server.AbstractWebTestController.handleRequest_aroundBody1$advice(AbstractWebTestController.java:224)
> 	at org.apache.cactus.internal.server.AbstractWebTestController.handleRequest(AbstractWebTestController.java)
> 	at org.apache.cactus.server.ServletTestRedirector.doPost_aroundBody2(ServletTestRedirector.java:101)
> 	at org.apache.cactus.server.ServletTestRedirector.doPost_aroundBody3$advice(ServletTestRedirector.java:224)
> 	at org.apache.cactus.server.ServletTestRedirector.doPost(ServletTestRedirector.java)
> 	at org.jboss.jsfunit.framework.JSFUnitServletRedirector.doPost(JSFUnitServletRedirector.java:46)
> 	at org.apache.cactus.server.ServletTestRedirector.doGet_aroundBody0(ServletTestRedirector.java:72)
> 	at org.apache.cactus.server.ServletTestRedirector.doGet_aroundBody1$advice(ServletTestRedirector.java:224)
> 	at org.apache.cactus.server.ServletTestRedirector.doGet(ServletTestRedirector.java)
> 	at org.jboss.jsfunit.framework.JSFUnitServletRedirector.doGet(JSFUnitServletRedirector.java:52)
> 	at javax.servlet.http.HttpServlet.service(HttpServlet.java:690)
> 	at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
> 	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
> 	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
> 	at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl._doFilterImpl(TrinidadFilterImpl.java:271)
> 	at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl.doFilter(TrinidadFilterImpl.java:177)
> 	at org.apache.myfaces.trinidad.webapp.TrinidadFilter.doFilter(TrinidadFilter.java:92)
> 	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
> 	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
> 	at org.jboss.jsfunit.framework.JSFUnitFilter.doFilter(JSFUnitFilter.java:119)
> 	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
> 	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
> 	at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
> 	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
> 	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
> 	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:230)
> 	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
> 	at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:182)
> 	at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:432)
> 	at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:84)
> 	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
> 	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
> 	at org.jboss.web.tomcat.service.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:157)
> 	at org.apache.catalina.authenticator.SingleSignOn.invoke(SingleSignOn.java:393)
> 	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
> 	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:262)
> 	at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
> 	at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
> 	at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:446)
> 	at java.lang.Thread.run(Thread.java:662)
> == CALLING JAVASCRIPT ==
> function () {
> 	[native code, arity=0]
> }
> ======= EXCEPTION END ========

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira