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

Reply via email to