初学struts2.5.16.all:我为填坑带盐

1.下载

http://struts.apache.org/download.cgi
下载最新的2.x.x-all.zip即可

2.导入什么

这是我很疑惑的问题,各个网站教程很多没更新,里面写的导入什么可能都不是最新的,那么到底该怎么导入呢?解压之后,观察一下目录:
找到:\struts-2.5.16\apps
里面有:
struts2-rest-showcase.war【猜测是简易包】
这里面有xx.war文件,这个可以说是一种压缩包需要解压,但是右键菜单默认不识别,只能压缩。可以先右键,添加到压缩文件。
这里写图片描述
在里面就可以找到xx.war进行解压了。
解压后在:struts2-rest-showcase\WEB-INF\lib全部复制到项目\WEB-INF\lib下即可。

3.ClassNotFoundException

这个错误让我抓狂很久,这个还要分很多情况。。。

a.普通其他jar包,如jdbc的jar包

注意要修改tomcat:tomcat/conf/web.xml

    <servlet>
        <servlet-name>jsp</servlet-name>
        <servlet-class>org.apache.jasper.servlet.JspServlet</servlet-class>
        <init-param>
            <param-name>fork</param-name>
            <param-value>false</param-value>
        </init-param>
        <init-param>
            <param-name>xpoweredBy</param-name>
            <param-value>false</param-value>
        </init-param>
        <load-on-startup>3</load-on-startup>
        <init-param>
            <param-name>development</param-name>
            <param-value>false</param-value>
        </init-param>
    </servlet>

把development对应值改成false,这样就不用每次都要把jar包手动拷贝到tomcat

b.struts2特殊导入

注意不要进行任何右键buildpath操作,如果进行了就删掉,然后直接把jar包拷贝到WEB-INFO/libs目录下即可

c.找不到FilterDispatcher

很多地方教程没更新,你可以先按这个教程步骤操作,再来看这一部分:https://www.yiibai.com/struts_2/
web.xml教程上这样写:

<filter>
      <filter-name>struts2</filter-name>
      <filter-class>
         org.apache.struts2.dispatcher.FilterDispatcher
      </filter-class>
   </filter>

注意!!!这个类在2.x版本之后以及没了!!!可以在Libraries/Web App Libraries/struts2-core-2.5.16.jar打开来找,找不到就是没有
2.5.16的是:

<filter>
      <filter-name>struts2</filter-name>
      <filter-class>
          org.apache.struts2.dispatcher.filter.StrutsPrepareAndExecuteFilter
      </filter-class>
   </filter>

4.浏览器上显示jsessionid=xxxxx

真是吐血!!!写到这里有种想砸电脑的冲动,还好这个很好解决,删掉:struts2-rest-plugin-2.5.16.jar这个就可以了

猜你喜欢

转载自blog.csdn.net/yu_duan_hun/article/details/81117966