<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

    最新評論

    閱讀排行榜

    主站蜘蛛池模板: 久久精品网站免费观看| 亚洲国产成人AV网站| 91亚洲国产成人精品下载| 亚洲人成影院在线无码按摩店| 又黄又爽一线毛片免费观看 | 亚洲精品自偷自拍无码| 亚洲va乱码一区二区三区| 亚洲人成在久久综合网站| 亚洲欧洲国产视频| 亚洲国产成人va在线观看网址| 亚洲美女人黄网成人女| 亚洲国产情侣一区二区三区| 亚洲午夜精品在线| 亚洲一区AV无码少妇电影| 亚洲国产成人精品无码区花野真一| 亚洲AV色欲色欲WWW| 日韩亚洲综合精品国产| 女人裸身j部免费视频无遮挡| 一级人做人a爰免费视频| 中文字幕版免费电影网站| 国内少妇偷人精品视频免费| 免费A级毛片无码视频| 成人福利免费视频| 色视频色露露永久免费观看| 国产精品公开免费视频| 国产91精品一区二区麻豆亚洲| 亚洲午夜无码久久久久| 久久亚洲AV成人无码软件| 亚洲第一男人天堂| 免费人成动漫在线播放r18| 国产精品永久免费视频| 色欲色香天天天综合网站免费| 黄+色+性+人免费| 国产高清在线精品免费软件| 亚洲国产中文v高清在线观看| 久久精品国产亚洲av麻豆 | 国产亚洲成人在线播放va| 亚洲国产高清视频| 亚洲男人天堂2018av| 国产高潮流白浆喷水免费A片 | 免费人成视频在线观看网站|