I have to ask a question;  Why not use a filter to handle this?  The filter
will be called before any components of struts are invoked.  It has access
to the request, response and session and can handle forwarding the request
to the login page or error page if they are not currently logged in.  If
container managed security is used, it will get invoked prior to the filter,
which can then check the getRemoteUser() and the session to ensure that they
have been logged in and perform any setup that is required for creating a
user object and storing the information in the session or wherever.  The
filter can then chain to the requested page with the chain.doFilter().

Any reason not to do this?

Todd

-----Original Message-----
From: Galbreath, Mark [mailto:[EMAIL PROTECTED]]
Sent: Tuesday, June 04, 2002 7:56 AM
To: 'Struts Users Mailing List'
Subject: RE: related to: Re: #2 - Use DispatchAction to organize related
operations


Chuck is absolutely correct on the linear progression of action processing.
I, too am overriding processPreprocess and it works beautifully.  Besides
increasing security, it cuts down on unnecessary CPU bandwidth.

Mark

-----Original Message-----
From: Chuck Cavaness [mailto:[EMAIL PROTECTED]]
Sent: Monday, June 03, 2002 10:58 PM

Rick,

catch this earlier. I had implemented something along these lines awhile
back and soon remembered that the ActionForm is populated and the
validate() method is called, all of this before the Action's execute()
method is invoked. The question is, do you want to check whether or not the

What I suggest is to look at the processPreprocess() method in the
RequestProcessor and possibly override this to do your checks. It's called

Just some things to think about,
Chuck

--
To unsubscribe, e-mail:
<mailto:[EMAIL PROTECTED]>
For additional commands, e-mail:
<mailto:[EMAIL PROTECTED]>


