问题标签 [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 回答
2074 浏览

java - Struts2 验证中的短路

让我们假设BigDecimal动作类中有一个类型字段,如下所示。

以下是表格。

我想达到,

  1. 如果该字段留空,则唯一的消息“价格”是必填项。应该通过显示@RequiredFieldValidator
  2. 如果输入了像“abc”这样的非数字值,它应该只显示来自属性文件的转换错误消息。
  3. 如果尝试负值,则唯一的消息Price 不能小于或等于零。应该通过@FieldExpressionValidator.

一次应该出现一个转换错误或一个验证错误。

这可能吗?到目前为止,我还没有正确理解该shourtCircuit属性的功能。

0 投票
1 回答
123 浏览

java - struts2 应用程序中可以同时存在代码隐藏和约定插件吗?

我想在我的 struts2(2.3.15.3) 应用程序中同时使用代码隐藏和约定插件。我试过配置它。后面的代码像以前一样工作,但基于约定的操作没有按预期工作(404 错误找不到映射)。因此,通过一些struts代码调试,发现它在启动时加载了插件代码和约定,并将由包组织的所有动作类的动作映射构建到一个RuntimeConfiguraion类型的公共对象中。

想退一步问一个问题,struts 默认情况下是否支持同时使用代码隐藏和约定插件?除了http://struts.apache.org/release/2.1.x/docs/convention-plugin.html上的文档之外,我还需要进行任何特定配置吗?

我没有使用 struts2-rest-plugin。

0 投票
1 回答
4198 浏览

java - 带有注释错误的 Struts 2:无法找到父包

我正在尝试将磁贴与 Struts 2 一起使用。我在操作类上使用注释,如下所示。我已经使用 Convention Plugin 定义了一个默认父包,并且还定义了从包rcg.console扩展的struts-defaulttiles-default

但是,当我启动 Tomcat 服务器时,出现以下异常。但是,如果我将 @ParentPackage(value="rcg.console") 操作类上的注释更改为 @ParentPackage(value="tiles-default"),错误就会消失。如果我没有定义@ParentPackage注释,struts 将无法检测到我的"tiles" result-type. 谁能帮我解决这个问题?

我的truts.xml文件:

我的web.xml文件:

我的tiles.xml文件:

我的动作课:

0 投票
0 回答
2635 浏览

jsp - 没有为命名空间 [/] 映射的操作和与上下文路径 [] 关联的操作名称 [searchUser]

在将我的 Struts Action 转换为注释之前,该项目运行良好。但现在我试图处理注释,并出现此错误。我之前struts.xml包含该操作的文件是:

现在我把它转换成注释,我的MemberCrudOperations

我的视图文件是:

Struts 问题报告

0 投票
1 回答
1174 浏览

java - struts2 约定插件在 EAR 中不起作用,但在 WAR 中可以正常工作

当我部署 WAR 文件时,约定插件能够使用注释找到动作类,但无法在 EAR 中找到动作。

  • glassfish- v2.1.1
  • struts2-convention-plugin-2.3.15.3

struts.xml 文件内容:

堆栈跟踪:

动作类:

0 投票
1 回答
321 浏览

java - 使用 spring 管理 struts 动作(由约定插件配置)

我们正在使用 Struts 2 + Spring 4,我们想要设置 spring 来管理我们的 struts 2 动作。

spring bean 由注释定义。

struts.xmlstruts 动作位于约定插件中,因此我们在文件中没有任何动作。

动作如下:

上面的代码有效。但是我想寻找是否有更好的方法,所以我们可以省略 className (这正是动作名称的骆驼转换)

可能吗?!

0 投票
1 回答
373 浏览

java - 如何使用注释设置别名拦截器的参数

我是 Struts 2 的新手

我想将别名拦截器与注释一起使用。

但我总是得到错误:

警告:在类型“com.opensymphony.xwork2.interceptor.AliasInterceptor”上设置属性“别名”时捕获 OgnlException。

0 投票
1 回答
1700 浏览

tomcat - Tomcat 8.x 上的 Struts2 约定插件被破坏 - org.apache.struts2.convention.PackageBasedActionConfigBuilder.error 无法扫描命名包

我正在使用 Struts 2.3.16 以及相同版本的约定插件。该应用程序在 Tomcat 7.0.35 上运行良好,但在 Tomcat 8.0.3.0 上失败并出现以下异常。

相关动作类中的动作被映射成很长的行,

网页存放在下面/WEB-INF/content,配置文件struts.properties存放在下面/WEB-INF/classes.

是否需要一些新的更改才能在 Tomcat 8.x 上正常工作?

0 投票
1 回答
4743 浏览

java - 将 index.jsp 重定向到 Struts 2 Action

相关: 如何将欢迎页面设置为 struts 操作?

我正在尝试将我的欢迎页面 index.jsp 重定向到一个操作 (Struts2)。相关帖子中的任何选项都不适合我:

我遵循这个FLOW结构:

这有效,但不太优雅(index.jsp):

我正在尝试这样做(index.jsp):

我只使用注释,请不要配置 XML 文件。

编辑

澄清一下,这是由 response.sendRedirect 发送到浏览器的 http 标头:

此位置 ( http://cmabreu.com.br/basico/ ) 指向 index.jsp,其中:

并显示 indexRedir 动作指向的 JSP 页面的内容。谷歌网站管理员工具和一些机器人不关注这样的页面。

在此处查看更多信息:http ://en.wikipedia.org/wiki/HTTP_302

0 投票
0 回答
203 浏览

java - Struts2 Convention 插件不扫描动作类

项目结构
项目结构

web.xml

HelloWorldAction.java

你好世界.jsp

当我链接到 /hello-world 时,我只看到“这是消息”文本,但没有 ${message} 的值。控制台也不显示 System.out.println() 的消息。因此,HelloWorldAction 不会调用。我做错了什么?
PS我正在使用struts2-convention-plugin-2.3.16.3。

在插入 log4j 并查看日志后,这个问题就解决了。我的类路径中没有 asm 库。
类路径