发表于: 2017-05-12 21:23:35

1 1184


今天完成的事情

今天花了一整天的时间,在师兄的帮助下,找了四五个BUG,页面终于正常显示了,感谢大师兄啊!

JSTL:JSP标准库,在maven项目中要添加依赖:

<dependency>

      <groupId>javax.servlet</groupId>

      <artifactId>jstl</artifactId>

      <version>1.2</version>

</dependency>


明天打算做的事情:将JSP页面更改为动态内容,完成两个页面的改造,争取完成任务四!


遇到的问题

1.

java.lang.NoClassDefFoundError: javax/servlet/jsp/jstl/core/Config

遇到问题的原因并不仅仅是因为没有添加依赖,而是这个标签库要在项目运行的时候被依赖,所以必须在maven项目中添加:

<!-- JSTL核心包 -->
<dependency>
<groupId>javax.servlet</groupId> <!--不是javax.servlet.jsp.jstl-->
 <artifactId>jstl</artifactId>
<version>${jstl.version}</version>
<scope>runtime</scope>  <!--运行时依赖!!!-->
</dependency>

如上所示,显然我还有另一个错误,在maven依赖库中,我搜索jstl,它会显示项目迁移到新的地方了,也就是

javax.servlet.jsp.jstl

我就天真的以为都是一样的,就添加了最新的,结果就还是报错了。。。。

以上就是两个问题了。


2. 没有在spring中添加Tiles视图页面加载配置,用于配置tiles页面:

<!--Tiles视图页面加载配置-->

    <bean id="tilesResolver"

          class="org.springframework.web.servlet.view.tiles3.TilesViewResolver">

        <property name="viewClass"

                  value="org.springframework.web.servlet.view.tiles3.TilesView"/>

        <property name="order" value="1"/>

        <property name="viewNames">

            <list>

                <value>*index</value>

                <value>*index2</value>

            </list>

        </property>

    </bean>

我只添加了tiles模板的配置:

<!-- 配置tiles模板 -->

    <bean id="tilesConfigurer" class="org.springframework.web.servlet.view.tiles3.TilesConfigurer">

        <property name="definitions">

            <list>

                <value>/WEB-INF/layout/tiles.xml</value>

            </list>

        </property>

    </bean>


3. 第四个问题困扰了我两三个小时,结果也是挺奇葩的:

java.lang.NullPointerException,指明我的controller里的List<Student>。

这个报错以前没遇到过,搜索也搜不出什么特别有用的,我以为是类里的注解的问题,各种尝试都没有用。

后来问师兄,师兄说是空指针,我还是没有思路,最后在师兄帮助下一层层的往上找。

这个方法在空指针说明List里面没有东西,也就是studentService没有起来,查看日志,果然是没有studentService的Bean,说明没有被扫描到。可是我是明明配置了扫描整个项目路径的。

最后发现是路径地址的问题,在IDEA编辑器中使用相对路径,甚至是一个单独的项目名,IDEA都能够找到,但是Tomcat找不到啊!!!

所以以后尽量使用绝对路径,在项目名前添加com.就好了,页面终于完美呈现!


收获

今天的收获就是怎么改BUG,以前一报错我通常就是直接复制相关错误信息谷歌一下,然后才思考是怎么回事,有的问题可能搜索不出来,我就很急躁了。通过这两天,终于知道遇到错误不是先去找答案,而是思考是哪里错了,可能是什么的问题,这样解决bug的效率更高!!!


返回列表 返回列表
评论

    分享到