锘??xml version="1.0" encoding="utf-8" standalone="yes"?>亚洲欧美国产国产综合一区,久久亚洲精品无码av,成人精品国产亚洲欧洲http://m.tkk7.com/scorpio_leon/archive/2006/06/10/51877.html鏉庢潕鏉庢潕Sat, 10 Jun 2006 11:16:00 GMThttp://m.tkk7.com/scorpio_leon/archive/2006/06/10/51877.htmlhttp://m.tkk7.com/scorpio_leon/comments/51877.htmlhttp://m.tkk7.com/scorpio_leon/archive/2006/06/10/51877.html#Feedback2http://m.tkk7.com/scorpio_leon/comments/commentRss/51877.htmlhttp://m.tkk7.com/scorpio_leon/services/trackbacks/51877.html涓轟簡闄嶄綆渚靛叆鎬э紝鏇村ソ鐨勮寮曠敤錛屽bba96鏍稿績閮ㄥ垎榪涜浜嗗ぇ閲忛噸鏋勶紝鍘婚櫎浜嗗啑璧樼殑灞傛涓庝笉蹇呰鐨勬帴鍙o紝騫跺熷姪jdk5.0鑼冨瀷榪涜浜嗕唬鐮佺簿綆銆傚彂甯冧簡bba96 tiger beta2錛岃繖涓増鏈凡緇忔槸姣旇緝紼沖畾鐨勭増鏈紝鍏蜂綋鐨勬敼鍔ㄥ涓?br />

  • 鍘婚櫎鎵鏈夌殑鎺ュ彛渚濊禆錛屽彲鐩存帴鍦ㄤ換浣曢」鐩腑鐩存帴璋冪敤
  • service鐨勪袱灞傚悎騫朵負涓灞備笖鍘婚櫎service灞傜殑鎺ュ彛錛屼絾DAO鏇句粛淇濈暀鎺ュ彛浠ュ鎵╁睍鏇村鐨刼rm瀹炵幇
  • 澧炲姞sql execute鐨勬柟娉?
  • 澧炲己婧愯嚜view鐨勭洿鎺ユ煡璇㈣兘鍔?
  • 鍙傛暟鍚嶇敱鍘熸潵闅劇湅鐨刼riNames, oriOperators, oriStringValues鏀逛負鐩磋鐨剆earchName, searchOperator, searchValue
  • 澧炲姞浜嗗QueryParam鐨則oString鍔熻兘錛屽彲鎵撳嚭瀵瑰簲鐨剆ql錛屼究浜庤皟璇曪紝鍙傝com.bba96.tiger.util.QueryWebUtils鐨刴ain鍑芥暟

涓嬭澆欏甸潰鍦板潃錛?a >https://bba96.dev.java.net/servlets/ProjectDocumentList?folderID=4149&expandFolder=4149&folderID=0

濡傛灉浣犱嬌鐢╯pring+hibernate錛岃屽張涓嶅枩嬈ibernate criteria鐨勯夯鐑︼紝涓嶅Θ灝濊瘯涓涓媌ba96錛屼綘鍙互鎶婁富瑕佺簿鍔涙斁鍒頒笟鍔℃柟闈€侱efaultEntityManager鎻愪緵浜嗗緢澶氬崟灞傞昏緫鐨勪究鍒╂柟娉曠粰浣犱嬌鐢紝鍏朵腑涔熷寘鎷墽琛宧sql鎴栬卻ql鏌ヨ/鏇存柊鐨勬柟娉曪紝濡傛灉浣犺澶氬眰嬈¢昏緫鐨勬潯浠舵煡璇㈠彲浠ヨ嚜宸辯粍瑁匭ueryObject錛屽弬瑙乧om.bba96.tiger.util.QueryWebUtils鐨刴ain鍑芥暟銆俠ba96榪樻彁渚涚粰浣犲湪view灞傝嚜鐢卞鍔犳煡璇㈢殑鑳藉姏銆?br />
tiger鐗堟湰浠呮彁渚涗簡dao/service閮ㄥ垎錛屾墍浠ュ鏋滀綘甯屾湜鍦╲iew 鏌ヨ鐨勫畨鍏ㄦф柟闈㈠緱鍒板姞寮猴紝鍙弬鑰僢ba96 2.0鍏朵腑鐨剋ebwork view閮ㄥ垎錛屾潈闄愰儴鍒嗕篃娌℃湁鍖呭惈鍦╰iger涓紝甯屾湜灝藉揩鎶婂寘鎷緥瀛愮殑鏉冮檺閮ㄥ垎榪佺Щ榪囨潵錛屼絾榪橀渶瑕佷竴鐐規椂闂達紝鏈榪戝湪蹇欎竴涓狢MS鐨勪駭鍝侊紝鏃墮棿涓嶅鐢ㄥ晩鈥︹?/p>

