標籤:

Struts2 初探

發布日期:2007-8-3 10:09:00發布者:[IT電子教育門戶]評論:[ 0] 瀏覽: 420Struts2 發布已經有一段時間了。(http://struts.apache.org/downloads.html)最近正在做的項目已經到了尾聲,利用這段空閑的時間,我試用了一下Struts2。跟Struts1 相比,Struts2 做了不少改變,例如:Struts2提供一個ActionSupport基類去實現常用的介面。Action介面不是必須的,任何有execute標識的POJO對象都可以用作Struts2的Action對象,具體可以參考apache官方網站。http://struts.apache.org/2.0.6/index.html我的感覺是Struts2變的更加靈活了。好,既然是學習,Hello World 程序是必不可少的。第一步,先看看系統要求:Platform RequirementsStruts 2 requiresServlet API 2.4JSP API 2.0Java 5更具體系統要求可以在文檔說明中找到。第二步,了解如何部署Struts2程序。我手上沒有支持Struts2的IDE所以只有自己多花點力氣了。在以下鏈接中可以找到部署Struts2程序的三種方法:http://struts.apache.org/2.0.6/docs/ready-set-go.html1. Use the blank template (在struts-2.0.6-all.zip)2. run the Maven archetype3. just setup a web infrastructure from scratch我用了第三種方法。http://struts.apache.org/2.0.6/docs/simple-setup.html 這個鏈接上面說的很明白。主意需要庫,多了或者少了都會出問題。我就試過把struts-2.0.6-all.zip包裡邊的lib全部拷貝過去,結果在tomcat啟動的過程中出現一下錯誤:嚴重: Error filterStart查看tomcat日誌,消耗了不少時間終於排除了問題。可能是裡邊的一些plugin包引起的,以後在慢慢研究怎麼回事。好了,按照simple-setup.html中的說明把程序部署好。部署好之後的目錄結構如下:struts2├─META-INF│ MANIFEST.MF│├─WEB-INF│ │ web.xml│ ││ ├─classes│ │ │ struts.xml│ │ ││ │ └─org│ │ └─sen│ │ └─hello│ │ HelloWorld.class│ ││ └─lib│ antlr-2.7.2.jar│ commons-beanutils-1.6.jar│ commons-chain-1.1.jar│ commons-logging-1.0.4.jar│ commons-validator-1.3.0.jar│ freemarker-2.3.8.jar│ ognl-2.6.11.jar│ oro-2.0.8.jar│ struts2-core-2.0.6.jar│ xwork-2.0.1.jar│└─helloHelloWorld.jsp【注】我這個程序跟http://struts.apache.org/2.0.6/docs/hello-world.html上面的Hello world 是一樣的,只是改了包名。啟動tomcat,成功了^_^。因為我用的開發工具試myEclipse 於是,我便試著把這個項目遷移到eclipse中去在eclipse 中新建項目Struts2 然後把所有的文件複製過去。最後目錄結構為:struts2│ .project│ .mymetadata│ .classpath│├─src│ │ struts.xml│ ││ └─org│ └─sen│ └─hello│ HelloWorld.java│├─WebRoot│ ├─WEB-INF│ │ │ web.xml│ │ ││ │ ├─lib│ │ │ struts2-core-2.0.6.jar│ │ │ ...│ │ └─classes│ │ │ struts.xml│ │ ││ │ └─org│ │ └─sen│ │ └─hello│ │ HelloWorld.class│ ││ ├─META-INF│ │ MANIFEST.MF│ ││ └─hello│ HelloWorld.jsp│├─.myeclipse└─.settings...myEclipse 可以正確發布,但是啟動的時候出現問題。java.lang.UnsupportedClassVersionError: org/apache/struts2/dispatcher/FilterDispatcher (Unsupported major.minor version 49.0)經過檢查發現原因所在:我elipse的編譯器雖然設成了jdk1.5,但是eclipse啟動tomcat的時候還是用之前設的jdk1.4。把啟動在myeclipse的application server下面找到tomcat並且把jdk設為jdk1.5便ok了。上面是我在試用struts2的時候遇到的一點波折。環境搭好了,剩下的就是抓時間應該深入學習一下。
推薦閱讀:

JSP中標籤的部署與調用
Struts2之類型轉換器
<s:iterator>標籤遍歷動態數組<泛型>:ArrayList<對象>,怎樣批量修改數據並一起提交到後台
Struts 2 中 <s:form> 標籤和 HTML 的 <form> 標籤有什麼區別?

TAG:Struts2 | Struts |