Can you prepare a small Maven based demo app? 2014-04-09 14:00 GMT+02:00 Stuart James <ravenh...@btinternet.com>: > Hi, > I am developing an application which has been predominantly written with > Struts2 version 2.3.15.3 and the struts2-jquery-plugin version 3.6.1. > I have recently upgraded to Struts2 version 2.3.16.1 and > struts2-jquery-plugin version 3.7.0. > The application has used the css_xhtml theme throughout, defined in > struts.xml. > Since the upgrade, the HTML markup of the struts2-jquery-plugin (sj:) > components has been adversly affected. > I have debugged the application and found that the issue is caused by the > changes made to themes under WW-4145. > The situation appears to be this: > The struts2-jquery-plugin has implemented custom tags for their components > and these classes will return the value of 'jquery' in response to the > getTheme() method. They do appear to correctly store a 'parentTheme' > parameter with the correct value (in my case from the parent form element) of > 'css_xhtml'. > The struts2-jquery-plugin custom templates are successfully found on the > templates/jquery path, but some of them contain 'include' statements, for > example, the datepicker.ftl contains the following snippet: > > <#if parameters.parentTheme == 'css_xhtml'> > <#include "/${parameters.templateDir}/css_xhtml/controlheader.ftl" /> > </#if> > > So, at this point, all is well, the correct controlheader.ftl template for > the css_xhtml theme is found and included, however this template (now) > contains the following include: > > <#include > "/${parameters.templateDir}/${parameters.expandTheme}/controlheader-core.ftl"> > > And this is where it starts to go wrong. The ${parameters.expandTheme} > resolves to '~~~jquery' and, after reading the WW-4145 change info, I > understand that this will cause the ThemeManager to load the template from > the parent theme as defined in the theme.properties file. This, in the case > of the struts2-jquery-plugin, is defiend as 'xhtml' and NOT 'css_xhtml' as > discovered from the parent form component. Consequently, the wrong > controlheader-core.ftl template is included, and the resulting HTML includes > incorrect <tr> and <td> tags which ultimately break the page. > > Other than hacking the templates, I cannot see a satisfactory way of > resolving this problem, so any assistance would be gratefully received. > > Thanks > Steve > > --------------------------------------------------------------------- > To unsubscribe, e-mail: user-unsubscr...@struts.apache.org > For additional commands, e-mail: user-h...@struts.apache.org >
--------------------------------------------------------------------- To unsubscribe, e-mail: user-unsubscr...@struts.apache.org For additional commands, e-mail: user-h...@struts.apache.org