鍦?a class="" title="鏄ュぉ鐨勬梺杈? target="_blank">SpringSide欏圭洰涓瓀ebwork MVC閮ㄥ垎搴旂敤鍒癰ba96 tiger瀵箆iew閮ㄥ垎鐨勬煡璇紝鏈夊叴瓚e彲浠ョ湅鐪嬶紝榪欓噷涔熻鎺ㄨ崘涓涓?a class="" title="鏄ュぉ鐨勬梺杈? target="_blank">SpringSide錛岀‘瀹炴湁寰堝寰堝ソ鐨勭粡楠屽湪閲岄潰鍙互鍊熼壌銆?/p>

鏉庢潕 2006-06-10 19:16 鍙戣〃璇勮
]]>
bba96 蹇熷紑鍙戞鏋?鍙戝竷2.0 RC1http://m.tkk7.com/scorpio_leon/archive/2006/03/08/34169.html鏉庢潕鏉庢潕Tue, 07 Mar 2006 17:24:00 GMThttp://m.tkk7.com/scorpio_leon/archive/2006/03/08/34169.htmlhttp://m.tkk7.com/scorpio_leon/comments/34169.htmlhttp://m.tkk7.com/scorpio_leon/archive/2006/03/08/34169.html#Feedback0http://m.tkk7.com/scorpio_leon/comments/commentRss/34169.htmlhttp://m.tkk7.com/scorpio_leon/services/trackbacks/34169.htmlbba96 CHANGELOG
==========================
http://bba96.dev.java.net

Changes in version 2.0 alpha3 (2006.4.3)
*fix action query parameters bug -- [XXX:...]
*fix distinct bug (discard Criteria.DISTINCT_ROOT_ENTITY)
*some minor improvement

Changes in version 2.0 alpha2.2 (2006.3.16)
*update webwork's jar for fixing example bug in weblogic
*remove all contentType setting in example

Changes in version 2.0 alpha2.1 (2006.3.8)
*fix example bug
*update readme.txt

Changes in version 2.0 alpha1 (2006.3.7)
*webwork 2.2 support
*hibernate 3.x support, then support native sql
*fix some bug
*add aop security module
*add action query parameters validation
*enhance action query parameters management
*support more logic in action query
*support multi orderby property


Changes in version 1.0 (2005.09.23)
*release first


婧愮爜涓嬭澆錛堝寘鍚袱涓揩閫熷紑鍙戠殑渚嬪瓙銆傦級
https://bba96.dev.java.net/servlets/ProjectDocumentList?folderID=4149&expandFolder=4149&folderID=0

綆浠嬪弬瑙?a href="/scorpio_leon/archive/2005/11/09/18878.aspx">http://m.tkk7.com/scorpio_leon/archive/2005/11/09/18878.aspx



鏉庢潕 2006-03-08 01:24 鍙戣〃璇勮
]]>
鎱庣敤Webwork鐨刧etText錛屼嬌鐢ㄤ笉褰撴晥鐜囧彲鑳戒細寰堜綆http://m.tkk7.com/scorpio_leon/archive/2006/01/21/28871.html鏉庢潕鏉庢潕Sat, 21 Jan 2006 05:26:00 GMThttp://m.tkk7.com/scorpio_leon/archive/2006/01/21/28871.htmlhttp://m.tkk7.com/scorpio_leon/comments/28871.htmlhttp://m.tkk7.com/scorpio_leon/archive/2006/01/21/28871.html#Feedback0http://m.tkk7.com/scorpio_leon/comments/commentRss/28871.htmlhttp://m.tkk7.com/scorpio_leon/services/trackbacks/28871.html
java doc 濡備笅

Finds a localized text message for the given key, aTextName. Both the key and the message itself is evaluated as required. The following algorithm is used to find the requested message:

  1. Look for message in aClass' class hierarchy.
    1. Look for the message in a resource bundle for aClass
    2. If not found, look for the message in a resource bundle for any implemented interface
    3. If not found, traverse up the Class' hierarchy and repeat from the first sub-step
  2. If not found and aClass is a ModelDriven Action, then look for message in the model's class hierarchy (repeat sub-steps listed above).
  3. If not found, look for message in child property. This is determined by evaluating the message key as an OGNL expression. For example, if the key is user.address.state, then it will attempt to see if "user" can be resolved into an object. If so, repeat the entire process fromthe beginning with the object's class as aClass and "address.state" as the message key.
  4. If not found, look for the message in aClass' package hierarchy.
  5. If still not found, look for the message in the default resource bundles.
  6. Return defaultMessage

