问题标签 [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.
java - Struts2 验证中的短路
让我们假设BigDecimal
动作类中有一个类型字段,如下所示。
以下是表格。
我想达到,
- 如果该字段留空,则唯一的消息“价格”是必填项。应该通过显示
@RequiredFieldValidator
- 如果输入了像“abc”这样的非数字值,它应该只显示来自属性文件的转换错误消息。
- 如果尝试负值,则唯一的消息Price 不能小于或等于零。应该通过
@FieldExpressionValidator
.
一次应该出现一个转换错误或一个验证错误。
这可能吗?到目前为止,我还没有正确理解该shourtCircuit
属性的功能。
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。
java - 带有注释错误的 Struts 2:无法找到父包
我正在尝试将磁贴与 Struts 2 一起使用。我在操作类上使用注释,如下所示。我已经使用 Convention Plugin 定义了一个默认父包,并且还定义了从包rcg.console
扩展的struts-default
包tiles-default
。
但是,当我启动 Tomcat 服务器时,出现以下异常。但是,如果我将
@ParentPackage(value="rcg.console")
操作类上的注释更改为
@ParentPackage(value="tiles-default")
,错误就会消失。如果我没有定义@ParentPackage
注释,struts 将无法检测到我的"tiles"
result-type
. 谁能帮我解决这个问题?
我的truts.xml
文件:
我的web.xml
文件:
我的tiles.xml
文件:
我的动作课:
jsp - 没有为命名空间 [/] 映射的操作和与上下文路径 [] 关联的操作名称 [searchUser]
在将我的 Struts Action 转换为注释之前,该项目运行良好。但现在我试图处理注释,并出现此错误。我之前struts.xml
包含该操作的文件是:
现在我把它转换成注释,我的MemberCrudOperations
课
我的视图文件是:
Struts 问题报告
java - struts2 约定插件在 EAR 中不起作用,但在 WAR 中可以正常工作
当我部署 WAR 文件时,约定插件能够使用注释找到动作类,但无法在 EAR 中找到动作。
- glassfish- v2.1.1
- struts2-convention-plugin-2.3.15.3
struts.xml 文件内容:
堆栈跟踪:
动作类:
java - 使用 spring 管理 struts 动作(由约定插件配置)
我们正在使用 Struts 2 + Spring 4,我们想要设置 spring 来管理我们的 struts 2 动作。
spring bean 由注释定义。
struts.xml
struts 动作位于约定插件中,因此我们在文件中没有任何动作。
动作如下:
上面的代码有效。但是我想寻找是否有更好的方法,所以我们可以省略 className (这正是动作名称的骆驼转换)
可能吗?!
java - 如何使用注释设置别名拦截器的参数
我是 Struts 2 的新手
我想将别名拦截器与注释一起使用。
但我总是得到错误:
警告:在类型“com.opensymphony.xwork2.interceptor.AliasInterceptor”上设置属性“别名”时捕获 OgnlException。
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 上正常工作?
java - 将 index.jsp 重定向到 Struts 2 Action
我正在尝试将我的欢迎页面 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
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 库。