【问题标题】:Bootstrap and CSS formatting not showing JSPBootstrap 和 CSS 格式不显示 JSP
【发布时间】:2017-05-12 09:13:32
【问题描述】:

我创建了一个 JSP 文件。早些时候,它是一个 html 文件,并且引导程序完美显示。现在,我将其更改为 jsp 文件。因此,当用户输入 URL 时,它会通过 Dispatcher Servlet 进行路由,然后用户会看到 jsp。
由于某种原因,没有显示 CSS 格式:

我正在尝试显示 ipay.jsp:
这里是文件结构

映射到这个 JSP 的 Servlet:

package com.tests;

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

/*
 * author: Crunchify.com
 * 
 */

@Controller
public class CrunchifyHelloWorld {

    @RequestMapping("/welcome1")
    public ModelAndView helloWorld() {

        String message = "HELLO HEY";
        System.out.println("dpay");
        return new ModelAndView("ipay", "message", message);
    }
}

我把结构和代码改成如下,还是不行

这是我的 servlet.xml

<beans xmlns="http://www.springframework.org/schema/beans"
    xmlns:mvc="http://www.springframework.org/schema/mvc" 
    xmlns:context="http://www.springframework.org/schema/context"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="
        http://www.springframework.org/schema/beans     
        http://www.springframework.org/schema/beans/spring-beans.xsd
        http://www.springframework.org/schema/mvc 
        http://www.springframework.org/schema/mvc/spring-mvc.xsd
        http://www.springframework.org/schema/context 
        http://www.springframework.org/schema/context/spring-context.xsd">

    <mvc:default-servlet-handler/>

    <mvc:annotation-driven/>

    <mvc:resources mapping="/resources/**" location="/resources/" />
    <context:component-scan base-package="com.stellar,com.tests" />



    <bean id="viewResolver"
        class="org.springframework.web.servlet.view.UrlBasedViewResolver">
        <property name="viewClass"
            value="org.springframework.web.servlet.view.JstlView" />
        <property name="prefix" value="/WEB-INF/jsp/" />
        <property name="suffix" value=".jsp" />
    </bean>

</beans>

这是我的 web.xml:

<web-app>
  <display-name>Archetype Created Web Application</display-name>

   <servlet>
        <servlet-name>stellar</servlet-name>
        <servlet-class>
            org.springframework.web.servlet.DispatcherServlet
        </servlet-class>
        <load-on-startup>1</load-on-startup>
    </servlet>
    <servlet-mapping>
        <servlet-name>stellar</servlet-name>

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



</web-app>

【问题讨论】:

    标签: java css spring


    【解决方案1】:

    路径又出问题了。您的default.css 位于jsp 文件夹下。

    要么将 href 更改为 jsp\default.css,要么将 default.css 向上移动。

    我建议创建一个单独的 css 文件夹并将所有 *.css 文件放在那里。同时调整你的路径。

    一般来说,WEB-INF 是你的根。从那里开始路径并相应地放置您的文件。

    【讨论】:

    • 我改成,还是不显示
    • 应该是&lt;link href="jsp/default.css" rel="stylesheet" type="text/css"&gt;。 WEB-INF是root不用提了
    • 还是不行。用新的目录结构更新了帖子。我确实在日志中注意到了这条消息:org.springframework.web.servlet.PageNotFound noHandlerFound
    • No mapping found 表示 spring 试图找到一个控制器来处理 URL。尝试将&lt;mvc:default-servlet-handler/&gt; 添加到您的stellar-servlet.xml 并检查此stackoverflow.com/questions/1266303/…
    • 我已将我的 servlet.xml 和 web.xml 添加到问题中。如果我已经驱动了注解,你确定我应该添加 mvc:default-servlet-handler
    【解决方案2】:

    将你的 default.css 复制到资源文件夹下。

    然后在 stellar-servlet.xml 的 beans 标签下添加资源映射。

    <mvc:resources mapping="/resources/**" location="/resources/" />
    

    文件夹结构和url映射在spring框架中是完全不同的东西。 Spring mvc 有一个 urlBasedviewResolver 用 JstlView 解析 jsps。

    【讨论】:

      猜你喜欢
      • 2020-04-16
      • 1970-01-01
      • 2020-05-08
      • 1970-01-01
      • 1970-01-01
      • 2015-05-15
      • 1970-01-01
      • 2020-12-22
      • 2020-03-27
      相关资源
      最近更新 更多