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

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

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

    老妖的博客
    現(xiàn)實的中沒有幾個人能夠真為對方去死,甚至山盟海誓很快就會在金錢面前變的微不足道,這才是生活。沒有永遠的愛,除了你的父母對你,當然也就沒有永遠的恨,更沒有永遠的痛,時間是最好的治療大師,它會很快撫平你心靈上累累的傷痕。很多年以后你想起來時,那些在你生命中洶涌來往的人群至多是個模糊的影子或者毫無意義的名字
    posts - 105,  comments - 171,  trackbacks - 0

    service層編寫商業(yè)邏輯總會有很多的返回信息,那么如何合理的和struts/webwork結合起來呢,我參考了spring論壇上的一個做法如下:

     1/** 
     2 * 
     3 */
     
     4package it.linksystem.csai.web.util; 
     5
     6import java.util.Iterator; 
     7
     8import it.linksystem.csai.client.delegate.UserBusinessDelegate; 
     9import it.linksystem.csai.common.Error; 
    10import it.linksystem.csai.common.Warning; 
    11import it.linksystem.csai.common.dto.UserDTO; 
    12
    13import javax.servlet.http.HttpServletRequest; 
    14
    15import org.apache.struts.action.ActionMessage; 
    16import org.apache.struts.action.ActionMessages; 
    17
    18import net.sf.acegisecurity.Authentication; 
    19import net.sf.acegisecurity.AuthenticationException; 
    20import net.sf.acegisecurity.providers.UsernamePasswordAuthenticationToken; 
    21import net.sf.acegisecurity.ui.AbstractProcessingFilter; 
    22
    23/** 
    24 * @author Srepfler Srgjan 
    25 * 
    26 */
     
    27public class LoginProcessingFilter extends AbstractProcessingFilter 
    28
    29   /* (non-Javadoc) 
    30    * @see net.sf.acegisecurity.ui.AbstractProcessingFilter#getDefaultFilterProcessesUrl() 
    31    */
     
    32   public String getDefaultFilterProcessesUrl() 
    33      return "/LoginSubmit.do"
    34   }
     
    35
    36   /* (non-Javadoc) 
    37    * @see net.sf.acegisecurity.ui.AbstractProcessingFilter#attemptAuthentication(javax.servlet.http.HttpServletRequest) 
    38    */
     
    39   public Authentication attemptAuthentication(HttpServletRequest request) 
    40         throws AuthenticationException 
    41      ActionMessages errors = new ActionMessages(); 
    42      ActionMessages warnings = new ActionMessages(); 
    43       
    44      UserBusinessDelegate ubd = new UserBusinessDelegate(); 
    45      String username = request.getParameter("j_username"); 
    46      String password = request.getParameter("j_password"); 
    47      if(username == null)
    48         username =""
    49      }
     
    50      if(password == null)
    51         password=""
    52      }
     
    53      UserDTO userDTO = new UserDTO(); 
    54      userDTO.setUsername(username); 
    55      userDTO.setPassword(password); 
    56      UserDTO resultDTO = ubd.login(userDTO.getUsername(),userDTO.getPassword()); 
    57       
    58      if(resultDTO.isError())
    59         for (Iterator theiterator = resultDTO.errorsIterator(); theiterator.hasNext();) 
    60            Error theerror = (Error) theiterator.next(); 
    61            errors.add(theerror.getCode(),new ActionMessage(theerror.getCode())); 
    62         }
     
    63      }
     else 
    64         if(resultDTO.isWarning())
    65            for (Iterator theiterator = resultDTO.warningsIterator(); theiterator.hasNext();) 
    66               Warning thewarning = (Warning) theiterator.next(); 
    67               warnings.add(thewarning.getCode(),new ActionMessage(thewarning.getCode())); 
    68            }
     
    69         }
     
    70         request.getSession().setAttribute(Constants.USER_KEY,resultDTO); 
    71         logger.info("Login dell utente: "+resultDTO.getUsername()); 
    72      }
     
    73       
    74      UsernamePasswordAuthenticationToken authRequest = new UsernamePasswordAuthenticationToken(username,password); 
    75      authRequest.setDetails(request.getRemoteAddr()); 
    76      return this.getAuthenticationManager().authenticate(authRequest); 
    77   }
     
    78
    79}
     
    80
    DTO撤掉,然后并到service層的BaseService中,做個接口用來記錄error message,然后Baseservice的實現(xiàn)中提供Errors message add和Iterator,以及iserror,iswarning,然后其他service調(diào)用其方法,至于view層調(diào)用則跟上述類似。
    posted on 2005-09-28 22:30 老妖 閱讀(825) 評論(0)  編輯  收藏

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


    網(wǎng)站導航:
    博客園   IT新聞   Chat2DB   C++博客   博問  
     

    <2005年9月>
    28293031123
    45678910
    11121314151617
    18192021222324
    2526272829301
    2345678

    常用鏈接

    隨筆分類(48)

    隨筆檔案(104)

    好友鏈接

    我的豆瓣

    積分與排名

    • 積分 - 220873
    • 排名 - 257

    最新評論

    閱讀排行榜

    主站蜘蛛池模板: 亚洲制服丝袜精品久久| 久久久久久亚洲精品影院| 亚洲精品欧洲精品| 免费观看美女裸体网站| 一级做a爰片性色毛片免费网站| 一二三四在线播放免费观看中文版视频 | 亚洲区视频在线观看| 亚欧色视频在线观看免费| 亚洲精品无码高潮喷水A片软| 99热在线精品免费全部my| 亚洲明星合成图综合区在线| 国产乱子影视频上线免费观看| 亚洲精品宾馆在线精品酒店| 亚洲国产精品乱码一区二区| 成全在线观看免费观看大全| 亚洲精品国产精品乱码视色| 国产精品美女午夜爽爽爽免费| 亚洲日韩国产二区无码| 亚洲爆乳无码一区二区三区| 午夜一区二区免费视频| 亚洲免费人成在线视频观看| 亚洲av无码专区青青草原| 免费人成在线观看播放国产| 最近免费中文字幕mv电影| 欧美激情综合亚洲一二区| 午夜国产羞羞视频免费网站| 免费一级毛suv好看的国产网站| 免费乱码中文字幕网站| 69xx免费观看视频| 成在人线av无码免费高潮喷水 | 久久久影院亚洲精品| 久久免费高清视频| 免费无码午夜福利片69| 亚洲精品456人成在线| 水蜜桃亚洲一二三四在线| 国产精品亚洲w码日韩中文| 免费高清在线爱做视频| 一本无码人妻在中文字幕免费 | 84pao强力永久免费高清| 国产日韩AV免费无码一区二区三区| 亚洲国产高清在线|