From: Alef A. \(JTeam\) <al...@jt...> - 2003-07-13 17:25:13
|
I'm currently checking out the sourcecode. Somehow I wasn't able to = during the last couple of days. Well, anyway, I'll have a look into it = and I'll let you know tomorrow... Cheers, Alef -----Oorspronkelijk bericht----- Van: Ken Krebs [mailto:kk...@kk...] Verzonden: Saturday, July 12, 2003 6:22 PM Aan: j=C3=BCrgen h=C3=B6ller [werk3AT]; al...@jt... CC: spr...@li... Onderwerp: Tags using expression language?? & Petclinic Eliminating repetitive code in the jsp's is something I'd very much like = to see. Alef: thanks for your contribution, it looks like it will help. I've been in the process lately of refactoring Petclinic's Clinic=20 implementation along with code tightening and documentation improvements = and am just about ready to commit the changes. I WILL commit these=20 changes sometime later today. A couple of jsp's have minor changes. Alef: If you would like to make the changes to the jsp's, please go=20 ahead. If not, I'll do it. Please let me know if you will be doing it. Regards, Ken =20 j=C3=BCrgen h=C3=B6ller [werk3AT] wrote: >I've introduced support for EL on tag attributes yesterday, already=20 >committed. Thanks for the idea and the prototype, Alef! I hope you are = satisfied with the integration. You're very welcome to try it out :-) >=20 >There's a new ExpressionEvaluationsUtils class now in=20 >com.interface21.web.util, taking a String argument value and parsing it = to Object, String, int, or boolean. It will just attempt EL evaluation = if the value starts with "${", else it will simply parse the value with = standard means. >=20 >All of Spring's tags use this class now for all attributes, simply=20 >delegating to the respective ExpressionEvaluationsUtils method in each = setter. This means that all attributes still accept normal String values = as before (like <i21:bind path=3D"person.name">), but also EL = expressions (like <i21:bind path=3D"${bindPath}">). >=20 >For EL evaluation, ExpressionEvaluationsUtils depends on Jakarta's JSTL = >implementation (standard.jar). It doesn't have a runtime dependency if = just parsing normal String values though, as it delegates EL evaluation = to an inner class that will just get loaded in case of actual EL = expressions. So you'll just need the Jakarta JSTL implementation in your = classpath if you actually use EL attribute values on tags. >=20 >BTW, our AopProxy uses a similar mechanism to avoid a runtime=20 >dependency on CGLIB. If just proxying interfaces, it will use standard = J2SE proxies. Only if you try to proxy a class itself, it will invoke = CGLIB by delegating to a respective inner class. >=20 >Finally, we should adapt PetClinic to use EL expressions on its bind=20 >tags. Alef has already shown the way in the prototype that he sent. = Ken, what do you think? Would you like Alef to do this? >=20 >Juergen >=20 >=20 > > -----Urspr=C3=BCngliche Nachricht-----=20 > Von: j=C3=BCrgen h=C3=B6ller [werk3AT]=20 > Gesendet: Fr 11.07.2003 08:13=20 > An: al...@jt...; spr...@li...=20 > Cc:=20 > Betreff: Re: [Springframework-developer] Tags using expression=20 >language?? >=09 >=09 > > Alef, >=09 > I've just browsed your code - this looks very interesting! It makes=20 >iterating such repetitive form fields like in the petclinic much = easier. I'll have a look at the implementation details, and if = everything works out I'll add a clean room version to the main source = tree promptly. >=09 > I wonder if we could make that work with any JSTL implementation, not=20 >just the Jakarta one, although I wouldn't mind a dependency on the = latter for this feature. >=09 > Cool stuff :-) >=09 > Juergen >=09 >=09 >=09 > -----Urspr=C3=BCngliche Nachricht----- > Von: Alef Arendsen [mailto:al...@jt...] > Gesendet: Di 08.07.2003 19:43 > An: j=C3=BCrgen h=C3=B6ller [werk3AT]; = spr...@li... > Cc: > Betreff: RE: [Springframework-developer] Tags using expression = >language?? > =20 > =20 >=09 > Ok, here we go... > =20 > Like you said, at first glance, it does not look like the = i21:bind tag > needs expressionalization (hmmm, nice huh ;-). However, in the = petclinic > demo app I'm seeing a lot of input.jsps in the jsp/fields = directory. > These are things I'm hoping to solve using for instance = EL-based tags... > Attached you'll find a reworked version of the ownerForm. It = does not > use the JSPs from the fields directory anymore, but uses only = one > input.jsp that uses the bindstatus object to create the input=20 >field. > =20 > Ok, it's still all rough and reworking the tags is a little = bit more > work than the 15 minutes I spent on it now, but maybe you're = getting the > idea. > =20 > Consequences for adding / reworking the tags: > =20 > 1. dependency on jakarta-jstl-1.0.3 (jakarta.apache.org/taglib = --> > standard). > 2. dependency on jstl-1.0.3 (java.sun.com) > 3. In case you want to have both version in there, an = extending class > for each tag > 4. For each tag, a BeanInfo class > 5. I wasn't able to use the EvalHelper from jakarta, so I = copied it > (hmmm... not so nice, is it ;-) > =20 > Probably I don't have time this week or something to refactor = them to be > all EL-based... Just let me know if you'd like it. > =20 > Well, that's it for now, still discovering really cool = features and > already running out (brain)memory to think up everything I = could do with > Spring ;-) > =20 > Cheers, > =20 > Alef > =20 >=09 > = N=18HS^=E9=9A=8A[){([j=1FJ=EB=A2=BAky=C6=AE^=D8=A7j+x:0Z=1Au=DA=95g*)jw`z= =D6=9F=E7=9B=A20 > Z(~(W(}iT)~{ > +=D7=AFzZ)zXX*kx=1F=C5=A0u=DE=96^X(=1E~zwilq zlX)=DF=A3))~{ > +=D7=AFzZ) > >?????????????????????????????????????????=D3=86+=12=17?^?=E9=9A=8A[)?{(?= ?[??=DA=AD?(~?+??=E9=AE=8A=1FY? >=DA=A6??j?h??^??-?x?????:0?Z=1Aw?jU?l????=DD=81?Z~??n?$?=0C0???j?=1F??(?= ??W???(}?i?_???????????????????????????????????*k?x=1F???=C5=A0??=D7=AFzZ= )z???X??X??*k?x=1F???=C5=A0??=D7=AFzZ)z???l??.?=C7=9F??=1E?w???i????+-??(= ??=1E~??{?=DE=B7?b????+-?w???k?x=1F???=C5=A0??=D7=AFzZ) > > > =20 > |