涓昏灝辨槸鏌ユ壘resource bundle錛屼笅闈㈣鏄庝竴涓?BR>1. 鍏堟煡鎵捐class錛堜竴鑸垜浠槸鍦╝ction璋冪敤錛屽氨鏄action瀵瑰簲鐨刢lass浜嗭級瀵瑰簲鐨刾roperties鏂囦歡錛屾壘涓嶅埌鍐嶅幓鎵懼搴旂殑鎺ュ彛錛屾壘涓嶅埌鍐嶅幓浠庤class鐨勭戶鎵挎爲涓婂幓閲嶅鍓嶉潰鐨勬楠ゃ?BR>2. 濡傛灉鏄疢odelDriver錛屼互涓婃壘涓嶅埌鍐嶄互model鐨刢lass鍘婚噸澶?鐨勬楠?BR>3.緇х畫鎵撅紝濡傛灉key鏄鍚坥gnl琛ㄨ揪寮忚繕浠gnl琛ㄨ揪寮忓幓瑙f瀽綾伙紝濡傛灉鑳芥壘鍒扮被錛岃繕浠ヤ互涓婄殑姝ラ鍘繪煡鎵?BR>4. 榪樻壘涓嶅埌錛屽氨浠庢牴鎹畃ackage浠ュ強package鐨勭戶鎵挎爲鍘繪壘錛岃繖榪樺寘鎷簡璇lass鐨勭戶鎵挎爲鎵鏈夌殑class鐨刾ackage鏍戯紙榪欎竴姝ュ瓨鍦ㄤ簡澶鐨勯噸澶嶆煡鎵懼伐浣滐紝鍥犱負寰堝package閮芥槸鐩稿悓鐨勶級
5 浣跨敤榛樿鐨剅esource bundle

