问题标签 [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.
spring - 带有拦截器的 Struts 2 注释不起作用
我一直在尝试在我的应用程序中实现拦截器,并且一切正常,直到我的操作中不包含拦截器注释。但是,当我在我的操作中添加 InterceptoRef 标记时,如下面的代码:
它开始给我例外
我将 Struts 2 与 Struts2-convention-plugin、Hibernate、Spring 一起使用,并使用 Maven 进行依赖管理。
我在 Maven 的 POM 文件中定义了以下依赖项:
我已将 Struts.xml 放在 src 根目录中。因此,据我认为配置中一定缺少一些东西。
Struts.xml 文件配置:
jsp - 使用验证时无法在struts 2中提交表单
在过去的几个小时里,我一直面临一个问题,每当我在应用程序中使用验证时,我都会在服务器端得到空值。
我的动作文件看起来像这样:
在我的 struts.xml 中,我将拦截器定义为:
我通过它发送数据的 JSP 是:
现在我不确定这个问题,但是,我什至从我的操作中删除了 ActionSupport 并以两种方式添加和测试它,但没有运气。其次,如果我在我的 struts.xml 中注释掉拦截部分并从我的操作中删除验证标记,那么一切正常。否则服务器端的 customField 值为空。
更新:
在几个答案之后,它可以很好地验证值,因为 Java 中的所有值都为空,并且它显示了实际的错误消息。但是,我仍然面临着类似的问题,即它没有从 JSP 提交值。因为,它总是为空,并且不断发布相同的验证错误消息。
java - 使用 Struts 2 和约定插件的全局结果
我想在我的应用程序中获得一些全局结果。在良好的旧 XML 配置中,它看起来像:
但是当我使用约定插件时,XML 中的全局结果似乎被忽略了,那么我如何使用约定插件来实现它呢?我不想让我的所有操作类都扩展一个定义了这些全局结果的自定义类。我认为package-info.java
应该是我的朋友,但我所能定义的与结果有关的只是@org.apache.struts2.convention.annotation.ResultPath
。
只是要明确一点:我不想避免struts.xml
配置 - 我只想有一些工作的全局转发,所以如果任何操作出现错误,我想将用户转发到中央错误页面。这目前不适用于我的配置。如果您在我struts.xml
或我的行为中发现问题并且可以帮助我解决它,那就太好了。
struts.xml
也许事情的顺序?这是我的结构struts.xml
:
在我的行动中,我有:
当然myAction
有更多的功能 - 这只是为了说明。执行操作时,它会在my-action.jsp
不使用磁贴的情况下转发到 ,但我希望它会转发到/index.action
.
java - Struts2 Annotated 还是基于 XML 的?哪个更容易管理和简单?
哪种方式是使用 Struts2 的更简单、更有条理的方式?使用注释还是使用 XML 文件?
如果带有注释,那么带有哪种注释?使用 struts-convention-plugin,您甚至可以完全避免编写约定,即@results
或@action
.
注释比不写它们有什么好处?
java - 没有 @EndConversation 的 Struts 2 对话范围插件
考虑下面的示例,我认为这是一个非常常见的步骤表单示例。我有一个三步表格,想将钱从一个帐户转移到另一个帐户:
如您所见,我也需要最后一页中的模型信息。所以我@BeginConversation
用于第一个动作以及@ConversationAction
第二页和最后一页。
问题是我的行为都没有注释@EndConversation
。好吗?!模型会驻留在内存中还是会自动清理?我找不到它何时自动清洁。
java - Struts2 Annotation Based Action 配置
这个异常的原因是什么,有什么问题?提前致谢。
HTML:
行动 :
jsp - 如何使用注解(约定插件)在 Struts2 中指定多个 acceptParamNames?
我正在尝试通过params
拦截器设置多个可接受的参数,如下所示。
在这种情况下,只接受最后一个参数deleteOneRow
( Boolean
)。其余不接受。相反,它会发出如下警告。
如何设置多个参数以params.acceptParamNames
使用约定插件?
java - WEB-INF下的Struts 2 Convention Plugin和JSP文件
使用 Struts2 约定插件时,即使未定义,插件也会自动转发hello-world.action
请求。/WEB-INF/content/hello-world.jsp
HelloWorld.java
请参阅http://struts.apache.org/release/2.1.x/docs/convention-plugin.html。
另一方面,我们将 JSP 文件放在 WEB-INF 下以避免对 JSP 文件的任何直接访问。
我认为约定插件的这种行为破坏了 JSP 访问策略。任何人都可以通过简单地调用动态构建操作来直接访问 JSP。
我对么?!如果是,我们可以禁用此功能吗?