I have finally solved it! I did not modify any template.

This is the code in my subscribe function:

if (type == "load") {
           dojo.require("dojo.widget.Parse");
           var widgetParser = new dojo.widget.Parse();
           var xmlParser = new dojo.xml.Parse();
           var initIndex = data.indexOf("<form");
           var endIndex = data.indexOf("</form>");
           if ((initIndex != -1) && (endIndex != -1)) {
               var formStr = data.substring(initIndex, endIndex+7);
               var div = document.createElement("div");
               div.innerHTML = formStr;
               var results = widgetParser.createComponents(
                   xmlParser.parseElement(div.childNodes[0],null,true));
               for (var i = 0; i < results.length; i++) {
                   var formNode = results[i].formNode;
                   if (formNode && formNode != "") {
                       form1 = formNode;
                   }
               }
} else {
               form1 = undefined;
           }

Sébastien Domergue escribió:
When a jsp enters in struts' filter, it's read and each tag prefixed by <s: (if such declared for struts tag use) is rewrite using the ftl files in the template package. It's one of the core purposes and I don't think it's a good idea to change this. I would rather recommend you to modifiy the ftl instead or try not to use dojo by loocking at the ftl. It seems that there is a way not to call dojo but another mecanism with some parameter (but i'm not sure).

You're welcome.

Pablo Vázquez Blázquez a écrit :
I would prefer to call whatever struts calls to apply this template instead of changing it. Do you know how struts invokes this template?

Thank you.

Sébastien Domergue escribió:
I finally found where struts call dojo. In struts' jar, check the package template.simple. You'll find datetimepicker.ftl. This is the base used by struts to generate HTML. The syntax is not very hard and you'll easily see where dojo is called. If you want to modify this, you can modify the inner ftl (use with caution) or build a new external template. The problem when you create a template from "simple" is that when you use all of the others, you call simple.

Regards

Sébastien

Pablo Vázquez Blázquez a écrit :
Yes, that is my problem. Do you know how to do to get it? I don´t see where struts call dojo via javascript to parse the form...

Thank you very much.

Sébastien Domergue escribió:
Sorry for the misunderstanding.
The difference that you see between the form while loading and the form loaded comes from dojo widget only. Struts rewrites the tag <s:datetimepicker> with a call to dojo (in javascript) which is executed on the client side. You could find the process construction in dojo's source (widget>DatePicker.js).

Regards,
Sébastien

Pablo Vázquez Blázquez a écrit :
Thank you Sébastien, but this is not actually my issue, but when does dojo do create the hidden inputs for each s:datetimepicker tag. (why if I have the form when loads and once it is loaded, they are different.)

Sébastien Domergue escribió:
Hello,

We are using Struts 2 + Dojo too and it seems that datetimepicker separate informations into a list with two elements. The first one is the date and the second one is the time. Nevertheless, we still have problems to repopulate our inputs after an action. So we "rebuild" Strings to render informations.

Regards,
Sébastien

Pablo Vázquez Blázquez a écrit :
Hello,

I am using Struts 2.0.9 + dojo 0.4.

I would like to know when dojo adds two hidden inputs for each <s:datetimepicker> tag.

I have a topic that is published when I load a form and when I recieve the data and parse the form (type == "load"), it has "N" elements. When the form is rendered, if I see it in the DOM, it has N+2*m elements (where "m" is the number of s:datetimepicker tags the form has). So, why when I get the form from the data response in the subscribed topic those input tags are not present? When are they created?

Thanks,

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



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

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



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

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



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

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



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

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to