java.util.ResourceBundle铏界劧鏈塩ache錛屼絾鏄痺w涓轟簡鍑忓皯璋冪敤getResourceBundle鏂規硶錛屼篃緇存姢浜嗕竴涓猰iss鐨刪ashset錛屾壘涓嶅埌鐨刡undle name灝變涪榪涘幓錛岄偅涔堟瘡涓嬈℃煡鎵鵑兘鍚屾浜嗚繖涓猰iss錛屽鏋滃緢澶氭鏌ユ壘錛屽紑閿涔熸槸寰堝ぇ鐨勩?BR>
鎴戝氨涓句竴涓緥瀛愶紝灝辮絎洓姝ユ煡鎵緋ackage鏍戝ソ浜?BR>

        // nothing still? alright, search the package hierarchy now
        for (Class clazz = aClass;
             (clazz 
!= null&& !clazz.equals(Object.class);
             clazz 
= clazz.getSuperclass()) {

            String basePackageName 
= clazz.getName();
            
while (basePackageName.lastIndexOf('.'!= -1) {
                basePackageName 
= basePackageName.substring(0, basePackageName.lastIndexOf('.'));
                String packageName 
= basePackageName + ".package";
                msg 
= getMessage(packageName, locale, aTextName, valueStack, args);

                
if (msg != null) {
                    
return msg;
                }

                
if (indexedTextName != null) {
                    msg 
= getMessage(packageName, locale, indexedTextName, valueStack, args);

                    
if (msg != null) {
                        
return msg;
                    }
                }
            }
        }

鍋囪浣犵殑action緇ф壙鏍戞槸榪欐牱
com.bba96.core.webwork.actions.DefaultActionSupport
com.xxxx.web.actions.XXXActionSupport
com.xxxx.web.user.actions.UserAction
com.xxxx.web.user.ViewUserAction
涓斾笉璇磜w娌℃湁鍒ゆ柇鏄惁鏄痗om.opensymphony.xwork.ActionSupport鎴栬厀w鐨勬帴鍙e氨鍋滄錛屽厜鏄嚜宸辯殑緇ф壙鏍戯紝灝辨槸4+3+3+3=13嬈★紝鍐嶅姞涓婂線涓婄殑緇ф壙鏍戜互鍙婂搴旂殑鎺ュ彛錛宑om.opensymphony.xwork.ActionSupport浠ュ強Action, Validateable, ValidationAware, TextProvider, LocaleProvider, Serializable, ContinuableObject鐨勬帴鍙o紝鏌ユ壘嬈℃暟瓚呰繃30嬈$敋鑷蟲洿澶氾紝榪欓噷鐨勬瘡涓嬈¢兘鏈変竴涓悓姝iss鐨勮繃紼嬶紝寮閿鐩稿綋澶с?BR>
濡傛灉浣犵殑key鎵鍦ㄧ殑resource bundle娌℃湁瀵瑰簲鍒板悎閫傜殑class鎴杙ackage鏃訛紝渚嬪璇存斁鍦ㄤ簡default bundle涓紝ww浼氭氮璐瑰緢澶氭椂闂淬傝繖縐嶆儏鍐典笅錛屾垜鍦ㄦ病鏈夊茍鍙戠殑鏃跺欐祴浜嗕竴涓嬶紝涓嬈etText澶ф鑰楁椂40ms宸﹀彸

鎵浠ュ湪瀹為檯搴旂敤鎴戜滑搴旇閬垮厤榪欑鎯呭喌鍑虹幇錛岃涓嶈resource bundle涓涓瀵瑰簲class錛岃涓嶅氨鑷繁瀹炵幇涓涓畝鍗曠殑getText錛屽叾瀹炶鏄痺w鐨凙ctionSupport鐨則extProvider鍏佽鏀瑰彉灝辨渶濂戒簡銆?/P>

鏉庢潕 2006-01-21 13:26 鍙戣〃璇勮
]]>
XP SP2 瑁匢IShttp://m.tkk7.com/scorpio_leon/archive/2005/12/21/24999.html鏉庢潕鏉庢潕Wed, 21 Dec 2005 15:29:00 GMThttp://m.tkk7.com/scorpio_leon/archive/2005/12/21/24999.htmlhttp://m.tkk7.com/scorpio_leon/comments/24999.htmlhttp://m.tkk7.com/scorpio_leon/archive/2005/12/21/24999.html#Feedback3http://m.tkk7.com/scorpio_leon/comments/commentRss/24999.htmlhttp://m.tkk7.com/scorpio_leon/services/trackbacks/24999.htmlhttp://support.microsoft.com/?kbid=894351錛屾牴鎹笂闈㈣鐨勶紝鎴戞槸灞炰簬method 2鎯呭喌錛屼絾鏄病鏈墄p鍘熺洏錛岃鐨勬椂鍊欏氨鏄痵p2浜嗭紝鍙堝掆︹?BR>  鏈鍚庣湅鍒版湁浜烘儏鍐佃窡鎴戠殑綾諱技錛屽氨鏄敤method 1鐨勭涓姝?esentutl /p %windir%\security\database\secedit.sdb 灝卞彲浠ヤ簡%windir%閭i噷搴旇鍐欎綘鐨剎p瀹夎璺緞錛屼笉鐢ㄧ浠涔堣鍛婏紝紜灝卞浜嗭紝IIS瀹夎鎴愬姛鈥︹﹀紑濮嬮厤緗?/FONT>

鏉庢潕 2005-12-21 23:29 鍙戣〃璇勮
]]>
Webwork2.2鐨勪竴涓敼榪涳紝Validation/Workflow Interceptor澧炲姞excludeMethods鏂規硶http://m.tkk7.com/scorpio_leon/archive/2005/12/03/22374.html鏉庢潕鏉庢潕Sat, 03 Dec 2005 14:29:00 GMThttp://m.tkk7.com/scorpio_leon/archive/2005/12/03/22374.htmlhttp://m.tkk7.com/scorpio_leon/comments/22374.htmlhttp://m.tkk7.com/scorpio_leon/archive/2005/12/03/22374.html#Feedback2http://m.tkk7.com/scorpio_leon/comments/commentRss/22374.htmlhttp://m.tkk7.com/scorpio_leon/services/trackbacks/22374.html涓涓緥瀛愶紝鍘熸潵鐨?/P>
<interceptor-ref name="validation"/>
<interceptor-ref name="workflow"/>

鍙敼鍐欎負
<interceptor-ref name="validation">
    <param name="excludeMethods">input,back,cancel</param>
</interceptor-ref>
<interceptor-ref name="workflow">
    <param name="excludeMethods">input,back,cancel</param>
</interceptor-ref>

