问题标签 [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 投票
2 回答
1241 浏览

java - Struts 2 Convention Plugin 定义多个父包

我正在开发 Struts 2 Web 应用程序,使用 Convention Plugin 通过注释来配置所有内容。我的一些动作类遇到了障碍,我想在其中使用多个父包。我确实在Apache 的网站上找到了一种方法——但这似乎已被弃用。它不起作用,返回类型不匹配:无法转换String[]String错误。

我正在使用 Struts 2.2.1。是否可以通过注释授予多个父包的操作?他们会将此作为一项功能删除,这似乎很奇怪。

0 投票
1 回答
695 浏览

struts2 - 删除convention.annotation - 替换为struts.xml 中的配置

我在从操作中删除@Action@Result约定插件注释并将其替换为struts.xml.

当这些注释存在时,我可以成功访问localhost:port/context/home.action

当我删除注释时,我得到“没有为操作定义结果.....”struts 错误,尽管 struts.xml 中有一个“全部捕获”结果 - 整个 struts.xml 如下:

它扩展了 json-default 因为我需要 json 结果类型来实现自动完成功能。

我不知道为什么它没有为homeAction班级选择动作映射。我知道struts.xml正在阅读,因为如果我删除动作映射“汽车”,那么自动完成功能将被禁用(但这需要我试图删除的注释以验证这一点)。

我知道“未定义结果”是一个简单的错误,通常是由拼写/大写错误引起的,但这里绝对不是这种情况,它似乎只是忽略了整个“家庭”动作映射。

单步执行时DefaultActionInvocation.createResult,根本没有“结果”可供它尝试匹配。

0 投票
1 回答
3212 浏览

struts2 - 注解中的 Struts2 令牌拦截器

我正在使用带有令牌拦截器的 struts 2.3.1。如何在基于注释(约定)的动作类中使用令牌拦截器。

这是我的 struts.xml

任何人都可以告诉基于相同的注释。

0 投票
3 回答
3285 浏览

java - Struts 2 注释问题在行动

我使用了 Struts2 Annotation

web.xml的是:

我的 JSP 是:

我的课是:

我收到错误:

文件夹结构:

我的文件夹结构是

0 投票
1 回答
650 浏览

java - 我应该/我可以制定 Struts 2 约定来忘记操作的 execute() 方法吗?

我正在使用 Struts 2 和struts2-convention-plugin迈出第一步,目前正在SongCrudAction使用一些典型create()edit()view()delete()action 方法处理一个 CRUD 动作类 ( )。所有这些方法都用@Action.

通常,我想从 继承有用的默认行为ActionSupport,但这也包括继承execute()方法。

使用配置浏览器,我可以看到有一个名为song-crud指向它的动作。该song-crud操作已过时,我想摆脱它,因为我有自己的操作方法可用于所有所需的操作。我想,由于 Struts2 的约定,song-crud尽管我没有在任何地方声明它,但该操作是假定的。

在这种特殊情况下,一种可能的解决方案是赋予该execute()方法一些合理的含义,例如我可以将它用于view()操作。一个缺点是动作类应该根据execute()方法的行为重命名(或注释?)(例如ViewSongAction,而不是SongCrudAction)。否则,视图操作的 URL 将不合适(即/view-song?id=5比 更适合/song-crud?id=5)。

另一方面,重命名类也很丑陋,因为它只是一个 CRUD 而不是视图操作类。

无论如何,一般问题仍然存在:每当我从 继承时ActionSupport,它都会为我提供一种execute()方法,该方法可能对我正在做的事情有用,也可能没有用。

因此,以某种方式告诉 Struts 2 异常忘记execute()我的 CRUD 操作类中的方法似乎是合理的。这是对的,我怎样才能做到这一点?有更好的解决方案吗?

0 投票
1 回答
262 浏览

rest - 如何更改struts-rest-pulgin的默认映射规则

我正在使用 struts2 + 约定 + rest 来构建我的 Web 项目。content文件夹中有很多jsp文件。所以我想按文件夹对它们进行分类。例如,我想把user.jsp,user-list.jspuser-edit.jsp放在\content\user文件夹中。而且我必须添加Namespace注释UserController,如下所示:

但如果我这样做,访问的 urluser.jsp将更改为localhost:8080\projectName\user\user. 我不太喜欢user这个网址。

所以我的问题是,我可以将默认映射规则更改为 access user.jspbylocalhost:8080\projectName\user吗?如果我无法更改它,那么如何管理文件夹中的这么多 jsp 文件\WEB-INF\content

任何帮助将不胜感激。

0 投票
1 回答
1620 浏览

java - struts2 约定插件无法正常工作

我试图用约定插件 Struts2 运行应用程序。该应用程序很好,struts.xml配置如下:

现在我删除了它struts.xml并添加了一些这样的注释:

但是当我尝试运行应用程序时,出现以下错误:

留言:

web.xml的是这样的:

如果我做错了,任何帮助将不胜感激。
问候。

0 投票
1 回答
235 浏览

struts2 - Struts2 验证注解给出多条消息

我正在使用约定插件。下面是@Validations 注释。

所以每当我在字段中给出一个字符而不是数字来测试时。我收到这 3 条消息。

相反,我希望只得到第二个或第一个。N 从我得到第一个错误的地方。正如我们所看到的,我没有给出任何这样的信息。那么我怎样才能一次只收到一条适当的消息。

问候。

0 投票
1 回答
289 浏览

java - Struts2 不适用于带注释的动作

我刚开始学习一些 Struts2 并尝试创建简单的网页。我创建了一个Action类,添加了一些注释,我创建了一些 JSP 并在web.xml文件中设置了过滤器,但是当我尝试获取页面时,我只看到 JSP 的工作而不是任何 Struts2。

ClientListAction.java:

客户端列表.jsp:

网页.xml:

网址:

结果:

0 投票
2 回答
1770 浏览

java - Struts 2 约定插件 - 上传超过 2 MB 的文件

如果我尝试上传大小超过 2 MB 的文件,则会出错。

我在 apache 网站上发现“有两个单独的文件大小限制。首先是 struts.multipart.maxSize,它来自 Struts 2 default.properties 文件。出于安全原因,此设置的存在是为了禁止恶意用户上传超大文件归档您的服务器磁盘空间。此设置默认为大约 2 兆字节,应调整为您需要框架接收的最大文件大小(最大 2 gigs)“

所以我发现这个问题可以通过<constant name="struts.multipart.maxSize" value="1000000" />在 struts.xml 文件中添加具有所需最大限制的标签来解决。

我们使用的是 struts2-convention-plugin,所以我们没有 struts.xml。所以我不确定在哪里定义这个最大文件大小......

请让我知道你们中是否有人遇到过这个..

感谢您的帮助。