问题标签 [action-mapping]

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 回答
320 浏览

java - 没有映射动作 - Struts 2

下午好,

我意识到这个问题已被多次问过,但这些问题主要是由于将struts.xml文件放在不正确的位置或拼写错误的路径名或其他内容的人造成的。

我已尽我所能遵循 Struts 2 网站上的教程,不断收到以下错误:

  • 我使用 Maven 作为我选择的构建工具
  • 我的struts.xml文件位于文件夹的根目录中,WebContent不在文件夹中WEB-INF\classes

以下是我的struts.xml文件的结构:

我还将HelloWorld.jsp文件放在一个名为的文件夹jsp中,并在 struts 文件中指出了这一点。假设调用上述操作的索引文件代码如下所示:

问题

1)我放置struts.xml文件是否正确?(注意 - 我web.xml的文件在WEB-INF文件夹内)如果不是应该放在哪里?

(注意 - 我读到它应该放在src/main/resources文件夹中,但那在哪里?我原以为这是 java 资源的一部分,但为什么要把它放在那里?)

2)您是否需要在 lib 文件夹或构建路径中包含任何 jar 才能使其正常工作?从网站上,您所要做的就是在 Maven pom 文件中包含一个依赖项 - 在我的文件中,这看起来像这样:

谢谢

更新

感谢 Roman C 的帮助。我的 struts 文件在错误的位置。如果其他人有这个问题,我建议查看这个问题,该问题有一个很好的屏幕截图,说明了 struts 文件的位置 - 请记住将其命名为 struts.xml(小写)而不是大写。

0 投票
1 回答
718 浏览

eclipse - 通过管理控制台将应用程序部署到 Weblogic 时出现问题

我正在使用 Weblogic 10.3.5。当我在 Eclipse 中本地部署我的 Struts2 应用程序时,它运行良好。当我尝试通过管理控制台部署我的应用程序时,我收到 Struts 2 错误,找不到名称以进行操作。

当我查看 .war 文件时,它包含所有库和类。我按照这些说明通过管理控制台进行部署。我可以通过管理控制台成功部署,但是当我尝试使用应用程序的测试链接时,我得到了同样的错误。如果我尝试通过 url 访问应用程序:

我犯了同样的错误。

这是堆栈跟踪:

[[ACTIVE] ExecuteThread: '8' for queue: 'weblogic.kernel.Default (self-tuning)'] WARN org.apache.struts2.dispatcher.Dispatcher - 找不到操作或结果:/eServices/login.action 那里没有为与上下文路径 [/eServices] 关联的命名空间 [/] 和操作名称 [login] 映射的操作。- [未知位置] 在 org.apache.struts2.impl.StrutsActionProxy.prepare(StrutsActionProxy.java:63) 在 org.apache.struts2.impl 的 com.opensymphony.xwork2.DefaultActionProxy.prepare(DefaultActionProxy.java:185)。 StrutsActionProxyFactory.createActionProxy(StrutsActionProxyFactory.java:37) 在 com.opensymphony.xwork2.DefaultActionProxyFactory.createActionProxy(DefaultActionProxyFactory.java:58) 在 org.apache.struts2.dispatcher.Dispatcher.serviceAction(Dispatcher.java:552) 在 org.apache .struts2.dispatcher。

我究竟做错了什么?为什么我通过eclipse部署时可以访问应用程序,但是通过Admin Console部署应用程序时却无法访问应用程序。

谢谢你的帮助!

0 投票
1 回答
1043 浏览

java - Struts 2 应用程序在通过管理控制台部署时出错

我正在运行带有 mavenized struts 2/spring 应用程序的 weblogic 10.3.5。该应用程序在通过 Eclipse 发布到服务器时运行良好,但是当我将应用程序导出到 .war 文件并通过管理控制台部署并运行它时,它给我以下堆栈跟踪错误。

[[ACTIVE] ExecuteThread: '8' for queue: 'weblogic.kernel.Default (self-tuning)'] WARN org.apache.struts2.dispatcher.Dispatcher - 找不到操作或结果:/eServices/login.action 那里没有为与上下文路径 [/eServices] 关联的命名空间 [/] 和操作名称 [login] 映射的操作。- [未知位置] 在 org.apache.struts2.impl.StrutsActionProxy.prepare(StrutsActionProxy.java:63) 在 org.apache.struts2.impl 的 com.opensymphony.xwork2.DefaultActionProxy.prepare(DefaultActionProxy.java:185)。 StrutsActionProxyFactory.createActionProxy(StrutsActionProxyFactory.java:37) 在 com.opensymphony.xwork2.DefaultActionProxyFactory.createActionProxy(DefaultActionProxyFactory.java:58) 在 org.apache.struts2.dispatcher.Dispatcher.serviceAction(Dispatcher.java:552) 在 org.apache .struts2.dispatcher.ng。