閭d箞錛屽浜庣畝鍗曠殑闇楠岃瘉欏甸潰錛屼笉闇瑕佸啀鍥犱負閬垮厤涓嶅繀瑕佺殑鏍¢獙鑰屽垎涓や釜action銆?BR>
鍙湁com.opensymphony.xwork.validator.ValidationInterceptor, com.opensymphony.xwork.interceptor.DefaultWorkflowInterceptor 瀹氫箟騫跺疄鐜頒簡榪欎釜excludeMethods錛屽疄鐜扮殑涔熻繕鏄瘮杈冪矖緋欑殑錛屾垜浠湪鍋氱被浼煎疄鐜扮殑鏃跺欏彲浠ュ弬鑰冧竴涓嬶紝鏈夊繀瑕佷篃鍙互鏀硅繘錛屾墿灞曚竴涓嬶紝渚嬪澧炲姞includeMethods
    public void setExcludeMethods(String excludeMethods) {
        
this.excludeMethods = TextParseUtil.commaDelimitedStringToSet(excludeMethods);
    }

    
public String intercept(ActionInvocation invocation) throws Exception {
        
if (excludeMethods.contains(invocation.getProxy().getMethod())) {
            log.debug(
"Skipping workflow. Method found in exclude list.");
            
return invocation.invoke();
        }
        
    }


鏉庢潕 2005-12-03 22:29 鍙戣〃璇勮
]]>
BBA96 鏇存柊鑷?RC1http://m.tkk7.com/scorpio_leon/archive/2005/11/18/20361.html鏉庢潕鏉庢潕Fri, 18 Nov 2005 01:37:00 GMThttp://m.tkk7.com/scorpio_leon/archive/2005/11/18/20361.htmlhttp://m.tkk7.com/scorpio_leon/comments/20361.htmlhttp://m.tkk7.com/scorpio_leon/archive/2005/11/18/20361.html#Feedback0http://m.tkk7.com/scorpio_leon/comments/commentRss/20361.htmlhttp://m.tkk7.com/scorpio_leon/services/trackbacks/20361.htmlhttps://bba96.dev.java.net/servlets/ProjectDocumentList?folderID=4149&expandFolder=4149&folderID=0
淇涓澶刡atchRemove鐨刡ug錛?BR>灝哸ction鐨勪笌鎸佷箙鍖栫浉鍏崇殑鏂規硶錛屼互鍙奼etResults鏂規硶淇濇姢璧鋒潵
娣誨姞浜嗕竴涓狟ook example. 鍖呮嫭綆鍗曠敤鎴風鐞嗭紝涔︾睄鐨勬煡璇笌縐熷熴?BR>Book Example 鍙傝 http://book.bba96.com
Advanced Example 鍙傝 http://www.gopherbook.com




鏉庢潕 2005-11-18 09:37 鍙戣〃璇勮
]]>
鍩轟簬hibernate/spring鐨勫惈RBAC鏉冮檺妯″潡鐨勫揩閫熷紑鍙戞鏋?鐩墠涓巜ebwork鏁村悎) http://m.tkk7.com/scorpio_leon/archive/2005/11/09/18878.html鏉庢潕鏉庢潕Tue, 08 Nov 2005 16:51:00 GMThttp://m.tkk7.com/scorpio_leon/archive/2005/11/09/18878.htmlhttp://m.tkk7.com/scorpio_leon/comments/18878.htmlhttp://m.tkk7.com/scorpio_leon/archive/2005/11/09/18878.html#Feedback45http://m.tkk7.com/scorpio_leon/comments/commentRss/18878.htmlhttp://m.tkk7.com/scorpio_leon/services/trackbacks/18878.html婧愭枃浠朵笅杞?br />https://bba96.dev.java.net/servlets/ProjectDocumentList?folderID=4149&expandFolder=4149&folderID=0


