You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@wicket.apache.org by Gonzalo Aguilar Delgado <ga...@aguilardelgado.com> on 2012/11/20 10:31:13 UTC

Handling of Ajax response fails [Fragments]

Hello, 

I'm doing a scaffolding application for wicket + dojo. I'm using
fragments to change between EDIT, UPDATE, DELETE screens. 

On each switch I have to reinitializate components on the changed zone
of the web via javascript. I've implemented this in a clean
and efficient way ( I think ), because code generated is really concise
and tested.

The problem is that it works for 2 iterations. On the thirth it breaks
with an ajax DEBUG error.

---------------------------------------------------------
/*]^]^>*/

</script>
</head>]]></header-contribution></ajax-response>
ERROR: Wicket.Head.Contributor.processScript: TypeError: a is undefined: eval -> require(["dijit/MenuBar","dijit/registry","dojo/parser","dojo/ready","dijit/MenuBarItem","dojo/on"],function(MenuBar, registry, parser, ready, MenuBarItem, on) {
    // Component section begins
// Ready Dojo statement
ready(function() {
    // Added class dijit/MenuBar
parser.parse(registry.byId("toolbar29"));
// Added class dijit/MenuBarItem
parser.parse(registry.byId("id12a"));
on(registry.byId("id12a"), 'click',function(event) {
    if (true) {Wicket.Ajax.ajax({"u":"./?13-2.IBehaviorListener.2-scaffold-wscaffold~content-toolbar-dijitMenuBarItems-1","c":"id12a"});}
});
// Added class dijit/MenuBar
parser.parse(registry.byId("toolbar2b"));

});
});
INFO: Response processed successfully.
INFO: refocus last focused component not needed/allowed
INFO: focus set on wicketDebugLink
INFO: focus removed from wicketDebugLink


-------------------------------------

It weird because if I run this on firefox just after it breaks, It
works! And the code is similar on the three events I trigger on the 
tests.


What I do in the interface:

START POINT -> TRANSITION 1 -> START POINT (It breaks)

I was reading about this kind of problems but the only problem I can
find is that some components does not get destroyed. But this should be
not a problem
just right now because I create new components with new names in each
iteration. (Okay I know about the memory leaks, but's not the point just
right now).


Any help on this?

------

I pasted complete log in pastie.org

http://pastie.org/5405231


Thank you in advance!




Re: Handling of Ajax response fails [Fragments]

Posted by Gonzalo Aguilar Delgado <ga...@aguilardelgado.com>.
Hello, 

I will trace the Wicket.Head.Contributor.processScript to see what's
missing. It seems dojo libraries are not loaded at this point, even if
the script section that loads it is there. 

Any directions on how to trace this problem? I'm a little bit lost...

Thank you.
Kindest regards


El mar, 20-11-2012 a las 10:31 +0100, Gonzalo Aguilar Delgado escribió:

> Hello, 
> 
> I'm doing a scaffolding application for wicket + dojo. I'm using
> fragments to change between EDIT, UPDATE, DELETE screens. 
> 
> On each switch I have to reinitializate components on the changed zone
> of the web via javascript. I've implemented this in a clean
> and efficient way ( I think ), because code generated is really concise
> and tested.
> 
> The problem is that it works for 2 iterations. On the thirth it breaks
> with an ajax DEBUG error.
> 
> ---------------------------------------------------------
> /*]^]^>*/
> 
> </script>
> </head>]]></header-contribution></ajax-response>
> ERROR: Wicket.Head.Contributor.processScript: TypeError: a is undefined: eval -> require(["dijit/MenuBar","dijit/registry","dojo/parser","dojo/ready","dijit/MenuBarItem","dojo/on"],function(MenuBar, registry, parser, ready, MenuBarItem, on) {
>     // Component section begins
> // Ready Dojo statement
> ready(function() {
>     // Added class dijit/MenuBar
> parser.parse(registry.byId("toolbar29"));
> // Added class dijit/MenuBarItem
> parser.parse(registry.byId("id12a"));
> on(registry.byId("id12a"), 'click',function(event) {
>     if (true) {Wicket.Ajax.ajax({"u":"./?13-2.IBehaviorListener.2-scaffold-wscaffold~content-toolbar-dijitMenuBarItems-1","c":"id12a"});}
> });
> // Added class dijit/MenuBar
> parser.parse(registry.byId("toolbar2b"));
> 
> });
> });
> INFO: Response processed successfully.
> INFO: refocus last focused component not needed/allowed
> INFO: focus set on wicketDebugLink
> INFO: focus removed from wicketDebugLink
> 
> 
> -------------------------------------
> 
> It weird because if I run this on firefox just after it breaks, It
> works! And the code is similar on the three events I trigger on the 
> tests.
> 
> 
> What I do in the interface:
> 
> START POINT -> TRANSITION 1 -> START POINT (It breaks)
> 
> I was reading about this kind of problems but the only problem I can
> find is that some components does not get destroyed. But this should be
> not a problem
> just right now because I create new components with new names in each
> iteration. (Okay I know about the memory leaks, but's not the point just
> right now).
> 
> 
> Any help on this?
> 
> ------
> 
> I pasted complete log in pastie.org
> 
> http://pastie.org/5405231
> 
> 
> Thank you in advance!
> 
> 
>