1. 程式人生 > >初學struts2.5.16.all:我為填坑帶鹽

初學struts2.5.16.all:我為填坑帶鹽

1.下載

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

<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這個就可以了