<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    隨筆-34  評(píng)論-1965  文章-0  trackbacks-0

    Struts作為MVC 2的Web框架,自推出以來(lái)不斷受到開(kāi)發(fā)者的追捧,得到用廣泛的應(yīng)用。作為最成功的Web框架,Struts自然擁有眾多的優(yōu)點(diǎn):

    • MVC 2模型的使用
    • 功能齊全的標(biāo)志庫(kù)(Tag Library)
    • 開(kāi)放源代碼

    但是,所謂“金無(wú)赤金,人無(wú)完人”,Struts自身也有不少的缺點(diǎn):

    • 需要編寫(xiě)的代碼過(guò)多,容易引起“類爆炸”
    • 單元測(cè)試?yán)щy

    這些缺點(diǎn)隨著Web的發(fā)展越來(lái)越明顯。這就促生了Struts 2.0,它的誕生能很好的解決上述問(wèn)題。 好啦,廢話就不多說(shuō)了,現(xiàn)在就讓我們感受一下的Struts 2.0的魅力吧。

    1. 搭建開(kāi)發(fā)和運(yùn)行環(huán)境
      1. 到Apache下載Struts 2.0包

      2. 打開(kāi)Eclipse 3.2新建Web工程

        點(diǎn)擊菜單File\New\Project,出現(xiàn)如圖1所示對(duì)話框
        圖1 新建工程對(duì)話框
        圖1 新建工程對(duì)話框
        選擇Web\Dynamic Web Project,點(diǎn)擊“Next”,出現(xiàn)圖2對(duì)話框

        圖2 新建動(dòng)態(tài)Web工程對(duì)話框
        圖2 新建動(dòng)態(tài)Web工程對(duì)話框
        在“Project Name”中鍵入Struts2_HelloWorld,點(diǎn)擊“New”,出現(xiàn)以下對(duì)話框

        圖3 新建服務(wù)器運(yùn)行時(shí)對(duì)話框
        圖3 新建服務(wù)器運(yùn)行時(shí)對(duì)話框
        選擇“Apache\Apache Tomat v5.5”,點(diǎn)擊“Next”,出現(xiàn)以下對(duì)話框

        圖4新建服務(wù)器運(yùn)行時(shí)對(duì)話框
        圖4新建服務(wù)器運(yùn)行時(shí)對(duì)話框
        點(diǎn)擊“Finish”,關(guān)閉對(duì)話框。

      3. 將Struts 2.0 lib下的jar文件加到工程的構(gòu)建路徑(build path)

        圖5 Struts 2.0的lib目錄
        圖5 Struts 2.0的lib目錄
        按ctr+a全選,復(fù)制,再轉(zhuǎn)到Eclipse窗口,在“Project Explorer”子窗口中選中Struts2_HelloWorld\WebContent\WEB-INF\lib,然后粘貼。經(jīng)過(guò)Eclipse自動(dòng)刷新“Project Explorer”子窗口,剛才所粘貼的jar文件應(yīng)該會(huì)出現(xiàn)在Struts2_HelloWorld\Java Resources: src\Libraries\Web App Libraries下,如圖6所示:

        圖6 Project Explorer子窗口
        圖6 Project Explorer子窗口

      4. 打開(kāi)web.xml文件,將其修改為以下代碼:
        <?xml?version="1.0"?encoding="ISO-8859-1"?>
        <!DOCTYPE?web-app?PUBLIC?"-//Sun?Microsystems,?Inc.//DTD?Web?Application?2.3//EN"?"http://java.sun.com/dtd/web-app_2_3.dtd">
        <web-app>
        ????
        <display-name>Struts?2.0?Hello?World</display-name>
        ????
        <filter>
        ????????
        <filter-name>struts2</filter-name>????????<filter-class>org.apache.struts2.dispatcher.FilterDispatcher</filter-class>
        ????
        </filter>
        ????
        <filter-mapping>
        ????????
        <filter-name>struts2</filter-name>
        ????????
        <url-pattern>/*</url-pattern>
        ????
        </filter-mapping>
        ????
        <welcome-file-list>
        ????????
        <welcome-file>index.html</welcome-file>
        ????
        </welcome-file-list>
        </web-app>

      5. 新建struts.xml文件

        右鍵點(diǎn)擊,Struts2_HelloWorld\Java Resources: src,出現(xiàn)如圖7所示菜單
        圖7 新建Other菜單
        圖7 新建Other菜單
        點(diǎn)擊“Other”,出現(xiàn)新建對(duì)話框,如圖8所示

        圖8 新建對(duì)話框
        圖8 新建對(duì)話框
        點(diǎn)擊“Next”,出現(xiàn)新建文件對(duì)話框,如圖9所示

        圖9 新建文件對(duì)話框
        圖9 新建文件對(duì)話框
        在“File name”中鍵入sturts.xml,點(diǎn)擊“Finish”,然后將struts.xml的內(nèi)容修改為:

        <!DOCTYPE?struts?PUBLIC
        ????????"-//Apache?Software?Foundation//DTD?Struts?Configuration?2.0//EN"
        ????????"http://struts.apache.org/dtds/struts-2.0.dtd"
        >
        <struts>
        ????
        <include?file="struts-default.xml"/>
        </struts>

      6. 新建index.html文件

        右鍵點(diǎn)擊Struts2_HelloWorld\WebContent,出現(xiàn)如圖10所示的菜單
        圖10 新建Other菜單
        圖10 新建Other菜單
        點(diǎn)擊“Other”,出現(xiàn)新建對(duì)話框,如圖11所示

        圖11 新建對(duì)話框
        圖11 新建對(duì)話框
        選擇Web\HTML,點(diǎn)擊“Next”出現(xiàn)如圖12所示的對(duì)話框

        圖12 新建HTML頁(yè)面對(duì)話框
        圖12 新建HTML頁(yè)面對(duì)話框
        在“File Name”中鍵入index.html,點(diǎn)擊“Next”,出現(xiàn)如圖13所示的對(duì)話框

        圖13 模板選擇對(duì)話框
        圖13 模板選擇對(duì)話框
        點(diǎn)擊“Finish”,將index.html的內(nèi)容修改為以下內(nèi)容:

        <!DOCTYPE?HTML?PUBLIC?"-//W3C//DTD?HTML?4.01?Transitional//EN">
        <html>
        <head>
        <meta?http-equiv="Content-Type"?content="text/html;?charset=UTF-8">
        <title>Hello?World</title>
        </head>
        <body>
        <h3>Hello?World!</h3>
        </body>
        </html>

      7. 將應(yīng)用程序打包到tomcat上

        右鍵點(diǎn)擊Struts_HelloWorld,出現(xiàn)如圖14所示的菜單
        圖14 工程菜單
        圖14 工程菜單
        點(diǎn)擊“Export\WAR file”,出現(xiàn)如圖15所示的對(duì)話框

        圖15 輸出對(duì)話框
        圖15 輸出對(duì)話框
        選擇“Web\WAR file”,點(diǎn)擊“Next”,出現(xiàn)如圖16所示的對(duì)話框

        圖16 輸出路徑對(duì)話框
        圖16 輸出路徑對(duì)話框
        輸入war文件的路徑(如%tomcat%\webapps\Struts2_HelloWorld.war),點(diǎn)擊“Finish”關(guān)閉對(duì)話框。

      8. 啟動(dòng)tomcat,運(yùn)行應(yīng)用程序

        打開(kāi)你的Internet Explorer,鍵入http://localhost:8080/Struts2_HelloWorld/,窗口輸出如圖17所示
        圖17 Hello World窗口
        圖17 Hello World窗口

    2. 第一個(gè)Struts 2.0應(yīng)用程序——Hello World
      1. 新建類包(package)

        右鍵點(diǎn)擊Struts2_HelloWorld\Java Resources: src,出現(xiàn)如圖18所示菜單
        圖18 新建菜單
        圖18 新建菜單"
        點(diǎn)擊“New\Package”,出現(xiàn)如圖19所示對(duì)話框

        圖19新建Java類包對(duì)話框
        圖19新建Java類包對(duì)話框
        在“Name”鍵入tutorial,點(diǎn)擊“Finish”關(guān)閉對(duì)話框。

      2. 新建HelloWorld.java文件

        右鍵點(diǎn)擊Struts2_HelloWorld\Java Resources: src\tutorial,出現(xiàn)如圖20所示菜單
        圖20 新建菜單
        圖20 新建菜單
        點(diǎn)擊“New\Class”,出現(xiàn)如圖21所示對(duì)話框

        圖21 新建Java類對(duì)話框
        圖21 新建Java類對(duì)話框
        在“Name”中鍵入HelloWorld,在“Superclass”中鍵入com.opensymphony.xwork2.ActionSupport,點(diǎn)擊“Finish”關(guān)閉對(duì)話框。將HelloWorld.java的內(nèi)容修改為:

        package?tutorial;

        import?com.opensymphony.xwork2.ActionSupport;

        public?class?HelloWorld?extends?ActionSupport?{
        ????
        private?String?name;
        ????
        ????
        public?String?getName()?{
        ????????
        return?name;
        ????}

        ????
        ????
        public?void?setName(String?name)?{
        ????????
        this.name?=?name;
        ????}

        ????
        ????
        public?String?execute()?{
        ????????name?
        =?"Hello,?"?+?name?+?"!";?
        ????????
        return?SUCCESS;
        ????}

        }

      3. 在struts.xml中添加action映射(mapping)
        <!DOCTYPE?struts?PUBLIC
        ????????"-//Apache?Software?Foundation//DTD?Struts?Configuration?2.0//EN"
        ????????"http://struts.apache.org/dtds/struts-2.0.dtd"
        >
        <struts>
        ????
        <include?file="struts-default.xml"/>
        ????
        <package?name="tutorial"?extends="struts-default">
        ????????
        <action?name="HelloWorld"?class="tutorial.HelloWorld">
        ????????????
        <result>HelloWorld.jsp</result>
        ????????
        </action>
        ????
        </package>
        </struts>

      4. 新建SayHello.jsp

        參考“新建index.html文件”步驟,彈出如圖22所示對(duì)話框
        圖22 新建對(duì)話框
        圖22 新建對(duì)話框
        點(diǎn)擊“Next”, 進(jìn)入下一步,如圖23所示

        圖23 新建JSP對(duì)話框
        圖23 新建JSP對(duì)話框
        在“File name”鍵入SayHello.jsp,點(diǎn)擊“Next”進(jìn)入下一步,如圖24所示

        圖24 模板選擇對(duì)話框
        圖24 模板選擇對(duì)話框
        點(diǎn)擊“Finish”關(guān)閉對(duì)話框,并將SayHello.jsp的內(nèi)容修改為:

        <%@?page?contentType="text/html;?charset=UTF-8"?%>
        <%@?taglib?prefix="s"?uri="/struts-tags"?%>
        <!DOCTYPE?HTML?PUBLIC?"-//W3C//DTD?HTML?4.01?Transitional//EN">
        <html>
        ????
        <head>
        ????????
        <title>Say?Hello</title>
        ????
        </head>
        ????
        <body>
        ????????
        <h3>Say?"Hello"?to:?</h3>
        ????????
        <s:form?action="HelloWorld">
        ????????????Name:?
        <s:textfield?name="name"?/>
        ????????????
        <s:submit?/>
        ????????
        </s:form>
        ????
        </body>
        </html>

      5. 新建HelloWorld.jsp(請(qǐng)參考上一步),HelloWorld.jsp的內(nèi)容為:
        <%@?page?contentType="text/html;?charset=UTF-8"?%>
        <%@?taglib?prefix="s"?uri="/struts-tags"?%>
        <!DOCTYPE?HTML?PUBLIC?"-//W3C//DTD?HTML?4.01?Transitional//EN">
        <html>
        ????
        <head>
        ????????
        <title>Hello</title>
        ????
        </head>
        ????
        <body>
        ????????
        <h3><s:property?value="name"?/></h3>
        ????
        </body>
        </html>

      6. 重新打包發(fā)布應(yīng)用程序

        先停止tomcat, 再將tomcat里webapps下的Struts2_HelloWorld.war和Struts2_HelloWorld文件夾刪除,參照“將應(yīng)用程序打包到tomcat上”重新發(fā)布應(yīng)用程序。

      7. 啟動(dòng)tomcat,運(yùn)行測(cè)試

        打開(kāi)Internet Explorer,鍵入http://localhost:8080/Struts2_HelloWorld/SayHello.jsp,窗口輸出如圖25所示
        圖25 SayHello.jsp
        圖25 SayHello.jsp
        在“Name”鍵入字符串(如World),點(diǎn)擊Submit,轉(zhuǎn)到HelloWorld.jsp頁(yè)面,如圖26所示

        圖26 HelloWorld.jsp
        圖26 HelloWorld.jsp

    3. 單元測(cè)試Hello World

      在文章開(kāi)始的時(shí)候提及,單元測(cè)試?yán)щy是Struts一大缺點(diǎn)。現(xiàn)在讓我們?cè)隗w驗(yàn)一下,在Struts 2.0中是如何進(jìn)行測(cè)試的。

      1. 新建JUnit單元測(cè)試

        右鍵點(diǎn)擊Struts2_HelloWorld\Java Resources: src\tutorial,彈出如圖27所示對(duì)話框
        圖27 新建菜單
        圖27 新建菜單
        點(diǎn)擊“Next\Other”

        圖28 新建對(duì)話框
        圖28 新建對(duì)話框
        選擇“Java\JUnit\JUnit Test Case”,點(diǎn)擊“Next”

        圖29 新建JUnit 測(cè)試用例對(duì)話框
        圖29 新建JUnit 測(cè)試用例對(duì)話框
        選擇“New JUnit 4 test”,在“Name”中鍵入HelloWorldTest,在“Class under test”鍵入tutorial.HelloWorld,點(diǎn)擊“Next”

        圖30 選擇方法對(duì)話框
        圖30 選擇方法對(duì)話框
        選中HelloWorld\execute方法,點(diǎn)擊Finish。如果生成的HelloWorldTest.java文件的圖標(biāo)(Icon)出現(xiàn)紅色交叉標(biāo)志,請(qǐng)進(jìn)行以下步驟添加JUnit 4的jar包。

        右鍵點(diǎn)擊Struts2_HelloWorld,出現(xiàn)如圖所示菜單。 圖31 新建菜單
        圖31 新建菜單
        點(diǎn)擊“Build Path\Add Libararis”,彈出圖32對(duì)話框

        圖32 添加庫(kù)對(duì)話框
        圖32 添加庫(kù)對(duì)話框
        選中“JUnit”,點(diǎn)擊“Next”

        圖33 選擇版本對(duì)話框
        圖33 選擇版本對(duì)話框
        選擇“JUnit 4”,點(diǎn)擊“Finish”關(guān)閉對(duì)話框,并將HelloWorldTest.java的內(nèi)容修改為:

        package?tutorial;

        import?static?org.junit.Assert.assertTrue;

        import?org.junit.Test;

        import?com.opensymphony.xwork2.ActionSupport;

        public?class?HelloWorldTest?{

        ????@Test
        ????
        public?void?testExecute()?{
        ????????HelloWorld?hello?
        =?new?HelloWorld();
        ????????hello.setName(
        "World");
        ????????String?result?
        =?hello.execute();
        ????????
        ????????assertTrue(
        "Expected?a?success?result!",?ActionSupport.SUCCESS.equals(result));
        ????????
        ????????
        final?String?msg?=?"Hello,?World!";
        ????????assertTrue(
        "Expected?the?default?message!",?msg.equals(hello.getName()));
        ????}


        }

      2. 運(yùn)行單元測(cè)試

        右鍵點(diǎn)擊Struts2_HelloWorld\Java Resources: src\tutorial\HelloWorldTest.java,彈出如圖34所示菜單
        圖34 運(yùn)行為菜單
        圖34 運(yùn)行為菜單
        點(diǎn)擊“Run As\JUnit Test”,出現(xiàn)JUnit子窗口如圖35所示

        圖35 JUnit子窗口
        圖35 JUnit子窗口
        圖35的綠色矩形表示,所有單元測(cè)試通過(guò)。

    4. 總結(jié)

      上面的例子簡(jiǎn)單地演示了,Web 應(yīng)用程序的基本操作,也即是,頁(yè)面輸入->Action處理->再輸出到另外頁(yè)面。Struts 2.0的簡(jiǎn)單易用、方便測(cè)試相信也會(huì)給大家留下不錯(cuò)的印象吧。我相信,Struts 2.0作為一個(gè)全新的Web架構(gòu),將會(huì)再次掀起Web開(kāi)發(fā)的熱潮。 不過(guò),Struts 2.0還在測(cè)試中,正式版的發(fā)布還需些時(shí)日,所以文檔方面可能有所欠缺。請(qǐng)大家繼續(xù)留意我的博客,我會(huì)盡我所能為大家寫(xiě)更多關(guān)于Struts 2.0的文章。

    posted on 2006-10-10 18:35 Max 閱讀(126059) 評(píng)論(345)  編輯  收藏 所屬分類: Struts 2.0系列
    評(píng)論共4頁(yè): 上一頁(yè) 1 2 3 4 下一頁(yè) 

    評(píng)論:
    # re: 為Struts 2.0做好準(zhǔn)備 2006-12-05 10:52 | kevin666888
    為什么不能正確顯示中文:
    如果在SayHello.jsp頁(yè)面的輸入框中輸入中文,(如“世界”)

    提交后顯示的是亂碼,如"Hello, ?=?!"

    請(qǐng)各位指教。  回復(fù)  更多評(píng)論
      
    # re: 為Struts 2.0做好準(zhǔn)備 2006-12-05 18:34 | Max
    HelloWorld.jsp中<%@ page contentType="text/html; charset=UTF-8" %>有沒(méi)有加上這個(gè)?
    在我的環(huán)境中沒(méi)有這個(gè)問(wèn)題。  回復(fù)  更多評(píng)論
      
    # re: 為Struts 2.0做好準(zhǔn)備 2006-12-07 21:20 | konhon 優(yōu)華
    非常詳細(xì)...
    我照做了下, 全通過(guò)  回復(fù)  更多評(píng)論
      
    # re: 為Struts 2.0做好準(zhǔn)備 2006-12-14 15:04 | xanbio
    @風(fēng)人園
    如果你是直接copy的過(guò)去就會(huì)有這個(gè)問(wèn)題。。建議把配置文件按照上面的手寫(xiě)一遍就好了。。
    我也遇到過(guò)這樣的問(wèn)題  回復(fù)  更多評(píng)論
      
    # re: 為Struts 2.0做好準(zhǔn)備 2006-12-14 15:07 | xanbio
    不完全這樣,
    1.你需要在你的classpath下放置struts.properties文件。
    2.同時(shí)你需要將tomcat下的你的項(xiàng)目的啟動(dòng)文件的conttext元素的reload屬性設(shè)為true。  回復(fù)  更多評(píng)論
      
    # re: 為Struts 2.0做好準(zhǔn)備 2006-12-24 01:48 | schop
    高級(jí)IT技術(shù)網(wǎng)
    http://www.paiming.org
    商務(wù)排名網(wǎng)
    http://www.paiming.biz
    文理校友
    http://www.suse.net.cn

    http://www.paiming.cc
    天馬行空人自如,
    高山流水子期悟.
    云開(kāi)見(jiàn)日知音遇.
    淡雅素歌兩相圖。  回復(fù)  更多評(píng)論
      
    # re: 為Struts 2.0做好準(zhǔn)備 2007-01-03 11:26 | flykite1983
    請(qǐng)問(wèn)摟主為什么總是提示
    java.lang.NullPointerException呢?
      回復(fù)  更多評(píng)論
      
    # re: 為Struts 2.0做好準(zhǔn)備 2007-01-05 13:31 | ss
    為什么我在新建服務(wù)器運(yùn)行不了呢?提示tomcat路徑不對(duì)。必須得設(shè)置這個(gè)嗎?
      回復(fù)  更多評(píng)論
      
    # re: 為Struts 2.0做好準(zhǔn)備 2007-01-05 13:38 | ss
    新建服務(wù)器運(yùn)行,怎么點(diǎn)finish后不關(guān)閉呢,像死機(jī)一樣沒(méi)反應(yīng)了  回復(fù)  更多評(píng)論
      
    # re: 為Struts 2.0做好準(zhǔn)備 2007-01-09 16:57 | 阿輝[匿名]
    為什么總是提示org.apache.jasper.JasperException: File "/struts-tags" not found
      回復(fù)  更多評(píng)論
      
    # re: 為Struts 2.0做好準(zhǔn)備 2007-01-19 03:01 | maming
    這個(gè)更像JSF的Action模式,但是更關(guān)注于web而非組件,做為表現(xiàn)層次的framework,JSF在組件化方面做得非常優(yōu)秀,但是如果加入驗(yàn)證等等附加內(nèi)容,它還要集成其它的東西;而Struts更像一個(gè)web的框架,盡管在Action方面似乎還不存在DI,但是在JSP方面的處理好像更靈活一些。  回復(fù)  更多評(píng)論
      
    # re: 為Struts 2.0做好準(zhǔn)備[未登錄](méi) 2007-02-26 14:18 | maomao
    為什么在web.xml這一步就通不過(guò)呢:
    嚴(yán)重: Error filterStart
    2007-2-26 14:14:07 org.apache.catalina.core.StandardContext start
    嚴(yán)重: Context startup failed due to previous errors
    2007-2-26 14:14:08 org.apache.catalina.core.StandardHost getDeployer  回復(fù)  更多評(píng)論
      
    # re: 為Struts 2.0做好準(zhǔn)備[未登錄](méi) 2007-03-15 10:28 | hunter
    @stoneshao

    不錯(cuò)﹐就是學(xué)起來(lái)不容易﹗﹗支持﹗﹗﹗加油﹗﹗
      回復(fù)  更多評(píng)論
      
    # re: 為Struts 2.0做好準(zhǔn)備 2007-03-20 10:01 | linken
    Apache Struts 2 requires:( Servlet API 2.4 JSP API 2.0 Java 5 )come from Struts 2 doc
    誰(shuí)知道那些服務(wù)器支持Servlet API 2.4?
      回復(fù)  更多評(píng)論
      
    # re: 為Struts 2.0做好準(zhǔn)備 2007-03-21 14:57 | Max
    @linken
    較新一點(diǎn)版本的服務(wù)器都支持Servlet API 2.4,如Tomcat 5.x,Websphere 6.x, Weblogic 8.x或以上版本等  回復(fù)  更多評(píng)論
      
    # re: 為Struts 2.0做好準(zhǔn)備 2007-03-21 17:03 | 沒(méi)有
    type Status report

    message /Hello/

    description The requested resource (/Hello/) is not available.
    前臺(tái)顯示的錯(cuò)誤,后臺(tái)沒(méi)有錯(cuò)誤輸出。
    這是什么問(wèn)題,搞了一個(gè)下午還是這樣。
      回復(fù)  更多評(píng)論
      
    # re: 為Struts 2.0做好準(zhǔn)備 2007-03-21 17:55 | 沒(méi)有姓名
    我用的是struts2.0.6。按照方法去做,顯示出錯(cuò)是struts2過(guò)濾器出錯(cuò)。出錯(cuò)代碼如下。請(qǐng)那位大大幫忙給看一下是什么原因,整整弄了一個(gè)下午。
    信息: Parsing configuration file [struts-plugin.xml]
    2007-3-21 17:37:29 org.apache.catalina.core.StandardContext filterStart
    嚴(yán)重: Exception starting filter struts2
    Unable to load bean: type:com.opensymphony.xwork2.ObjectFactory class:org.apache.struts2.spring.StrutsSpringObjectFactory - bean - jar:file:/C:/Program%20Files/tomcat5.5.23/webapps/Hello/WEB-INF/lib/struts2-spring-plugin-2.0.6.jar!/struts-plugin.xml:8:132
    at com.opensymphony.xwork2.config.providers.XmlConfigurationProvider.register(XmlConfigurationProvider.java:209)
    at org.apache.struts2.config.StrutsXmlConfigurationProvider.register(StrutsXmlConfigurationProvider.java:101)
    .................
    Caused by: java.lang.NoClassDefFoundError: org/springframework/context/ApplicationContextAware
    at java.lang.ClassLoader.defineClass1(Native Method)
    at java.lang.ClassLoader.defineClass(ClassLoader.java:620)
    ..................
    2007-3-21 17:37:30 org.apache.catalina.core.StandardContext start
    嚴(yán)重: Error filterStart
    2007-3-21 17:37:30 org.apache.catalina.core.StandardContext start
    嚴(yán)重: Context [/Hello] startup failed due to previous errors
    2007-3-21 17:37:30 com.opensymphony.xwork2.util.ObjectTypeDeterminerFactory <clinit>  回復(fù)  更多評(píng)論
      
    # re: 為Struts 2.0做好準(zhǔn)備 2007-03-22 13:16 | world7th
    這個(gè)系列的文章很好,謝了,老大  回復(fù)  更多評(píng)論
      
    # re: 為Struts 2.0做好準(zhǔn)備 2007-03-22 22:56 | Max
    @沒(méi)有姓名
    對(duì)于沒(méi)有配置成功的朋友,可以通過(guò)將Struts 2包的apps\struts2-blank-2.0.6.war解壓,加入自己的工程。  回復(fù)  更多評(píng)論
      
    # re: 為Struts 2.0做好準(zhǔn)備 2007-03-28 16:53 | 鳳飛飛
    支持,繼續(xù)努力  回復(fù)  更多評(píng)論
      
    # re: 為Struts 2.0做好準(zhǔn)備[未登錄](méi) 2007-03-28 23:31 | pts
    eclipse的WDT好難安裝,
    按照下載頁(yè)面的提示,同時(shí)下載了三個(gè)支持模塊:dtp,emf,gef,
    eclipse版本是3.2.2,全部安裝好后,已經(jīng)在"manager configuration"看到了插件wtp安裝正常的信息,但是在新建project中怎么死活沒(méi)有建立"動(dòng)態(tài)web project"項(xiàng)目.  回復(fù)  更多評(píng)論
      
    # re: 為Struts 2.0做好準(zhǔn)備 2007-03-29 16:07 | 小吳
    下載完struts 2.0 後..開(kāi)始使用eclipse 3.2 第一步就跟作者的畫(huà)面不同了..是不是我少裝了什麼外掛呢  回復(fù)  更多評(píng)論
      
    # re: 為Struts 2.0做好準(zhǔn)備 2007-03-29 19:06 | ffgames
    你是怎么把wpt和myeclipse一起使用的?
    我這里就是不能
    可以告訴我嗎?
    我的郵箱是ffgames@163.com  回復(fù)  更多評(píng)論
      
    # re: 為Struts 2.0做好準(zhǔn)備 2007-03-29 22:43 | Max
    @pts
    @小吳
    @ffgames
    鑒于大家的問(wèn)題,我會(huì)分別做一個(gè)WDT和MyEclipse的工程上傳到文章的后面。
    對(duì)于,之前給大家?guī)?lái)的煩惱,我在此表示歉意。  回復(fù)  更多評(píng)論
      
    # re: 為Struts 2.0做好準(zhǔn)備 2007-03-30 09:29 | 謎老鼠
    我用的是NetBeans5.0,能否講講在Netbeans下如何搭建開(kāi)發(fā)和運(yùn)行環(huán)境?謝謝!  回復(fù)  更多評(píng)論
      
    # re: 為Struts 2.0做好準(zhǔn)備 2007-04-02 14:38 | 毛毛
    行:29
    字符:1
    代碼:0
    錯(cuò)誤:'dojo' 未定義
    網(wǎng)址:http://127.0.0.1:8888/Struts2_Test/SayHello.jsp  回復(fù)  更多評(píng)論
      
    # re: 為Struts 2.0做好準(zhǔn)備 2007-04-02 14:40 | 毛毛
    誰(shuí)能幫我解釋一下這是怎么回事啊
    行:29
    字符:1
    代碼:0
    錯(cuò)誤:'dojo' 未定義
    網(wǎng)址:http://127.0.0.1:8888/Struts2_Test/SayHello.jsp  回復(fù)  更多評(píng)論
      
    # re: 為Struts 2.0做好準(zhǔn)備 2007-04-03 12:37 | 小吳
    可以將taglib 的file 提供下載嗎???  回復(fù)  更多評(píng)論
      
    # 問(wèn)一個(gè)關(guān)于中文亂碼的問(wèn)題。 2007-04-03 17:44 | lhx
    我有一個(gè)注冊(cè)頁(yè)面register.jsp 如下,這樣在頁(yè)面上中文可以正確顯示,但是到action中取出來(lái)的“user.username”就是亂嗎了,該怎么解決啊?
    <%@ page contentType="text/html;charset=GBK"%>
    <%@ taglib prefix="s" uri="/struts-tags" %>
    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=gb2312">
    <title>Sign On</title>
    </head>
    <body>
    <s:form action="RegisterAction">
    <table>
    <tr>
    <td>姓名</td>
    <td><s:textfield key="user.username"/></td>
    </tr>
    <tr>
    <td>地址</td>
    <td><s:textfield key="user.address" /></td>
    </tr>
    <tr><td colspan="2"><s:submit/></td></tr>
    </table>
    </s:form>  回復(fù)  更多評(píng)論
      
    # re: 為Struts 2.0做好準(zhǔn)備[未登錄](méi) 2007-04-07 21:19 | 呵呵
    為什么提示org.apache.jasper.JasperException: File "/struts-tags" not found   回復(fù)  更多評(píng)論
      
    # re: 為Struts 2.0做好準(zhǔn)備 2007-04-07 22:56 | Max
    @lhx
    <%@ page contentType="text/html;charset=GBK"%>
    將頁(yè)面的輸出編碼設(shè)置為:GBK,但是又使用了:
    <meta http-equiv="Content-Type" content="text/html; charset=gb2312">
    告訴瀏覽器使用gb2312來(lái)顯示頁(yè)面。
    建議大家將編碼都設(shè)為utf-8,在我開(kāi)發(fā)的過(guò)程中很少碰到亂碼的情況。  回復(fù)  更多評(píng)論
      
    # re: 為Struts 2.0做好準(zhǔn)備 2007-04-07 22:59 | Max
    @呵呵
    可能少了某些JAR包。  回復(fù)  更多評(píng)論
      
    # re: 為Struts 2.0做好準(zhǔn)備 2007-04-07 23:02 | Max
    不知道誰(shuí)有沒(méi)有好的免費(fèi)的文件寄放服務(wù)?
    因?yàn)锽logjava只能擺放不超過(guò)2000kb的文件,所以我沒(méi)有辦法上傳工程文件。  回復(fù)  更多評(píng)論
      
    # re: 為Struts 2.0做好準(zhǔn)備 2007-04-09 14:53 | open
    @風(fēng)人園
    請(qǐng)你加入這個(gè)試試:
    把HelloWorld

    更改為:HelloWorld.action看看的,應(yīng)該是這個(gè)的問(wèn)題!
      回復(fù)  更多評(píng)論
      
    # re: 為Struts 2.0做好準(zhǔn)備 2007-04-10 13:36 | ycscy
    type 例外レポート

    メッセージ

    説明 The server encountered an internal error () that prevented it from fulfilling this request.

    例外

    org.apache.jasper.JasperException: Exception in JSP: /SayHello.jsp:10

    7: </head>
    8: <body>
    9: <h3>Say "Hello" to: </h3>
    10: <s:form action="HelloWorld">
    11: Name: <s:textfield name="name" />
    12: <s:submit />
    13: </s:form>


    Stacktrace:
    org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:467)
    org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:389)
    org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:315)
    org.apache.jasper.servlet.JspServlet.service(JspServlet.java:265)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:803)


    原因

    java.lang.NullPointerException

    這是什么原因?  回復(fù)  更多評(píng)論
      
    # re: 為Struts 2.0做好準(zhǔn)備 2007-04-10 17:30 | ycscy
    我用的是struts2.06,上面這個(gè)問(wèn)題是因?yàn)椴恢С謽?biāo)簽庫(kù)嗎,為什么會(huì)出現(xiàn)這樣的問(wèn)題?  回復(fù)  更多評(píng)論
      
    # re: 為Struts 2.0做好準(zhǔn)備 2007-04-10 23:15 | Max
    @ycscy
    應(yīng)該不是這個(gè)問(wèn)題。  回復(fù)  更多評(píng)論
      
    # re: 為Struts 2.0做好準(zhǔn)備 2007-04-11 09:35 | ycscy
    這個(gè)到底是什么原因,能解釋一下嗎?謝謝!  回復(fù)  更多評(píng)論
      
    # re: 為Struts 2.0做好準(zhǔn)備 2007-04-13 11:22 | xj
    @badqiu1
    你是煞筆啊,我還說(shuō)你更麻煩,還要寫(xiě)程序,我一句話下去就有人去寫(xiě),比你更簡(jiǎn)單.像你這樣的人就是半瓶晃蕩,有本事自己寫(xiě)一個(gè)類似的技術(shù)文章出來(lái)  回復(fù)  更多評(píng)論
      
    # re: 為Struts 2.0做好準(zhǔn)備 2007-04-16 01:18 | Sullivan
    我按照方法做了一下 可是為什么到HelloWorld是一個(gè)空值呢?   回復(fù)  更多評(píng)論
      
    # re: 為Struts 2.0做好準(zhǔn)備 2007-04-16 22:38 | Max
    @Sullivan
    @ycscy
    對(duì)不起,你們給的信息太少,所以我無(wú)法判斷是什么原因。  回復(fù)  更多評(píng)論
      
    # re: 為Struts 2.0做好準(zhǔn)備 2007-04-18 13:30 | jiajia
    新建struts.xml文件時(shí),這個(gè)文件的文件名是不是可以變化,還是說(shuō)一定要使struts,另外放的地方有沒(méi)有什么說(shuō)法  回復(fù)  更多評(píng)論
      
    # re: 為Struts 2.0做好準(zhǔn)備 2007-04-18 13:36 | jiajia
    啟動(dòng)tomcat時(shí),strurs2自動(dòng)得讀default-config.xml配置文件,那么怎么讀自己建的struts.xml文件   回復(fù)  更多評(píng)論
      
    # re: 為Struts 2.0做好準(zhǔn)備 2007-04-18 23:05 | Max
    @jiajia
    Struts 2默認(rèn)會(huì)讀取classpath下的struts-default.xml,struts-plugin.xml,struts.xml這三個(gè)文件。  回復(fù)  更多評(píng)論
      
    # re: 為Struts 2.0做好準(zhǔn)備 2007-04-19 09:49 | jiajia
    謝謝max的回答,再問(wèn)一下struts-plugin.xml這個(gè)文件在哪個(gè)jar包里面,還是自己定義的  回復(fù)  更多評(píng)論
      
    # re: 為Struts 2.0做好準(zhǔn)備[未登錄](méi) 2007-04-19 13:30 | Tony
    org.apache.jasper.JasperException: Exception in JSP: /SayHello.jsp:10

    7: </head>
    8: <body>
    9: <h3>Say "Hello" to: </h3>
    10: <s:form action="HelloWorld">
    11: Name: <s:textfield name="name" />
    12: <s:submit />
    13: </s:form>


    Stacktrace:
    org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:467)
    org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:389)
    org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:315)
    org.apache.jasper.servlet.JspServlet.service(JspServlet.java:265)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:803)


    原因

    java.lang.NullPointerException
    這個(gè)問(wèn)題我也遇到了,我用的是tomcat5.5,配置文件都是和例子一樣的,可是就是無(wú)法解析標(biāo)簽,不知道是什么原因?還望指點(diǎn)下  回復(fù)  更多評(píng)論
      
    # re: 為Struts 2.0做好準(zhǔn)備 2007-04-19 23:19 | Max
    @jiajia
    struts-plugin.xml會(huì)在你下載的plugin的jar包中,如struts2-spring-plugin-2.0.6.jar。  回復(fù)  更多評(píng)論
      
    # re: 為Struts 2.0做好準(zhǔn)備 2007-04-19 23:28 | Max
    @Tony
    你應(yīng)該沒(méi)在web.xml有配置struts 2的filter,試下將以下列代碼加到web.xml的<web-app></web-app>元素之間:
    <filter>
    <filter-name>struts2</filter-name>
    <filter-class>
    org.apache.struts2.dispatcher.FilterDispatcher
    </filter-class>
    </filter>

    <filter-mapping>
    <filter-name>struts2</filter-name>
    <url-pattern>/*</url-pattern>
    </filter-mapping>  回復(fù)  更多評(píng)論
      
    # re: 為Struts 2.0做好準(zhǔn)備 2007-04-25 00:42 | fish119
    好像需要Tomcat 5.5以上,5.0會(huì)有問(wèn)題,諸如NullPointerExceptio之類的  回復(fù)  更多評(píng)論
      
    # re: 為Struts 2.0做好準(zhǔn)備 2007-04-29 13:41 | bbb
    我用test 文件夾Struts2_HelloWorld運(yùn)行時(shí)出現(xiàn)下面的錯(cuò)誤,請(qǐng)問(wèn)如何解決?

    type Status report

    message /test/HelloWorld!excute

    description The requested resource (/test/HelloWorld!excute) is not available.  回復(fù)  更多評(píng)論
      
    # re: 為Struts 2.0做好準(zhǔn)備 2007-04-30 10:23 | agoo
    @沒(méi)有姓名
    嚴(yán)重: Exception starting filter struts2
    java.lang.NoClassDefFoundError: Lorg/codehaus/plexus/PlexusContainer;
    2007-4-30 10:18:39 org.apache.catalina.core.StandardContext start
    嚴(yán)重: Error filterStart  回復(fù)  更多評(píng)論
      
    # re: 為Struts 2.0做好準(zhǔn)備 2007-04-30 20:11 | 食管家
    type Status report

    message /Struts2_HelloWorld/HelloWorld

    description The requested resource (/Struts2_HelloWorld/HelloWorld) is not available.



    是什么原因?


    另外:filter錯(cuò)誤好象是jar包的問(wèn)題,你直接引用struts2-blank-2.0.6.war中的包吧。可以解決。  回復(fù)  更多評(píng)論
      
    # re: 為Struts 2.0做好準(zhǔn)備 2007-05-03 21:39 | ec
    嚴(yán)重: Error filterStart
    2007-5-3 21:33:58 org.apache.catalina.core.StandardContext start
    嚴(yán)重: Context startup failed due to previous errors
    2007-5-3 21:33:59 org.apache.catalina.core.StandardHostDeployer install
    信息: Installing web application at context path /balancer from URL file:D:\Tomcat528\webapps\balancer
    2007-5-3 21:33:59 org.apache.catalina.core.StandardContext start
    嚴(yán)重: Error filterStart
    2007-5-3 21:33:59 org.apache.catalina.core.StandardContext start
    嚴(yán)重: Context startup failed due to previous errors
    2007-5-3 21:33:59 org.apache.catalina.core.StandardHostDeployer install

    我已經(jīng)重新引用了struts2-blank-2.0.6.war中的Jar包仍然沒(méi)有解決這個(gè)問(wèn)題,希望樓主回復(fù)~~  回復(fù)  更多評(píng)論
      
    # re: 為Struts 2.0做好準(zhǔn)備 2007-05-06 11:50 | 張先生
    在struts2.0.6中:
    org.apache.struts2.action.dispatcher.FilterDispatcher
    這一句咋也通不過(guò),有啥辦法呢??  回復(fù)  更多評(píng)論
      
    # re: 為Struts 2.0做好準(zhǔn)備 2007-05-08 10:07 | Max
    @ec
    信息太少,我也無(wú)法判斷原因。

    @張先生
    “通不過(guò)”是什么意思?  回復(fù)  更多評(píng)論
      
    # re: 為Struts 2.0做好準(zhǔn)備 2007-05-08 20:53 | 張先生
    在struts2.0.6+weblogic9.1環(huán)境下:
    web.xml中是這樣寫(xiě)的
    <filter>
    <filter-name>struts2</filter-name>
    <filter-class>org.apache.struts2.dispatcher.FilterDispatcher</filter-class>
    </filter>
    <filter-mapping>
    <filter-name>struts2</filter-name>
    <url-pattern>/*</url-pattern>
    </filter-mapping>
    <welcome-file-list>
    <welcome-file>index.html</welcome-file>
    </welcome-file-list>
    如果刪除里面的
    <filter>
    <filter-name>struts2</filter-name>
    <filter-class>org.apache.struts2.dispatcher.FilterDispatcher</filter-class>
    </filter>
    <filter-mapping>
    <filter-name>struts2</filter-name>
    <url-pattern>/*</url-pattern>
    </filter-mapping>
    后Context就可以啟動(dòng)了

    不知道是怎么回事?有以下提示:
    在啟動(dòng)weblogic9.1時(shí),出現(xiàn)了以下錯(cuò)誤:
    <Could not load user defined filter in web.xml:
    org.apache.struts2.dispatcher.FilterDispatcher.
    java.lang.IncompatibleClassChangeError
    at org.apache.struts2.dispatcher.Dispatcher.<clinit>(Dispatcher.java:83)
    at org.apache.struts2.dispatcher.FilterDispatcher.createDispatcher
    (FilterDispatcher.java:389)
    at org.apache.struts2.dispatcher.FilterDispatcher.init
    (FilterDispatcher.java:162)
    at weblogic.servlet.internal.FilterManager$FilterInitAction.run
    (FilterManager.java:311)
    at weblogic.security.acl.internal.AuthenticatedSubject.doAs
    (AuthenticatedSubject.java:321)
    web.xml內(nèi)容如下:
    <?xml version="1.0" encoding="UTF-8"?>
    <web-app version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee
    http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
    <filter id="filterdispatcher">
    <filter-name>struts2</filter-name>
    <filter-class>
    org.apache.struts2.dispatcher.FilterDispatcher
    </filter-class>
    </filter>
    <filter-mapping>
    <filter-name>struts2</filter-name>
    <url-pattern>/*</url-pattern>
    </filter-mapping>
    <welcome-file-list>
    <welcome-file>index.jsp</welcome-file>
    </welcome-file-list>
    </web-app>
    所有struts2.0.6的包一個(gè)一個(gè)檢查了,沒(méi)問(wèn)題.但就是啟動(dòng)不起來(lái)!
      回復(fù)  更多評(píng)論
      
    # re: 為Struts 2.0做好準(zhǔn)備 2007-05-10 13:28 | 小學(xué)生
    老師```可以不可加我一下````我的QQ是530981086   回復(fù)  更多評(píng)論
      
    # re: 為Struts 2.0做好準(zhǔn)備 2007-05-10 17:31 | gpiaofei2006
    全部按照步驟做完后,在SayHello.jsp,填上任意名字,執(zhí)行結(jié)果都是Hello,null!十分迷惑  回復(fù)  更多評(píng)論
      
    # re: 為Struts 2.0做好準(zhǔn)備 2007-05-13 13:58 | gpiaofei2006
    # re: 為Struts 2.0做好準(zhǔn)備 2006-10-26 22:57 | esmiles

    糾正一個(gè)錯(cuò)誤:
    HelloWorld.jsp中的<s:property name="name" />
    name屬性是錯(cuò)的。應(yīng)該改成value屬性,既:
    <s:property value="name" />

    HelloWorld.jsp中的<s:property name="name" /> 應(yīng)該不改變
    否則結(jié)果為:Hello,null;  回復(fù)  更多評(píng)論
      
    # re: 為Struts 2.0做好準(zhǔn)備 2007-05-16 13:21 | ning wang
    Could you tell me how to integration velocity 1.4 in struts2.0? I have readed your other example of Struts 2.0的Action講解.However it is failed when running in tomcat.

    The erro is
    No result defined for action tutorial.HelloWorld and result success - action - file:/C:/apache-tomcat-5.5.23/webapps/Struts2_HelloWorld/WEB-INF/classes/struts.xml:7:64

    the struts.xml is
    <!DOCTYPE struts PUBLIC
    "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
    "http://struts.apache.org/dtds/struts-2.0.dtd">
    <struts>
    <include file="struts-default.xml"/>
    <package name="tutorial" extends="struts-default">
    <action name="VMHelloWorld" class="tutorial.HelloWorld">
    <result name="SUCCESS" type="velocity">HelloWorld.vm</result>
    </action>
    </package>
    </struts>  回復(fù)  更多評(píng)論
      
    # re: 為Struts 2.0做好準(zhǔn)備 2007-05-17 08:26 | chunchong
    謝謝了,好文章。頂一下。摟主辛苦了  回復(fù)  更多評(píng)論
      
    # re: 為Struts 2.0做好準(zhǔn)備[未登錄](méi) 2007-05-17 10:38 | 風(fēng)
    按照上面的提示出現(xiàn)下面的錯(cuò)誤。 請(qǐng)各位老大診斷診斷。
    致命的: フィルタ Struts2 の起動(dòng)中の例外です
    Unable to load bean: type: class:com.opensymphony.xwork2.ObjectFactory - bean - jar:file:/C:/tomcat5.5.23/webapps/Struts2_HelloWorld/WEB-INF/lib/struts2-core-2.0.6.jar!/struts-default.xml:8:69
    at com.opensymphony.xwork2.config.providers.XmlConfigurationProvider.register(XmlConfigurationProvider.java:209)
    .....
    ..
    Caused by: Bean type class com.opensymphony.xwork2.ObjectFactory with the name xwork has already been loaded by bean - jar:file:/C:/tomcat5.5.23/common/lib/struts2-core-2.0.6.jar!/struts-default.xml:8:69 - bean - jar:file:/C:/tomcat5.5.23/webapps/Struts2_HelloWorld/WEB-INF/lib/struts2-core-2.0.6.jar!/struts-default.xml:8:69
    at com.opensymphony.xwork2.config.providers.XmlConfigurationProvider.register(XmlConfigurationProvider.java:194)
    ... 33 more
    2007/05/17 10:32:14 org.apache.catalina.core.StandardContext start
    致命的: Error filterStart  回復(fù)  更多評(píng)論
      
    # re: 為Struts 2.0做好準(zhǔn)備 2007-05-18 09:25 | Max
    @ning wang
    你的問(wèn)題是大小寫(xiě)的問(wèn)題,你可以試一下把“SUCCESS”改為“success”或干脆把name屬性去掉。  回復(fù)  更多評(píng)論
      
    # re: 為Struts 2.0做好準(zhǔn)備 2007-05-18 09:29 | Max
    @風(fēng)
    嘗試一下將C:/tomcat5.5.23/common/lib/下的struts2-core-2.0.6.jar刪除,盡量不要把第三方的包放在這里。  回復(fù)  更多評(píng)論
      
    # re: 為Struts 2.0做好準(zhǔn)備[未登錄](méi) 2007-05-18 10:41 | 風(fēng)
    @Max
    謝謝max的回答.
    好文章。頂一下。摟主辛苦了  回復(fù)  更多評(píng)論
      
    # re: 為Struts 2.0做好準(zhǔn)備 2007-05-20 16:57 |
    @Max
    我用的是Struts2-2.0.6這個(gè)版本
    按照你說(shuō)的做了以后啟動(dòng)TOMCAT就會(huì)報(bào)出下面的錯(cuò)誤,測(cè)試通不過(guò),
    是不是跟你的版本不一樣的問(wèn)題?
    嚴(yán)重: Exception starting filter struts2
    Unable to load bean: type:com.opensymphony.xwork2.ObjectFactory class:org.apache.struts2.spring.StrutsSpringObjectFactory - bean - jar:file:/C:/Program%20Files/Apache%20Software%20Foundation/Tomcat%205.5/webapps/Struts2-helloworld/WEB-INF/lib/struts2-spring-plugin-2.0.6.jar!/struts-plugin.xml:8:132
    at
    ..............
    Caused by: java.lang.NoClassDefFoundError: org/springframework/context/ApplicationContextAware
    at java.lang.ClassLoader.defineClass1(Native Method)
    at java.lang.ClassLoader.defineClass(Unknown Source)
    at java.security.SecureClassLoader.defineClass(Unknown Source)
    at org.apache.catalina.loader.WebappClassLoader.findClassInternal(WebappClassLoader.java:1847)
    at org.apache.catalina.loader.WebappClassLoader.findClass(WebappClassLoader.java:873)
    at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1326)
    at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1205)
    at java.lang.ClassLoader.loadClassInternal(Unknown Source)
    at java.lang.ClassLoader.defineClass1(Native Method)
    at java.lang.ClassLoader.defineClass(Unknown Source)
    at java.security.SecureClassLoader.defineClass(Unknown Source)
    at org.apache.catalina.loader.WebappClassLoader.findClassInternal(WebappClassLoader.java:1847)
    at org.apache.catalina.loader.WebappClassLoader.findClass(WebappClassLoader.java:873)
    at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1326)
    at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1205)
    at com.opensymphony.xwork2.util.ClassLoaderUtil.loadClass(ClassLoaderUtil.java:139)
    at com.opensymphony.xwork2.config.providers.XmlConfigurationProvider.register(XmlConfigurationProvider.java:181)
    ... 33 more
    2007-5-20 16:08:16 org.apache.catalina.core.StandardContext start
    嚴(yán)重: Error filterStart
    2007-5-20 16:08:16 org.apache.catalina.core.StandardContext start
    嚴(yán)重: Context [/Struts2-helloworld] startup failed due to previous errors  回復(fù)  更多評(píng)論
      
    # re: 為Struts 2.0做好準(zhǔn)備 2007-05-22 09:11 | Max
    @輝
    你是不是用了spring,打開(kāi)src/struts.properties文件,將其內(nèi)容清空。  回復(fù)  更多評(píng)論
      
    # re: 為Struts 2.0做好準(zhǔn)備 2007-06-03 20:34 |
    @Max
    我沒(méi)用Spring啊,另外在說(shuō)的這個(gè)文件夾下面,我找不到struts.properties
    這個(gè)文件啊
      回復(fù)  更多評(píng)論
      
    # re: 為Struts 2.0做好準(zhǔn)備 2007-06-04 23:27 | Max
    @輝
    試一下加一個(gè)空白的struts.properties文件。  回復(fù)  更多評(píng)論
      
    # re: 為Struts 2.0做好準(zhǔn)備 2007-06-05 19:56 | xjq
    2.0.6中出現(xiàn):嚴(yán)重: Error filterStart 的原因是,build path里面多了一些plugin的包,只留一個(gè)core即可  回復(fù)  更多評(píng)論
      
    # re: 為Struts 2.0做好準(zhǔn)備 2007-06-07 17:41 | da yu
    謝謝樓主!STRUTS2.0很好!  回復(fù)  更多評(píng)論
      
    # re: 為Struts 2.0做好準(zhǔn)備 2007-06-09 18:09 | SoarDragon
    message

    description The server encountered an internal error () that prevented it from fulfilling this request.

    exception

    There is no Action mapped for action name HelloWorld. - [unknown location]
    com.opensymphony.xwork2.DefaultActionProxy.prepare(DefaultActionProxy.java:186)
    org.apache.struts2.impl.StrutsActionProxyFactory.createActionProxy(StrutsActionProxyFactory.java:41)
    org.apache.struts2.dispatcher.Dispatcher.serviceAction(Dispatcher.java:497)
    org.apache.struts2.dispatcher.FilterDispatcher.doFilter(FilterDispatcher.java:421)
      回復(fù)  更多評(píng)論
      
    # re: 為Struts 2.0做好準(zhǔn)備 2007-06-09 18:13 | SoarDragon
    這是什么錯(cuò)誤啊,配置文件我一個(gè)字母一個(gè)字母對(duì)過(guò)了,
    可是還出這種錯(cuò)誤  回復(fù)  更多評(píng)論
      
    # re: 為Struts 2.0做好準(zhǔn)備 2007-06-12 13:09 | EasefulMaple
    問(wèn)一個(gè)相對(duì)無(wú)關(guān)的問(wèn)題:就是你的eclipse用的哪些插件啊???
    在哪里有下????

    官網(wǎng)我去過(guò)N次了,不過(guò)沒(méi)找到。。。。。  回復(fù)  更多評(píng)論
      
    # re: 為Struts 2.0做好準(zhǔn)備[未登錄](méi) 2007-06-14 10:39 | aa
    Thanks!!  回復(fù)  更多評(píng)論
      
    # re: 為Struts 2.0做好準(zhǔn)備 2007-06-19 11:36 | 任遨游
    請(qǐng)問(wèn)我都配置成功了,但點(diǎn)submit按鈕時(shí),報(bào)以下錯(cuò)誤

    type Status report

    message /TestStruts2/HelloWorld

    description The requested resource (/TestStruts2/HelloWorld) is not available.

      回復(fù)  更多評(píng)論
      
    # re: 為Struts 2.0做好準(zhǔn)備 2007-06-19 13:17 | 任遨游
    @任遨游
    問(wèn)題解決了。我用tomcat5.5.23,eclipse wtp 3.2 .struts2.0.8

    搞了昨天一下午,才配通,從apaceh下了好多包才搞定。  回復(fù)  更多評(píng)論
      
    # re: 為Struts 2.0做好準(zhǔn)備 2007-06-19 22:12 | Max
    @任遨游
    對(duì)不起,由于版本的更改,不少內(nèi)容都有錯(cuò)誤,有時(shí)間想重新寫(xiě)這篇文章。  回復(fù)  更多評(píng)論
      
    # re: 為Struts 2.0做好準(zhǔn)備 2007-06-21 10:33 | 新手
    在JSP頁(yè)面我能不能不用STRUTS2.0的標(biāo)簽?

    如果可以.那么.我在<FORM ACTION="寫(xiě)什么">
    那在struts.xml中ACTION 中的NAME一樣嗎?  回復(fù)  更多評(píng)論
      
    # re: 為Struts 2.0做好準(zhǔn)備 2007-06-22 15:20 | 新手
    <filter>
    <filter-name>struts2</filter-name> <filter-class>org.apache.struts2.dispatcher.FilterDispatcher</filter-class>
    </filter>
    <filter-mapping>
    <filter-name>struts2</filter-name>
    <url-pattern>/*</url-pattern>
    </filter-mapping>
    <welcome-file-list>
    <welcome-file>index.html</welcome-file>
    </welcome-file-list>


    為什么上面的代碼加到web.xml中后.就報(bào)404錯(cuò)誤.不加的話,還可以能看到index.xml這個(gè)頁(yè)面之后再報(bào)404錯(cuò)誤?

    急,在線等....

      回復(fù)  更多評(píng)論
      
    # re: 為Struts 2.0做好準(zhǔn)備 2007-06-22 15:32 | Max
    @新手
    1、<s:form />的action才與struts.xml中的Action名一樣,而<form />中的action應(yīng)為你的Action的路徑的全名如/mypath/myaction.action;

    2、你的應(yīng)用沒(méi)有被服務(wù)器成功加載,請(qǐng)檢查控制臺(tái)的輸出。  回復(fù)  更多評(píng)論
      
    # re: 為Struts 2.0做好準(zhǔn)備[未登錄](méi) 2007-06-22 16:39 | king
    怎么我也是是這個(gè)錯(cuò)啊?
    各位誰(shuí)有demo給傳個(gè)能運(yùn)行的阿?
    majun4678@163.com

    嚴(yán)重: Exception starting filter struts2
    Unable to load bean: type:com.opensymphony.xwork2.ObjectFactory class:org.apache.struts2.spring.StrutsSpringObjectFactory - bean - jar:file:/C:/Program%20Files/Apache%20Software%20Foundation/Tomcat%205.5/webapps/Struts2-helloworld/WEB-INF/lib/struts2-spring-plugin-2.0.6.jar!/struts-plugin.xml:8:132   回復(fù)  更多評(píng)論
      
    # re: 為Struts 2.0做好準(zhǔn)備[未登錄](méi) 2007-06-22 21:48 | Edward
    Unable to load bean: type:com.opensymphony.xwork2.ObjectFactory class:org.apache.struts2.spring.StrutsSpringObjectFactory - bean -

    看過(guò)來(lái)。。

    https://issues.apache.org/struts/browse/WW-2003  回復(fù)  更多評(píng)論
      
    # re: 為Struts 2.0做好準(zhǔn)備 2007-06-22 22:16 | Max
    @Edward
    @king
    將你的struts2-spring-plugin-2.0.6.jar包從工程去掉。
    希望這可以解決你們的問(wèn)題。  回復(fù)  更多評(píng)論
      
    # re: 為Struts 2.0做好準(zhǔn)備 2007-06-26 14:46 | 客人
    @Max
    謝謝你提供這個(gè)例子;www.mofile.com可以存放大文件,你的教程和代碼可以放上去,上傳速度也很快,先要免費(fèi)注冊(cè)。  回復(fù)  更多評(píng)論
      
    # re: 為Struts 2.0做好準(zhǔn)備 2007-06-27 09:26 | ddr


    你不用拷貝所有的jar文件到lib中,可以只拷貝\apps\struts2-blank-2.0.*.war中的lib內(nèi)容。

    此時(shí)啟動(dòng)不會(huì)出錯(cuò)。
    我用的是struts 2.0.8,也存在這個(gè)問(wèn)題。換了lib后好了。

    哪位好研究的,給看看什么問(wèn)題。我覺(jué)得是包括的所有的jar時(shí),某些jar引用了spring的庫(kù)  回復(fù)  更多評(píng)論
      
    # re: 為Struts 2.0做好準(zhǔn)備 2007-06-28 10:02 | 客人
    type Status report

    message /Hello/

    description The requested resource (/Hello/) is not available.
    前臺(tái)顯示的錯(cuò)誤,后臺(tái)沒(méi)有錯(cuò)誤輸出。
    **********************************

    這樣的問(wèn)題,我也遇到,但解決了;
    MAX的代碼沒(méi)有錯(cuò)誤,可以直接使用;為確保正常,STRUTS2的包可以用struts2-blank-2.0.6.war里面的(我用的struts2-blank-2.0.8.war)。

    大概目前的myeclipse 不支持struts2,所以
    要確認(rèn)struts.xml放在classes目錄下,內(nèi)容也要正確;

    同時(shí)建議MAX附上代碼,這樣有些問(wèn)題,大家可以自己比較著來(lái)解決了.  回復(fù)  更多評(píng)論
      
    # re: 為Struts 2.0做好準(zhǔn)備 2007-07-02 10:47 | 小茶
    能否解釋下web.xml中配置的具體含義,比如:
    <display-name>Struts 2.0 Hello World</display-name>
    <filter>
    <filter-name>struts2</filter-name>
    <filter-class>org.apache.struts2.dispatcher.FilterDispatcher</filter-class>
    </filter>
    <filter-mapping>
    <filter-name>struts2</filter-name>
    <url-pattern>/*</url-pattern>
    </filter-mapping>
    上面標(biāo)簽的具體含義
    還有SayHello.jsp文件中的<s:textfield name="name" />,當(dāng)輸入內(nèi)容后提交應(yīng)該是調(diào)用了HelloWorld.java中的setName()方法;HelloWorld.jsp文件中的<s:property value="name" />,應(yīng)該是調(diào)用了HelloWorld.java中的getName()方法,這些是不是在struts2.0標(biāo)簽中定義好的,textfield中的第二個(gè)"name"是否要和HelloWorld.java中定義的name保持相同.
    能否就上面的幾個(gè)問(wèn)題具體介紹下,我剛接觸struts2.0,期待您的回復(fù)!!!  回復(fù)  更多評(píng)論
      
    # re: 為Struts 2.0做好準(zhǔn)備 2007-07-02 23:20 | Max
    @小茶
    Struts 2是一個(gè)MVC模型的框架,它通過(guò)Dispatcher 過(guò)濾器(filter)和攔截器處理和控制Action。
    Action中的屬性值可以通過(guò)Javabean規(guī)范與請(qǐng)求是的參數(shù)綁定,所以<s:textfield />等Form標(biāo)志的name屬性必須與Action屬性名一致。
    更詳細(xì)的情況你可以參考Struts 2的官方文檔。  回復(fù)  更多評(píng)論
      
    # re: 為Struts 2.0做好準(zhǔn)備 2007-07-04 11:36 | FreeTime
    是因?yàn)榻坛躺习?struts.xml的名字寫(xiě)成了sturts.xml。都是復(fù)制惹的錯(cuò)啊。
      回復(fù)  更多評(píng)論
      
    # re: 為Struts 2.0做好準(zhǔn)備 2007-07-06 10:30 | DXYY
    message

    description The server encountered an internal error () that prevented it from fulfilling this request.

    exception

    There is no Action mapped for action name HelloWorld. - [unknown location]
    com.opensymphony.xwork2.DefaultActionProxy.prepare(DefaultActionProxy.java:186)
    org.apache.struts2.impl.StrutsActionProxyFactory.createActionProxy(StrutsActionProxyFactory.java:41)
    org.apache.struts2.dispatcher.Dispatcher.serviceAction(Dispatcher.java:497)
    org.apache.struts2.dispatcher.FilterDispatcher.doFilter(FilterDispatcher.java:421)   回復(fù)  更多評(píng)論
      
    # re: 為Struts 2.0做好準(zhǔn)備 2007-07-06 10:34 | DXYY
    再加已補(bǔ)充,我的Strutss是用的2.0.6我的Tomcat是用的5.5的,我的jdk是用的1.5的  回復(fù)  更多評(píng)論
      
    # re: 為Struts 2.0做好準(zhǔn)備 2007-07-08 19:24 |
    @小吳
    重新下載一個(gè)版本
    我在2。08下通過(guò),2。08的庫(kù)不能加得太多,最好用2。08-blank 下的5個(gè)庫(kù),否則通不過(guò)。對(duì)于中文問(wèn)題,只要在SayHello.jsp中全部使用UTF-8,在HelloWorld.jsp中全部使用gb18030就全OK了  回復(fù)  更多評(píng)論
      
    # re: 為Struts 2.0做好準(zhǔn)備 2007-07-11 14:35 | skey
    您太強(qiáng)了,這么詳細(xì)!  回復(fù)  更多評(píng)論
      
    # re: 為Struts 2.0做好準(zhǔn)備 2007-07-12 16:30 | sunlarry
    謝謝MAX, 今天運(yùn)行了一下例子, 發(fā)現(xiàn)HelloWorld 404, 查了半天原來(lái)是COPY惹出來(lái),struts.xml寫(xiě)錯(cuò)名了! 呵呵! 看來(lái)懶就是不好  回復(fù)  更多評(píng)論
      
    # re: 為Struts 2.0做好準(zhǔn)備 2007-07-17 10:04 | ss
    # re: 為Struts 2.0做好準(zhǔn)備 2007-07-18 10:36 | 我是路人
    做為一個(gè)學(xué)習(xí)struts2的新手,總發(fā)現(xiàn)這方面的資料比較少.感謝你提供的文章,感謝你的付出.這樣的討論氛圍讓人欣慰.謝謝  回復(fù)  更多評(píng)論
      
    # re: 為Struts 2.0做好準(zhǔn)備 2007-07-18 17:31 | cainiao
    介紹的很詳細(xì),非常感謝!按照流程走了一遍!沒(méi)有問(wèn)題!  回復(fù)  更多評(píng)論
      
    # re: 為Struts 2.0做好準(zhǔn)備 2007-07-19 16:46 | wyg405
    非常感謝!很好的東西!  回復(fù)  更多評(píng)論
      
    # re: 為Struts 2.0做好準(zhǔn)備 2007-07-20 16:42 | jarwang


    試了多次, goole多次.仍是中文亂碼???????
    全部的頁(yè)面都加了
    <%@ page language="java" contentType="text/html; charset=utf-8" pageEncoding="utf-8" %>

    還是亂碼.......

    請(qǐng)問(wèn):如何解決呢????多謝.....  回復(fù)  更多評(píng)論
      
    評(píng)論共4頁(yè): 上一頁(yè) 1 2 3 4 下一頁(yè) 
    主站蜘蛛池模板: 国产偷国产偷亚洲高清在线| 自拍偷区亚洲国内自拍| 亚洲视频小说图片| 亚洲va精品中文字幕| 亚洲丶国产丶欧美一区二区三区 | 亚洲成a人片在线观看老师| 相泽亚洲一区中文字幕| 无码久久精品国产亚洲Av影片| 亚洲第一二三四区| 亚洲精品亚洲人成在线| 一级全免费视频播放| 亚洲午夜精品久久久久久浪潮| 老司机亚洲精品影视www| 亚洲资源在线观看| 亚洲日韩国产一区二区三区在线| 深夜免费在线视频| 1000部免费啪啪十八未年禁止观看 | 亚洲精品免费在线观看| 国产成人免费高清激情视频| 日韩亚洲精品福利| 亚洲日本在线看片| 亚洲精品久久无码av片俺去也| 久久国产免费直播| 青草草色A免费观看在线| 日韩精品成人亚洲专区| 亚洲网红精品大秀在线观看| 朝桐光亚洲专区在线中文字幕| 国产免费一区二区视频| 成年人免费视频观看| 亚洲精品夜夜夜妓女网| 国产亚洲玖玖玖在线观看| a级片免费在线播放| 成人毛片18女人毛片免费| 亚洲一区二区三区无码中文字幕 | 亚洲人成在久久综合网站| 日韩在线一区二区三区免费视频| 91大神免费观看| 亚洲国产精品尤物yw在线 | 特黄aa级毛片免费视频播放| 最刺激黄a大片免费网站| 亚洲精品和日本精品|