我发现一些帖子建议在我的类路径中添加具有以下配置的 struts.properties 文件,但没有解决我的问题。

struts.convention.action.mapAllMatches = true struts.convention.action.includeJars=。?/电子服务。?罐(!/)?struts.convention.action.fileProtocols=jar,zip

任何有助于理解或解决此问题的帮助都会很棒!:)

以下是我的 struts.xml,我使用基于注释的配置将操作映射到其结果。

以下是 web.xml:

0 投票
1 回答
2411 浏览

struts2 - Struts 2 注释不适用于 Java 8

Struts 2 Annotations 不适用于 Java 8。

我有以下适用于 Java 7 的示例,但在 Java 8 中给出了错误。

我猜这些错误与库和 Java 8 有关。

有人有这个问题吗??如果是这样我们怎么解决???

我正在使用带有 Java 8 和 Apache Tomcat 8 的 struts 2.3.15.1。

这个例子在 Java 7、struts 2.3.15.1 和 Apache Tomcat 8 上都能成功运行。我刚刚测试了两者。

当我使用 Java 8 时,它会出现以下错误:

web.xml

测试动作.java

测试.jsp

该项目中包含的库是:

0 投票
1 回答
263 浏览

jsp - 在struts2中处理一个非动作映射

我有一个问题,我已经实现了 in struts2,并且运行良好,但是当我放入浏览器时,一个不存在的动作,比如

http:mysite/someurl/somefake.action

我有一个屏幕,您可以在其中阅读“Struts 问题报告”

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

消息:
没有为与上下文路径 [] 关联的命名空间 [/] 和操作名称 [Portaaasdasdl] 映射的操作。"

问题是:

我怎么知道我什么时候没有映射操作并将其重定向到一个 jsp,我可以告诉该操作无效,或者重定向到带有消息“页面未找到”的自定义 jsp

我无法解决,我有点沮丧。

0 投票
0 回答
248 浏览

java - Spring Web Service SOAP 在与 struts 2.3 集成后不起作用?

到目前为止,在我的项目中,spring 3.0.1 和 struts 2.0 正在集成,并且 SOAP Web 服务运行良好。但出于某种安全原因,我已迁移到 struts 2.3,对于 SOAP,我使用的是 spring-ws-all-1.5.9 和 wsld4j-1.6.2.jar 之类的 jar。

仍然当我调用我的 Web 服务方法时,我遇到了这样的异常:

HTTP 状态 404 - 没有为与上下文路径 [/someproject] 关联的命名空间 [/] 和操作名称 [someServices] 映射的操作。

我试图搜索此问题的解决方案,但没有得到任何解决方案。我终于将我的 jar 迁移到 spring-ws-2.0.2.RELEASE-all.jar 。我仍然遇到同样的问题。如果有人有任何想法,请帮助我。

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 投票
8 回答
69686 浏览

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

我在stackoverflow上查看了所有类似的Q,但没有帮助,抱歉。我与他们的主要区别是我在错误消息中得到了 EMPTY 操作名称。谷歌搜索没有帮助:(希望有人能提示在哪里寻找问题的根源。thx

web.xml

struts.xml

页面:HomePage.jsp

成功.jsp

失败.jsp

验证登录.java

好吧..image是不可能的,所以项目结构是:

0 投票
1 回答
527 浏览

java - jetty + struts 2 : how to add action to mapped from namespace [/]?

Have searched on the web for a while, and did not find the answer for my problem. Any insights are welcome.

I followed the instructions at https://github.com/apache/struts-examples/tree/master/helloworld, and can access the servlet at http://myhost.net:8080/hello_world/index.action.

Now I want to make the servlet under hello_world directly accessible through http://myhost.net:8080. I made changes on struts.xml as follows:

The web.xml is as follows:

With these change, I can access index.jsp through http://myhost.net:8080/index.jsp". However, I still cannot access it using http://myhost.net:8080" directly. The following is the error that I get:

I am using Jetty 8.1.15 as the container.

0 投票
1 回答
1914 浏览

java - 无法使用 Eclipse 和 Maven 让 Struts2 Hello World 工作

该网站不允许用户向他们的教程提出技术问题,我认为这些问题已被破坏:

http://www.mkyong.com/misc/how-to-use-mkyong-tutorial/

我在用着:

  • 行家:3.2.1
  • 雄猫 7
  • 爪哇 1.7
  • Eclipse:Luna 版本 (4.4.0)

我收到这条消息:

login.jsp除非我输入完整的网址,否则我永远无法访问该页面。但即便如此,当我点击提交按钮时,它也不会进入welcome_user.jsp页面。

有人能告诉我如何解决这个问题并让这个 Hello World 示例在使用 Eclipse 时工作吗?