You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@wicket.apache.org by "Richard W. Adams" <RW...@UP.COM> on 2012/05/10 22:33:33 UTC

Ajax Error in MSIE 8

I'm getting Ajax errors that seems to occur only in Internet Explorer 8 
(same code works fine in IE9 & Firefox). I'm in a corporate environment 
where IE8 support is a requirement, so wanted to see if anyone has seen 
this before & knows of a fix. The Wicket Ajax trace is below; the parser 
says it can't find the root element in the Ajax response. We've seen this 
same error on various pages, though it doesn't ALWAYS occur:


INFO: focus removed from wicket-generated-id-18
INFO: 
INFO: Initiating Ajax GET request on 
?wicket:interface=:6:form:main-box:mp-form:primary-track-box:primary-icon::IBehaviorListener:1:&random=0.9122150377237917
INFO: Invoking pre-call handler(s)...
INFO: Received ajax response (4130 characters)
INFO: 
<?xml version="1.0" encoding="UTF-8"?><ajax-response><component 
id="successFeedback91" ><![CDATA[<div id="successFeedback91" 
style="display:none"></div>]]></component><component id="infoFeedback93" 
><![CDATA[<div id="infoFeedback93" 
style="display:none"></div>]]></component><component id="errorFeedback94" 
><![CDATA[<div id="errorFeedback94" 
style="display:none"></div>]]></component><component id="warnFeedback92" 
><![CDATA[<div id="warnFeedback92" 
style="display:none"></div>]]></component><header-contribution 
encoding="wicket1" ><![CDATA[<head xmlns:wicket="http://wicket.apache.org
"><script type="text/javascript" 
src="resources/com.uprr.enm.web.mp.behavior.MilepostReference/milepostreference.js"></script> 

<script type="text/javascript" 
src="resources/org.apache.wicket.markup.html.WicketEventReference/wicket-event.js"></script> 

<script type="text/javascript" 
src="resources/org.apache.wicket.ajax.WicketAjaxReference/wicket-ajax.js"></script> 

<script type="text/javascript" 
src="resources/org.apache.wicket.ajax.AbstractDefaultAjaxBehavior/wicket-ajax-debug.js"></script> 

<script type="text/javascript" 
id="wicket-ajax-debug-enable"><!--/*--><![CDATA[/*><!--*/
wicketAjaxDebugEnable=true;
/*-->]^]^>*/</script>

</head>]]></header-contribution><component id="primaryMpOther9c" 
><![CDATA[<input class="numeric ricInputText" value="505.000" 
name="main-box:mp-form:primary-track-box:primaryMpOther" 
id="primaryMpOther9c" maxlength="9" size="11" type="text" onblur="var 
wcall=wicketAjaxPost('?wicket:interface=:6:form:main-box:mp-form:primary-track-box:primaryMpOther::IBehaviorListener:4:-1', 
wicketSerialize(Wicket.$('primaryMpOther9c')),function() { 
}.bind(this),function() { }.bind(this), function() {return 
Wicket.$('primaryMpOther9c') != null;}.bind(this));" xmlns:wicket="
http://wicket.apache.org"/>]]></component><header-contribution 
encoding="wicket1" ><![CDATA[<head xmlns:wicket="http://wicket.apache.org
"><script type="text/javascript" 
id="attachChoice"><!--/*--><![CDATA[/*><!--*/
function attachChoiceHandlers(markupId, callbackScript) {
 var inputNodes = wicketGet(markupId).getElementsByTagName('input');
 for (var i = 0 ; i < inputNodes.length ; i ++) {
 var inputNode = inputNodes[i]^;
 if (!inputNode.type) continue;
 if 
(!(inputNode.className.indexOf('wicket-'+markupId)>=0)&&!(inputNode.id.indexOf(markupId+'-')>=0)) 
continue;
 var inputType = inputNode.type.toLowerCase();
 if (inputType == 'checkbox' || inputType == 'radio') {
 Wicket.Event.add(inputNode, 'click', callbackScript);
 }
 }
}

/*-->]^]^>*/</script>

</head>]]></header-contribution><component id="primaryMpSelection8f" 
><![CDATA[<span id="primaryMpSelection8f" xmlns:wicket="
http://wicket.apache.org"><input 
name="main-box:mp-form:primary-track-box:primaryMpSelection" type="radio" 
value="0" id="primaryMpSelection8f-0"/><label 
for="primaryMpSelection8f-0">Start (503.940)</label><br />
<input name="main-box:mp-form:primary-track-box:primaryMpSelection" 
type="radio" value="1" id="primaryMpSelection8f-1"/><label 
for="primaryMpSelection8f-1">End (538.200)</label><br />
<input name="main-box:mp-form:primary-track-box:primaryMpSelection" 
type="radio" checked="checked" value="2" 
id="primaryMpSelection8f-2"/><label 
for="primaryMpSelection8f-2">Other</label><br />
</span>]]></component><evaluate><![CDATA[$('#successFeedback91').trigger('ricolaFeedbackDismissed');]]></evaluate><evaluate><![CDATA[$('#infoFeedback93').trigger('ricolaFeedbackDismissed');]]></evaluate><evaluate><![CDATA[$('#errorFeedback94').trigger('ricolaFeedbackDismissed');]]></evaluate><evaluate><![CDATA[$('#warnFeedback92').trigger('ricolaFeedbackDismissed');]]></evaluate><evaluate><![CDATA[attachChoiceHandlers('primaryMpSelection8f', 
function() {var 
wcall=wicketAjaxPost('?wicket:interface=:6:form:main-box:mp-form:primary-track-box:primaryMpSelection::IActivePageBehaviorListener:0:-1&wicket:ignoreIfNotActive=true', 
wicketSerializeForm(document.getElementById('primaryMpSelection8f',false)),function() 
{ }.bind(this),function() { }.bind(this), function() {return 
Wicket.$('primaryMpSelection8f') != 
null;}.bind(this));});]]></evaluate></ajax-response>
ERROR: Wicket.Ajax.Call.failure: Error while parsing response: Could not 
find root <ajax-response> element
INFO: Invoking post-call handler(s)...
INFO: Invoking failure handler(s)...


**

This email and any attachments may contain information that is confidential and/or privileged for the sole use of the intended recipient.  Any use, review, disclosure, copying, distribution or reliance by others, and any forwarding of this email or its contents, without the express permission of the sender is strictly prohibited by law.  If you are not the intended recipient, please contact the sender immediately, delete the e-mail and destroy all copies.
**

Re: Ajax Error in MSIE 8

Posted by "Richard W. Adams" <RW...@UP.COM>.
We finally dug deep enough to find the root cause of the problem. We have 
a corporate framework that adds a layer to Wicket for company-specific 
functionality. I discovered this morning that my Maven POM declared 
dependencies for both Wicket AND our corporate layer. This caused my app 
to use a different version of Wicket than our corporate layer, which 
caused inconsistencies. The solution was to remove the Wicket dependency 
from my Maven POM, thus inheriting the Wicket version our corporate layer 
uses. And (surprise!) the problems went away.

So, not Wicket's fault. Thought you'd like to know. Thanks for the help & 
insight.

(Slinks away with red face...)




From:   "Richard W. Adams" <RW...@UP.COM>
To:     users@wicket.apache.org
Date:   05/11/2012 11:46 AM
Subject:        Re: Ajax Error in MSIE 8



I just found a key difference between the IE8 & IE9 behaviors in this 
code:

   f (typeof(window.XMLHttpRequest) != "undefined" && typeof(DOMParser) != 

"undefined") { 
        var parser = new DOMParser();
        xmldoc = parser.parseFromString(responseAsText, "text/xml"); 
   } else if (window.ActiveXObject) {
        xmldoc = t.responseXML;
   }

On our desktops, IE9 always goes into the first part of the if block, but 
IE8 always goes into the second part (after the elseif). Based on Google 
checks, it appears this might be due to browser security settings. Do you 
know if any special settings are required to make IE8 work correctly?



From:   Martin Grigorov <mg...@apache.org>
To:     users@wicket.apache.org
Date:   05/11/2012 09:56 AM
Subject:        Re: Ajax Error in MSIE 8



I'm not sure why this fails for you. And why it fails only from time to
time.
But looking at this Javascript code I think it can be improved.
File a ticket with a failing test case if possible.

On Fri, May 11, 2012 at 5:46 PM, Richard W. Adams <RW...@up.com> wrote:

> We dug into wicket-ajax.js using this version of MSIE 8:
>
>
>
> We discovered the problem occurs in this code:
>
>
>
> *Wicket.Ajax.Request.prototype = {*
>
> *....*
> *        // Method that processes the request states*
> *        stateChangeCallback: function() {        *
>
> *.....*
>
> *                        if (status == 200 || status == "") { // as
> stupid as it seems, IE7 sets status to "" on ok*
> *                                // response came without error*
> *                                var responseAsText = t.responseText;*
> *....*
>
> *                                // parse the response if the callback
> needs a DOM tree*
> *                                if (this.parseResponse == true) {*
> *                                                var xmldoc;
>    *
> *                                                if
> (typeof(window.XMLHttpRequest) != "undefined" && typeof(DOMParser) !=
> "undefined") {
>                    var parser = new DOMParser();*
> *                                                        xmldoc =
> parser.parseFromString(responseAsText, "text/xml");
>                        *
> *                                                } else if
> (window.ActiveXObject) {*
> *                                                        xmldoc =
> t.responseXML;*
> *                                                }*
> *                                                // invoke the loaded
> callback with an xml document*
> *
> this.loadedCallback(xmldoc); *
> *                                        } else {*
> *                                                // invoke the loaded
> callback with raw string*
> *
> this.loadedCallback(responseAsText);*
> *                                        }                        *
> *                                        if (this.suppressDone == 
false)*
> *                                                this.done();*
> *                                }*
>
>
> The offending code is:
>
> *   xmldoc = t.responseXML;*
>
> Looking at the contents of t (a transport object), 
the*transport.responseText
> * field is set to the expected xml message, but* 
transport.responseXML*is empty and has no XML message.  Unfortunately, we 
could not see where
> transport.responseXML variable should have been set.
>
> Does IE8 have known ajax bugs? Or is there a configuration setting we
> should be using to make this work? Or something else? We're willing to 
dig
> into the script more, but don't know where to look, as the Ajax 
processing
> is asynchronous & we can't simply step through the code execution.
>
>
>
>
>
>
> From:        Martin Grigorov <mg...@apache.org>
> To:        users@wicket.apache.org
> Date:        05/11/2012 07:26 AM
>
> Subject:        Re: Ajax Error in MSIE 8
> ------------------------------
>
>
>
> Don't see anything suspicious.
> You'll have to debug what happens in wicket-ajax.js ...
>
> On Fri, May 11, 2012 at 3:07 PM, Richard W. Adams <RW...@up.com> 
wrote:
> > Sorry. Should have provided more details:
> >
> > Wicket Version: 1.4.20
> >
> > Operating System: Windows XP
> >
> > Scenario: Users clicks an icon with an Ajax onclick event. In the 
event
> > handler on the server, we copy the value of one String variable to
> another
> > String variable in the model, then we call 
AjaxRequestTarget.addComponent
> > twice, to update (1) the receiving text field, and (2) an associated
> radio
> > button.
> > __________________________________________________
> >
> > "There are three kinds of lies: lies, damn lies, and statistics."
> > Benjamin Disraeli
> >
> > "Then there was the man who drowned crossing a stream with an average
> > depth of six inches."
> > W. I. E. Gates
> >
> >
> >
> >
> > From:   Martin Grigorov <mg...@apache.org>
> > To:     users@wicket.apache.org
> > Date:   05/11/2012 02:26 AM
> > Subject:        Re: Ajax Error in MSIE 8
> >
> >
> >
> > Hi,
> >
> > Which version of Wicket ?
> > In what conditions this happen ? I.e. do you click on a link or do you
> > submit a form or ...
> >
> > On Thu, May 10, 2012 at 11:33 PM, Richard W. Adams <RW...@up.com>
> > wrote:
> >> I'm getting Ajax errors that seems to occur only in Internet Explorer 

8
> >> (same code works fine in IE9 & Firefox). I'm in a corporate 
environment
> >> where IE8 support is a requirement, so wanted to see if anyone has 
seen
> >> this before & knows of a fix. The Wicket Ajax trace is below; the 
parser
> >> says it can't find the root element in the Ajax response. We've seen
> > this
> >> same error on various pages, though it doesn't ALWAYS occur:
> >>
> >>
> >> INFO: focus removed from wicket-generated-id-18
> >> INFO:
> >> INFO: Initiating Ajax GET request on
> >>
> >
> 
?wicket:interface=:6:form:main-box:mp-form:primary-track-box:primary-icon::IBehaviorListener:1:&random=0.9122150377237917
> >> INFO: Invoking pre-call handler(s)...
> >> INFO: Received ajax response (4130 characters)
> >> INFO:
> >> <?xml version="1.0" encoding="UTF-8"?><ajax-response><component
> >> id="successFeedback91" ><![CDATA[<div id="successFeedback91"
> >> style="display:none"></div>]]></component><component 
id="infoFeedback93"
> >>><![CDATA[<div id="infoFeedback93"
> >> style="display:none"></div>]]></component><component
> > id="errorFeedback94"
> >>><![CDATA[<div id="errorFeedback94"
> >> style="display:none"></div>]]></component><component 
id="warnFeedback92"
> >>><![CDATA[<div id="warnFeedback92"
> >> style="display:none"></div>]]></component><header-contribution
> >> encoding="wicket1" ><![CDATA[<head xmlns:wicket="
> > http://wicket.apache.org
> >> "><script type="text/javascript"
> >>
> >
> 
src="resources/com.uprr.enm.web.mp.behavior.MilepostReference/milepostreference.js"></script>
> >>
> >> <script type="text/javascript"
> >>
> >
> 
src="resources/org.apache.wicket.markup.html.WicketEventReference/wicket-event.js"></script>
> >>
> >> <script type="text/javascript"
> >>
> >
> 
src="resources/org.apache.wicket.ajax.WicketAjaxReference/wicket-ajax.js"></script>
> >>
> >> <script type="text/javascript"
> >>
> >
> 
src="resources/org.apache.wicket.ajax.AbstractDefaultAjaxBehavior/wicket-ajax-debug.js"></script>
> >>
> >> <script type="text/javascript"
> >> id="wicket-ajax-debug-enable"><!--/*--><![CDATA[/*><!--*/ >>
> wicketAjaxDebugEnable=true; >> /*-->]^]^>*/</script>
> >>
> >> </head>]]></header-contribution><component id="primaryMpOther9c"
> >>><![CDATA[<input class="numeric ricInputText" value="505.000"
> >> name="main-box:mp-form:primary-track-box:primaryMpOther"
> >> id="primaryMpOther9c" maxlength="9" size="11" type="text" onblur="var
> >>
> >
> 
wcall=wicketAjaxPost('?wicket:interface=:6:form:main-box:mp-form:primary-track-box:primaryMpOther::IBehaviorListener:4:-1',
> >> wicketSerialize(Wicket.$('primaryMpOther9c')),function() {
> >> }.bind(this),function() { }.bind(this), function() {return
> >> Wicket.$('primaryMpOther9c') != null;}.bind(this));" xmlns:wicket="
> >> http://wicket.apache.org"/>]]></component><header-contribution
> >> encoding="wicket1" ><![CDATA[<head xmlns:wicket="
> > http://wicket.apache.org
> >> "><script type="text/javascript"
> >> id="attachChoice"><!--/*--><![CDATA[/*><!--*/ >> function
> attachChoiceHandlers(markupId, callbackScript) { >>  var inputNodes =
> wicketGet(markupId).getElementsByTagName('input'); >>  for (var i = 0 ; 
i <
> inputNodes.length ; i ++) { >>  var inputNode = inputNodes[i]^; >>  if
> (!inputNode.type) continue; >>  if >> >
> 
(!(inputNode.className.indexOf('wicket-'+markupId)>=0)&&!(inputNode.id.indexOf(markupId+'-')>=0))
> >> continue; >>  var inputType = inputNode.type.toLowerCase(); >>  if
> (inputType == 'checkbox' || inputType == 'radio') { >>
>  Wicket.Event.add(inputNode, 'click', callbackScript); >>  } >>  } >> } 
>>
> >> /*-->]^]^>*/</script>
> >>
> >> </head>]]></header-contribution><component id="primaryMpSelection8f"
> >>><![CDATA[<span id="primaryMpSelection8f" xmlns:wicket="
> >> http://wicket.apache.org"><input
> >> name="main-box:mp-form:primary-track-box:primaryMpSelection"
> > type="radio"
> >> value="0" id="primaryMpSelection8f-0"/><label
> >> for="primaryMpSelection8f-0">Start (503.940)</label><br />
> >> <input name="main-box:mp-form:primary-track-box:primaryMpSelection"
> >> type="radio" value="1" id="primaryMpSelection8f-1"/><label
> >> for="primaryMpSelection8f-1">End (538.200)</label><br />
> >> <input name="main-box:mp-form:primary-track-box:primaryMpSelection"
> >> type="radio" checked="checked" value="2"
> >> id="primaryMpSelection8f-2"/><label
> >> for="primaryMpSelection8f-2">Other</label><br />
> >>
> >
> 
</span>]]></component><evaluate><![CDATA[$('#successFeedback91').trigger('ricolaFeedbackDismissed');]]></evaluate><evaluate><![CDATA[$('#infoFeedback93').trigger('ricolaFeedbackDismissed');]]></evaluate><evaluate><![CDATA[$('#errorFeedback94').trigger('ricolaFeedbackDismissed');]]></evaluate><evaluate><![CDATA[$('#warnFeedback92').trigger('ricolaFeedbackDismissed');]]></evaluate><evaluate><![CDATA[attachChoiceHandlers('primaryMpSelection8f',
> >> function() {var
> >>
> >
> 
wcall=wicketAjaxPost('?wicket:interface=:6:form:main-box:mp-form:primary-track-box:primaryMpSelection::IActivePageBehaviorListener:0:-1&wicket:ignoreIfNotActive=true',
> >>
> >
> 
wicketSerializeForm(document.getElementById('primaryMpSelection8f',false)),function()
> >> { }.bind(this),function() { }.bind(this), function() {return
> >> Wicket.$('primaryMpSelection8f') !=
> >> null;}.bind(this));});]]></evaluate></ajax-response>
> >> ERROR: Wicket.Ajax.Call.failure: Error while parsing response: Could 
not
> >> find root <ajax-response> element
> >> INFO: Invoking post-call handler(s)...
> >> INFO: Invoking failure handler(s)...
> >>
> >>
> >> **
> >>
> >> This email and any attachments may contain information that is
> > confidential and/or privileged for the sole use of the intended
> recipient.
> >  Any use, review, disclosure, copying, distribution or reliance by
> others,
> > and any forwarding of this email or its contents, without the express
> > permission of the sender is strictly prohibited by law.  If you are 
not
> > the intended recipient, please contact the sender immediately, delete 
the
> > e-mail and destroy all copies.
> >> **
> >
> >
> >
> > --
> > Martin Grigorov
> > jWeekend
> > Training, Consulting, Development
> > http://jWeekend.com <http://jweekend.com/>
> >
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: users-unsubscribe@wicket.apache.org
> > For additional commands, e-mail: users-help@wicket.apache.org
> >
> >
> >
> >
> > **
> >
> > This email and any attachments may contain information that is
> confidential and/or privileged for the sole use of the intended 
recipient.
>  Any use, review, disclosure, copying, distribution or reliance by 
others,
> and any forwarding of this email or its contents, without the express
> permission of the sender is strictly prohibited by law.  If you are not 
the
> intended recipient, please contact the sender immediately, delete the
> e-mail and destroy all copies.
> > **
>
>
>
> --
> Martin Grigorov
> jWeekend
> Training, Consulting, Development
> http://jWeekend.com <http://jweekend.com/>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe@wicket.apache.org
> For additional commands, e-mail: users-help@wicket.apache.org
>
>
>
> **
>
> This email and any attachments may contain information that is
> confidential and/or privileged for the sole use of the intended 
recipient.
> Any use, review, disclosure, copying, distribution or reliance by 
others,
> and any forwarding of this email or its contents, without the express
> permission of the sender is strictly prohibited by law. If you are not 
the
> intended recipient, please contact the sender immediately, delete the
> e-mail and destroy all copies.
> **
>



-- 
Martin Grigorov
jWeekend
Training, Consulting, Development
http://jWeekend.com <http://jweekend.com/>



**

This email and any attachments may contain information that is 
confidential and/or privileged for the sole use of the intended recipient. 
 Any use, review, disclosure, copying, distribution or reliance by others, 
and any forwarding of this email or its contents, without the express 
permission of the sender is strictly prohibited by law.  If you are not 
the intended recipient, please contact the sender immediately, delete the 
e-mail and destroy all copies.
**



**

This email and any attachments may contain information that is confidential and/or privileged for the sole use of the intended recipient.  Any use, review, disclosure, copying, distribution or reliance by others, and any forwarding of this email or its contents, without the express permission of the sender is strictly prohibited by law.  If you are not the intended recipient, please contact the sender immediately, delete the e-mail and destroy all copies.
**

Re: Ajax Error in MSIE 8

Posted by Martin Grigorov <mg...@apache.org>.
On Fri, May 11, 2012 at 7:46 PM, Richard W. Adams <RW...@up.com> wrote:
> I just found a key difference between the IE8 & IE9 behaviors in this
> code:
>
>   f (typeof(window.XMLHttpRequest) != "undefined" && typeof(DOMParser) !=
> "undefined") {
>        var parser = new DOMParser();
>        xmldoc = parser.parseFromString(responseAsText, "text/xml");
>   } else if (window.ActiveXObject) {
>        xmldoc = t.responseXML;
>   }
>
> On our desktops, IE9 always goes into the first part of the if block, but
> IE8 always goes into the second part (after the elseif). Based on Google
> checks, it appears this might be due to browser security settings. Do you
> know if any special settings are required to make IE8 work correctly?
>

The reason is that IE9 is the first that has native window.XMLHttpRequest.
Before that it was an ActiveX object.

>
>
> From:   Martin Grigorov <mg...@apache.org>
> To:     users@wicket.apache.org
> Date:   05/11/2012 09:56 AM
> Subject:        Re: Ajax Error in MSIE 8
>
>
>
> I'm not sure why this fails for you. And why it fails only from time to
> time.
> But looking at this Javascript code I think it can be improved.
> File a ticket with a failing test case if possible.
>
> On Fri, May 11, 2012 at 5:46 PM, Richard W. Adams <RW...@up.com> wrote:
>
>> We dug into wicket-ajax.js using this version of MSIE 8:
>>
>>
>>
>> We discovered the problem occurs in this code:
>>
>>
>>
>> *Wicket.Ajax.Request.prototype = {*
>>
>> *....*
>> *        // Method that processes the request states*
>> *        stateChangeCallback: function() {        *
>>
>> *.....*
>>
>> *                        if (status == 200 || status == "") { // as
>> stupid as it seems, IE7 sets status to "" on ok*
>> *                                // response came without error*
>> *                                var responseAsText = t.responseText;*
>> *....*
>>
>> *                                // parse the response if the callback
>> needs a DOM tree*
>> *                                if (this.parseResponse == true) {*
>> *                                                var xmldoc;
>>    *
>> *                                                if
>> (typeof(window.XMLHttpRequest) != "undefined" && typeof(DOMParser) !=
>> "undefined") {
>>                    var parser = new DOMParser();*
>> *                                                        xmldoc =
>> parser.parseFromString(responseAsText, "text/xml");
>>                        *
>> *                                                } else if
>> (window.ActiveXObject) {*
>> *                                                        xmldoc =
>> t.responseXML;*
>> *                                                }*
>> *                                                // invoke the loaded
>> callback with an xml document*
>> *
>> this.loadedCallback(xmldoc); *
>> *                                        } else {*
>> *                                                // invoke the loaded
>> callback with raw string*
>> *
>> this.loadedCallback(responseAsText);*
>> *                                        }                        *
>> *                                        if (this.suppressDone ==
> false)*
>> *                                                this.done();*
>> *                                }*
>>
>>
>> The offending code is:
>>
>> *   xmldoc = t.responseXML;*
>>
>> Looking at the contents of t (a transport object),
> the*transport.responseText
>> * field is set to the expected xml message, but*
> transport.responseXML*is empty and has no XML message.  Unfortunately, we
> could not see where
>> transport.responseXML variable should have been set.
>>
>> Does IE8 have known ajax bugs? Or is there a configuration setting we
>> should be using to make this work? Or something else? We're willing to
> dig
>> into the script more, but don't know where to look, as the Ajax
> processing
>> is asynchronous & we can't simply step through the code execution.
>>
>>
>>
>>
>>
>>
>> From:        Martin Grigorov <mg...@apache.org>
>> To:        users@wicket.apache.org
>> Date:        05/11/2012 07:26 AM
>>
>> Subject:        Re: Ajax Error in MSIE 8
>> ------------------------------
>>
>>
>>
>> Don't see anything suspicious.
>> You'll have to debug what happens in wicket-ajax.js ...
>>
>> On Fri, May 11, 2012 at 3:07 PM, Richard W. Adams <RW...@up.com>
> wrote:
>> > Sorry. Should have provided more details:
>> >
>> > Wicket Version: 1.4.20
>> >
>> > Operating System: Windows XP
>> >
>> > Scenario: Users clicks an icon with an Ajax onclick event. In the
> event
>> > handler on the server, we copy the value of one String variable to
>> another
>> > String variable in the model, then we call
> AjaxRequestTarget.addComponent
>> > twice, to update (1) the receiving text field, and (2) an associated
>> radio
>> > button.
>> > __________________________________________________
>> >
>> > "There are three kinds of lies: lies, damn lies, and statistics."
>> > Benjamin Disraeli
>> >
>> > "Then there was the man who drowned crossing a stream with an average
>> > depth of six inches."
>> > W. I. E. Gates
>> >
>> >
>> >
>> >
>> > From:   Martin Grigorov <mg...@apache.org>
>> > To:     users@wicket.apache.org
>> > Date:   05/11/2012 02:26 AM
>> > Subject:        Re: Ajax Error in MSIE 8
>> >
>> >
>> >
>> > Hi,
>> >
>> > Which version of Wicket ?
>> > In what conditions this happen ? I.e. do you click on a link or do you
>> > submit a form or ...
>> >
>> > On Thu, May 10, 2012 at 11:33 PM, Richard W. Adams <RW...@up.com>
>> > wrote:
>> >> I'm getting Ajax errors that seems to occur only in Internet Explorer
> 8
>> >> (same code works fine in IE9 & Firefox). I'm in a corporate
> environment
>> >> where IE8 support is a requirement, so wanted to see if anyone has
> seen
>> >> this before & knows of a fix. The Wicket Ajax trace is below; the
> parser
>> >> says it can't find the root element in the Ajax response. We've seen
>> > this
>> >> same error on various pages, though it doesn't ALWAYS occur:
>> >>
>> >>
>> >> INFO: focus removed from wicket-generated-id-18
>> >> INFO:
>> >> INFO: Initiating Ajax GET request on
>> >>
>> >
>>
> ?wicket:interface=:6:form:main-box:mp-form:primary-track-box:primary-icon::IBehaviorListener:1:&random=0.9122150377237917
>> >> INFO: Invoking pre-call handler(s)...
>> >> INFO: Received ajax response (4130 characters)
>> >> INFO:
>> >> <?xml version="1.0" encoding="UTF-8"?><ajax-response><component
>> >> id="successFeedback91" ><![CDATA[<div id="successFeedback91"
>> >> style="display:none"></div>]]></component><component
> id="infoFeedback93"
>> >>><![CDATA[<div id="infoFeedback93"
>> >> style="display:none"></div>]]></component><component
>> > id="errorFeedback94"
>> >>><![CDATA[<div id="errorFeedback94"
>> >> style="display:none"></div>]]></component><component
> id="warnFeedback92"
>> >>><![CDATA[<div id="warnFeedback92"
>> >> style="display:none"></div>]]></component><header-contribution
>> >> encoding="wicket1" ><![CDATA[<head xmlns:wicket="
>> > http://wicket.apache.org
>> >> "><script type="text/javascript"
>> >>
>> >
>>
> src="resources/com.uprr.enm.web.mp.behavior.MilepostReference/milepostreference.js"></script>
>> >>
>> >> <script type="text/javascript"
>> >>
>> >
>>
> src="resources/org.apache.wicket.markup.html.WicketEventReference/wicket-event.js"></script>
>> >>
>> >> <script type="text/javascript"
>> >>
>> >
>>
> src="resources/org.apache.wicket.ajax.WicketAjaxReference/wicket-ajax.js"></script>
>> >>
>> >> <script type="text/javascript"
>> >>
>> >
>>
> src="resources/org.apache.wicket.ajax.AbstractDefaultAjaxBehavior/wicket-ajax-debug.js"></script>
>> >>
>> >> <script type="text/javascript"
>> >> id="wicket-ajax-debug-enable"><!--/*--><![CDATA[/*><!--*/ >>
>> wicketAjaxDebugEnable=true; >> /*-->]^]^>*/</script>
>> >>
>> >> </head>]]></header-contribution><component id="primaryMpOther9c"
>> >>><![CDATA[<input class="numeric ricInputText" value="505.000"
>> >> name="main-box:mp-form:primary-track-box:primaryMpOther"
>> >> id="primaryMpOther9c" maxlength="9" size="11" type="text" onblur="var
>> >>
>> >
>>
> wcall=wicketAjaxPost('?wicket:interface=:6:form:main-box:mp-form:primary-track-box:primaryMpOther::IBehaviorListener:4:-1',
>> >> wicketSerialize(Wicket.$('primaryMpOther9c')),function() {
>> >> }.bind(this),function() { }.bind(this), function() {return
>> >> Wicket.$('primaryMpOther9c') != null;}.bind(this));" xmlns:wicket="
>> >> http://wicket.apache.org"/>]]></component><header-contribution
>> >> encoding="wicket1" ><![CDATA[<head xmlns:wicket="
>> > http://wicket.apache.org
>> >> "><script type="text/javascript"
>> >> id="attachChoice"><!--/*--><![CDATA[/*><!--*/ >> function
>> attachChoiceHandlers(markupId, callbackScript) { >>  var inputNodes =
>> wicketGet(markupId).getElementsByTagName('input'); >>  for (var i = 0 ;
> i <
>> inputNodes.length ; i ++) { >>  var inputNode = inputNodes[i]^; >>  if
>> (!inputNode.type) continue; >>  if >> >
>>
> (!(inputNode.className.indexOf('wicket-'+markupId)>=0)&&!(inputNode.id.indexOf(markupId+'-')>=0))
>> >> continue; >>  var inputType = inputNode.type.toLowerCase(); >>  if
>> (inputType == 'checkbox' || inputType == 'radio') { >>
>>  Wicket.Event.add(inputNode, 'click', callbackScript); >>  } >>  } >> }
>>>
>> >> /*-->]^]^>*/</script>
>> >>
>> >> </head>]]></header-contribution><component id="primaryMpSelection8f"
>> >>><![CDATA[<span id="primaryMpSelection8f" xmlns:wicket="
>> >> http://wicket.apache.org"><input
>> >> name="main-box:mp-form:primary-track-box:primaryMpSelection"
>> > type="radio"
>> >> value="0" id="primaryMpSelection8f-0"/><label
>> >> for="primaryMpSelection8f-0">Start (503.940)</label><br />
>> >> <input name="main-box:mp-form:primary-track-box:primaryMpSelection"
>> >> type="radio" value="1" id="primaryMpSelection8f-1"/><label
>> >> for="primaryMpSelection8f-1">End (538.200)</label><br />
>> >> <input name="main-box:mp-form:primary-track-box:primaryMpSelection"
>> >> type="radio" checked="checked" value="2"
>> >> id="primaryMpSelection8f-2"/><label
>> >> for="primaryMpSelection8f-2">Other</label><br />
>> >>
>> >
>>
> </span>]]></component><evaluate><![CDATA[$('#successFeedback91').trigger('ricolaFeedbackDismissed');]]></evaluate><evaluate><![CDATA[$('#infoFeedback93').trigger('ricolaFeedbackDismissed');]]></evaluate><evaluate><![CDATA[$('#errorFeedback94').trigger('ricolaFeedbackDismissed');]]></evaluate><evaluate><![CDATA[$('#warnFeedback92').trigger('ricolaFeedbackDismissed');]]></evaluate><evaluate><![CDATA[attachChoiceHandlers('primaryMpSelection8f',
>> >> function() {var
>> >>
>> >
>>
> wcall=wicketAjaxPost('?wicket:interface=:6:form:main-box:mp-form:primary-track-box:primaryMpSelection::IActivePageBehaviorListener:0:-1&wicket:ignoreIfNotActive=true',
>> >>
>> >
>>
> wicketSerializeForm(document.getElementById('primaryMpSelection8f',false)),function()
>> >> { }.bind(this),function() { }.bind(this), function() {return
>> >> Wicket.$('primaryMpSelection8f') !=
>> >> null;}.bind(this));});]]></evaluate></ajax-response>
>> >> ERROR: Wicket.Ajax.Call.failure: Error while parsing response: Could
> not
>> >> find root <ajax-response> element
>> >> INFO: Invoking post-call handler(s)...
>> >> INFO: Invoking failure handler(s)...
>> >>
>> >>
>> >> **
>> >>
>> >> This email and any attachments may contain information that is
>> > confidential and/or privileged for the sole use of the intended
>> recipient.
>> >  Any use, review, disclosure, copying, distribution or reliance by
>> others,
>> > and any forwarding of this email or its contents, without the express
>> > permission of the sender is strictly prohibited by law.  If you are
> not
>> > the intended recipient, please contact the sender immediately, delete
> the
>> > e-mail and destroy all copies.
>> >> **
>> >
>> >
>> >
>> > --
>> > Martin Grigorov
>> > jWeekend
>> > Training, Consulting, Development
>> > http://jWeekend.com <http://jweekend.com/>
>> >
>> > ---------------------------------------------------------------------
>> > To unsubscribe, e-mail: users-unsubscribe@wicket.apache.org
>> > For additional commands, e-mail: users-help@wicket.apache.org
>> >
>> >
>> >
>> >
>> > **
>> >
>> > This email and any attachments may contain information that is
>> confidential and/or privileged for the sole use of the intended
> recipient.
>>  Any use, review, disclosure, copying, distribution or reliance by
> others,
>> and any forwarding of this email or its contents, without the express
>> permission of the sender is strictly prohibited by law.  If you are not
> the
>> intended recipient, please contact the sender immediately, delete the
>> e-mail and destroy all copies.
>> > **
>>
>>
>>
>> --
>> Martin Grigorov
>> jWeekend
>> Training, Consulting, Development
>> http://jWeekend.com <http://jweekend.com/>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: users-unsubscribe@wicket.apache.org
>> For additional commands, e-mail: users-help@wicket.apache.org
>>
>>
>>
>> **
>>
>> This email and any attachments may contain information that is
>> confidential and/or privileged for the sole use of the intended
> recipient.
>> Any use, review, disclosure, copying, distribution or reliance by
> others,
>> and any forwarding of this email or its contents, without the express
>> permission of the sender is strictly prohibited by law. If you are not
> the
>> intended recipient, please contact the sender immediately, delete the
>> e-mail and destroy all copies.
>> **
>>
>
>
>
> --
> Martin Grigorov
> jWeekend
> Training, Consulting, Development
> http://jWeekend.com <http://jweekend.com/>
>
>
>
> **
>
> This email and any attachments may contain information that is confidential and/or privileged for the sole use of the intended recipient.  Any use, review, disclosure, copying, distribution or reliance by others, and any forwarding of this email or its contents, without the express permission of the sender is strictly prohibited by law.  If you are not the intended recipient, please contact the sender immediately, delete the e-mail and destroy all copies.
> **



-- 
Martin Grigorov
jWeekend
Training, Consulting, Development
http://jWeekend.com

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@wicket.apache.org
For additional commands, e-mail: users-help@wicket.apache.org


Re: Ajax Error in MSIE 8

Posted by "Richard W. Adams" <RW...@UP.COM>.
I just found a key difference between the IE8 & IE9 behaviors in this 
code:

   f (typeof(window.XMLHttpRequest) != "undefined" && typeof(DOMParser) != 
"undefined") { 
        var parser = new DOMParser();
        xmldoc = parser.parseFromString(responseAsText, "text/xml");   
   } else if (window.ActiveXObject) {
        xmldoc = t.responseXML;
   }

On our desktops, IE9 always goes into the first part of the if block, but 
IE8 always goes into the second part (after the elseif). Based on Google 
checks, it appears this might be due to browser security settings. Do you 
know if any special settings are required to make IE8 work correctly?



From:   Martin Grigorov <mg...@apache.org>
To:     users@wicket.apache.org
Date:   05/11/2012 09:56 AM
Subject:        Re: Ajax Error in MSIE 8



I'm not sure why this fails for you. And why it fails only from time to
time.
But looking at this Javascript code I think it can be improved.
File a ticket with a failing test case if possible.

On Fri, May 11, 2012 at 5:46 PM, Richard W. Adams <RW...@up.com> wrote:

> We dug into wicket-ajax.js using this version of MSIE 8:
>
>
>
> We discovered the problem occurs in this code:
>
>
>
> *Wicket.Ajax.Request.prototype = {*
>
> *....*
> *        // Method that processes the request states*
> *        stateChangeCallback: function() {        *
>
> *.....*
>
> *                        if (status == 200 || status == "") { // as
> stupid as it seems, IE7 sets status to "" on ok*
> *                                // response came without error*
> *                                var responseAsText = t.responseText;*
> *....*
>
> *                                // parse the response if the callback
> needs a DOM tree*
> *                                if (this.parseResponse == true) {*
> *                                                var xmldoc;
>    *
> *                                                if
> (typeof(window.XMLHttpRequest) != "undefined" && typeof(DOMParser) !=
> "undefined") {
>                    var parser = new DOMParser();*
> *                                                        xmldoc =
> parser.parseFromString(responseAsText, "text/xml");
>                        *
> *                                                } else if
> (window.ActiveXObject) {*
> *                                                        xmldoc =
> t.responseXML;*
> *                                                }*
> *                                                // invoke the loaded
> callback with an xml document*
> *
> this.loadedCallback(xmldoc); *
> *                                        } else {*
> *                                                // invoke the loaded
> callback with raw string*
> *
> this.loadedCallback(responseAsText);*
> *                                        }                        *
> *                                        if (this.suppressDone == 
false)*
> *                                                this.done();*
> *                                }*
>
>
> The offending code is:
>
> *   xmldoc = t.responseXML;*
>
> Looking at the contents of t (a transport object), 
the*transport.responseText
> * field is set to the expected xml message, but* 
transport.responseXML*is empty and has no XML message.  Unfortunately, we 
could not see where
> transport.responseXML variable should have been set.
>
> Does IE8 have known ajax bugs? Or is there a configuration setting we
> should be using to make this work? Or something else? We're willing to 
dig
> into the script more, but don't know where to look, as the Ajax 
processing
> is asynchronous & we can't simply step through the code execution.
>
>
>
>
>
>
> From:        Martin Grigorov <mg...@apache.org>
> To:        users@wicket.apache.org
> Date:        05/11/2012 07:26 AM
>
> Subject:        Re: Ajax Error in MSIE 8
> ------------------------------
>
>
>
> Don't see anything suspicious.
> You'll have to debug what happens in wicket-ajax.js ...
>
> On Fri, May 11, 2012 at 3:07 PM, Richard W. Adams <RW...@up.com> 
wrote:
> > Sorry. Should have provided more details:
> >
> > Wicket Version: 1.4.20
> >
> > Operating System: Windows XP
> >
> > Scenario: Users clicks an icon with an Ajax onclick event. In the 
event
> > handler on the server, we copy the value of one String variable to
> another
> > String variable in the model, then we call 
AjaxRequestTarget.addComponent
> > twice, to update (1) the receiving text field, and (2) an associated
> radio
> > button.
> > __________________________________________________
> >
> > "There are three kinds of lies: lies, damn lies, and statistics."
> > Benjamin Disraeli
> >
> > "Then there was the man who drowned crossing a stream with an average
> > depth of six inches."
> > W. I. E. Gates
> >
> >
> >
> >
> > From:   Martin Grigorov <mg...@apache.org>
> > To:     users@wicket.apache.org
> > Date:   05/11/2012 02:26 AM
> > Subject:        Re: Ajax Error in MSIE 8
> >
> >
> >
> > Hi,
> >
> > Which version of Wicket ?
> > In what conditions this happen ? I.e. do you click on a link or do you
> > submit a form or ...
> >
> > On Thu, May 10, 2012 at 11:33 PM, Richard W. Adams <RW...@up.com>
> > wrote:
> >> I'm getting Ajax errors that seems to occur only in Internet Explorer 
8
> >> (same code works fine in IE9 & Firefox). I'm in a corporate 
environment
> >> where IE8 support is a requirement, so wanted to see if anyone has 
seen
> >> this before & knows of a fix. The Wicket Ajax trace is below; the 
parser
> >> says it can't find the root element in the Ajax response. We've seen
> > this
> >> same error on various pages, though it doesn't ALWAYS occur:
> >>
> >>
> >> INFO: focus removed from wicket-generated-id-18
> >> INFO:
> >> INFO: Initiating Ajax GET request on
> >>
> >
> 
?wicket:interface=:6:form:main-box:mp-form:primary-track-box:primary-icon::IBehaviorListener:1:&random=0.9122150377237917
> >> INFO: Invoking pre-call handler(s)...
> >> INFO: Received ajax response (4130 characters)
> >> INFO:
> >> <?xml version="1.0" encoding="UTF-8"?><ajax-response><component
> >> id="successFeedback91" ><![CDATA[<div id="successFeedback91"
> >> style="display:none"></div>]]></component><component 
id="infoFeedback93"
> >>><![CDATA[<div id="infoFeedback93"
> >> style="display:none"></div>]]></component><component
> > id="errorFeedback94"
> >>><![CDATA[<div id="errorFeedback94"
> >> style="display:none"></div>]]></component><component 
id="warnFeedback92"
> >>><![CDATA[<div id="warnFeedback92"
> >> style="display:none"></div>]]></component><header-contribution
> >> encoding="wicket1" ><![CDATA[<head xmlns:wicket="
> > http://wicket.apache.org
> >> "><script type="text/javascript"
> >>
> >
> 
src="resources/com.uprr.enm.web.mp.behavior.MilepostReference/milepostreference.js"></script>
> >>
> >> <script type="text/javascript"
> >>
> >
> 
src="resources/org.apache.wicket.markup.html.WicketEventReference/wicket-event.js"></script>
> >>
> >> <script type="text/javascript"
> >>
> >
> 
src="resources/org.apache.wicket.ajax.WicketAjaxReference/wicket-ajax.js"></script>
> >>
> >> <script type="text/javascript"
> >>
> >
> 
src="resources/org.apache.wicket.ajax.AbstractDefaultAjaxBehavior/wicket-ajax-debug.js"></script>
> >>
> >> <script type="text/javascript"
> >> id="wicket-ajax-debug-enable"><!--/*--><![CDATA[/*><!--*/ >>
> wicketAjaxDebugEnable=true; >> /*-->]^]^>*/</script>
> >>
> >> </head>]]></header-contribution><component id="primaryMpOther9c"
> >>><![CDATA[<input class="numeric ricInputText" value="505.000"
> >> name="main-box:mp-form:primary-track-box:primaryMpOther"
> >> id="primaryMpOther9c" maxlength="9" size="11" type="text" onblur="var
> >>
> >
> 
wcall=wicketAjaxPost('?wicket:interface=:6:form:main-box:mp-form:primary-track-box:primaryMpOther::IBehaviorListener:4:-1',
> >> wicketSerialize(Wicket.$('primaryMpOther9c')),function() {
> >> }.bind(this),function() { }.bind(this), function() {return
> >> Wicket.$('primaryMpOther9c') != null;}.bind(this));" xmlns:wicket="
> >> http://wicket.apache.org"/>]]></component><header-contribution
> >> encoding="wicket1" ><![CDATA[<head xmlns:wicket="
> > http://wicket.apache.org
> >> "><script type="text/javascript"
> >> id="attachChoice"><!--/*--><![CDATA[/*><!--*/ >> function
> attachChoiceHandlers(markupId, callbackScript) { >>  var inputNodes =
> wicketGet(markupId).getElementsByTagName('input'); >>  for (var i = 0 ; 
i <
> inputNodes.length ; i ++) { >>  var inputNode = inputNodes[i]^; >>  if
> (!inputNode.type) continue; >>  if >> >
> 
(!(inputNode.className.indexOf('wicket-'+markupId)>=0)&&!(inputNode.id.indexOf(markupId+'-')>=0))
> >> continue; >>  var inputType = inputNode.type.toLowerCase(); >>  if
> (inputType == 'checkbox' || inputType == 'radio') { >>
>  Wicket.Event.add(inputNode, 'click', callbackScript); >>  } >>  } >> } 
>>
> >> /*-->]^]^>*/</script>
> >>
> >> </head>]]></header-contribution><component id="primaryMpSelection8f"
> >>><![CDATA[<span id="primaryMpSelection8f" xmlns:wicket="
> >> http://wicket.apache.org"><input
> >> name="main-box:mp-form:primary-track-box:primaryMpSelection"
> > type="radio"
> >> value="0" id="primaryMpSelection8f-0"/><label
> >> for="primaryMpSelection8f-0">Start (503.940)</label><br />
> >> <input name="main-box:mp-form:primary-track-box:primaryMpSelection"
> >> type="radio" value="1" id="primaryMpSelection8f-1"/><label
> >> for="primaryMpSelection8f-1">End (538.200)</label><br />
> >> <input name="main-box:mp-form:primary-track-box:primaryMpSelection"
> >> type="radio" checked="checked" value="2"
> >> id="primaryMpSelection8f-2"/><label
> >> for="primaryMpSelection8f-2">Other</label><br />
> >>
> >
> 
</span>]]></component><evaluate><![CDATA[$('#successFeedback91').trigger('ricolaFeedbackDismissed');]]></evaluate><evaluate><![CDATA[$('#infoFeedback93').trigger('ricolaFeedbackDismissed');]]></evaluate><evaluate><![CDATA[$('#errorFeedback94').trigger('ricolaFeedbackDismissed');]]></evaluate><evaluate><![CDATA[$('#warnFeedback92').trigger('ricolaFeedbackDismissed');]]></evaluate><evaluate><![CDATA[attachChoiceHandlers('primaryMpSelection8f',
> >> function() {var
> >>
> >
> 
wcall=wicketAjaxPost('?wicket:interface=:6:form:main-box:mp-form:primary-track-box:primaryMpSelection::IActivePageBehaviorListener:0:-1&wicket:ignoreIfNotActive=true',
> >>
> >
> 
wicketSerializeForm(document.getElementById('primaryMpSelection8f',false)),function()
> >> { }.bind(this),function() { }.bind(this), function() {return
> >> Wicket.$('primaryMpSelection8f') !=
> >> null;}.bind(this));});]]></evaluate></ajax-response>
> >> ERROR: Wicket.Ajax.Call.failure: Error while parsing response: Could 
not
> >> find root <ajax-response> element
> >> INFO: Invoking post-call handler(s)...
> >> INFO: Invoking failure handler(s)...
> >>
> >>
> >> **
> >>
> >> This email and any attachments may contain information that is
> > confidential and/or privileged for the sole use of the intended
> recipient.
> >  Any use, review, disclosure, copying, distribution or reliance by
> others,
> > and any forwarding of this email or its contents, without the express
> > permission of the sender is strictly prohibited by law.  If you are 
not
> > the intended recipient, please contact the sender immediately, delete 
the
> > e-mail and destroy all copies.
> >> **
> >
> >
> >
> > --
> > Martin Grigorov
> > jWeekend
> > Training, Consulting, Development
> > http://jWeekend.com <http://jweekend.com/>
> >
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: users-unsubscribe@wicket.apache.org
> > For additional commands, e-mail: users-help@wicket.apache.org
> >
> >
> >
> >
> > **
> >
> > This email and any attachments may contain information that is
> confidential and/or privileged for the sole use of the intended 
recipient.
>  Any use, review, disclosure, copying, distribution or reliance by 
others,
> and any forwarding of this email or its contents, without the express
> permission of the sender is strictly prohibited by law.  If you are not 
the
> intended recipient, please contact the sender immediately, delete the
> e-mail and destroy all copies.
> > **
>
>
>
> --
> Martin Grigorov
> jWeekend
> Training, Consulting, Development
> http://jWeekend.com <http://jweekend.com/>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe@wicket.apache.org
> For additional commands, e-mail: users-help@wicket.apache.org
>
>
>
> **
>
> This email and any attachments may contain information that is
> confidential and/or privileged for the sole use of the intended 
recipient.
> Any use, review, disclosure, copying, distribution or reliance by 
others,
> and any forwarding of this email or its contents, without the express
> permission of the sender is strictly prohibited by law. If you are not 
the
> intended recipient, please contact the sender immediately, delete the
> e-mail and destroy all copies.
> **
>



-- 
Martin Grigorov
jWeekend
Training, Consulting, Development
http://jWeekend.com <http://jweekend.com/>



**

This email and any attachments may contain information that is confidential and/or privileged for the sole use of the intended recipient.  Any use, review, disclosure, copying, distribution or reliance by others, and any forwarding of this email or its contents, without the express permission of the sender is strictly prohibited by law.  If you are not the intended recipient, please contact the sender immediately, delete the e-mail and destroy all copies.
**

Re: Ajax Error in MSIE 8

Posted by Martin Grigorov <mg...@apache.org>.
I'm not sure why this fails for you. And why it fails only from time to
time.
But looking at this Javascript code I think it can be improved.
File a ticket with a failing test case if possible.

On Fri, May 11, 2012 at 5:46 PM, Richard W. Adams <RW...@up.com> wrote:

> We dug into wicket-ajax.js using this version of MSIE 8:
>
>
>
> We discovered the problem occurs in this code:
>
>
>
> *Wicket.Ajax.Request.prototype = {*
>
> *....*
> *        // Method that processes the request states*
> *        stateChangeCallback: function() {        *
>
> *.....*
>
> *                        if (status == 200 || status == "") { // as
> stupid as it seems, IE7 sets status to "" on ok*
> *                                // response came without error*
> *                                var responseAsText = t.responseText;*
> *....*
>
> *                                // parse the response if the callback
> needs a DOM tree*
> *                                if (this.parseResponse == true) {*
> *                                                var xmldoc;
>    *
> *                                                if
> (typeof(window.XMLHttpRequest) != "undefined" && typeof(DOMParser) !=
> "undefined") {
>                    var parser = new DOMParser();*
> *                                                        xmldoc =
> parser.parseFromString(responseAsText, "text/xml");
>                        *
> *                                                } else if
> (window.ActiveXObject) {*
> *                                                        xmldoc =
> t.responseXML;*
> *                                                }*
> *                                                // invoke the loaded
> callback with an xml document*
> *
> this.loadedCallback(xmldoc); *
> *                                        } else {*
> *                                                // invoke the loaded
> callback with raw string*
> *
> this.loadedCallback(responseAsText);*
> *                                        }                        *
> *                                        if (this.suppressDone == false)*
> *                                                this.done();*
> *                                }*
>
>
> The offending code is:
>
> *   xmldoc = t.responseXML;*
>
> Looking at the contents of t (a transport object), the*transport.responseText
> * field is set to the expected xml message, but* transport.responseXML*is empty and has no XML message.  Unfortunately, we could not see where
> transport.responseXML variable should have been set.
>
> Does IE8 have known ajax bugs? Or is there a configuration setting we
> should be using to make this work? Or something else? We're willing to dig
> into the script more, but don't know where to look, as the Ajax processing
> is asynchronous & we can't simply step through the code execution.
>
>
>
>
>
>
> From:        Martin Grigorov <mg...@apache.org>
> To:        users@wicket.apache.org
> Date:        05/11/2012 07:26 AM
>
> Subject:        Re: Ajax Error in MSIE 8
> ------------------------------
>
>
>
> Don't see anything suspicious.
> You'll have to debug what happens in wicket-ajax.js ...
>
> On Fri, May 11, 2012 at 3:07 PM, Richard W. Adams <RW...@up.com> wrote:
> > Sorry. Should have provided more details:
> >
> > Wicket Version: 1.4.20
> >
> > Operating System: Windows XP
> >
> > Scenario: Users clicks an icon with an Ajax onclick event. In the event
> > handler on the server, we copy the value of one String variable to
> another
> > String variable in the model, then we call AjaxRequestTarget.addComponent
> > twice, to update (1) the receiving text field, and (2) an associated
> radio
> > button.
> > __________________________________________________
> >
> > "There are three kinds of lies: lies, damn lies, and statistics."
> > Benjamin Disraeli
> >
> > "Then there was the man who drowned crossing a stream with an average
> > depth of six inches."
> > W. I. E. Gates
> >
> >
> >
> >
> > From:   Martin Grigorov <mg...@apache.org>
> > To:     users@wicket.apache.org
> > Date:   05/11/2012 02:26 AM
> > Subject:        Re: Ajax Error in MSIE 8
> >
> >
> >
> > Hi,
> >
> > Which version of Wicket ?
> > In what conditions this happen ? I.e. do you click on a link or do you
> > submit a form or ...
> >
> > On Thu, May 10, 2012 at 11:33 PM, Richard W. Adams <RW...@up.com>
> > wrote:
> >> I'm getting Ajax errors that seems to occur only in Internet Explorer 8
> >> (same code works fine in IE9 & Firefox). I'm in a corporate environment
> >> where IE8 support is a requirement, so wanted to see if anyone has seen
> >> this before & knows of a fix. The Wicket Ajax trace is below; the parser
> >> says it can't find the root element in the Ajax response. We've seen
> > this
> >> same error on various pages, though it doesn't ALWAYS occur:
> >>
> >>
> >> INFO: focus removed from wicket-generated-id-18
> >> INFO:
> >> INFO: Initiating Ajax GET request on
> >>
> >
> ?wicket:interface=:6:form:main-box:mp-form:primary-track-box:primary-icon::IBehaviorListener:1:&random=0.9122150377237917
> >> INFO: Invoking pre-call handler(s)...
> >> INFO: Received ajax response (4130 characters)
> >> INFO:
> >> <?xml version="1.0" encoding="UTF-8"?><ajax-response><component
> >> id="successFeedback91" ><![CDATA[<div id="successFeedback91"
> >> style="display:none"></div>]]></component><component id="infoFeedback93"
> >>><![CDATA[<div id="infoFeedback93"
> >> style="display:none"></div>]]></component><component
> > id="errorFeedback94"
> >>><![CDATA[<div id="errorFeedback94"
> >> style="display:none"></div>]]></component><component id="warnFeedback92"
> >>><![CDATA[<div id="warnFeedback92"
> >> style="display:none"></div>]]></component><header-contribution
> >> encoding="wicket1" ><![CDATA[<head xmlns:wicket="
> > http://wicket.apache.org
> >> "><script type="text/javascript"
> >>
> >
> src="resources/com.uprr.enm.web.mp.behavior.MilepostReference/milepostreference.js"></script>
> >>
> >> <script type="text/javascript"
> >>
> >
> src="resources/org.apache.wicket.markup.html.WicketEventReference/wicket-event.js"></script>
> >>
> >> <script type="text/javascript"
> >>
> >
> src="resources/org.apache.wicket.ajax.WicketAjaxReference/wicket-ajax.js"></script>
> >>
> >> <script type="text/javascript"
> >>
> >
> src="resources/org.apache.wicket.ajax.AbstractDefaultAjaxBehavior/wicket-ajax-debug.js"></script>
> >>
> >> <script type="text/javascript"
> >> id="wicket-ajax-debug-enable"><!--/*--><![CDATA[/*><!--*/ >>
> wicketAjaxDebugEnable=true; >> /*-->]^]^>*/</script>
> >>
> >> </head>]]></header-contribution><component id="primaryMpOther9c"
> >>><![CDATA[<input class="numeric ricInputText" value="505.000"
> >> name="main-box:mp-form:primary-track-box:primaryMpOther"
> >> id="primaryMpOther9c" maxlength="9" size="11" type="text" onblur="var
> >>
> >
> wcall=wicketAjaxPost('?wicket:interface=:6:form:main-box:mp-form:primary-track-box:primaryMpOther::IBehaviorListener:4:-1',
> >> wicketSerialize(Wicket.$('primaryMpOther9c')),function() {
> >> }.bind(this),function() { }.bind(this), function() {return
> >> Wicket.$('primaryMpOther9c') != null;}.bind(this));" xmlns:wicket="
> >> http://wicket.apache.org"/>]]></component><header-contribution
> >> encoding="wicket1" ><![CDATA[<head xmlns:wicket="
> > http://wicket.apache.org
> >> "><script type="text/javascript"
> >> id="attachChoice"><!--/*--><![CDATA[/*><!--*/ >> function
> attachChoiceHandlers(markupId, callbackScript) { >>  var inputNodes =
> wicketGet(markupId).getElementsByTagName('input'); >>  for (var i = 0 ; i <
> inputNodes.length ; i ++) { >>  var inputNode = inputNodes[i]^; >>  if
> (!inputNode.type) continue; >>  if >> >
> (!(inputNode.className.indexOf('wicket-'+markupId)>=0)&&!(inputNode.id.indexOf(markupId+'-')>=0))
> >> continue; >>  var inputType = inputNode.type.toLowerCase(); >>  if
> (inputType == 'checkbox' || inputType == 'radio') { >>
>  Wicket.Event.add(inputNode, 'click', callbackScript); >>  } >>  } >> } >>
> >> /*-->]^]^>*/</script>
> >>
> >> </head>]]></header-contribution><component id="primaryMpSelection8f"
> >>><![CDATA[<span id="primaryMpSelection8f" xmlns:wicket="
> >> http://wicket.apache.org"><input
> >> name="main-box:mp-form:primary-track-box:primaryMpSelection"
> > type="radio"
> >> value="0" id="primaryMpSelection8f-0"/><label
> >> for="primaryMpSelection8f-0">Start (503.940)</label><br />
> >> <input name="main-box:mp-form:primary-track-box:primaryMpSelection"
> >> type="radio" value="1" id="primaryMpSelection8f-1"/><label
> >> for="primaryMpSelection8f-1">End (538.200)</label><br />
> >> <input name="main-box:mp-form:primary-track-box:primaryMpSelection"
> >> type="radio" checked="checked" value="2"
> >> id="primaryMpSelection8f-2"/><label
> >> for="primaryMpSelection8f-2">Other</label><br />
> >>
> >
> </span>]]></component><evaluate><![CDATA[$('#successFeedback91').trigger('ricolaFeedbackDismissed');]]></evaluate><evaluate><![CDATA[$('#infoFeedback93').trigger('ricolaFeedbackDismissed');]]></evaluate><evaluate><![CDATA[$('#errorFeedback94').trigger('ricolaFeedbackDismissed');]]></evaluate><evaluate><![CDATA[$('#warnFeedback92').trigger('ricolaFeedbackDismissed');]]></evaluate><evaluate><![CDATA[attachChoiceHandlers('primaryMpSelection8f',
> >> function() {var
> >>
> >
> wcall=wicketAjaxPost('?wicket:interface=:6:form:main-box:mp-form:primary-track-box:primaryMpSelection::IActivePageBehaviorListener:0:-1&wicket:ignoreIfNotActive=true',
> >>
> >
> wicketSerializeForm(document.getElementById('primaryMpSelection8f',false)),function()
> >> { }.bind(this),function() { }.bind(this), function() {return
> >> Wicket.$('primaryMpSelection8f') !=
> >> null;}.bind(this));});]]></evaluate></ajax-response>
> >> ERROR: Wicket.Ajax.Call.failure: Error while parsing response: Could not
> >> find root <ajax-response> element
> >> INFO: Invoking post-call handler(s)...
> >> INFO: Invoking failure handler(s)...
> >>
> >>
> >> **
> >>
> >> This email and any attachments may contain information that is
> > confidential and/or privileged for the sole use of the intended
> recipient.
> >  Any use, review, disclosure, copying, distribution or reliance by
> others,
> > and any forwarding of this email or its contents, without the express
> > permission of the sender is strictly prohibited by law.  If you are not
> > the intended recipient, please contact the sender immediately, delete the
> > e-mail and destroy all copies.
> >> **
> >
> >
> >
> > --
> > Martin Grigorov
> > jWeekend
> > Training, Consulting, Development
> > http://jWeekend.com <http://jweekend.com/>
> >
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: users-unsubscribe@wicket.apache.org
> > For additional commands, e-mail: users-help@wicket.apache.org
> >
> >
> >
> >
> > **
> >
> > This email and any attachments may contain information that is
> confidential and/or privileged for the sole use of the intended recipient.
>  Any use, review, disclosure, copying, distribution or reliance by others,
> and any forwarding of this email or its contents, without the express
> permission of the sender is strictly prohibited by law.  If you are not the
> intended recipient, please contact the sender immediately, delete the
> e-mail and destroy all copies.
> > **
>
>
>
> --
> Martin Grigorov
> jWeekend
> Training, Consulting, Development
> http://jWeekend.com <http://jweekend.com/>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe@wicket.apache.org
> For additional commands, e-mail: users-help@wicket.apache.org
>
>
>
> **
>
> This email and any attachments may contain information that is
> confidential and/or privileged for the sole use of the intended recipient.
> Any use, review, disclosure, copying, distribution or reliance by others,
> and any forwarding of this email or its contents, without the express
> permission of the sender is strictly prohibited by law. If you are not the
> intended recipient, please contact the sender immediately, delete the
> e-mail and destroy all copies.
> **
>



-- 
Martin Grigorov
jWeekend
Training, Consulting, Development
http://jWeekend.com <http://jweekend.com/>

Re: Ajax Error in MSIE 8

Posted by "Richard W. Adams" <RW...@UP.COM>.
We dug into wicket-ajax.js using this version of MSIE 8:



We discovered the problem occurs in this code:



Wicket.Ajax.Request.prototype = {

....
        // Method that processes the request states
        stateChangeCallback: function() { 

.....

                        if (status == 200 || status == "") { // as stupid 
as it seems, IE7 sets status to "" on ok
                                // response came without error
                                var responseAsText = t.responseText;
....

                                // parse the response if the callback 
needs a DOM tree
                                if (this.parseResponse == true) {
                                                var xmldoc; 
                                                if (typeof
(window.XMLHttpRequest) != "undefined" && typeof(DOMParser) != "undefined"
) { var parser = new DOMParser();
                                                        xmldoc = 
parser.parseFromString(responseAsText, "text/xml");  
                                                } else if 
(window.ActiveXObject) {
                                                        xmldoc = 
t.responseXML;
                                                }
                                                // invoke the loaded 
callback with an xml document
                                                this
.loadedCallback(xmldoc); 
                                        } else {
                                                // invoke the loaded 
callback with raw string
                                                this
.loadedCallback(responseAsText);
                                        } 
                                        if (this.suppressDone == false)
                                                this.done();
                                }


The offending code is:

   xmldoc = t.responseXML;

Looking at the contents of t (a transport object), the 
transport.responseText field is set to the expected xml message, but 
transport.responseXML is empty and has no XML message.  Unfortunately, we 
could not see where transport.responseXML variable should have been set.

Does IE8 have known ajax bugs? Or is there a configuration setting we 
should be using to make this work? Or something else? We're willing to dig 
into the script more, but don't know where to look, as the Ajax processing 
is asynchronous & we can't simply step through the code execution.





From:   Martin Grigorov <mg...@apache.org>
To:     users@wicket.apache.org
Date:   05/11/2012 07:26 AM
Subject:        Re: Ajax Error in MSIE 8



Don't see anything suspicious.
You'll have to debug what happens in wicket-ajax.js ...

On Fri, May 11, 2012 at 3:07 PM, Richard W. Adams <RW...@up.com> wrote:
> Sorry. Should have provided more details:
>
> Wicket Version: 1.4.20
>
> Operating System: Windows XP
>
> Scenario: Users clicks an icon with an Ajax onclick event. In the event
> handler on the server, we copy the value of one String variable to 
another
> String variable in the model, then we call 
AjaxRequestTarget.addComponent
> twice, to update (1) the receiving text field, and (2) an associated 
radio
> button.
> __________________________________________________
>
> "There are three kinds of lies: lies, damn lies, and statistics."
> Benjamin Disraeli
>
> "Then there was the man who drowned crossing a stream with an average
> depth of six inches."
> W. I. E. Gates
>
>
>
>
> From:   Martin Grigorov <mg...@apache.org>
> To:     users@wicket.apache.org
> Date:   05/11/2012 02:26 AM
> Subject:        Re: Ajax Error in MSIE 8
>
>
>
> Hi,
>
> Which version of Wicket ?
> In what conditions this happen ? I.e. do you click on a link or do you
> submit a form or ...
>
> On Thu, May 10, 2012 at 11:33 PM, Richard W. Adams <RW...@up.com>
> wrote:
>> I'm getting Ajax errors that seems to occur only in Internet Explorer 8
>> (same code works fine in IE9 & Firefox). I'm in a corporate environment
>> where IE8 support is a requirement, so wanted to see if anyone has seen
>> this before & knows of a fix. The Wicket Ajax trace is below; the 
parser
>> says it can't find the root element in the Ajax response. We've seen
> this
>> same error on various pages, though it doesn't ALWAYS occur:
>>
>>
>> INFO: focus removed from wicket-generated-id-18
>> INFO:
>> INFO: Initiating Ajax GET request on
>>
> 
?wicket:interface=:6:form:main-box:mp-form:primary-track-box:primary-icon::IBehaviorListener:1:&random=0.9122150377237917
>> INFO: Invoking pre-call handler(s)...
>> INFO: Received ajax response (4130 characters)
>> INFO:
>> <?xml version="1.0" encoding="UTF-8"?><ajax-response><component
>> id="successFeedback91" ><![CDATA[<div id="successFeedback91"
>> style="display:none"></div>]]></component><component 
id="infoFeedback93"
>>><![CDATA[<div id="infoFeedback93"
>> style="display:none"></div>]]></component><component
> id="errorFeedback94"
>>><![CDATA[<div id="errorFeedback94"
>> style="display:none"></div>]]></component><component 
id="warnFeedback92"
>>><![CDATA[<div id="warnFeedback92"
>> style="display:none"></div>]]></component><header-contribution
>> encoding="wicket1" ><![CDATA[<head xmlns:wicket="
> http://wicket.apache.org
>> "><script type="text/javascript"
>>
> 
src="resources/com.uprr.enm.web.mp.behavior.MilepostReference/milepostreference.js"></script>
>>
>> <script type="text/javascript"
>>
> 
src="resources/org.apache.wicket.markup.html.WicketEventReference/wicket-event.js"></script>
>>
>> <script type="text/javascript"
>>
> 
src="resources/org.apache.wicket.ajax.WicketAjaxReference/wicket-ajax.js"></script>
>>
>> <script type="text/javascript"
>>
> 
src="resources/org.apache.wicket.ajax.AbstractDefaultAjaxBehavior/wicket-ajax-debug.js"></script>
>>
>> <script type="text/javascript"
>> id="wicket-ajax-debug-enable"><!--/*--><![CDATA[/*><!--*/
>> wicketAjaxDebugEnable=true;
>> /*-->]^]^>*/</script>
>>
>> </head>]]></header-contribution><component id="primaryMpOther9c"
>>><![CDATA[<input class="numeric ricInputText" value="505.000"
>> name="main-box:mp-form:primary-track-box:primaryMpOther"
>> id="primaryMpOther9c" maxlength="9" size="11" type="text" onblur="var
>>
> 
wcall=wicketAjaxPost('?wicket:interface=:6:form:main-box:mp-form:primary-track-box:primaryMpOther::IBehaviorListener:4:-1',
>> wicketSerialize(Wicket.$('primaryMpOther9c')),function() {
>> }.bind(this),function() { }.bind(this), function() {return
>> Wicket.$('primaryMpOther9c') != null;}.bind(this));" xmlns:wicket="
>> http://wicket.apache.org"/>]]></component><header-contribution
>> encoding="wicket1" ><![CDATA[<head xmlns:wicket="
> http://wicket.apache.org
>> "><script type="text/javascript"
>> id="attachChoice"><!--/*--><![CDATA[/*><!--*/
>> function attachChoiceHandlers(markupId, callbackScript) {
>>  var inputNodes = wicketGet(markupId).getElementsByTagName('input');
>>  for (var i = 0 ; i < inputNodes.length ; i ++) {
>>  var inputNode = inputNodes[i]^;
>>  if (!inputNode.type) continue;
>>  if
>>
> 
(!(inputNode.className.indexOf('wicket-'+markupId)>=0)&&!(inputNode.id.indexOf(markupId+'-')>=0))
>> continue;
>>  var inputType = inputNode.type.toLowerCase();
>>  if (inputType == 'checkbox' || inputType == 'radio') {
>>  Wicket.Event.add(inputNode, 'click', callbackScript);
>>  }
>>  }
>> }
>>
>> /*-->]^]^>*/</script>
>>
>> </head>]]></header-contribution><component id="primaryMpSelection8f"
>>><![CDATA[<span id="primaryMpSelection8f" xmlns:wicket="
>> http://wicket.apache.org"><input
>> name="main-box:mp-form:primary-track-box:primaryMpSelection"
> type="radio"
>> value="0" id="primaryMpSelection8f-0"/><label
>> for="primaryMpSelection8f-0">Start (503.940)</label><br />
>> <input name="main-box:mp-form:primary-track-box:primaryMpSelection"
>> type="radio" value="1" id="primaryMpSelection8f-1"/><label
>> for="primaryMpSelection8f-1">End (538.200)</label><br />
>> <input name="main-box:mp-form:primary-track-box:primaryMpSelection"
>> type="radio" checked="checked" value="2"
>> id="primaryMpSelection8f-2"/><label
>> for="primaryMpSelection8f-2">Other</label><br />
>>
> 
</span>]]></component><evaluate><![CDATA[$('#successFeedback91').trigger('ricolaFeedbackDismissed');]]></evaluate><evaluate><![CDATA[$('#infoFeedback93').trigger('ricolaFeedbackDismissed');]]></evaluate><evaluate><![CDATA[$('#errorFeedback94').trigger('ricolaFeedbackDismissed');]]></evaluate><evaluate><![CDATA[$('#warnFeedback92').trigger('ricolaFeedbackDismissed');]]></evaluate><evaluate><![CDATA[attachChoiceHandlers('primaryMpSelection8f',
>> function() {var
>>
> 
wcall=wicketAjaxPost('?wicket:interface=:6:form:main-box:mp-form:primary-track-box:primaryMpSelection::IActivePageBehaviorListener:0:-1&wicket:ignoreIfNotActive=true',
>>
> 
wicketSerializeForm(document.getElementById('primaryMpSelection8f',false)),function()
>> { }.bind(this),function() { }.bind(this), function() {return
>> Wicket.$('primaryMpSelection8f') !=
>> null;}.bind(this));});]]></evaluate></ajax-response>
>> ERROR: Wicket.Ajax.Call.failure: Error while parsing response: Could 
not
>> find root <ajax-response> element
>> INFO: Invoking post-call handler(s)...
>> INFO: Invoking failure handler(s)...
>>
>>
>> **
>>
>> This email and any attachments may contain information that is
> confidential and/or privileged for the sole use of the intended 
recipient.
>  Any use, review, disclosure, copying, distribution or reliance by 
others,
> and any forwarding of this email or its contents, without the express
> permission of the sender is strictly prohibited by law.  If you are not
> the intended recipient, please contact the sender immediately, delete 
the
> e-mail and destroy all copies.
>> **
>
>
>
> --
> Martin Grigorov
> jWeekend
> Training, Consulting, Development
> http://jWeekend.com
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe@wicket.apache.org
> For additional commands, e-mail: users-help@wicket.apache.org
>
>
>
>
> **
>
> This email and any attachments may contain information that is 
confidential and/or privileged for the sole use of the intended recipient. 
 Any use, review, disclosure, copying, distribution or reliance by others, 
and any forwarding of this email or its contents, without the express 
permission of the sender is strictly prohibited by law.  If you are not 
the intended recipient, please contact the sender immediately, delete the 
e-mail and destroy all copies.
> **



-- 
Martin Grigorov
jWeekend
Training, Consulting, Development
http://jWeekend.com

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@wicket.apache.org
For additional commands, e-mail: users-help@wicket.apache.org




**

This email and any attachments may contain information that is confidential and/or privileged for the sole use of the intended recipient.  Any use, review, disclosure, copying, distribution or reliance by others, and any forwarding of this email or its contents, without the express permission of the sender is strictly prohibited by law.  If you are not the intended recipient, please contact the sender immediately, delete the e-mail and destroy all copies.
**

Re: Ajax Error in MSIE 8

Posted by Martin Grigorov <mg...@apache.org>.
Don't see anything suspicious.
You'll have to debug what happens in wicket-ajax.js ...

On Fri, May 11, 2012 at 3:07 PM, Richard W. Adams <RW...@up.com> wrote:
> Sorry. Should have provided more details:
>
> Wicket Version: 1.4.20
>
> Operating System: Windows XP
>
> Scenario: Users clicks an icon with an Ajax onclick event. In the event
> handler on the server, we copy the value of one String variable to another
> String variable in the model, then we call AjaxRequestTarget.addComponent
> twice, to update (1) the receiving text field, and (2) an associated radio
> button.
> __________________________________________________
>
> "There are three kinds of lies: lies, damn lies, and statistics."
> Benjamin Disraeli
>
> "Then there was the man who drowned crossing a stream with an average
> depth of six inches."
> W. I. E. Gates
>
>
>
>
> From:   Martin Grigorov <mg...@apache.org>
> To:     users@wicket.apache.org
> Date:   05/11/2012 02:26 AM
> Subject:        Re: Ajax Error in MSIE 8
>
>
>
> Hi,
>
> Which version of Wicket ?
> In what conditions this happen ? I.e. do you click on a link or do you
> submit a form or ...
>
> On Thu, May 10, 2012 at 11:33 PM, Richard W. Adams <RW...@up.com>
> wrote:
>> I'm getting Ajax errors that seems to occur only in Internet Explorer 8
>> (same code works fine in IE9 & Firefox). I'm in a corporate environment
>> where IE8 support is a requirement, so wanted to see if anyone has seen
>> this before & knows of a fix. The Wicket Ajax trace is below; the parser
>> says it can't find the root element in the Ajax response. We've seen
> this
>> same error on various pages, though it doesn't ALWAYS occur:
>>
>>
>> INFO: focus removed from wicket-generated-id-18
>> INFO:
>> INFO: Initiating Ajax GET request on
>>
> ?wicket:interface=:6:form:main-box:mp-form:primary-track-box:primary-icon::IBehaviorListener:1:&random=0.9122150377237917
>> INFO: Invoking pre-call handler(s)...
>> INFO: Received ajax response (4130 characters)
>> INFO:
>> <?xml version="1.0" encoding="UTF-8"?><ajax-response><component
>> id="successFeedback91" ><![CDATA[<div id="successFeedback91"
>> style="display:none"></div>]]></component><component id="infoFeedback93"
>>><![CDATA[<div id="infoFeedback93"
>> style="display:none"></div>]]></component><component
> id="errorFeedback94"
>>><![CDATA[<div id="errorFeedback94"
>> style="display:none"></div>]]></component><component id="warnFeedback92"
>>><![CDATA[<div id="warnFeedback92"
>> style="display:none"></div>]]></component><header-contribution
>> encoding="wicket1" ><![CDATA[<head xmlns:wicket="
> http://wicket.apache.org
>> "><script type="text/javascript"
>>
> src="resources/com.uprr.enm.web.mp.behavior.MilepostReference/milepostreference.js"></script>
>>
>> <script type="text/javascript"
>>
> src="resources/org.apache.wicket.markup.html.WicketEventReference/wicket-event.js"></script>
>>
>> <script type="text/javascript"
>>
> src="resources/org.apache.wicket.ajax.WicketAjaxReference/wicket-ajax.js"></script>
>>
>> <script type="text/javascript"
>>
> src="resources/org.apache.wicket.ajax.AbstractDefaultAjaxBehavior/wicket-ajax-debug.js"></script>
>>
>> <script type="text/javascript"
>> id="wicket-ajax-debug-enable"><!--/*--><![CDATA[/*><!--*/
>> wicketAjaxDebugEnable=true;
>> /*-->]^]^>*/</script>
>>
>> </head>]]></header-contribution><component id="primaryMpOther9c"
>>><![CDATA[<input class="numeric ricInputText" value="505.000"
>> name="main-box:mp-form:primary-track-box:primaryMpOther"
>> id="primaryMpOther9c" maxlength="9" size="11" type="text" onblur="var
>>
> wcall=wicketAjaxPost('?wicket:interface=:6:form:main-box:mp-form:primary-track-box:primaryMpOther::IBehaviorListener:4:-1',
>> wicketSerialize(Wicket.$('primaryMpOther9c')),function() {
>> }.bind(this),function() { }.bind(this), function() {return
>> Wicket.$('primaryMpOther9c') != null;}.bind(this));" xmlns:wicket="
>> http://wicket.apache.org"/>]]></component><header-contribution
>> encoding="wicket1" ><![CDATA[<head xmlns:wicket="
> http://wicket.apache.org
>> "><script type="text/javascript"
>> id="attachChoice"><!--/*--><![CDATA[/*><!--*/
>> function attachChoiceHandlers(markupId, callbackScript) {
>>  var inputNodes = wicketGet(markupId).getElementsByTagName('input');
>>  for (var i = 0 ; i < inputNodes.length ; i ++) {
>>  var inputNode = inputNodes[i]^;
>>  if (!inputNode.type) continue;
>>  if
>>
> (!(inputNode.className.indexOf('wicket-'+markupId)>=0)&&!(inputNode.id.indexOf(markupId+'-')>=0))
>> continue;
>>  var inputType = inputNode.type.toLowerCase();
>>  if (inputType == 'checkbox' || inputType == 'radio') {
>>  Wicket.Event.add(inputNode, 'click', callbackScript);
>>  }
>>  }
>> }
>>
>> /*-->]^]^>*/</script>
>>
>> </head>]]></header-contribution><component id="primaryMpSelection8f"
>>><![CDATA[<span id="primaryMpSelection8f" xmlns:wicket="
>> http://wicket.apache.org"><input
>> name="main-box:mp-form:primary-track-box:primaryMpSelection"
> type="radio"
>> value="0" id="primaryMpSelection8f-0"/><label
>> for="primaryMpSelection8f-0">Start (503.940)</label><br />
>> <input name="main-box:mp-form:primary-track-box:primaryMpSelection"
>> type="radio" value="1" id="primaryMpSelection8f-1"/><label
>> for="primaryMpSelection8f-1">End (538.200)</label><br />
>> <input name="main-box:mp-form:primary-track-box:primaryMpSelection"
>> type="radio" checked="checked" value="2"
>> id="primaryMpSelection8f-2"/><label
>> for="primaryMpSelection8f-2">Other</label><br />
>>
> </span>]]></component><evaluate><![CDATA[$('#successFeedback91').trigger('ricolaFeedbackDismissed');]]></evaluate><evaluate><![CDATA[$('#infoFeedback93').trigger('ricolaFeedbackDismissed');]]></evaluate><evaluate><![CDATA[$('#errorFeedback94').trigger('ricolaFeedbackDismissed');]]></evaluate><evaluate><![CDATA[$('#warnFeedback92').trigger('ricolaFeedbackDismissed');]]></evaluate><evaluate><![CDATA[attachChoiceHandlers('primaryMpSelection8f',
>> function() {var
>>
> wcall=wicketAjaxPost('?wicket:interface=:6:form:main-box:mp-form:primary-track-box:primaryMpSelection::IActivePageBehaviorListener:0:-1&wicket:ignoreIfNotActive=true',
>>
> wicketSerializeForm(document.getElementById('primaryMpSelection8f',false)),function()
>> { }.bind(this),function() { }.bind(this), function() {return
>> Wicket.$('primaryMpSelection8f') !=
>> null;}.bind(this));});]]></evaluate></ajax-response>
>> ERROR: Wicket.Ajax.Call.failure: Error while parsing response: Could not
>> find root <ajax-response> element
>> INFO: Invoking post-call handler(s)...
>> INFO: Invoking failure handler(s)...
>>
>>
>> **
>>
>> This email and any attachments may contain information that is
> confidential and/or privileged for the sole use of the intended recipient.
>  Any use, review, disclosure, copying, distribution or reliance by others,
> and any forwarding of this email or its contents, without the express
> permission of the sender is strictly prohibited by law.  If you are not
> the intended recipient, please contact the sender immediately, delete the
> e-mail and destroy all copies.
>> **
>
>
>
> --
> Martin Grigorov
> jWeekend
> Training, Consulting, Development
> http://jWeekend.com
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe@wicket.apache.org
> For additional commands, e-mail: users-help@wicket.apache.org
>
>
>
>
> **
>
> This email and any attachments may contain information that is confidential and/or privileged for the sole use of the intended recipient.  Any use, review, disclosure, copying, distribution or reliance by others, and any forwarding of this email or its contents, without the express permission of the sender is strictly prohibited by law.  If you are not the intended recipient, please contact the sender immediately, delete the e-mail and destroy all copies.
> **



-- 
Martin Grigorov
jWeekend
Training, Consulting, Development
http://jWeekend.com

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@wicket.apache.org
For additional commands, e-mail: users-help@wicket.apache.org


Re: Ajax Error in MSIE 8

Posted by "Richard W. Adams" <RW...@UP.COM>.
Sorry. Should have provided more details:

Wicket Version: 1.4.20

Operating System: Windows XP

Scenario: Users clicks an icon with an Ajax onclick event. In the event 
handler on the server, we copy the value of one String variable to another 
String variable in the model, then we call AjaxRequestTarget.addComponent 
twice, to update (1) the receiving text field, and (2) an associated radio 
button.
__________________________________________________

"There are three kinds of lies: lies, damn lies, and statistics."
Benjamin Disraeli

"Then there was the man who drowned crossing a stream with an average 
depth of six inches."
W. I. E. Gates




From:   Martin Grigorov <mg...@apache.org>
To:     users@wicket.apache.org
Date:   05/11/2012 02:26 AM
Subject:        Re: Ajax Error in MSIE 8



Hi,

Which version of Wicket ?
In what conditions this happen ? I.e. do you click on a link or do you
submit a form or ...

On Thu, May 10, 2012 at 11:33 PM, Richard W. Adams <RW...@up.com> 
wrote:
> I'm getting Ajax errors that seems to occur only in Internet Explorer 8
> (same code works fine in IE9 & Firefox). I'm in a corporate environment
> where IE8 support is a requirement, so wanted to see if anyone has seen
> this before & knows of a fix. The Wicket Ajax trace is below; the parser
> says it can't find the root element in the Ajax response. We've seen 
this
> same error on various pages, though it doesn't ALWAYS occur:
>
>
> INFO: focus removed from wicket-generated-id-18
> INFO:
> INFO: Initiating Ajax GET request on
> 
?wicket:interface=:6:form:main-box:mp-form:primary-track-box:primary-icon::IBehaviorListener:1:&random=0.9122150377237917
> INFO: Invoking pre-call handler(s)...
> INFO: Received ajax response (4130 characters)
> INFO:
> <?xml version="1.0" encoding="UTF-8"?><ajax-response><component
> id="successFeedback91" ><![CDATA[<div id="successFeedback91"
> style="display:none"></div>]]></component><component id="infoFeedback93"
>><![CDATA[<div id="infoFeedback93"
> style="display:none"></div>]]></component><component 
id="errorFeedback94"
>><![CDATA[<div id="errorFeedback94"
> style="display:none"></div>]]></component><component id="warnFeedback92"
>><![CDATA[<div id="warnFeedback92"
> style="display:none"></div>]]></component><header-contribution
> encoding="wicket1" ><![CDATA[<head xmlns:wicket="
http://wicket.apache.org
> "><script type="text/javascript"
> 
src="resources/com.uprr.enm.web.mp.behavior.MilepostReference/milepostreference.js"></script>
>
> <script type="text/javascript"
> 
src="resources/org.apache.wicket.markup.html.WicketEventReference/wicket-event.js"></script>
>
> <script type="text/javascript"
> 
src="resources/org.apache.wicket.ajax.WicketAjaxReference/wicket-ajax.js"></script>
>
> <script type="text/javascript"
> 
src="resources/org.apache.wicket.ajax.AbstractDefaultAjaxBehavior/wicket-ajax-debug.js"></script>
>
> <script type="text/javascript"
> id="wicket-ajax-debug-enable"><!--/*--><![CDATA[/*><!--*/
> wicketAjaxDebugEnable=true;
> /*-->]^]^>*/</script>
>
> </head>]]></header-contribution><component id="primaryMpOther9c"
>><![CDATA[<input class="numeric ricInputText" value="505.000"
> name="main-box:mp-form:primary-track-box:primaryMpOther"
> id="primaryMpOther9c" maxlength="9" size="11" type="text" onblur="var
> 
wcall=wicketAjaxPost('?wicket:interface=:6:form:main-box:mp-form:primary-track-box:primaryMpOther::IBehaviorListener:4:-1',
> wicketSerialize(Wicket.$('primaryMpOther9c')),function() {
> }.bind(this),function() { }.bind(this), function() {return
> Wicket.$('primaryMpOther9c') != null;}.bind(this));" xmlns:wicket="
> http://wicket.apache.org"/>]]></component><header-contribution
> encoding="wicket1" ><![CDATA[<head xmlns:wicket="
http://wicket.apache.org
> "><script type="text/javascript"
> id="attachChoice"><!--/*--><![CDATA[/*><!--*/
> function attachChoiceHandlers(markupId, callbackScript) {
>  var inputNodes = wicketGet(markupId).getElementsByTagName('input');
>  for (var i = 0 ; i < inputNodes.length ; i ++) {
>  var inputNode = inputNodes[i]^;
>  if (!inputNode.type) continue;
>  if
> 
(!(inputNode.className.indexOf('wicket-'+markupId)>=0)&&!(inputNode.id.indexOf(markupId+'-')>=0))
> continue;
>  var inputType = inputNode.type.toLowerCase();
>  if (inputType == 'checkbox' || inputType == 'radio') {
>  Wicket.Event.add(inputNode, 'click', callbackScript);
>  }
>  }
> }
>
> /*-->]^]^>*/</script>
>
> </head>]]></header-contribution><component id="primaryMpSelection8f"
>><![CDATA[<span id="primaryMpSelection8f" xmlns:wicket="
> http://wicket.apache.org"><input
> name="main-box:mp-form:primary-track-box:primaryMpSelection" 
type="radio"
> value="0" id="primaryMpSelection8f-0"/><label
> for="primaryMpSelection8f-0">Start (503.940)</label><br />
> <input name="main-box:mp-form:primary-track-box:primaryMpSelection"
> type="radio" value="1" id="primaryMpSelection8f-1"/><label
> for="primaryMpSelection8f-1">End (538.200)</label><br />
> <input name="main-box:mp-form:primary-track-box:primaryMpSelection"
> type="radio" checked="checked" value="2"
> id="primaryMpSelection8f-2"/><label
> for="primaryMpSelection8f-2">Other</label><br />
> 
</span>]]></component><evaluate><![CDATA[$('#successFeedback91').trigger('ricolaFeedbackDismissed');]]></evaluate><evaluate><![CDATA[$('#infoFeedback93').trigger('ricolaFeedbackDismissed');]]></evaluate><evaluate><![CDATA[$('#errorFeedback94').trigger('ricolaFeedbackDismissed');]]></evaluate><evaluate><![CDATA[$('#warnFeedback92').trigger('ricolaFeedbackDismissed');]]></evaluate><evaluate><![CDATA[attachChoiceHandlers('primaryMpSelection8f',
> function() {var
> 
wcall=wicketAjaxPost('?wicket:interface=:6:form:main-box:mp-form:primary-track-box:primaryMpSelection::IActivePageBehaviorListener:0:-1&wicket:ignoreIfNotActive=true',
> 
wicketSerializeForm(document.getElementById('primaryMpSelection8f',false)),function()
> { }.bind(this),function() { }.bind(this), function() {return
> Wicket.$('primaryMpSelection8f') !=
> null;}.bind(this));});]]></evaluate></ajax-response>
> ERROR: Wicket.Ajax.Call.failure: Error while parsing response: Could not
> find root <ajax-response> element
> INFO: Invoking post-call handler(s)...
> INFO: Invoking failure handler(s)...
>
>
> **
>
> This email and any attachments may contain information that is 
confidential and/or privileged for the sole use of the intended recipient. 
 Any use, review, disclosure, copying, distribution or reliance by others, 
and any forwarding of this email or its contents, without the express 
permission of the sender is strictly prohibited by law.  If you are not 
the intended recipient, please contact the sender immediately, delete the 
e-mail and destroy all copies.
> **



-- 
Martin Grigorov
jWeekend
Training, Consulting, Development
http://jWeekend.com

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@wicket.apache.org
For additional commands, e-mail: users-help@wicket.apache.org




**

This email and any attachments may contain information that is confidential and/or privileged for the sole use of the intended recipient.  Any use, review, disclosure, copying, distribution or reliance by others, and any forwarding of this email or its contents, without the express permission of the sender is strictly prohibited by law.  If you are not the intended recipient, please contact the sender immediately, delete the e-mail and destroy all copies.
**

Re: Ajax Error in MSIE 8

Posted by Martin Grigorov <mg...@apache.org>.
Hi,

Which version of Wicket ?
In what conditions this happen ? I.e. do you click on a link or do you
submit a form or ...

On Thu, May 10, 2012 at 11:33 PM, Richard W. Adams <RW...@up.com> wrote:
> I'm getting Ajax errors that seems to occur only in Internet Explorer 8
> (same code works fine in IE9 & Firefox). I'm in a corporate environment
> where IE8 support is a requirement, so wanted to see if anyone has seen
> this before & knows of a fix. The Wicket Ajax trace is below; the parser
> says it can't find the root element in the Ajax response. We've seen this
> same error on various pages, though it doesn't ALWAYS occur:
>
>
> INFO: focus removed from wicket-generated-id-18
> INFO:
> INFO: Initiating Ajax GET request on
> ?wicket:interface=:6:form:main-box:mp-form:primary-track-box:primary-icon::IBehaviorListener:1:&random=0.9122150377237917
> INFO: Invoking pre-call handler(s)...
> INFO: Received ajax response (4130 characters)
> INFO:
> <?xml version="1.0" encoding="UTF-8"?><ajax-response><component
> id="successFeedback91" ><![CDATA[<div id="successFeedback91"
> style="display:none"></div>]]></component><component id="infoFeedback93"
>><![CDATA[<div id="infoFeedback93"
> style="display:none"></div>]]></component><component id="errorFeedback94"
>><![CDATA[<div id="errorFeedback94"
> style="display:none"></div>]]></component><component id="warnFeedback92"
>><![CDATA[<div id="warnFeedback92"
> style="display:none"></div>]]></component><header-contribution
> encoding="wicket1" ><![CDATA[<head xmlns:wicket="http://wicket.apache.org
> "><script type="text/javascript"
> src="resources/com.uprr.enm.web.mp.behavior.MilepostReference/milepostreference.js"></script>
>
> <script type="text/javascript"
> src="resources/org.apache.wicket.markup.html.WicketEventReference/wicket-event.js"></script>
>
> <script type="text/javascript"
> src="resources/org.apache.wicket.ajax.WicketAjaxReference/wicket-ajax.js"></script>
>
> <script type="text/javascript"
> src="resources/org.apache.wicket.ajax.AbstractDefaultAjaxBehavior/wicket-ajax-debug.js"></script>
>
> <script type="text/javascript"
> id="wicket-ajax-debug-enable"><!--/*--><![CDATA[/*><!--*/
> wicketAjaxDebugEnable=true;
> /*-->]^]^>*/</script>
>
> </head>]]></header-contribution><component id="primaryMpOther9c"
>><![CDATA[<input class="numeric ricInputText" value="505.000"
> name="main-box:mp-form:primary-track-box:primaryMpOther"
> id="primaryMpOther9c" maxlength="9" size="11" type="text" onblur="var
> wcall=wicketAjaxPost('?wicket:interface=:6:form:main-box:mp-form:primary-track-box:primaryMpOther::IBehaviorListener:4:-1',
> wicketSerialize(Wicket.$('primaryMpOther9c')),function() {
> }.bind(this),function() { }.bind(this), function() {return
> Wicket.$('primaryMpOther9c') != null;}.bind(this));" xmlns:wicket="
> http://wicket.apache.org"/>]]></component><header-contribution
> encoding="wicket1" ><![CDATA[<head xmlns:wicket="http://wicket.apache.org
> "><script type="text/javascript"
> id="attachChoice"><!--/*--><![CDATA[/*><!--*/
> function attachChoiceHandlers(markupId, callbackScript) {
>  var inputNodes = wicketGet(markupId).getElementsByTagName('input');
>  for (var i = 0 ; i < inputNodes.length ; i ++) {
>  var inputNode = inputNodes[i]^;
>  if (!inputNode.type) continue;
>  if
> (!(inputNode.className.indexOf('wicket-'+markupId)>=0)&&!(inputNode.id.indexOf(markupId+'-')>=0))
> continue;
>  var inputType = inputNode.type.toLowerCase();
>  if (inputType == 'checkbox' || inputType == 'radio') {
>  Wicket.Event.add(inputNode, 'click', callbackScript);
>  }
>  }
> }
>
> /*-->]^]^>*/</script>
>
> </head>]]></header-contribution><component id="primaryMpSelection8f"
>><![CDATA[<span id="primaryMpSelection8f" xmlns:wicket="
> http://wicket.apache.org"><input
> name="main-box:mp-form:primary-track-box:primaryMpSelection" type="radio"
> value="0" id="primaryMpSelection8f-0"/><label
> for="primaryMpSelection8f-0">Start (503.940)</label><br />
> <input name="main-box:mp-form:primary-track-box:primaryMpSelection"
> type="radio" value="1" id="primaryMpSelection8f-1"/><label
> for="primaryMpSelection8f-1">End (538.200)</label><br />
> <input name="main-box:mp-form:primary-track-box:primaryMpSelection"
> type="radio" checked="checked" value="2"
> id="primaryMpSelection8f-2"/><label
> for="primaryMpSelection8f-2">Other</label><br />
> </span>]]></component><evaluate><![CDATA[$('#successFeedback91').trigger('ricolaFeedbackDismissed');]]></evaluate><evaluate><![CDATA[$('#infoFeedback93').trigger('ricolaFeedbackDismissed');]]></evaluate><evaluate><![CDATA[$('#errorFeedback94').trigger('ricolaFeedbackDismissed');]]></evaluate><evaluate><![CDATA[$('#warnFeedback92').trigger('ricolaFeedbackDismissed');]]></evaluate><evaluate><![CDATA[attachChoiceHandlers('primaryMpSelection8f',
> function() {var
> wcall=wicketAjaxPost('?wicket:interface=:6:form:main-box:mp-form:primary-track-box:primaryMpSelection::IActivePageBehaviorListener:0:-1&wicket:ignoreIfNotActive=true',
> wicketSerializeForm(document.getElementById('primaryMpSelection8f',false)),function()
> { }.bind(this),function() { }.bind(this), function() {return
> Wicket.$('primaryMpSelection8f') !=
> null;}.bind(this));});]]></evaluate></ajax-response>
> ERROR: Wicket.Ajax.Call.failure: Error while parsing response: Could not
> find root <ajax-response> element
> INFO: Invoking post-call handler(s)...
> INFO: Invoking failure handler(s)...
>
>
> **
>
> This email and any attachments may contain information that is confidential and/or privileged for the sole use of the intended recipient.  Any use, review, disclosure, copying, distribution or reliance by others, and any forwarding of this email or its contents, without the express permission of the sender is strictly prohibited by law.  If you are not the intended recipient, please contact the sender immediately, delete the e-mail and destroy all copies.
> **



-- 
Martin Grigorov
jWeekend
Training, Consulting, Development
http://jWeekend.com

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@wicket.apache.org
For additional commands, e-mail: users-help@wicket.apache.org