我正在尝试让 Struts 教程正常工作,但当我尝试在 Tomcat 中运行该文件时遇到以下错误。
The requested resource () is not available.
Tomcat日志输出:
Aug 29, 2012 9:55:37 PM org.apache.catalina.core.AprLifecycleListener init
INFO: The APR based Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: C:\Program Files\Java\jre7\bin;C:\Windows\Sun\Java\bin;C:\Windows\system32;C:\Windows;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Program Files (x86)\GTK2-Runtime\bin;c:\Program Files (x86)\ATI Technologies\ATI.ACE\Core-Static;.
Aug 29, 2012 9:55:37 PM org.apache.tomcat.util.digester.SetPropertiesRule begin
WARNING: [SetPropertiesRule]{Server/Service/Engine/Host/Context} Setting property 'source' to 'org.eclipse.jst.jee.server:StrutsExample1' did not find a matching property.
Aug 29, 2012 9:55:37 PM org.apache.coyote.http11.Http11Protocol init
INFO: Initializing Coyote HTTP/1.1 on http-8080
Aug 29, 2012 9:55:37 PM org.apache.catalina.startup.Catalina load
INFO: Initialization processed in 1367 ms
Aug 29, 2012 9:55:37 PM org.apache.catalina.core.StandardService start
INFO: Starting service Catalina
Aug 29, 2012 9:55:37 PM org.apache.catalina.core.StandardEngine start
INFO: Starting Servlet Engine: Apache Tomcat/6.0.35
Aug 29, 2012 9:55:38 PM org.apache.coyote.http11.Http11Protocol start
INFO: Starting Coyote HTTP/1.1 on http-8080
Aug 29, 2012 9:55:39 PM org.apache.jk.common.ChannelSocket init
INFO: JK: ajp13 listening on /0.0.0.0:8009
Aug 29, 2012 9:55:39 PM org.apache.jk.server.JkMain start
INFO: Jk running ID=0 time=0/56 config=null
Aug 29, 2012 9:55:39 PM org.apache.catalina.startup.Catalina start
INFO: Server startup in 1468 ms
我的
web.xml
文件:
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" id="WebApp_ID" version="2.5">
<display-name>StrutsExample1</display-name>
<servlet>
<servlet-name>action</servlet-name>
<servlet-class>org.apache.struts.action.ActionServlet</servlet-class>
<init-param>
<param-name>config</param-name>
<param-value>/WEB-INF/struts-config.xml</param-value>
</init-param>
<load-on-startup>2</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>action</servlet-name>
<url-pattern>*.do</url-pattern>
</servlet-mapping>
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
</web-app>
struts-config.xml
:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts-config PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 1.3//EN"
"http://struts.apache.org/dtds/struts-config_1_3.dtd">
<struts-config>
<form-beans>
<form-bean name="helloWorldForm" type="com.vaannila.form.HelloWorldForm"/>
</form-beans>
<global-forwards>
<forward name="helloWorld" path="/helloWorld.do"/>
</global-forwards>
<action-mappings>
<action path="/helloWorld" type="com.vaannila.action.HelloWorldAction" name="helloWorldForm">
<forward name="success" path="/helloWorld.jsp" />
</action>
</action-mappings>
</struts-config>
我正在将 Tomcat 作为 Eclipse 的插件运行。
Servlet 映射只是
*.do
通过扩展来映射资源。留言
The requested resource () is not available
显示资源路径为空。请求的资源是Web应用程序根目录。
即使您有欢迎文件
index.jsp
,Tomacat 也可能无法加载它。它也可能不存在。
如果您使用 Struts 框架,则不应直接访问 JSP,并且要访问 Struts 操作,您应指定映射到该操作的有效 URL。 IE。
http://localhost:8080/StrutsExample1/helloworld.do
。
您是否在服务器上运行 .java 文件?如果您这样做,您将收到此错误。您只需要在服务器上运行 .jsp(或 .html)文件,即使您的 .jsp(或 . html) 文件包含一些 .java 文件的方法。浏览器只能运行 .html(或 .jsp) 文件。