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

Please create an issue for Wicket 6 (or 1.5.x). As you know, 1.4.x doesn't get 
bug fixes any longer.

Sven


On 02/13/2013 10:25 AM, Ernesto Reinaldo Barreiro wrote:
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>





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

Reply via email to