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

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

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

    tczengjin

    BlogJava 首頁 新隨筆 聯系 聚合 管理
      2 Posts :: 0 Stories :: 9 Comments :: 0 Trackbacks

    問題:No result defined for action cn.bbs.nhpop.web.action.ReplyTopic Action and result input 錯誤

    意思是說沒定義input的跳轉結果.

        @Override
        
    public String execute() throws Exception {
            topic 
    = topicService.getTopic(topicId);
            reply.setTopic(topic);
            replyService.replyTopic(reply);
            
    return this.SUCCESS;
        }

    原因:我的cn.bbs.nhpop.web.action.ReplyTopic Action execute方法返回SUCCESS,但是實際運行中出現了錯誤(拋了異常),Action并沒有返回SUCCESS而是返回INPUT(Action出現錯誤時默認的返回值),而我的struts.xml配置文件中并沒有定義與INPUT對應的Result

            <action name="replyTopic"
                class
    ="cn.bbs.nhpop.web.action.ReplyTopic">
                
    <result name="success" type="chain">
                    
    <param name="actionName">listTopicsDetails</param>
                
    </result>
            
    </action>

    解決方法:你可以添加一個與INPUT對應的Result或者解決Action方法實際運行中的異常。

    我的Action到底拋了個什么異常呢?

            <s:form action="replyTopic">
                
    <s:hidden name="topicId" value="%{topicId}"></s:hidden>
    <%--            <s:param name="topicId" value="%{topicId}"></s:param>--%>

    </s:form>
    這是我的reply.jsp,開始我使用<s:param></s:param>傳topicId,想當然的認為可以與<s:form></s:form>合用傳參,導致replyTopic Action無法獲取到topicId的值
        @Override
        
    public String execute() throws Exception {
            topic 
    = topicService.getTopic(topicId);
            reply.setTopic(topic);
            replyService.replyTopic(reply);
            
    return this.SUCCESS;
        }
    topic為null拋異常。(<s:url action=""><s:param></s:param></s:url>是可以這樣傳參的,但與<s:form></s:form>不行)
    后來用<s:hidden></s:hidden>代替解決。另外
    <s:hidden name="topicId" value="topicId"></s:hidden>
    value="%{topicId}"切不可省去%{}否則Action中的topicId的值為字符串為"topicId"而不是我希望的int值1,%{topicId}相當于
    <s:property value="topicId"/>
    你可以使用%{}或嵌套<s:property>標簽。struts2標簽的屬性可以接受一個字符串的值的時候請大家尤其注意,必須使用%{} 或<s:property>才會是你想要的值。比如:
    <s:hidden name="topicId" value="%{topicId}"></s:hidden>


                
    <s:url id="toReply" action="toReply">
                    
    <s:param name="topicId" value="topicId"></s:param>
                
    </s:url>

                
    <tr>
                    
    <td height="18" colspan="2">
                        
    &nbsp;
                        
    <s:a href="%{toReply}">回復 </s:a> &nbsp;
                    
    </td>
                
    </tr>
    我怎么感覺struts2的文檔把%{}作用說反了,哪為高手能讀讀文檔看是否我理解錯了沒struts2 %{}使用方法
    posted on 2007-12-21 00:54 爪哇園主 閱讀(3358) 評論(3)  編輯  收藏

    Feedback

    # re: 我遇到的Struts2的幾個問題一 2007-12-21 18:01 黑靈
    %{}的意思是把其中的字符串作為ognl表達式.  回復  更多評論
      

    # re: 我遇到的Struts2的幾個問題一[未登錄] 2008-05-13 18:14 alex
    請教樓主:
    下面是我的代碼,可是取不到值,換成%{}是一樣沒結果,請問是什么原因,該怎么做?謝謝。
    <s:hidden name="staffID" value="#request.staffID"></s:hidden>  回復  更多評論
      

    # re: 我遇到的Struts2的幾個問題一 2009-01-14 16:33 wjl1174
    @alex
    #request.staffID==request.getAttribute("staffID");

      回復  更多評論
      


    只有注冊用戶登錄后才能發表評論。


    網站導航:
     
    主站蜘蛛池模板: 亚洲美女人黄网成人女| 亚洲一区无码中文字幕| 亚洲国产电影在线观看| 久久精品无码精品免费专区| 精品国产亚洲一区二区三区| 国产午夜无码精品免费看| 在线观看国产区亚洲一区成人| 亚洲免费视频一区二区三区| 亚洲午夜福利精品无码| 亚洲国产免费综合| 国产亚洲av片在线观看16女人 | 久久午夜无码免费| 久久精品国产亚洲av四虎| 中文字幕免费高清视频| 亚洲天堂中文字幕在线观看| 国产精品成人免费视频网站京东| 亚洲中字慕日产2020| 卡1卡2卡3卡4卡5免费视频| 老牛精品亚洲成av人片| 亚洲无码精品浪潮| 免费国产污网站在线观看| 亚洲天堂男人天堂| 亚洲人成电影网站免费| 日韩欧美亚洲国产精品字幕久久久| 又黄又爽的视频免费看| 国产无遮挡又黄又爽免费网站| 亚洲av福利无码无一区二区| 1000部拍拍拍18勿入免费视频软件 | 一级毛片免费不卡直观看| 亚洲熟妇丰满多毛XXXX| 久久久久久久99精品免费观看| 久久精品a亚洲国产v高清不卡| 91免费精品国自产拍在线不卡| 激情小说亚洲色图| 亚洲日韩精品一区二区三区| 永久黄色免费网站| 亚洲av成人一区二区三区在线播放| 亚洲视频在线免费| 精品免费人成视频app| 免费又黄又爽又猛大片午夜| 亚洲av综合色区|