Hi,

On Wed, Feb 13, 2013 at 8:38 AM, Ernesto Reinaldo Barreiro <
reier...@gmail.com> wrote:

> Hi,
>
> We are having problems on Wicket 1.4.x with and "AJAX function"
> processEvaluation... and I see the code is practically the same at 6.x. So,
> let's bring the subject to the list...
>
> Our problem is that after evaluating some expressions with errors, screen
> "freezes" because post-call handlers are not called. Problem seems to be
> related to the code.
>
>                                 // test if the javascript is in form of
> identifier|code
> // if it is, we allow for letting the javascript decide when the rest of
> processing will continue
>  // by invoking identifier();
> var res = text.match(new
> RegExp("^([a-z|A-Z_][a-z|A-Z|0-9_]*)\\|((.|\\n)*)$"));
>
> if (res !== null) {
> var f = jQuery.noop;
> text = "f = function(" + res[1] + ") {" + res[2] + "};";
>
> try {
> // do the evaluation
> eval(text);
>  f(notify);
> } catch (exception) {
> Wicket.Log.error("Wicket.Ajax.Call.processEvaluation: Exception evaluating
> javascript: " + exception + ", text: " + text);
>  }
>
> }
>
>
> Questions:
>
> 1- Shouldn't
>
> text = "f = function(" + res[1] + ") {" + res[2] + "};";
>
> be
>
> text = "f = function(" + res[1] + ") {" + res[2] + ";" + res[1]+"();"
> +"};";
>
> so that f(notify) ==> notify() gets called?
>

Ok. This part is clearly correct according to

// test if the javascript is in form of identifier|code
// if it is, we allow for letting the javascript decide when the rest of
processing will continue
// by invoking identifier();
var res = text.match(new
RegExp("^([a-z|A-Z_][a-z|A-Z|0-9_]*)\\|((.|\\n)*)$"));

So, forget my question.


>
> 2- In case of error. Shouldn't it be
>
>                                       try {
> // do the evaluation
>  eval(text);
> f(notify);
> } catch (exception) {
>  Wicket.Log.error("Wicket.Ajax.Call.processEvaluation: Exception
> evaluating javascript: " + exception + ", text: " + text);
>                                                 notify();
> }
>

This I think is an error... as if eval fails... processing should continue.
Shall I create an issue for this?

>
> So that next steps in processing get called. The above solves or freezing
> problem in case of error but... I'm still not sure about 1) above.
>
> Can someone shed some light on the above?
>
> Thanks in advance!
>
> --
> Regards - Ernesto Reinaldo Barreiro
> Antilia Soft
> http://antiliasoft.com/ <http://antiliasoft.com/antilia>
>



-- 
Regards - Ernesto Reinaldo Barreiro
Antilia Soft
http://antiliasoft.com/ <http://antiliasoft.com/antilia>

Reply via email to