Hi all,
I'm using HttpUnit to test the rendered HTML, and i'm using the library js.jar
to test the javascript generated by JSF. I've got an error on the generated
javascript of calendar component.
I'm using the latest release of myfaces on Tomcat 5.5.17. I'm using also Java
1.5.0_06
What can i do to solve that problem ?
Thanks and sorry for long email :)
Here is the stack trace:
TypeError: undefined is not a function. (httpunit; line 213)
at
org.mozilla.javascript.NativeGlobal.constructError(NativeGlobal.java:597)
at
org.mozilla.javascript.NativeGlobal.constructError(NativeGlobal.java:557)
at org.mozilla.javascript.NativeGlobal.typeError1(NativeGlobal.java:567)
at org.mozilla.javascript.ScriptRuntime.call(ScriptRuntime.java:1182)
at org.mozilla.javascript.gen.c278.call(httpunit:213)
at org.mozilla.javascript.ScriptRuntime.call(ScriptRuntime.java:1191)
at org.mozilla.javascript.gen.c362.call(httpunit:13)
at org.mozilla.javascript.gen.c362.exec(httpunit)
at org.mozilla.javascript.Context.evaluateReader(Context.java:820)
at org.mozilla.javascript.Context.evaluateString(Context.java:784)
at
com.meterware.httpunit.javascript.JavaScript$JavaScriptEngine.executeScript(JavaScript.java:132)
at
com.meterware.httpunit.scripting.ScriptableDelegate.runScript(ScriptableDelegate.java:65)
at
com.meterware.httpunit.parsing.ScriptFilter.getTranslatedScript(ScriptFilter.java:151)
at
com.meterware.httpunit.parsing.ScriptFilter.endElement(ScriptFilter.java:131)
at org.cyberneko.html.filters.DefaultFilter.endElement(Unknown Source)
at org.cyberneko.html.filters.NamespaceBinder.endElement(Unknown Source)
at org.cyberneko.html.HTMLTagBalancer.callEndElement(Unknown Source)
at org.cyberneko.html.HTMLTagBalancer.endElement(Unknown Source)
at org.cyberneko.html.HTMLScanner$SpecialScanner.scan(Unknown Source)
at org.cyberneko.html.HTMLScanner.scanDocument(Unknown Source)
at org.cyberneko.html.HTMLConfiguration.parse(Unknown Source)
at org.cyberneko.html.HTMLConfiguration.parse(Unknown Source)
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:41)
at com.meterware.httpunit.HTMLPage.parse(HTMLPage.java:255)
at
com.meterware.httpunit.WebResponse.getReceivedPage(WebResponse.java:1109)
at com.meterware.httpunit.WebResponse.getFrames(WebResponse.java:1098)
at
com.meterware.httpunit.WebResponse.getFrameRequests(WebResponse.java:875)
at com.meterware.httpunit.FrameHolder.updateFrames(FrameHolder.java:179)
at
com.meterware.httpunit.WebWindow.updateFrameContents(WebWindow.java:252)
at
com.meterware.httpunit.WebClient.updateFrameContents(WebClient.java:485)
at com.meterware.httpunit.WebWindow.updateWindow(WebWindow.java:146)
at
com.meterware.httpunit.WebWindow.getSubframeResponse(WebWindow.java:130)
at com.meterware.httpunit.WebWindow.getResponse(WebWindow.java:121)
at com.meterware.httpunit.WebClient.getResponse(WebClient.java:113)
at it.ibc.jstore.web.test.TestBack.testBack(TestBack.java:30)
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:585)
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.RemoteTestRunner.runTests(RemoteTestRunner.java:478)
at
org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:344)
at
org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:196)
**********************************************************
**********************************************************
Here is the JSP Page:
<%@ taglib uri="http://java.sun.com/jsf/html" prefix="h" %>
<%@ taglib uri="http://java.sun.com/jsf/core" prefix="f" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<%@ taglib uri="http://myfaces.apache.org/tomahawk" prefix="t" %>
<f:subview id="calendario">
<t:inputCalendar renderAsPopup="true" readonly="true"
popupButtonStyleClass="popup_button">
</t:inputCalendar>
</f:subview>
**************************************************
Here is the rendered HTML:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<link rel="stylesheet"
href="/JStoreWeb/faces/myFacesExtensionResource/org.apache.myfaces.renderkit.html.util.MyFacesResourceLoader/11531247/calendar.HtmlCalendarRenderer/WH/theme.css;jsessionid=E287F503592FAB6D51578A4DCEED1F66"
type="text/css" />
<link rel="stylesheet"
href="/JStoreWeb/faces/myFacesExtensionResource/org.apache.myfaces.renderkit.html.util.MyFacesResourceLoader/11531247/calendar.HtmlCalendarRenderer/DB/theme.css;jsessionid=E287F503592FAB6D51578A4DCEED1F66"
type="text/css" />
<script type="text/javascript"
src="/JStoreWeb/faces/myFacesExtensionResource/org.apache.myfaces.renderkit.html.util.MyFacesResourceLoader/11531247/prototype.PrototypeResourceLoader/prototype.js;jsessionid=E287F503592FAB6D51578A4DCEED1F66"><!--
//--></script>
<script type="text/javascript"
src="/JStoreWeb/faces/myFacesExtensionResource/org.apache.myfaces.renderkit.html.util.MyFacesResourceLoader/11531247/calendar.HtmlCalendarRenderer/date.js;jsessionid=E287F503592FAB6D51578A4DCEED1F66"><!--
//--></script>
<script type="text/javascript"
src="/JStoreWeb/faces/myFacesExtensionResource/org.apache.myfaces.renderkit.html.util.MyFacesResourceLoader/11531247/calendar.HtmlCalendarRenderer/popcalendar.js;jsessionid=E287F503592FAB6D51578A4DCEED1F66"><!--
//--></script>
<script type="text/javascript"
src="/JStoreWeb/faces/myFacesExtensionResource/org.apache.myfaces.renderkit.html.util.MyFacesResourceLoader/11531247/inputTextHelp.HtmlTextHelpRenderer/inputTextHelp.js;jsessionid=E287F503592FAB6D51578A4DCEED1F66"><!--
//--></script>
<script type="text/javascript"
src="/JStoreWeb/faces/myFacesExtensionResource/org.apache.myfaces.renderkit.html.util.MyFacesResourceLoader/11531247/tree2.HtmlTreeRenderer/javascript/tree.js;jsessionid=E287F503592FAB6D51578A4DCEED1F66"><!--
//--></script>
<script type="text/javascript"
src="/JStoreWeb/faces/myFacesExtensionResource/org.apache.myfaces.renderkit.html.util.MyFacesResourceLoader/11531247/tree2.HtmlTreeRenderer/javascript/cookielib.js;jsessionid=E287F503592FAB6D51578A4DCEED1F66"><!--
//--></script>
<title>My JSF 'Main.jsp' starting page</title>
<link rel="stylesheet" type="text/css" href="../css/basic.css" />
<link rel="stylesheet" type="text/css" href="../css/common.css" />
</head>
<body>
<!-- Pagina principale da cui vengono importati tutti gli altri
componenti -->
<table border="1" >
<tr>
<td>
<img
src="../images/ibcIcon.jpg;jsessionid=E287F503592FAB6D51578A4DCEED1F66" />
</td>
<td>
<form
id="pulsantiera:pulsantieraform" name="pulsantiera:pulsantieraform"
method="post"
action="/JStoreWeb/pages/principale/Main.jsf;jsessionid=E287F503592FAB6D51578A4DCEED1F66"
enctype="application/x-www-form-urlencoded">
<table id="pulsantiera:pulsantieraform:_idJsp1"><tr>
<td><input id="pulsantiera:pulsantieraform:_idJsp1:0:_idJsp2"
name="pulsantiera:pulsantieraform:_idJsp1:0:_idJsp2" type="submit"
value="Anagrafiche" onclick="clear_pulsantiera_3Apulsantieraform();" /></td>
<td><input id="pulsantiera:pulsantieraform:_idJsp1:1:_idJsp2"
name="pulsantiera:pulsantieraform:_idJsp1:1:_idJsp2" type="submit"
value="Processi" onclick="clear_pulsantiera_3Apulsantieraform();" /></td>
<td><input id="pulsantiera:pulsantieraform:_idJsp1:2:_idJsp2"
name="pulsantiera:pulsantieraform:_idJsp1:2:_idJsp2" type="submit"
value="Colors" onclick="clear_pulsantiera_3Apulsantieraform();" /></td>
<td><input id="pulsantiera:pulsantieraform:_idJsp1:3:_idJsp2"
name="pulsantiera:pulsantieraform:_idJsp1:3:_idJsp2" type="submit"
value="Sports" onclick="clear_pulsantiera_3Apulsantieraform();" /></td>
<td><input id="pulsantiera:pulsantieraform:_idJsp1:4:_idJsp2"
name="pulsantiera:pulsantieraform:_idJsp1:4:_idJsp2" type="submit" value="Food"
onclick="clear_pulsantiera_3Apulsantieraform();" /></td>
<td><input id="pulsantiera:pulsantieraform:_idJsp1:5:_idJsp2"
name="pulsantiera:pulsantieraform:_idJsp1:5:_idJsp2" type="submit" value="ModA"
onclick="clear_pulsantiera_3Apulsantieraform();" /></td>
<td><input id="pulsantiera:pulsantieraform:_idJsp1:6:_idJsp2"
name="pulsantiera:pulsantieraform:_idJsp1:6:_idJsp2" type="submit" value="ModB"
onclick="clear_pulsantiera_3Apulsantieraform();" /></td>
<td><input id="pulsantiera:pulsantieraform:_idJsp1:7:_idJsp2"
name="pulsantiera:pulsantieraform:_idJsp1:7:_idJsp2" type="submit" value="ModC"
onclick="clear_pulsantiera_3Apulsantieraform();" /></td>
<td><input id="pulsantiera:pulsantieraform:_idJsp1:8:_idJsp2"
name="pulsantiera:pulsantieraform:_idJsp1:8:_idJsp2" type="submit" value="ModD"
onclick="clear_pulsantiera_3Apulsantieraform();" /></td>
<td><input id="pulsantiera:pulsantieraform:_idJsp1:9:_idJsp2"
name="pulsantiera:pulsantieraform:_idJsp1:9:_idJsp2" type="submit" value="ModE"
onclick="clear_pulsantiera_3Apulsantieraform();" /></td></tr>
</table><input type="hidden" name="pulsantiera:pulsantieraform_SUBMIT"
value="1" /><input type="hidden" name="jsf_sequence" value="1" /><input
type="hidden" name="pulsantiera:pulsantieraform:_link_hidden_" /><script
type="text/javascript"><!--
function clear_pulsantiera_3Apulsantieraform() {
var f = document.forms['pulsantiera:pulsantieraform'];
f.elements['pulsantiera:pulsantieraform:_link_hidden_'].value='';
f.target='';
}
clear_pulsantiera_3Apulsantieraform();
//--></script></form>
</td>
<td>
<input id="calendario:_idJsp3"
name="calendario:_idJsp3" type="text" readonly="readonly"
onfocus="selectText('null', 'calendario:_idJsp3')" onclick="selectText('null',
'calendario:_idJsp3')" value="" /><span
id="calendario:_idJsp3Span"></span><script type="text/javascript"><!--
var calendario_3A_5FidJsp3CalendarVar=new org_apache_myfaces_PopupCalendar();
calendario_3A_5FidJsp3CalendarVar.initData.imgDir =
"/JStoreWeb/faces/myFacesExtensionResource/org.apache.myfaces.renderkit.html.util.MyFacesResourceLoader/11531247/calendar.HtmlCalendarRenderer/DB/";
calendario_3A_5FidJsp3CalendarVar.initData.monthName = new
Array("gennaio","febbraio","marzo","aprile","maggio","giugno","luglio","agosto","settembre","ottobre","novembre","dicembre");
calendario_3A_5FidJsp3CalendarVar.initData.dayName = new
Array("lun","mar","mer","gio","ven","sab","dom");
calendario_3A_5FidJsp3CalendarVar.initData.startAt = 1;
calendario_3A_5FidJsp3CalendarVar.dateFormatSymbols.weekdays = new
Array("domenica","luned\u00EC","marted\u00EC","mercoled\u00EC","gioved\u00EC","venerd\u00EC","sabato");
calendario_3A_5FidJsp3CalendarVar.dateFormatSymbols.shortWeekdays = new
Array("dom","lun","mar","mer","gio","ven","sab");
calendario_3A_5FidJsp3CalendarVar.dateFormatSymbols.shortMonths = new
Array("gen","feb","mar","apr","mag","giu","lug","ago","set","ott","nov","dic");
calendario_3A_5FidJsp3CalendarVar.dateFormatSymbols.months = new
Array("gennaio","febbraio","marzo","aprile","maggio","giugno","luglio","agosto","settembre","ottobre","novembre","dicembre");
calendario_3A_5FidJsp3CalendarVar.dateFormatSymbols.eras = new Array("BC","dopo
Cristo");
calendario_3A_5FidJsp3CalendarVar.dateFormatSymbols.ampms = new
Array("AM","PM");
calendario_3A_5FidJsp3CalendarVar.initData.popupLeft = false;
calendario_3A_5FidJsp3CalendarVar.init(document.getElementById('calendario:_idJsp3Span'));
if (!document.layers) {
document.write('<input type="button"
onclick="calendario_3A_5FidJsp3CalendarVar._popUpCalendar(this,document.getElementById(\'calendario:_idJsp3\'),\'dd/MM/yy\')"
value="..." class="popup_button" />');
}
//--></script>
</td>
</tr>
</table>
<table>
<tr>
<td valign="top" align="left">
<form id="subformtree:formtree"
name="subformtree:formtree" method="post"
action="/JStoreWeb/pages/principale/Main.jsf;jsessionid=E287F503592FAB6D51578A4DCEED1F66"
enctype="application/x-www-form-urlencoded"><span
id="subformtree:formtree:tree"></span><input type="hidden"
name="subformtree:formtree_SUBMIT" value="1" /><input type="hidden"
name="jsf_sequence" value="1" /></form>
</td>
<td valign="top" align="left">
<form id="body:bodyform"
name="body:bodyform" method="post"
action="/JStoreWeb/pages/principale/Main.jsf;jsessionid=E287F503592FAB6D51578A4DCEED1F66"
enctype="application/x-www-form-urlencoded"><table
id="body:bodyform:bodypanel" border="0"><tbody></tbody></table><input
type="hidden" name="body:bodyform_SUBMIT" value="1" /><input type="hidden"
name="jsf_sequence" value="1" /></form>
</td>
</tr>
</table>
<!-- MYFACES JAVASCRIPT -->
</body>
</html>
________________________________________________________________________________
Con Full Casa proteggi abitazione e famiglia da 50 cent al giorno, e 6 mesi in
piu' li offre RAS.
http://click.libero.it/ras