当前位置: 首页 > 知识库问答 >
问题:

Http状态404:Servlet视图解析器

尹何平
2023-03-14

我在web-xml中提到了Dispatcher servlet,在spring中的appservlet,在Web-INF中的名称为servlet-context。这是我的web.xml配置

    <listener>
        <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
    </listener>

    <!-- Processes application requests -->
    <servlet>
        <servlet-name>appServlet</servlet-name>
        <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
        <init-param>
            <param-name>contextConfigLocation</param-name>
            <param-value>/WEB-INF/spring/appServlet/servlet-context.xml</param-value>
        </init-param>
        <load-on-startup>1</load-on-startup>
    </servlet>

    <servlet-mapping>
        <servlet-name>appServlet</servlet-name>
        <url-pattern>/</url-pattern>
    </servlet-mapping>

</web-app>

我已经提到了dispatcher-servlet中的所有bean、view-resolver

这是servlet

<?xml version="1.0" encoding="UTF-8"?>
<beans:beans xmlns="http://www.springframework.org/schema/mvc"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:beans="http://www.springframework.org/schema/beans"
    xmlns:context="http://www.springframework.org/schema/context" xmlns:tx="http://www.springframework.org/schema/tx"
    xsi:schemaLocation="http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc.xsd
        http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
        http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd
        http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-4.0.xsd">

    <!-- DispatcherServlet Context: defines this servlet's request-processing 
        infrastructure -->

    <!-- Enables the Spring MVC @Controller programming model -->
    <annotation-driven />

    <!-- Handles HTTP GET requests for /resources/** by efficiently serving 
        up static resources in the ${webappRoot}/resources directory -->
    <resources mapping="/resources/**" location="/resources/" />

    <!-- Resolves views selected for rendering by @Controllers to .jsp resources 
        in the /WEB-INF/views directory -->
    <beans:bean
        class="org.springframework.web.servlet.view.InternalResourceViewResolver">
        <beans:property name="prefix" value="/WEB-INF/views/" />
        <beans:property name="suffix" value=".jsp" />
    </beans:bean>

    <beans:bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource"
        destroy-method="close">
        <beans:property name="driverClassName" value="com.mysql.jdbc.Driver" />
        <beans:property name="url"
            value="jdbc:mysql://localhost:3306/db1" />
        <beans:property name="username" value="root" />
        <beans:property name="password" value="neonowl" />
    </beans:bean>

    <!-- Hibernate 4 SessionFactory Bean definition -->
    <beans:bean id="hibernate4AnnotatedSessionFactory"
        class="org.springframework.orm.hibernate4.LocalSessionFactoryBean">
        <beans:property name="dataSource" ref="dataSource" />
        <beans:property name="annotatedClasses">
            <beans:list>
                <beans:value>com.journaldev.spring.model.Person</beans:value>
            </beans:list>
        </beans:property>
        <beans:property name="hibernateProperties">
            <beans:props>
                <beans:prop key="hibernate.dialect">org.hibernate.dialect.MySQLDialect
                </beans:prop>
                <beans:prop key="hibernate.show_sql">true</beans:prop>
            </beans:props>
        </beans:property>
    </beans:bean>

    <beans:bean id="personDAO" class="com.journaldev.spring.dao.PersonDAOImpl">
        <beans:property name="sessionFactory" ref="hibernate4AnnotatedSessionFactory" />
    </beans:bean>
    <beans:bean id="personService" class="com.journaldev.spring.service.PersonServiceImpl">
        <beans:property name="personDAO" ref="personDAO"></beans:property>
    </beans:bean>
    <context:component-scan base-package="com.journaldev.spring" />

    <tx:annotation-driven transaction-manager="transactionManager"/>

    <beans:bean id="transactionManager" class="org.springframework.orm.hibernate4.HibernateTransactionManager">
        <beans:property name="sessionFactory" ref="hibernate4AnnotatedSessionFactory" />
    </beans:bean>


</beans:beans>

我的jsp页面'person.jsp'位于WEB-INF内的views文件夹中。现在,当我在服务器上运行应用程序时,我得到Http status 404消息/projectname/description:源服务器没有找到目标资源的当前表示,或者不愿意透露存在该表示。

请帮助调试这个。

共有1个答案

艾安和
2023-03-14

从本baeldung教程中,我们有以下内容:

Spring MVC体系结构在内部使用ViewResolvers来处理视图,这使您能够在浏览器中呈现模型

ViewResolver将视图名称映射到实际视图。

@Bean
 public ViewResolver configureViewResolver() {
     InternalResourceViewResolver viewResolve = new InternalResourceViewResolver();
     viewResolve.setPrefix("/WEB-INF/jsp/");
     viewResolve.setSuffix(".jsp");
 
     return viewResolve;
 }
 类似资料:
  • 问题是:我的index.jsp和web.xml总是进入HTTP404和500 我用的是Tomcat6。 这来自index.jsp: 当我注册时: 我点击名字和姓氏,进入404,信息是: 类型状态报告 根据请求,下面是 这里还有项目树:

  • 我试图创建一个基本的Spring MVC应用程序,它引发了以下错误: HTTP状态404-Servlet welcome不可用 我的项目结构 我的web.xml: 我的index.jsp: 我的WelcomePage.jsp: 提前谢了。

  • 我已经为servlet编写了这段代码 我已经编译了它,它对应的html文件action属性值是 web.xml包含 servlet name four servlet类Httpservlet1 servlet-name 4 url-模式 /HTTPSERVLET在xml代码格式下运行时仍然显示错误信息

  • 我在提交jsp文件时遇到以下错误: HTTP状态404-Servlet操作不可用类型状态报告消息Servlet操作不可用说明请求的资源(Servlet操作不可用)不可用。 在index.jsp文件中,我有一个表单,如下所示: 在struts-confif中,我定义了以下操作: indexAction.java

  • HTTP 请求和 HTTP 响应消息的格式是类似的,结构如下: 初始状态行 + 回车换行符(回车+换行) 零个或多个标题行+回车换行符 一个空白行,即回车换行符 一个可选的消息主体,比如文件、查询数据或查询输出 例如,服务器的响应头如下所示: HTTP/1.1 200 OK Content-Type: text/html Header2: ... ... HeaderN: ... (Blan

  • 我刚刚在spring tool suit中创建了一个示例spring mvc项目(没有进行任何修改),当我执行它时,我将按照index.jsp获得输出。但在此之后,我只在view文件夹中添加一个index.html页面,并进行了以下两个更改 > 在控制器类i中添加:返回“index”; 在Pivotal Server Developer Edition V3.1上执行更改后的代码时,我得到HTTP