问题标签 [struts2-convention-plugin]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1219 浏览

java - 调用动作时Struts 2注释错误

大家好,我在使用 Struts 2 Annotated Actions 时遇到问题

在我的pom.xml我有:

在我的web.xml

我有两个动作类:

如果我调用第一个http://localhost:8080/openMED/do/budget/start.action一切正常,但是当我调用第二个时,http://localhost:8080/openMED/do/upload/init.action我会收到此错误

怎么了?两个类的配置方式相同。

0 投票
1 回答
596 浏览

java - 如何在 Struts 2 中使用注解定义拦截器

我正在尝试使用struts2-convention-plugin提供 Java 注释的 which 来定义 Struts2 组件。

Actions 到目前为止这么好,但是我如何使用注释来定义拦截器?(我说的是@InterceptorRefs@InterceptorRef)。

这甚至可能吗?目前我已经在struts.xml文件中配置了带有注释和拦截器的操作。

是否可以完全消除struts.xml文件并使用 100% 面向注释的配置?

0 投票
1 回答
1568 浏览

struts2 - 如何在不使用 struts.xml 中的常量的情况下从 URL 中删除 .action

我正在使用 Struts 2 约定插件。我不想在我的应用程序中使用任何基于 XML 的配置。那么,在这种情况下,如何在不使用in 的情况下.action从 URL 中删除扩展名?我目前仅使用文件来删除扩展名。是否有任何注释可以删除扩展名?<constant name="struts.action.extension" value="" />struts.xmlstruts.xml.action.action

0 投票
0 回答
230 浏览

struts2 - 应用程序无法识别 Struts2 中的 package.properties

我遇到了 Struts2 应用程序无法识别我的package.properties. 我不知道为什么。global.properties但它在指定struts.custom.i18n.resources=global后识别struts.properties。我正在使用 struts 约定来避免struts.xml配置。我的应用程序包结构如下:

0 投票
1 回答
2060 浏览

java - 如何在不使用任何动作类的情况下使用 Struts2 约定

在 Struts2 中,我们可以在不使用动作类的情况下定义动作struts.xml,如下所示:

在我的应用程序中,我正在使用struts2 convention. 在这种情况下如何避免编写动作类。我有很多场景,我只想去页面而不使用任何业务逻辑。

我的结果路径不仅仅是一个 JSP。我正在使用瓷砖。我使用的代码如下:

0 投票
1 回答
131 浏览

java - 使用带有 struts.xml 的约定插件

我在我的项目中使用约定插件,一切都很好,直到我需要添加一个自定义拦截器。

要添加自定义拦截器,我需要struts.xml在我的项目中拥有。但是当我添加时struts.xml,每页都会出现 404 错误。

我已经尝试过这个解决方案,但它似乎不起作用。

0 投票
1 回答
193 浏览

java - 启用约定插件会破坏 xml 映射

我有一个使用 xml 配置的 struts2 映射的旧项目。我想让它更新鲜一点并使用注释映射,就像在 spring mvc 中那样。所以我发现,struts2 允许这样做。但是在我添加之后

到我的 pom xml。我的 xml 配置停止工作。

这是我的struts.xml

我从 maven pom 中删除了插件。我调试了struts,我在DefaultActionInvocation.createResult()网上看到proxy.getConfig()的内容如下:

当我展开"results"部分时,我看到两个结果映射"success""exception"

在我启用插件后,pom.xml我在同一行看到以下内容:

在我点击该网址后,出现以下错误:

我没有向 中添加@Action注释MyAction,但似乎约定插件Action在查看 xml 配置之前选择了旧类并构建了映射配置,这就是为什么我有一个错误,即没有任何内容映射到"success"结果上。

有人遇到过这个问题以及如何解决吗?

0 投票
1 回答
602 浏览

java - struts 形式的多动作

我想将 3 个按钮添加到 struts 表单中。我的代码是:

在jsp中:

问题是它不能调用确切的动作。

我总是收到错误消息:“没有为命名空间 /admin/product 和操作名称 admin/product/update 映射操作。”。

我必须将其拆分为 3 种形式吗?或者有没有办法像我的代码一样以 1 种形式为 3 个动作提供 3 个按钮?任何帮助都会很棒。

启用 devmode 时更新了日志记录:

0 投票
1 回答
2000 浏览

exception - 为什么我的拦截器引发的异常未被捕获?

我有一个自定义拦截器,我从中抛出异常;

运行 Interceptor 的 Action(s) 由 Convention 插件管理;

拦截器引发的异常在 struts.xml 中为 Action 正在运行的包全局定义。

结果:异常映射被忽略,我得到

Struts 问题报告

Struts 检测到一个未处理的异常:

堆栈跟踪

java.lang.IllegalArgumentException:我的消息

我想我只是错过了一些愚蠢的东西......我们已经在类似的问题中讨论过这个问题,但仍然不清楚它是否可以这样工作:

struts.xml

行动

拦截器

我还尝试在抽象 BaseAction 或物理实际 Action 本身中定义全局结果/全局异常映射,但它们也被忽略了。

关于添加/删除/更改什么以使其正常工作的任何想法?这不是深奥的东西,这是基本的:|

0 投票
2 回答
1406 浏览

java - 在 Struts 2 中重用自定义表达式验证器

在 Struts 2 中,我们可以开发@CustomValidator可在应用范围内使用的

为了验证我们使用的多个字段@ExpressionValidator

如果表达式太复杂并且需要处理多个字段,我们使用 OGNL 调用静态方法。静态方法将进行验证并返回boolean例如

以上是自定义表达式验证器的一些方法!

我们@foo.bar.CalendarUtil@compareDates在应用程序范围内使用为我们进行此验证。

是否有另一种方法使我们能够使用自定义范围验证器?!

是否有任何自定义表达式验证器可以添加到 Struts 中并且我们可以Action以我们使用的方式调用它@CustomValidator