begin 666 ATT00021.htm
M/"%$3T-465!%($A434P@4%5"3$E#("(M+R]7,T,O+T141"!(5$U,(#,N,B\O
M14XB/@T*/$A434P^#0H\2$5!1#X-"CQ-151!($A45% M15%5258](D-O;G1E
M;G0M5'EP92(@0T].5$5.5#TB=&5X="]H=&UL.R!C:&%R<V5T/5=I;F1O=W,M
M,3(U,B(^#0H\345402!.04U%/2)'96YE<F%T;W(B($-/3E1%3E0](DU3($5X
M8VAA;F=E(%-E<G9E<B!V97)S:6]N(#8N,"XU-S8R+C,B/@T*/%1)5$Q%/E)%
M.B!R96QA=&5D('1O.B!293H@(",R("T@57-E($1I<W!A=&-H06-T:6]N('1O
M(&]R9V%N:7IE(')E;&%T960@;W!E<F%T:6]N<SPO5$E43$4^#0H\+TA%040^
M#0H\0D]$63X-"CPA+2T@0V]N=F5R=&5D(&9R;VT@=&5X="]P;&%I;B!F;W)M
M870@+2T^#0H-"CQ0/CQ&3TY4(%-)6D4],CY)(&AA=F4@=&\@87-K(&$@<75E
M<W1I;VX[)FYB<W [(%=H>2!N;W0@=7-E(&$@9FEL=&5R('1O(&AA;F1L92!T
M:&ES/R9N8G-P.R!4:&4@9FEL=&5R('=I;&P@8F4@8V%L;&5D(&)E9F]R92!A
M;GD@8V]M<&]N96YT<R!O9B!S=')U=',@87)E(&EN=F]K960N)FYB<W [($ET
M(&AA<R!A8V-E<W,@=&\@=&AE(')E<75E<W0L(')E<W!O;G-E(&%N9"!S97-S
M:6]N(&%N9"!C86X@:&%N9&QE(&9O<G=A<F1I;F<@=&AE(')E<75E<W0@=&\@
M=&AE(&QO9VEN('!A9V4@;W(@97)R;W(@<&%G92!I9B!T:&5Y(&%R92!N;W0@
M8W5R<F5N=&QY(&QO9V=E9"!I;BXF;F)S<#L@268@8V]N=&%I;F5R(&UA;F%G
M960@<V5C=7)I='D@:7,@=7-E9"P@:70@=VEL;"!G970@:6YV;VME9"!P<FEO
M<B!T;R!T:&4@9FEL=&5R+"!W:&EC:"!C86X@=&AE;B!C:&5C:R!T:&4@9V5T
M4F5M;W1E57-E<B@I(&%N9"!T:&4@<V5S<VEO;B!T;R!E;G-U<F4@=&AA="!T
M:&5Y(&AA=F4@8F5E;B!L;V=G960@:6X@86YD('!E<F9O<FT@86YY('-E='5P
M('1H870@:7,@<F5Q=6ER960@9F]R(&-R96%T:6YG(&$@=7-E<B!O8FIE8W0@
M86YD('-T;W)I;F<@=&AE(&EN9F]R;6%T:6]N(&EN('1H92!S97-S:6]N(&]R
M('=H97)E=F5R+B9N8G-P.R!4:&4@9FEL=&5R(&-A;B!T:&5N(&-H86EN('1O
M('1H92!R97%U97-T960@<&%G92!W:71H('1H92!C:&%I;BYD;T9I;'1E<B@I
M+CPO1D].5#X\+U ^#0H-"CQ0/CQ&3TY4(%-)6D4],CY!;GD@<F5A<V]N(&YO
M="!T;R!D;R!T:&ES/SPO1D].5#X-"CPO4#X-"@T*/% ^/$9/3E0@4TE:13TR
M/E1O9&0\+T9/3E0^#0H\+U ^#0H-"CQ0/CQ&3TY4(%-)6D4],CXM+2TM+4]R
M:6=I;F%L($UE<W-A9V4M+2TM+3PO1D].5#X-"@T*/$)2/CQ&3TY4(%-)6D4]
M,CY&<F]M.B!'86QB<F5A=&@L($UA<FL@6SQ!($A2148](FUA:6QT;SI'86QB
M<F5A=&A =&5S<V-O+F-O;2(^;6%I;'1O.D=A;&)R96%T:$!T97-S8V\N8V]M
M/"]!/ET\+T9/3E0^#0H-"CQ"4CX\1D].5"!325I%/3(^4V5N=#H@5'5E<V1A
M>2P@2G5N92 P-"P@,C P,B W.C4V($%-/"]&3TY4/@T*#0H\0E(^/$9/3E0@
M4TE:13TR/E1O.B G4W1R=71S(%5S97)S($UA:6QI;F<@3&ES="<\+T9/3E0^
M#0H-"CQ"4CX\1D].5"!325I%/3(^4W5B:F5C=#H@4D4Z(')E;&%T960@=&\Z
M(%)E.B C,B M(%5S92!$:7-P871C:$%C=&EO;B!T;R!O<F=A;FEZ92!R96QA
M=&5D/"]&3TY4/@T*#0H\0E(^/$9/3E0@4TE:13TR/F]P97)A=&EO;G,\+T9/
M3E0^#0H\+U ^#0H\0E(^#0H-"CQ0/CQ&3TY4(%-)6D4],CY#:'5C:R!I<R!A
M8G-O;'5T96QY(&-O<G)E8W0@;VX@=&AE(&QI;F5A<B!P<F]G<F5S<VEO;B!O
M9B!A8W1I;VX@<')O8V5S<VEN9RX\+T9/3E0^#0H-"CQ"4CX\1D].5"!325I%
M/3(^22P@=&]O(&%M(&]V97)R:61I;F<@<')O8V5S<U!R97!R;V-E<W,@86YD
M(&ET('=O<FMS(&)E875T:69U;&QY+B9N8G-P.R!"97-I9&5S/"]&3TY4/@T*
M#0H\0E(^/$9/3E0@4TE:13TR/FEN8W)E87-I;F<@<V5C=7)I='DL(&ET(&-U
M=',@9&]W;B!O;B!U;FYE8V5S<V%R>2!#4%4@8F%N9'=I9'1H+CPO1D].5#X-
M"CPO4#X-"@T*/% ^/$9/3E0@4TE:13TR/DUA<FL\+T9/3E0^#0H\+U ^#0H-
M"CQ0/CQ&3TY4(%-)6D4],CXM+2TM+4]R:6=I;F%L($UE<W-A9V4M+2TM+3PO
M1D].5#X-"@T*/$)2/CQ&3TY4(%-)6D4],CY&<F]M.B!#:'5C:R!#879A;F5S
M<R!;/$$@2%)%1CTB;6%I;'1O.F-H=6-K8V%V86YE<W- 871T8FDN8V]M(CYM
M86EL=&\Z8VAU8VMC879A;F5S<T!A='1B:2YC;VT\+T$^73PO1D].5#X-"@T*
M/$)2/CQ&3TY4(%-)6D4],CY396YT.B!-;VYD87DL($IU;F4@,#,L(#(P,#(@
M,3 Z-3@@4$T\+T9/3E0^#0H\+U ^#0H-"CQ0/CQ&3TY4(%-)6D4],CY2:6-K
M+#PO1D].5#X-"CPO4#X-"@T*/% ^/$9/3E0@4TE:13TR/F-A=&-H('1H:7,@
M96%R;&EE<BX@22!H860@:6UP;&5M96YT960@<V]M971H:6YG(&%L;VYG('1H
M97-E(&QI;F5S(&%W:&EL92 \+T9/3E0^#0H-"CQ"4CX\1D].5"!325I%/3(^
M8F%C:R!A;F0@<V]O;B!R96UE;6)E<F5D('1H870@=&AE($%C=&EO;D9O<FT@
M:7,@<&]P=6QA=&5D(&%N9"!T:&4@/"]&3TY4/@T*#0H\0E(^/$9/3E0@4TE:
M13TR/G9A;&ED871E*"D@;65T:&]D(&ES(&-A;&QE9"P@86QL(&]F('1H:7,@
M8F5F;W)E('1H92!!8W1I;VXG<R!E>&5C=71E*"D@/"]&3TY4/@T*#0H\0E(^
M/$9/3E0@4TE:13TR/FUE=&AO9"!I<R!I;G9O:V5D+B!4:&4@<75E<W1I;VX@
M:7,L(&1O('EO=2!W86YT('1O(&-H96-K('=H971H97(@;W(@;F]T('1H92 \
M+T9/3E0^#0H\+U ^#0H-"CQ0/CQ&3TY4(%-)6D4],CY7:&%T($D@<W5G9V5S
M="!I<R!T;R!L;V]K(&%T('1H92!P<F]C97-S4')E<')O8V5S<R@I(&UE=&AO
M9"!I;B!T:&4@/"]&3TY4/@T*#0H\0E(^/$9/3E0@4TE:13TR/E)E<75E<W10
M<F]C97-S;W(@86YD('!O<W-I8FQY(&]V97)R:61E('1H:7,@=&\@9&\@>6]U
M<B!C:&5C:W,N($ET)W,@8V%L;&5D(#PO1D].5#X-"CPO4#X-"@T*/% ^/$9/
M3E0@4TE:13TR/DIU<W0@<V]M92!T:&EN9W,@=&\@=&AI;FL@86)O=70L/"]&
M3TY4/@T*#0H\0E(^/$9/3E0@4TE:13TR/D-H=6-K/"]&3TY4/@T*/"]0/@T*
M#0H\4#X\1D].5"!325I%/3(^+2T\+T9/3E0^#0H-"CQ"4CX\1D].5"!325I%
M/3(^5&\@=6YS=6)S8W)I8F4L(&4M;6%I;#HF;F)S<#LF;F)S<#L@)FQT.SQ!
M($A2148](FUA:6QT;SIS=')U=',M=7-E<BUU;G-U8G-C<FEB94!J86MA<G1A
M+F%P86-H92YO<F<B/FUA:6QT;SIS=')U=',M=7-E<BUU;G-U8G-C<FEB94!J
M86MA<G1A+F%P86-H92YO<F<\+T$^)F=T.SPO1D].5#X-"@T*/$)2/CQ&3TY4
M(%-)6D4],CY&;W(@861D:71I;VYA;"!C;VUM86YD<[EMAIL PROTECTED] F;'0[
M/$$@2%)%1CTB;6%I;'1O.G-T<G5T<RUU<V5R+6AE;'! :F%K87)T82YA<&%C
M:&4N;W)G(CYM86EL=&\Z<W1R=71S+75S97(M:&5L<$!J86MA<G1A+F%P86-H
M92YO<F<\+T$^)F=T.SPO1D].5#X-"CPO4#X-"@T*/"]"3T19/@T*/"](5$U,
!/@``
`
end


--
To unsubscribe, e-mail:   <mailto:[EMAIL PROTECTED]>
For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>

Reply via email to