English 中文(简体)
404 错误: "请批的资源/主计长不可用"
原标题:404 Error: "The requested resource /Controller is not available"

我在阿帕奇Tomcat上设置了 Spring MVC 3. 0 & amp; hibernate, 并得到了无错误的启动程序 。

但我可以将我的(欢迎文件) redirect.jsp 的请求发送至家用控制器(/Home)。


这就是应该发生的事情:

  1. 欢迎文件 redirect.jsp 发送请求, 使用

  2. 我的家控制器 (/ home) 返回 index 的视图, 该视图在 WEB-INF/views


这是我的web.xml :我通过注解和在web.xml 中绘制了家用控制器(/Home ),但至今尚未找到。

<?xml version="1.0" encoding="UTF-8"?& gt; 的 & gt;
<web-app version="3.0" xmlns="http://java.sun.com/xml/ns/javaee" 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"& gt; 的 & gt;
    <context-param& gt; 的 & gt;
        <param-name& gt; 的 & gt;contextConfigLocation</param-name& gt; 的 & gt;
        <param-value& gt; 的 & gt;/WEB-INF/applicationContext.xml</param-value& gt; 的 & gt;
    </context-param& gt; 的 & gt;
    <listener& gt; 的 & gt;
        <listener-class& gt; 的 & gt;org.springframework.web.context.ContextLoaderListener</listener-class& gt; 的 & gt;
    </listener& gt; 的 & gt;
    <servlet& gt; 的 & gt;
        <servlet-name& gt; 的 & gt;app</servlet-name& gt; 的 & gt;
        <servlet-class& gt; 的 & gt;org.springframework.web.servlet.DispatcherServlet</servlet-class& gt; 的 & gt;
        <load-on-startup& gt; 的 & gt;1</load-on-startup& gt; 的 & gt;
    </servlet& gt; 的 & gt;
    <servlet-mapping& gt; 的 & gt;
        <servlet-name& gt; 的 & gt;app</servlet-name& gt; 的 & gt;
        <url-pattern& gt; 的 & gt;/</url-pattern& gt; 的 & gt;
    </servlet-mapping& gt; 的 & gt;
    <servlet& gt; 的 & gt;
        <servlet-name& gt; 的 & gt;Home</servlet-name& gt; 的 & gt;
        <servlet-class& gt; 的 & gt;com.app.controller.spring.HomeController</servlet-class& gt; 的 & gt;
    </servlet& gt; 的 & gt;
    <servlet-mapping& gt; 的 & gt;
        <servlet-name& gt; 的 & gt;Home</servlet-name& gt; 的 & gt;
        <url-pattern& gt; 的 & gt;/Home</url-pattern& gt; 的 & gt;
    </servlet-mapping& gt; 的 & gt;
    <session-config& gt; 的 & gt;
        <session-timeout& gt; 的 & gt;
            30
        </session-timeout& gt; 的 & gt;
    </session-config& gt; 的 & gt;
    <welcome-file-list& gt; 的 & gt;
        <welcome-file& gt; 的 & gt;redirect.jsp</welcome-file& gt; 的 & gt;
    </welcome-file-list& gt; 的 & gt;
</web-app& gt; 的 & gt;

这是我的 application-context.xml 片段 :

<!--bean id="propertyConfigurer"
      class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"
      p:location="/WEB-INF/jdbc.properties" /& gt; 的 & gt;--& gt; 的 & gt;

<!-- Activates various annotations to be detected in bean classes --& gt; 的 & gt; 
<context:annotation-config /& gt; 的 & gt;
<!-- Scans the classpath for annotated components that will be auto-registered as Spring beans.   For example @Controller and @Service. Make sure to set the correct base-package--& gt; 的 & gt; 
<context:component-scan base-package="com.yourmarketnet.mvc" /& gt; 的 & gt;    
<!-- Configures the annotation-driven Spring MVC Controller programming model.  Note that, with Spring 3.0, this tag works in Servlet MVC only!  --& gt; 的 & gt; 
<mvc:annotation-driven /& gt; 的 & gt;      
<!-- mapping of static resources--& gt; 的 & gt;
<mvc:resources mapping="/resources/**" location="/resources/" /& gt; 的 & gt;
<import resource="hibernate-context.xml" /

& gt; 的 & gt;


这是我的app-servlet :

<?xml version="1.0" encoding="UTF-8"?& gt; 的 & gt;
<beans xmlns="http://www.springframework.org/schema/beans"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xmlns:p="http://www.springframework.org/schema/p"
       xmlns:aop="http://www.springframework.org/schema/aop"
       xmlns:tx="http://www.springframework.org/schema/tx"
       xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
       http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-3.0.xsd
       http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-3.0.xsd"& gt; 的 & gt;

    <bean class="org.springframework.web.servlet.mvc.support.ControllerClassNameHandlerMapping"/& gt; 的 & gt;

    <!--
    Most controllers will use the ControllerClassNameHandlerMapping above, but
    for the index controller we are using ParameterizableViewController, so we must
    define an explicit mapping for it.
    --& gt; 的 & gt;
    <bean id="urlMapping" class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping"& gt; 的 & gt;
        <property name="mappings"& gt; 的 & gt;
            <props& gt; 的 & gt;
                <prop key="index.htm"& gt; 的 & gt;indexController</prop& gt; 的 & gt;
            </props& gt; 的 & gt;
        </property& gt; 的 & gt;
    </bean& gt; 的 & gt;


    <bean id="viewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver"     
        p:prefix="/WEB-INF/views/" p:suffix=".jsp" p:viewClass="org.springframework.web.servlet.view.JstlView" /& gt; 的 & gt;
    <!--
    The index controller.
    --& gt; 的 & gt;
    <bean name="indexController"
          class="org.springframework.web.servlet.mvc.ParameterizableViewController"
          p:viewName="index" /& gt; 的 & gt;

</beans& gt; 的 & gt;

然而,我得到了一个 404 错误,

请求的资源 (/ home) 不存在 。


我其实想做的是删除 redirect.jsp ,让应用程序转到 启动/启动 上的 ome 控制器,而 home 控制器返回索引视图或任何其他视图。

问题回答

我注意到的第一件事是,在您的 Web.xml 中,您将您的配置位置叫做 < code> applicationContext.xml ,但您后来将其描述为 application-context.xml 。 请确认它实际上被命名为 applicationContext.xml 。 另外,您还可以从您的 Web.xml 中删除“ home” 服务器。 这将通过您的调度服务器处理 。 最后, 您在您的 < code> SemplyUrlHandlerMapping 中, 您定义了映射为 index.html , 但是如果您希望 > home 由 < code > 处理, 您还需要定义 < home 。





相关问题
Spring Properties File

Hi have this j2ee web application developed using spring framework. I have a problem with rendering mnessages in nihongo characters from the properties file. I tried converting the file to ascii using ...

Logging a global ID in multiple components

I have a system which contains multiple applications connected together using JMS and Spring Integration. Messages get sent along a chain of applications. [App A] -> [App B] -> [App C] We set a ...

Java Library Size

If I m given two Java Libraries in Jar format, 1 having no bells and whistles, and the other having lots of them that will mostly go unused.... my question is: How will the larger, mostly unused ...

How to get the Array Class for a given Class in Java?

I have a Class variable that holds a certain type and I need to get a variable that holds the corresponding array class. The best I could come up with is this: Class arrayOfFooClass = java.lang....

SQLite , Derby vs file system

I m working on a Java desktop application that reads and writes from/to different files. I think a better solution would be to replace the file system by a SQLite database. How hard is it to migrate ...

热门标签