首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >使用Struts jquery插件升级到struts 6时出错

使用Struts jquery插件升级到struts 6时出错
EN

Stack Overflow用户
提问于 2022-08-15 06:31:08
回答 1查看 281关注 0票数 0

我们已经升级到Struts 6.0.0Struts 2 jquery plugin version 4.0.3项目。在加载页面时,我们会遇到以下错误:

代码语言:javascript
运行
复制
Could not load the FreeMarker template named 'div':
Attempted: /template/jquery/div.ftl
Attempted: /template/xhtml/div.ftl
Attempted: /template/simple/div.ftl
The TemplateLoader provided by the FreeMarker Configuration was a: org.apache.struts2.views.freemarker.FreemarkerThemeTemplateLoader
Could not open template

堆栈跟踪原因是:

代码语言:javascript
运行
复制
Caused by: freemarker.core.ParseException: Syntax error in template "template/jquery/div.ftl" in line 22, column 43:
Using ?html (legacy escaping) is not allowed when auto-escaping is on with a markup output format (HTML), to avoid double-escaping mistakes.
    at freemarker.core.FMParser.BuiltIn(FMParser.java:1225)
    at freemarker.core.FMParser.PrimaryExpression(FMParser.java:595)
    at freemarker.core.FMParser.UnaryExpression(FMParser.java:707)
    at freemarker.core.FMParser.MultiplicativeExpression(FMParser.java:822)

文件template/jquery/div.ftl中的第22行如下:

代码语言:javascript
运行
复制
<#if parameters.id??> id="${parameters.id?html}"<#rt/></#if>

我不熟悉Freemaker,我希望我能找到一个旗帜或什么东西来传递这个。

我在https://cwiki.apache.org/confluence/display/WW/Struts+2.5+to+6.0.0+migrationhttps://struts.apache.org/tag-developers/tag-syntax#escaping-body-of-a-tag上看到了迁移指南,但是找不到这个问题。

我试图在struts.ui.escapeHtmlBody中设置struts.xml,但这没有帮助。

EN

回答 1

Stack Overflow用户

发布于 2022-08-27 11:03:38

根据https://github.com/struts-community-plugins/struts2-jquery,对于Struts6.0,必须使用struts jQuery插件6.0。

pom.xml中更改下面的内容,修复它

代码语言:javascript
运行
复制
 <dependency>
    <groupId>com.jgeppert.struts2.jquery</groupId>
    <artifactId>struts2-jquery-plugin</artifactId>
    <version>5.0.0</version>
</dependency>
<dependency>
    <groupId>com.jgeppert.struts2.jquery</groupId>
    <artifactId>struts2-jquery-grid-plugin</artifactId>
    <version>5.0.0</version>
</dependency>
<dependency>
    <groupId>com.jgeppert.struts2.jquery</groupId>
    <artifactId>struts2-jquery-datatables-plugin</artifactId>
    <version>5.0.0</version>
</dependency>
<dependency>
    <groupId>com.jgeppert.struts2.jquery</groupId>
    <artifactId>struts2-jquery-richtext-plugin</artifactId>
    <version>5.0.0</version>
</dependency>
<dependency>
    <groupId>com.jgeppert.struts2.jquery</groupId>
    <artifactId>struts2-jquery-tree-plugin</artifactId>
    <version>5.0.0</version>
</dependency>
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/73357558

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档