1. 鏍稿績鎸佷箙灞傞儴鍒嗗熀浜巗pring/hibernate錛屽疄鐜板己澶х伒媧葷殑鍔ㄦ乹uery鍔熻兘錛屽彲鐙珛浣跨敤銆?br />2. 鏉冮檺閮ㄥ垎錛屽熀浜嶳BAC錛屾敮鎸佹暟鎹潈闄愶紝渚濊禆1閮ㄥ垎鐨勬帴鍙c?br />3. Action灞傦紝鍩轟簬1浠ュ強webwork錛岃壇濂芥灦鏋勶紝鍑忓皯澶ч噺浠g爜錛屾敮鎸乿iew鐏墊椿榪涜query涓旀湁鍙傛暟鏁欓獙鏀寔淇濊瘉瀹夊叏鎬с?br />
綆鍗曡bba96灝辨槸鍩轟簬hibernate/spring鐨勫揩閫熷紑鍙戞鏋訛紝鍏朵腑鍖呭惈浜嗗Hibernate Critiera錛孭rojection鐨勫皝瑁咃紝閫氳繃涓涓己澶ц岀伒媧葷殑QueryObject瀵硅薄錛屾柟渚垮姩鎬佹坊鍔犱笌鍒犻櫎鏉′歡銆?br />閫氳繃緇熶竴鐨剄uery涓庢暟鎹簱浜や簰錛屾柟渚緼OP錛屽叾涓殑RBAC鏉冮檺妯″潡錛堟敮鎸佹暟鎹潈闄愶級鍗蟲槸閫氳繃AOP鎿嶄綔QueryObject瀵硅薄鏉ュ疄鐜扮殑銆俠ba96鏍稿績鍙互璺熸祦琛岀殑view鏁村悎錛岀洰鍓嶅彧鏈墂ebwork鏁村悎鐨勭増鏈?br />
bba96 涓嶅啀闇瑕佽嚜宸卞啓DAO/SERVICE錛屽熷姪綆鍗曠殑spring ioc鍗沖彲閰嶇疆浣跨敤緙虹渷DAO/SERVICE錛岃屼笖閫氳繃鐏墊椿鏂逛究錛屾槗鎵╁睍鐨勫悗鍙版寔涔呭眰涓巜ebwork鐨勬暣鍚堬紝瀹屽叏瀹炵幇浜嗗揩閫熷紑鍙戠殑鐩殑銆?br />

Get Up And Running Quick

Example:
聽聽 (1) enter the example/simple or emample/book folder.
聽聽聽聽聽聽 NOTE:all following operation is under the folder you entered
聽聽 (2) copy your JDBC driver (default mysql) to the lib directory
聽聽聽聽聽聽 -- webapps\ROOT\WEB-INF\lib
聽聽 (3) edit hibernate.properties for database info (default mysql)
聽聽聽聽聽聽 -- src\main\java\hibernate.properties
聽聽 (4) run "ant"
聽聽 (5) create database via the sql script generated at database\schema-export.sql
聽聽 (6) edit applicationContext.xml for database info (default mysql)
聽聽聽聽聽聽 -- webapps\ROOT\WEB-INF\applicationContext.xml (line 5 - 21)
聽聽 (7) start server and see this example


鏈変嬌鐢ㄤ笂鐨勮璁猴紝璇瘋仈緋繪垜 MSN: hotmail鐨勫笎鍙穝corpio_leon


