On Jan 16, 3:02 pm, Gnanasekaran Sakthivel <[email protected]> wrote: > Greetings Guys. > I am using Rhino as part of my HttpUnit. Pretty much I just started this > testing effort on an already developed and production J2EE project. > > Here is the Exception > > org.mozilla.javascript.EcmaError: TypeError: Cannot find function > createElement. (httpunit#418) > at > org.mozilla.javascript.ScriptRuntime.constructError(ScriptRuntime.java:3229 ) > at > org.mozilla.javascript.ScriptRuntime.constructError(ScriptRuntime.java:3219 ) > at > org.mozilla.javascript.ScriptRuntime.typeError(ScriptRuntime.java:3235) > at > org.mozilla.javascript.ScriptRuntime.typeError1(ScriptRuntime.java:3247) > at > org.mozilla.javascript.ScriptRuntime.notFunctionError(ScriptRuntime.java:33 > 07) > at > org.mozilla.javascript.ScriptRuntime.getPropFunctionAndThis(ScriptRuntime.j > ava:1991) > at > org.mozilla.javascript.Interpreter.interpretLoop(Interpreter.java:2932) > at script.appInfoUserSelections(httpunit:418) > at script(httpunit) > at org.mozilla.javascript.Interpreter.interpret(Interpreter.java:2251) > at > org.mozilla.javascript.InterpretedFunction.call(InterpretedFunction.java:16 1) > at > org.mozilla.javascript.ContextFactory.doTopCall(ContextFactory.java:340) > at > org.mozilla.javascript.ScriptRuntime.doTopCall(ScriptRuntime.java:2758) > at > org.mozilla.javascript.InterpretedFunction.exec(InterpretedFunction.java:17 2) > at org.mozilla.javascript.Context.evaluateString(Context.java:1132) > at > com.meterware.httpunit.javascript.ScriptingEngineImpl.runScript(ScriptingEn > gineImpl.java:92) > at > com.meterware.httpunit.scripting.ScriptableDelegate.runScript(ScriptableDel > egate.java:88) > at > com.meterware.httpunit.parsing.NekoDOMParser.runScript(NekoDOMParser.java:1 > 51) > at > com.meterware.httpunit.parsing.ScriptFilter.getTranslatedScript(ScriptFilte > r.java:150) > at > com.meterware.httpunit.parsing.ScriptFilter.endElement(ScriptFilter.java:13 1) > at > org.cyberneko.html.filters.DefaultFilter.endElement(DefaultFilter.java:249) > at > org.cyberneko.html.filters.NamespaceBinder.endElement(NamespaceBinder.java: > 367) > at > org.cyberneko.html.HTMLTagBalancer.callEndElement(HTMLTagBalancer.java:1015 ) > at > org.cyberneko.html.HTMLTagBalancer.endElement(HTMLTagBalancer.java:888) > at > org.cyberneko.html.HTMLScanner$SpecialScanner.scan(HTMLScanner.java:2831) > at org.cyberneko.html.HTMLScanner.scanDocument(HTMLScanner.java:809) > at > org.cyberneko.html.HTMLConfiguration.parse(HTMLConfiguration.java:478) > at > org.cyberneko.html.HTMLConfiguration.parse(HTMLConfiguration.java:431) > at org.apache.xerces.parsers.XMLParser.parse(Unknown Source) > at org.apache.xerces.parsers.DOMParser.parse(Unknown Source) > at > com.meterware.httpunit.parsing.NekoHTMLParser.parse(NekoHTMLParser.java:48) > at com.meterware.httpunit.HTMLPage.parse(HTMLPage.java:271) > at > com.meterware.httpunit.WebResponse.getReceivedPage(WebResponse.java:1301) > at com.meterware.httpunit.WebResponse.getFrames(WebResponse.java:1285) > at > com.meterware.httpunit.WebResponse.getFrameRequests(WebResponse.java:1024) > at com.meterware.httpunit.FrameHolder.updateFrames(FrameHolder.java:179) > at > com.meterware.httpunit.WebWindow.updateFrameContents(WebWindow.java:315) > at > com.meterware.httpunit.WebClient.updateFrameContents(WebClient.java:526) > at com.meterware.httpunit.WebWindow.updateWindow(WebWindow.java:201) > at > com.meterware.httpunit.WebWindow.getSubframeResponse(WebWindow.java:183) > at com.meterware.httpunit.WebWindow.getResponse(WebWindow.java:158) > at com.meterware.httpunit.WebWindow.sendRequest(WebWindow.java:134) > at > com.meterware.httpunit.WebRequestSource.submitRequest(WebRequestSource.java > :297) > at > com.meterware.httpunit.WebRequestSource.submitRequest(WebRequestSource.java > :253) > at com.meterware.httpunit.WebForm.submitRequest(WebForm.java:127) > at com.meterware.httpunit.WebForm.doFormSubmit(WebForm.java:143) > at > com.meterware.httpunit.SubmitButton.doButtonAction(SubmitButton.java:69) > at com.meterware.httpunit.Button.doOnClickSequence(Button.java:91) > at com.meterware.httpunit.WebForm.submit(WebForm.java:107) > at com.meterware.httpunit.WebForm.submit(WebForm.java:93) > at com.meterware.httpunit.WebForm.submit(WebForm.java:82) > at > test.applicant.ApplicantCreateTest.testApplicantCreate(ApplicantCreateTest. > java:52) > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > at > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:3 9) > at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImp > l.java:25) > at java.lang.reflect.Method.invoke(Method.java:324) > at junit.framework.TestCase.runTest(TestCase.java:154) > at junit.framework.TestCase.runBare(TestCase.java:127) > at junit.framework.TestResult$1.protect(TestResult.java:106) > at junit.framework.TestResult.runProtected(TestResult.java:124) > at junit.framework.TestResult.run(TestResult.java:109) > at junit.framework.TestCase.run(TestCase.java:118) > at junit.framework.TestSuite.runTest(TestSuite.java:208) > at junit.framework.TestSuite.run(TestSuite.java:203) > at > org.eclipse.jdt.internal.junit.runner.junit3.JUnit3TestReference.run(JUnit3 > TestReference.java:128) > at > org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java: > 38) > at > org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestR > unner.java:460) > at > org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestR > unner.java:673) > at > org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner > .java:386) > at > org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunne > r.java:196) > com.meterware.httpunit.ScriptException: Script 'appInfoUserSelections()' > failed: org.mozilla.javascript.EcmaError: TypeError: Cannot find > function createElement. (httpunit#418) > > Our JSPs have pretty good bunch of java scripts. In this particular > case, I have a JSP including another jsp. This included JSP has few > scripts, some of them are triggered on body onload event. > Now, when I get to this page response through HttpUnit Request/Respnses, > I am getting this exception. > > The script extract: > function appInfoUserSelections() > { > ------ > var element = document.*createElement*("option"); > ----- > > } > > This line is throwing this exception. > > I have seen somewhere Rhino supports Javascript Standards... I do not > see this _createElement _method in any of these Javascript (ECMA) > standards. However, this method is introduced into DOM level1. Does > Rhino supports DOM-flavored Javascripts? > > If it supports, then can anyone help me pass through this Exception? > If not, any suggestions is appreciated. Since I am stuck here for about > couple days besides doing some other work. > > Testing/Dev Environment: > Downloaded HttpUnit a month ago, using Eclipse 3.2 IDE, created > TestCases through this; I have the following jars in the testing project > library: junit3.8.1.jar, httpunit.jar, js-1.6R5.jar, > nekhohtml-0.9.5.jar, xercesImpl-2.6.1.jar, xmlParserAPIs-2.6.1.jar. Out > of which junit3.8.1.jar comes with Eclipse testing plugins itself I believe. > > Thanks for your time.
Rhino doesn't implement any of the browser DOM. You might look at HtmlUnit for what you are doing. --N _______________________________________________ dev-tech-js-engine-rhino mailing list [email protected] https://lists.mozilla.org/listinfo/dev-tech-js-engine-rhino
