2013-07-12 31 views
0

我有一个基本的表,其中一些值由thymeleaf通过th:text=标签提供。当蒲公英dataTablesDialect存在时,Thymeleaf模板表破坏

这一切都正常工作,直到我们将dandelion.datatables.thymeleaf.dialect.DataTablesDialect作为第二方言添加到我们的模板引擎。

本数据表方言,我得到下面的异常在th:text

org.thymeleaf.exceptions.TemplateProcessingException: Error processing template: dialect prefix "th" is set as non-lenient but attribute "th:text" has not been removed during process 

这似乎是几乎同样的问题,这里列出的第一个实例:Error parsing thymeleaf template,但我希望有一个更好的解决方案除了 “不使用dataTablesDialect”

感谢

---------------更新---------------- -------------------------

我的Java的配置:

@Bean 
public ThymeleafViewResolver thymeleafViewResolver() { 
    ThymeleafViewResolver viewResolver = new ThymeleafViewResolver(); 
    viewResolver.setTemplateEngine(templateEngine()); 
    viewResolver.setViewNames(new String[]{"template*"}); 
    viewResolver.setOrder(1); 

    return viewResolver; 
} 

@Bean 
public ServletContextTemplateResolver templateResolver() { 
    ServletContextTemplateResolver templateResolver = new ServletContextTemplateResolver(); 

    templateResolver.setPrefix("/WEB-INF/views/"); 
    templateResolver.setSuffix(".html"); 
    templateResolver.setTemplateMode("HTML5"); 
    templateResolver.setCacheable(false); 

    return templateResolver; 
} 

@Bean 
public SpringTemplateEngine templateEngine() { 
    SpringTemplateEngine templateEngine = new SpringTemplateEngine(); 

    templateEngine.setTemplateResolver(templateResolver()); 
    templateEngine.addDialect(dataTablesDialect()); 

    return templateEngine; 
} 

@Bean 
public DataTablesDialect dataTablesDialect() { 
    return new DataTablesDialect(); 
} 

@Bean 
public ContentNegotiatingViewResolver contentNegotiatingViewResolver() { 
    ContentNegotiatingViewResolver viewResolver = new ContentNegotiatingViewResolver(); 

    List<ViewResolver> viewResolvers = new ArrayList<ViewResolver>(); 
    viewResolvers.add(thymeleafViewResolver()); 
    viewResolver.setViewResolvers(viewResolvers); 

    return viewResolver; 
} 

我的模板有趣的部分:

<table id="reviewtable" > 
    <tbody class="gridtable"> 
    <tr> 
     <td >compare:</td> 
     <td th:text="${row.sys1Val}">111</td> 
     <td th:text="${row.sys2Val}">223</td> 
    </tr> 
</tbody> 
</table> 
+0

上显示的所有表格中使用DatatablesDialect嗨!你能否发布一段代码片段来显示你对DatatablesDialect的使用情况?谢谢! – tduchateau

回答

1

这是一个bug将固定在蒲公英,数据表0.9.0。

同时,有2个解决方案:

  • 的确,不要使用DatatablesDialect都: -/
  • 或同一页面