鏉庢潕 2005-11-09 00:51 鍙戣〃璇勮
]]>
寮濮嬪皾璇?Webwork 2.2, 涓浜涘鏄撳嚭閿欑殑鍦版柟 -- 鎸佺畫鏇存柊http://m.tkk7.com/scorpio_leon/archive/2005/10/19/15933.html鏉庢潕鏉庢潕Wed, 19 Oct 2005 07:36:00 GMThttp://m.tkk7.com/scorpio_leon/archive/2005/10/19/15933.htmlhttp://m.tkk7.com/scorpio_leon/comments/15933.htmlhttp://m.tkk7.com/scorpio_leon/archive/2005/10/19/15933.html#Feedback1http://m.tkk7.com/scorpio_leon/comments/commentRss/15933.htmlhttp://m.tkk7.com/scorpio_leon/services/trackbacks/15933.html
  • 濡傛灉浣犵敤hibernate+spring錛屾敞鎰弒pring鐨凮penSessionInView鐨凢ilter瑕佸湪webwork鐨凢ilter涔嬪墠
  • ww:property榪欎釜tag緙虹渷鏄痚scape html鐨勶紝鍦╰ag鍙互鎸囧畾escape="false"閬垮厤html瀛楃杞箟
  • 涓浜涘師鏉ョ敤鍗曞紩鍙瘋〃紺哄瓧絎︿覆鐨勯兘瑕佸幓鎺夊崟寮曞彿錛屼緥濡?" 'test' "  瑕佹敼涓?"test"
  • No object in the CompoundRoot has a property named錛岃繖鏄敱浜庡湪webwork.properties璁劇疆浜唚ebwork.devMode=true錛屼細媯鏌ラ〉闈笂浼犻掕繃鏉ョ殑鍙傛暟鏄惁鍦╝ction瀹氫箟榪囥?/LI>

    鏉庢潕 2005-10-19 15:36 鍙戣〃璇勮
    ]]>Webwork 2.1.7 鐨勪竴涓皬緙洪櫡http://m.tkk7.com/scorpio_leon/archive/2005/10/18/15831.html鏉庢潕鏉庢潕Tue, 18 Oct 2005 10:22:00 GMThttp://m.tkk7.com/scorpio_leon/archive/2005/10/18/15831.htmlhttp://m.tkk7.com/scorpio_leon/comments/15831.htmlhttp://m.tkk7.com/scorpio_leon/archive/2005/10/18/15831.html#Feedback1http://m.tkk7.com/scorpio_leon/comments/commentRss/15831.htmlhttp://m.tkk7.com/scorpio_leon/services/trackbacks/15831.htmlpublic interface ModelDriven {
        Object getModel();
    }

    鑰屾垜闇瑕佺殑鏄?
    public interface ModelDriven {
        Object getModel() 
    throws Exception;
    }

    鍥犱負瑕佹嫤鎴彲鑳芥姏鍑虹殑寮傚父錛屾祦紼嬫槸榪欐牱service - my service interceptor - action - xwork interceptor
    鐜板湪鏂湪action榪欓噷浜嗭紝寰堝鎬紝webwork鍏朵粬鏂規硶閮芥湁throw exception錛岀嫭鐙繖涓病鏈夛紝闅鵑亾鍙堣hack webwork錛?BR>鎭╋紝鏈変簡AOP鍚庯紝鎺ュ彛璁捐搴旇瑕佸鑰冭檻涓涓嬶紝鏄惁鍏佽鎶涘嚭寮傚父鈥︹?/P>

    鏉庢潕 2005-10-18 18:22 鍙戣〃璇勮
    ]]>
    綆鍗曞疄鐜板紓姝mail -- Jakarta Common Email 緇撳悎 Opensymphony Quartzhttp://m.tkk7.com/scorpio_leon/archive/2005/10/15/15603.html鏉庢潕鏉庢潕Sat, 15 Oct 2005 14:01:00 GMThttp://m.tkk7.com/scorpio_leon/archive/2005/10/15/15603.htmlhttp://m.tkk7.com/scorpio_leon/comments/15603.htmlhttp://m.tkk7.com/scorpio_leon/archive/2005/10/15/15603.html#Feedback0http://m.tkk7.com/scorpio_leon/comments/commentRss/15603.htmlhttp://m.tkk7.com/scorpio_leon/services/trackbacks/15603.html鐪嬬湅涓嬮潰鐨勫簲鐢ㄤ緥瀛愶紝紼嬪簭鎵ц涓夌鍚庝細鍦ㄥ悗鍙板紑濮嬪彂Email錛屽彧鏈夊嚑琛岀▼搴忥紝寰堢畝鍗曞惂銆?BR>鏈潵灝卞簲璇ヨ繖涔堢畝鍗曪紝榪樿兘鍐嶇渷涔堬紝鍛靛懙錛岃阿璋㈠紑婧愮殑鍔涢噺鈥︹?BR>

        SimpleEmail email = new SimpleEmail();
        email.addTo(
    "receiver@somemail.com""Receier's Name");
        email.setSubject(
    "Email from www.bba96.com");
        email.setMsg(
    "Hello, guy!");
        EmailScheduler emailScheduler 
    = new EmailScheduler();
        emailScheduler.process(email);

    榪欓噷鐢ㄥ埌浜?A >jakarta common email涓殑SimpleEmail
    EmailScheduler鏄竴涓埄鐢?A >Opensymphony Quartz鍋氱畝鍗曠殑璋冨害錛屽叾涓璄mailJob瀹炵幇浜哘uartz鐨凧ob鎺ュ彛
    浠ヤ笅鏄疎mailScheduler浠ュ強EmailJob婧愪唬鐮併?/P>

    package com.bba96.scheduler;

    import java.util.Date;

    import javax.mail.Authenticator;

    import org.apache.commons.mail.Email;
    import org.quartz.JobDetail;
    import org.quartz.Scheduler;
    import org.quartz.SchedulerException;
    import org.quartz.SchedulerFactory;
    import org.quartz.SimpleTrigger;

    public class EmailScheduler {

        
    public void process(Email email, Authenticator authenticator)
                
    throws SchedulerException {
            
    // TODO if can be optimized with static instance.
            SchedulerFactory schedFact = new org.quartz.impl.StdSchedulerFactory();
            Scheduler sched 
    = schedFact.getScheduler();
            sched.start();

            JobDetail jobDetail 
    = new JobDetail("EmailJob"null, EmailJob.class);
            jobDetail.getJobDataMap().put(EmailJob.EMAIL, email);
            jobDetail.getJobDataMap().put(EmailJob.AUTHENTICATIOR, authenticator);
            
    //Create a trigger that fires exactly once, three seconds from now
            long startTime = System.currentTimeMillis() + 3000L;
            SimpleTrigger trigger 
    = new SimpleTrigger("emailTrigger"null,
                    
    new Date(startTime), null00L);
            sched.scheduleJob(jobDetail, trigger);
        }

        
    public void process(Email email) throws SchedulerException {
            process(email, 
    null);
        }

    }

     

    package com.bba96.scheduler;

    import javax.mail.Authenticator;

    import org.apache.commons.logging.Log;
    import org.apache.commons.logging.LogFactory;
    import org.apache.commons.mail.DefaultAuthenticator;
    import org.apache.commons.mail.Email;
    import org.apache.commons.mail.EmailException;
    import org.quartz.Job;
    import org.quartz.JobExecutionContext;
    import org.quartz.JobExecutionException;

    public class EmailJob implements Job {

        
    protected final Log logger = LogFactory.getLog(EmailJob.class);

        
    public static String EMAIL = "EMAIL";

        
    public static String AUTHENTICATIOR = "AUTHENTICATIOR";

        
    public static String DEFAULT_HOST = "your smtp mail server";

        
    public static int DEFAULT_SMTP_PORT = 25;

        
    public static String DEFAULT_USER = "yourmail@yourserver.com";

        
    public static String DEFAULT_PASSWORD = "your password";

        
    public static String DEFAULT_FROM_ADDRESS = "yourmail@yourserver.com";

        
    public static String DEFAULT_FROM_NAME = "Your Name";

        
    public void execute(JobExecutionContext context)
                
    throws JobExecutionException {
            Email email 
    = (Email) context.getJobDetail().getJobDataMap().get(EMAIL);
            
    if (email != null) {
                Authenticator authenticator 
    = (Authenticator) context
                        .getJobDetail().getJobDataMap().get(AUTHENTICATIOR);
                
    if (email.getHostName() == null) {
                    email.setHostName(DEFAULT_HOST);
                }
                
    if (email.getSmtpPort() == null) {
                    email.setSmtpPort(DEFAULT_SMTP_PORT);
                }
                
    if (authenticator == null) {
                    authenticator 
    = new DefaultAuthenticator(DEFAULT_USER,
                            DEFAULT_PASSWORD);
                    email.setAuthenticator(authenticator);
                }
                
    if (email.getFromAddress() == null) {
                    
    try {
                        email.setFrom(DEFAULT_FROM_ADDRESS, DEFAULT_FROM_NAME);
                    } 
    catch (EmailException e) {
                        logger.error(
    "Email address invalid", e);
                        
    return;
                    }
                }
                
    try {
                    email.send();
                } 
    catch (EmailException e) {
                    logger.error(
    "Email send error", e);
                }
            }
        }

    }



    鏉庢潕 2005-10-15 22:01 鍙戣〃璇勮
    ]]>
    主站蜘蛛池模板: 免费在线观看一区| 日本免费污片中国特一级| 亚洲人成网站在线播放vr| 久久精品无码专区免费青青| 日韩亚洲不卡在线视频中文字幕在线观看 | 最近2019中文字幕mv免费看| 美女黄频视频大全免费的| 亚洲AV午夜成人影院老师机影院| 成年在线网站免费观看无广告| 一区二区三区免费高清视频| 亚洲另类春色校园小说| 亚洲国产一区明星换脸| 亚洲精品国产日韩无码AV永久免费网 | 日韩亚洲人成在线| 亚洲男人的天堂www| 午夜免费福利影院| 久久免费动漫品精老司机| 国产亚洲视频在线观看| 亚洲精品亚洲人成在线观看麻豆 | 久久久精品视频免费观看| 亚洲人成影院77777| 久久久久噜噜噜亚洲熟女综合| 国产福利视精品永久免费| 亚洲黄片手机免费观看| 成人亚洲国产va天堂| 久久久久久久综合日本亚洲| 国产精品va无码免费麻豆| 在线观看免费视频资源| igao激情在线视频免费| 亚洲日韩看片无码电影| 日木av无码专区亚洲av毛片| 在线观看国产区亚洲一区成人| 日本高清免费不卡视频| 成年人网站免费视频| 99在线免费视频| 成人免费网站久久久| 亚洲第一第二第三第四第五第六| 亚洲精品成人久久| 亚洲AV无码成人网站久久精品大| 亚洲欧洲久久av| 免费在线观看a级毛片|