问题标签 [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.
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(小写)而不是大写。
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部署应用程序时却无法访问应用程序。
谢谢你的帮助!
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:
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
该项目中包含的库是:
jsp - 在struts2中处理一个非动作映射
我有一个问题,我已经实现了 in struts2,并且运行良好,但是当我放入浏览器时,一个不存在的动作,比如
http:mysite/someurl/somefake.action
我有一个屏幕,您可以在其中阅读“Struts 问题报告”
Struts 检测到一个未处理的异常:
消息:
没有为与上下文路径 [] 关联的命名空间 [/] 和操作名称 [Portaaasdasdl] 映射的操作。"
问题是:
我怎么知道我什么时候没有映射操作并将其重定向到一个 jsp,我可以告诉该操作无效,或者重定向到带有消息“页面未找到”的自定义 jsp
我无法解决,我有点沮丧。
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 。我仍然遇到同样的问题。如果有人有任何想法,请帮助我。
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
我会收到此错误
怎么了?两个类的配置方式相同。
struts2 - 没有为与上下文路径关联的命名空间 [/] 和操作名称 [] 映射的操作
我在stackoverflow上查看了所有类似的Q,但没有帮助,抱歉。我与他们的主要区别是我在错误消息中得到了 EMPTY 操作名称。谷歌搜索没有帮助:(希望有人能提示在哪里寻找问题的根源。thx
web.xml
struts.xml
页面:HomePage.jsp
成功.jsp
失败.jsp
验证登录.java
好吧..image是不可能的,所以项目结构是:
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.
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 时工作吗?