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

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

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

    posts - 165, comments - 198, trackbacks - 0, articles - 1
      BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理

    StrutsTestCase 不需要 寫 classpath 方法 ^_^

    Posted on 2007-04-16 16:01 G_G 閱讀(678) 評論(4)  編輯  收藏 所屬分類: JUnit
    下載http://sourceforge.net/projects/strutstestcase/
    struts-config.xml
    <? xml?version = " 1.0 " ?encoding = " UTF-8 " ?>
    <! DOCTYPE?struts - config?PUBLIC? " -//Apache?Software?Foundation//DTD?Struts?Configuration?1.1//EN " ? " http://jakarta.apache.org/struts/dtds/struts-config_1_1.dtd " >

    < struts - config >
    ??
    < data - sources? />
    ??
    < form - beans? >
    ????
    < form - bean?name = " loginForm " ?type = " com.yourcompany.struts.form.LoginForm " ? />

    ??
    </ form - beans >

    ??
    < global - exceptions? />
    ??
    < global - forwards? />
    ??
    < action - mappings? >
    ????
    < action
    ??????name
    = " loginForm "
    ??????path
    = " /login "
    ??????scope
    = " request "
    ??????type
    = " com.yourcompany.struts.action.LoginAction " >
    ??????
    < forward
    ????????name
    = " ok "
    ????????path
    = " /form/suss.jsp " />
    ??????
    < forward
    ????????name
    = " error "
    ????????path
    = " /form/login.jsp " />
    ?????????
    ????
    </ action >

    ??
    </ action - mappings >

    ??
    < message - resources?parameter = " com.yourcompany.struts.ApplicationResources " ? />
    </ struts - config >
    Action
    //Created?by?MyEclipse?Struts
    //?XSL?source?(default):?platform:/plugin/com.genuitec.eclipse.cross.easystruts.eclipse_4.0.1/xslt/JavaClass.xsl

    package?com.yourcompany.struts.action;

    import?javax.servlet.http.HttpServletRequest;
    import?javax.servlet.http.HttpServletResponse;

    import?org.apache.struts.action.Action;
    import?org.apache.struts.action.ActionForm;
    import?org.apache.struts.action.ActionForward;
    import?org.apache.struts.action.ActionMapping;

    import?com.yourcompany.struts.form.LoginForm;
    /**?
    ?*?MyEclipse?Struts
    ?*?Creation?date:?04-16-2007
    ?*?
    ?*?XDoclet?definition:
    ?*?@struts.action?path="/login"?name="loginForm"?input="/form/login.jsp"?scope="request"?validate="true"
    ?*?@struts.action-forward?name="Myjsp"?path="/WEB-INF/"
    ?
    */
    public?class?LoginAction?extends?Action?{

    ????
    //?---------------------------------------------------------?Instance?Variables

    ????
    //?---------------------------------------------------------?Methods

    ????
    /**?
    ?????*?Method?execute
    ?????*?
    @param?mapping
    ?????*?
    @param?form
    ?????*?
    @param?request
    ?????*?
    @param?response
    ?????*?
    @return?ActionForward
    ?????
    */
    ????
    public?ActionForward?execute(
    ????????ActionMapping?mapping,
    ????????ActionForm?form,
    ????????HttpServletRequest?request,
    ????????HttpServletResponse?response)?{
    ????????LoginForm?loginForm?
    =?(LoginForm)?form;
    ????????
    ????????String?name?
    =?loginForm.getName()?;
    ????????String?pass?
    =?loginForm.getPass()?;
    ????????
    ????????
    if(name.equals(pass)){
    ?????????????
    return?mapping.findForward("login");
    ????????????}
    ?????????
    return?mapping.findForward("ok");
    ?????????
    ????}

    }


    Form
    package?com.yourcompany.struts.form;

    import?org.apache.struts.action.ActionErrors;
    import?org.apache.struts.action.ActionForm;

    public?class?LoginForm?extends?ActionForm?{
    ????
    private?String?name?;
    ????
    private?String?pass?;
    ????
    ????
    public?void?setName(String?name){
    ????????
    this.name?=?name?;
    ????}
    ????
    public?String?getName(){
    ????????
    return?this.name?;
    ????}
    ????
    public?void?setPass(String?pass){
    ????????
    this.pass?=?pass?;
    ????}
    ????
    public?String?getPass(){
    ????????
    return?this.pass?;
    ????}
    }

    關鍵的來了 ----
    package?test;

    import?java.io.File;

    import?servletunit.struts.MockStrutsTestCase;
    import?junit.framework.TestCase;
    //
    public?class?StrutsTest?extends?MockStrutsTestCase?{

    ????
    public?StrutsTest(String?testName){
    ????????
    super(testName);
    ????}
    ????
    public?void?setUp()throws?Exception{
    ????????
    super.setUp();
    ??????????File?web?
    =?new?File("E:/src/StrutsTestCase/WebRoot/");
    ????????
    this.setContextDirectory(web);
    ????????setConfigFile(
    "E:/src/StrutsTestCase/WebRoot/WEB-INF/web.xml");
    ????????setConfigFile(
    "E:/src/StrutsTestCase/WebRoot/WEB-INF/struts-config.xml");
    ?

    ????}
    ????
    ????
    public?void?testAction()?{
    ??? ???
    setRequestPathInfo("/login");
    ????????this.addRequestParameter("name","liu");
    ????????
    this.addRequestParameter("pass","123");
    ????????actionPerform();
    ????????
    this.verifyForward("ok");
    ????}
    }

    不需要 寫 classpath 哈哈

    評論

    # 有關 cactus 的   回復  更多評論   

    2007-05-15 09:40 by G_G
     
    http://www.tkk7.com/zhyiwww/archive/2006/06/07/51185.html

    # re: StrutsTestCase 不需要 寫 classpath 方法 ^_^  回復  更多評論   

    2007-11-08 10:16 by 李泳
    假設我是用MyEclipse開發的,
    setConfigFile("E:/src/StrutsTestCase/WebRoot/WEB-INF/web.xml");
    里面的路徑是開發時項目中的路徑還是發布之后在Tomcat中的路徑????

    # re: StrutsTestCase 不需要 寫 classpath 方法 ^_^  回復  更多評論   

    2007-11-09 17:16 by G_G
    @李泳
    不是怎么理解的你的io操作!不要寫物理路徑。
    我告訴你一種方法
    這通過Classload來加載 寫邏輯路徑 就沒有這什么考慮的了
    可以參考我blog里的介紹
    http://www.tkk7.com/Good-Game/archive/2007/08/09/128154.html

    中的 hbn 加載文件

    # re: StrutsTestCase 不需要 寫 classpath 方法 ^_^  回復  更多評論   

    2007-11-09 17:20 by G_G
    你可以用
    ClassLoader classLoader = Thread.currentThread().getContextClassLoader();

    new File(
    classLoader.get URL 什么方法名字不太記的了
    );

    寫邏輯名就可以如你的:
    /WebRoot/WEB-INF/web.xml
    主站蜘蛛池模板: 青娱乐免费视频在线观看| a级毛片在线视频免费观看| h视频在线免费看| 亚洲人成网站在线播放影院在线| 国产黄色免费观看| 久久久久亚洲AV成人网| 美女被免费网站91色| 中文字幕亚洲综合久久菠萝蜜 | 在线观看特色大片免费视频 | 免费人成在线观看播放a| 免费在线观看黄网站| 色屁屁在线观看视频免费| 免费一级毛片在线播放不收费| 国产精品亚洲精品日韩动图| 国产一区二区三区免费在线观看| 老司机免费午夜精品视频| 国产亚洲情侣一区二区无码AV| 一个人免费观看日本www视频 | 中国在线观看免费的www| 亚洲国产一二三精品无码| 野花香高清视频在线观看免费| 亚洲AV无码专区国产乱码电影| 91禁漫免费进入| 亚洲午夜精品在线| 国产一级淫片视频免费看| 一级一片免费视频播放| 亚洲gv白嫩小受在线观看| 18以下岁毛片在免费播放| 亚洲国产精品美女久久久久| 亚洲成av人片一区二区三区| 国产一区二区免费视频| 亚洲人6666成人观看| 男人的天堂亚洲一区二区三区 | 91青青青国产在观免费影视| 亚洲中文无码av永久| 日本免费网站在线观看| 成人无码区免费A∨直播| 亚洲人成在线播放网站岛国| 成人片黄网站A毛片免费| v片免费在线观看| 中文字幕亚洲精品资源网|