【问题标题】:Jsp issue in spring春季jsp问题
【发布时间】:2016-09-07 00:30:33
【问题描述】:

我正在构建一个 Spring 应用程序。

package com.capd.controller;

import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;

@Controller
public class HomeController {
    @RequestMapping(value = "/")
    public  String  home(){
    return "text";
    }
}

在 webapp 我有 text.jsp

<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
    <title></title>
</head>
<body>
<h1>Title</h1>
</body>
</html>

当我运行这个应用程序时,JSP 会按原样显示(见附加屏幕)请指导我如何解决这个问题。

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"
             xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"
             id="WebApp_ID" version="3.0">

            <context-param>
                <param-name>contextConfigLocation</param-name>
                <param-value>/WEB-INF/config/spring-context.xml</param-value>
            </context-param>
            <servlet>
                <servlet-name>dispatcher</servlet-name>
                <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
                <init-param>
                    <param-name>contextConfigLocation</param-name>
                    <param-value></param-value>
                </init-param>
                <load-on-startup>1</load-on-startup>
            </servlet>
            <servlet-mapping>
                <servlet-name>dispatcher</servlet-name>
                <url-pattern>/*</url-pattern>
            </servlet-mapping>
            <listener>
                <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
            </listener>

    </web-app>

spring-context.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"
       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">
    <context:component-scan base-package="com.capd"/>
</beans>

和 Appconfig 文件。

package com.capd.util;

import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.servlet.config.annotation.DefaultServletHandlerConfigurer;
import org.springframework.web.servlet.config.annotation.EnableWebMvc;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurerAdapter;
import org.springframework.web.servlet.view.InternalResourceViewResolver;

/**
 * Created by Ashish on 5/11/2016.
 */
@Configuration
@EnableWebMvc
public class AppConfig extends WebMvcConfigurerAdapter {

    @Bean
    public InternalResourceViewResolver viewResolver() {
        InternalResourceViewResolver internalResourceViewResolver = new InternalResourceViewResolver();
        internalResourceViewResolver.setPrefix("/");
        internalResourceViewResolver.setSuffix(".jsp");
        return internalResourceViewResolver;
    }

    @Override
    public void configureDefaultServletHandling(DefaultServletHandlerConfigurer configurer) {
        configurer.enable();
    }
}

【问题讨论】:

  • 您是否尝试过指定您的应用程序名称localhost:8080/your_app/
  • 你能分享你的 web.xml 文件吗?可能你没有jsp文件的映射
  • 你能添加你的 pom.xml 吗(如果你使用 maven)?您可能缺少一些依赖项。从我的脑海中,它可能是这个 - javax.servletjstl1.2
  • @cralfaro 我刚刚添加了所有配置文件DriveLink of app
  • @Abubakkar 是的,我试过了,但没有结果

标签: java spring jsp spring-mvc


【解决方案1】:

xml 配置很奇怪尝试使用 java 基本配置。

例如观看以下视频

https://www.youtube.com/watch?v=5BY9YxdMg8I

你的应用程序的问题是 web.xml

<servlet>
    <servlet-name>spring</servlet-name>
    <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
    <load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
    <servlet-name>spring</servlet-name>
    <url-pattern>/</url-pattern>
</servlet-mapping>
<context-param>
    <param-name>contextConfigLocation</param-name>
    <param-value>WEB-INF/spring-servlet.xml</param-value>
</context-param>
<listener>
    <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>

我知道它不好,但你需要遵循这个确切的语法和上下文

【讨论】:

    猜你喜欢
    • 2015-07-25
    • 2011-10-19
    • 2016-08-22
    • 2016-06-29
    • 2016-12-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多