久久福利_99r_国产日韩在线视频_直接看av的网站_中文欧美日韩_久久一

您的位置:首頁技術(shù)文章
文章詳情頁

java - springMVC配置的controller無法返回jsp文件

瀏覽:141日期:2024-01-04 13:45:05

問題描述

當(dāng)啟動(dòng)完tomcat后,它首先展示的是index.jsp ,當(dāng)我輸入http://localhost:8080/Spring_no_2/時(shí),出現(xiàn)

HTTP Status 404 – Not FoundType Status ReportDescription The origin server did not find a current representation for the target resource or is not willing to disclose that one exists.

根據(jù)spring in action中的springMVC這一章中的demo進(jìn)行測試,環(huán)境是mac下的Ideallij,jkd1.8,tomcat9

配置好了springMVC,相關(guān)的xml文件并且啟動(dòng)tomcat后(省略了配置靜態(tài)資源和SpitterService類),無法通過訪問url使controller返回在WEB-INF/views中的jsp文件

以下是代碼文件

web.xml

<?xml version='1.0' encoding='UTF-8'?><web-app xmlns='http://xmlns.jcp.org/xml/ns/javaee' xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' xsi:schemaLocation='http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd' version='3.1'> <context-param><param-name>contextConfigLocation</param-name><param-value>/WEB-INF/applicationContext.xml</param-value> </context-param> <listener><listener-class>org.springframework.web.context.ContextLoaderListener</listener-class> </listener> <servlet><servlet-name>spitter</servlet-name><servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class><load-on-startup>1</load-on-startup> </servlet> <servlet-mapping><servlet-name>spitter</servlet-name><url-pattern>/</url-pattern> </servlet-mapping></web-app>

spitter-servlet.xml

<?xml version='1.0' encoding='UTF-8'?><beans xmlns='http://www.springframework.org/schema/beans' xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' xmlns:context='http://www.springframework.org/schema/context' xmlns:mvc='http://www.springframework.org/schema/mvc' xsi:schemaLocation='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/mvc http://www.springframework.org/schema/mvc/spring-mvc.xsd'> <!--use annotations to create the mapping between--> <!-- url and class deal with request(Controller) --> <mvc:annotation-driven/> <!--scan the component and auto regist as bean--> <context:component-scan base-package='com.springmvc.controller'/> <!--Use this bean to map the jsp file according to the name return by Controller--> <!--It will automatically add the prefix and suffix to the name string--> <bean class='org.springframework.web.servlet.view.InternalResourceViewResolver'><property name='prefix' value='/WEB-INF/views/'/><property name='suffix' value='.jsp'/> </bean></beans>

controller

package com.springmvc.controller;import org.springframework.stereotype.Controller;import org.springframework.web.bind.annotation.RequestMapping;/** * Created by han on 29/3/2017. */@Controllerpublic class HomeController {// public static final int DEAFAULT_SPITTLES_PER_PAGE = 25; public HomeController() {System.out.println('-------HomeController init-------'); } @RequestMapping('/') public String showHomePage() {System.out.println('-------showHomePage Method show-------');return 'home'; }}

我的文件結(jié)構(gòu)是

java - springMVC配置的controller無法返回jsp文件

請(qǐng)問為什么無法使home.jsp呈現(xiàn)出來?

問題解答

回答1:

找到了問題所在了,目錄,tomcat配置都對(duì)。但是因?yàn)樵趙eb.xml中的以下代碼

<context-param><param-name>contextConfigLocation</param-name><param-value>/WEB-INF/applicationContext.xml</param-value> </context-param> <listener><listener-class>org.springframework.web.context.ContextLoaderListener</listener-class> </listener>

導(dǎo)致了監(jiān)聽的配置文件不讀取spitter-servlet.xml中的配置,解決方法有兩個(gè):

第一:

是在 <context-param>中加入spitter-servlet.xml的地址,這樣spitter-servlet.xml和applicationContext.xml中的Bean等配置都會(huì)被讀取到。在Spring in action 4th edition中說到Whereas DispatcherServlet is expected to load beans containing web components such as controllers, view resolvers, and handler mappings, ContextLoaderListener is expected to load the other beans in your application. These beans are typically the middle-tier and data-tier components that drive the back end of the application.兩個(gè)不同的配置文件是為了應(yīng)對(duì)不同部分的配置而設(shè)置的

第二:

就是刪除以上代碼的配置。會(huì)自動(dòng)讀取spitter-servlet.xml中的配置。回答2:

親,-------showHomePage Method show-------后臺(tái)有沒有打印出來?

回答3:

先看看tomcat配置的對(duì)不對(duì)。localhost:8080可以訪問成功嗎?再看看showHomePage方法

回答4:

默認(rèn)項(xiàng)目結(jié)構(gòu)web層是使用的webapp目錄,你可以看下部署到tomcat的項(xiàng)目的WEB-INF/views目錄下是否真的存在home.jsp?

標(biāo)簽: java
相關(guān)文章:
主站蜘蛛池模板: 亚洲高清视频在线 | 一级电影院 | 国产精品s色 | 国产精品久久久久久婷婷天堂 | 日韩精品一二三区 | 日本福利视频免费观看 | 激情久久久久 | 国内精品在线视频 | 精品无人乱码区1区2区3区 | 香蕉婷婷| 欧美日韩精 | 四虎免费在线播放 | 国产a级毛片 | 欧美日韩国产精品 | 欧美日韩一级在线观看 | 色先锋资源| 欧美日韩高清不卡 | 视频一区二区三区在线观看 | 国产成人精品久久二区二区 | 国产精品自产拍在线观看桃花 | 精品久久一区二区三区 | 国产精品美女视频免费观看软件 | 成人在线视频一区 | 天天操狠狠操网站 | 午夜少妇av | 国产精品一区二区三区在线 | 久久久国产一区二区 | 成人免费在线观看 | 精品www | а√天堂中文在线资源8 | 精品久 | 欧美一区二区三区电影 | 99精品一级欧美片免费播放 | 国产在线一区二区三区 | 在线视频不卡一区 | 日韩精品99久久久久中文字幕 | 欧美一区二区三区在线视频观看 | 成人二区 | 久久久久999 | 在线精品自拍 | 丁香婷婷久久久综合精品国产 |