You can subscribe to this list here.
| 2003 |
Jan
|
Feb
(55) |
Mar
(100) |
Apr
(203) |
May
(330) |
Jun
(190) |
Jul
(302) |
Aug
(323) |
Sep
(197) |
Oct
(245) |
Nov
(490) |
Dec
(330) |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2004 |
Jan
(194) |
Feb
(400) |
Mar
(416) |
Apr
(415) |
May
(359) |
Jun
(381) |
Jul
(491) |
Aug
(311) |
Sep
(291) |
Oct
(273) |
Nov
(355) |
Dec
(266) |
| 2005 |
Jan
(306) |
Feb
(303) |
Mar
(520) |
Apr
(346) |
May
(255) |
Jun
(221) |
Jul
(171) |
Aug
(247) |
Sep
(147) |
Oct
(125) |
Nov
(165) |
Dec
(65) |
| 2006 |
Jan
(90) |
Feb
(53) |
Mar
(121) |
Apr
(103) |
May
(113) |
Jun
(103) |
Jul
(104) |
Aug
(67) |
Sep
(78) |
Oct
(82) |
Nov
(78) |
Dec
(70) |
| 2007 |
Jan
(77) |
Feb
(76) |
Mar
(63) |
Apr
(30) |
May
(47) |
Jun
(41) |
Jul
(44) |
Aug
(44) |
Sep
(49) |
Oct
(33) |
Nov
(25) |
Dec
(21) |
| 2008 |
Jan
(45) |
Feb
(13) |
Mar
(15) |
Apr
(12) |
May
(9) |
Jun
(33) |
Jul
(30) |
Aug
(7) |
Sep
(20) |
Oct
(17) |
Nov
(20) |
Dec
(10) |
| 2009 |
Jan
(8) |
Feb
(5) |
Mar
(12) |
Apr
(17) |
May
(19) |
Jun
(97) |
Jul
(77) |
Aug
(33) |
Sep
(24) |
Oct
(41) |
Nov
(16) |
Dec
(32) |
| 2010 |
Jan
(24) |
Feb
(14) |
Mar
(50) |
Apr
(71) |
May
(70) |
Jun
(64) |
Jul
(45) |
Aug
(62) |
Sep
(32) |
Oct
(4) |
Nov
(12) |
Dec
(2) |
| 2011 |
Jan
(1) |
Feb
(3) |
Mar
(4) |
Apr
(3) |
May
(6) |
Jun
(1) |
Jul
(4) |
Aug
(3) |
Sep
(4) |
Oct
(6) |
Nov
(3) |
Dec
(3) |
| 2012 |
Jan
(4) |
Feb
(8) |
Mar
(6) |
Apr
(10) |
May
(2) |
Jun
(3) |
Jul
(11) |
Aug
(10) |
Sep
(4) |
Oct
|
Nov
(1) |
Dec
(1) |
| 2013 |
Jan
(4) |
Feb
(1) |
Mar
(9) |
Apr
(1) |
May
(8) |
Jun
(2) |
Jul
(5) |
Aug
(2) |
Sep
|
Oct
(3) |
Nov
(10) |
Dec
(8) |
| 2014 |
Jan
(3) |
Feb
(12) |
Mar
(9) |
Apr
(12) |
May
(2) |
Jun
|
Jul
(3) |
Aug
(1) |
Sep
(1) |
Oct
(4) |
Nov
|
Dec
(2) |
| 2015 |
Jan
(1) |
Feb
(3) |
Mar
(4) |
Apr
(9) |
May
(2) |
Jun
(2) |
Jul
|
Aug
(2) |
Sep
(7) |
Oct
(9) |
Nov
(7) |
Dec
(9) |
| 2016 |
Jan
(7) |
Feb
(5) |
Mar
(5) |
Apr
(5) |
May
(8) |
Jun
(4) |
Jul
(5) |
Aug
(4) |
Sep
(6) |
Oct
(7) |
Nov
(2) |
Dec
(3) |
| 2017 |
Jan
(7) |
Feb
(8) |
Mar
(7) |
Apr
(3) |
May
(4) |
Jun
(3) |
Jul
(5) |
Aug
(8) |
Sep
(4) |
Oct
(2) |
Nov
(3) |
Dec
|
| 2018 |
Jan
|
Feb
|
Mar
|
Apr
(1) |
May
|
Jun
(1) |
Jul
|
Aug
|
Sep
|
Oct
|
Nov
(1) |
Dec
|
| 2019 |
Jan
|
Feb
(1) |
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
(1) |
| 2021 |
Jan
|
Feb
(1) |
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
| 2022 |
Jan
|
Feb
(1) |
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
(1) |
Oct
|
Nov
|
Dec
|
| 2024 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
(1) |
Dec
|
| 2025 |
Jan
|
Feb
|
Mar
|
Apr
|
May
(1) |
Jun
|
Jul
(2) |
Aug
(5) |
Sep
(2) |
Oct
|
Nov
|
Dec
(1) |
| 2026 |
Jan
(1) |
Feb
|
Mar
(1) |
Apr
|
May
|
Jun
|
Jul
(1) |
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
|
From: Ou, R. <Ro...@sa...> - 2004-03-18 20:49:49
|
Never mind. I just need to call preInstantiateSingletons(). :) It just wasn't obvious from any of the documentations that you need to = do this separate step. Rong > -----Original Message----- > From: spr...@li... > [mailto:spr...@li...] > On Behalf > Of Ou, Rong > Sent: Thursday, March 18, 2004 2:39 PM > To: spr...@li... > Subject: [Springframework-developer] eager initialization broken? >=20 >=20 > Hi all, >=20 > So if I understood it correctly, when you set=20 > lazy-init=3D"false" in a bean definition, the bean instance=20 > should be constructed when the bean factory is instantiated,=20 > right? That doesn't seem to be the case any more. I've=20 > created a simple test case (please see attached files), which=20 > failed against RC2. Any ideas? >=20 > Thanks, >=20 > Rong >=20 |
|
From: Ou, R. <Ro...@sa...> - 2004-03-18 20:39:11
|
Hi all, So if I understood it correctly, when you set lazy-init=3D"false" in a = bean definition, the bean instance should be constructed when the bean = factory is instantiated, right? That doesn't seem to be the case any = more. I've created a simple test case (please see attached files), which = failed against RC2. Any ideas? Thanks, Rong |
|
From: Rod J. <rod...@in...> - 2004-03-18 19:30:05
|
OK
----- Original Message -----
From: "j=FCrgen h=F6ller [werk3AT]" <jue...@we...>
To: <spr...@li...>
Sent: Thursday, March 18, 2004 6:07 PM
Subject: [Springframework-developer] Fw: Getting ready for 1.0 final
Peter has a point here. Obviously it's easy to address the init-method is=
sue
by looking for a no-arg method via plain reflection. Note that we don't n=
eed
BeanWrapper's "invoke" method within the framework anymore then: Thus, I
suggest to drop it completely rather than rework it to support overloaded
methods. Its current javadoc already discourages people to use it anyway,=
so
I don't think that anyone will miss that method much. IMO, BeanWrapper is
not about invoking arbitrary methods in the first place...
Juergen
________________________________
Von: j=FCrgen h=F6ller [werk3AT]
Gesendet: Do 18.03.2004 19:02
An: Peter den Haan
Betreff: Re: Getting ready for 1.0 final
Peter,
I've actually changed the determination of the destroy method today, to m=
ake
it work with "shutdown(boolean force)"-style methods (passing in true as
argument in this case). A side effect of this change is that it looks for=
a
no-arg method first now, then for one with a single boolean parameter.
I guess I'll rewrite the init-method determination with plain reflection
too, to always look for a no-arg method. I'm not fond of the "invoke" met=
hod
in the BeanWrapper interface anyway; I might suggest to drop it completel=
y.
I'll move this to the list.
Juergen
________________________________
Von: Peter den Haan [mailto:pde...@ob...]
Gesendet: Do 18.03.2004 18:13
An: j=FCrgen h=F6ller [werk3AT]
Betreff: Re: Getting ready for 1.0 final
Juergen,
I was intending to write a test case and fix for this, but it looks like =
I
may not come around to it in time. I found a limitation in BeanWrapperImp=
l
that leads to what is arguably a bug in init-method and destroy-method.
BeanWrapperImpl.invoke() looks up the method to invoke by method name, no=
t
by method signature. In a class with overloaded methods, the behaviour of
the code (in CachedIntrospectionResults) is essentially undefined.
This has repercussions in a couple of places, among others the init-metho=
d
and destroy-method bean tag attributes. If a user specifies
destroy-method=3D"close", it is clear that the intention is for the no-ar=
g
form of this method to be called even if there are other, overloaded
versions. This doesn't work at present.
The solution I wanted to implement is to modify CachedIntrospectionResult=
s
to key its method information on method signature rather than just method
name (the current getMethodDescriptor(String methodName) can remain
supported for backwards compatibility, although I would want to better
define its semantics). A new getMethodDescriptor(String methodName, Objec=
t[]
args) would implement logic to find the best matching method given the
argument count and types, using the algorithm specified in JLS 15.12.2.2.
I can have a stab at implementing this over the weekend, or enter it in J=
ira
as a bug (or enhancement). Please let me know what you prefer.
Regards,
Peter den Haan
Principal Systems Engineer
OBJECTIVITY
Tel: 024 7642 0000
Fax: 024 7642 0001
Email: pde...@ob...
www.objectivity.co.uk <http://www.objectivity.co.uk/>
The contents of this email and any attachments are strictly confidential =
and
intended solely for the attention of the named addressee(s). If you are =
not
the addressee(s) you are not authorised to, and must not disclose, copy,
distribute, or retain this message without prior written authority. This
footnote also confirms that this message has been swept for the presence =
of
computer viruses but this does not guarantee that it is virus free.
________________________________________________________________________
This e-mail has been scanned for all viruses by Star Internet. The
service is powered by MessageLabs. For more information on a proactive
anti-virus service working around the clock, around the globe, visit:
http://www.star.net.uk
________________________________________________________________________
-------------------------------------------------------
This SF.Net email is sponsored by: IBM Linux Tutorials
Free Linux tutorial presented by Daniel Robbins, President and CEO of
GenToo technologies. Learn everything from fundamentals to system
administration.http://ads.osdn.com/?ad_id=1470&alloc_id638&op=3Dick
_______________________________________________
Springframework-developer mailing list
Spr...@li...
https://lists.sourceforge.net/lists/listinfo/springframework-developer
|
|
From: <jue...@we...> - 2004-03-18 18:10:06
|
Peter has a point here. Obviously it's easy to address the init-method =
issue by looking for a no-arg method via plain reflection. Note that we =
don't need BeanWrapper's "invoke" method within the framework anymore =
then: Thus, I suggest to drop it completely rather than rework it to =
support overloaded methods. Its current javadoc already discourages =
people to use it anyway, so I don't think that anyone will miss that =
method much. IMO, BeanWrapper is not about invoking arbitrary methods in =
the first place...
=20
Juergen
=20
________________________________
Von: j=FCrgen h=F6ller [werk3AT]
Gesendet: Do 18.03.2004 19:02
An: Peter den Haan
Betreff: Re: Getting ready for 1.0 final
Peter,
=20
I've actually changed the determination of the destroy method today, to =
make it work with "shutdown(boolean force)"-style methods (passing in =
true as argument in this case). A side effect of this change is that it =
looks for a no-arg method first now, then for one with a single boolean =
parameter.
=20
I guess I'll rewrite the init-method determination with plain reflection =
too, to always look for a no-arg method. I'm not fond of the "invoke" =
method in the BeanWrapper interface anyway; I might suggest to drop it =
completely. I'll move this to the list.
=20
Juergen=20
=20
________________________________
Von: Peter den Haan [mailto:pde...@ob...]
Gesendet: Do 18.03.2004 18:13
An: j=FCrgen h=F6ller [werk3AT]
Betreff: Re: Getting ready for 1.0 final
Juergen,
=20
I was intending to write a test case and fix for this, but it looks like =
I may not come around to it in time. I found a limitation in =
BeanWrapperImpl that leads to what is arguably a bug in init-method and =
destroy-method.
=20
BeanWrapperImpl.invoke() looks up the method to invoke by method name, =
not by method signature. In a class with overloaded methods, the =
behaviour of the code (in CachedIntrospectionResults) is essentially =
undefined.
=20
This has repercussions in a couple of places, among others the =
init-method and destroy-method bean tag attributes. If a user specifies =
destroy-method=3D"close", it is clear that the intention is for the =
no-arg form of this method to be called even if there are other, =
overloaded versions. This doesn't work at present.
=20
The solution I wanted to implement is to modify =
CachedIntrospectionResults to key its method information on method =
signature rather than just method name (the current =
getMethodDescriptor(String methodName) can remain supported for =
backwards compatibility, although I would want to better define its =
semantics). A new getMethodDescriptor(String methodName, Object[] args) =
would implement logic to find the best matching method given the =
argument count and types, using the algorithm specified in JLS =
15.12.2.2.
=20
I can have a stab at implementing this over the weekend, or enter it in =
Jira as a bug (or enhancement). Please let me know what you prefer.
=20
Regards,
=20
Peter den Haan
Principal Systems Engineer
OBJECTIVITY
Tel: 024 7642 0000=20
Fax: 024 7642 0001=20
Email: pde...@ob...
www.objectivity.co.uk <http://www.objectivity.co.uk/> =20
The contents of this email and any attachments are strictly confidential =
and intended solely for the attention of the named addressee(s). If you =
are not the addressee(s) you are not authorised to, and must not =
disclose, copy, distribute, or retain this message without prior written =
authority. This footnote also confirms that this message has been swept =
for the presence of computer viruses but this does not guarantee that it =
is virus free.
=20
________________________________________________________________________
This e-mail has been scanned for all viruses by Star Internet. The
service is powered by MessageLabs. For more information on a proactive
anti-virus service working around the clock, around the globe, visit:
http://www.star.net.uk
________________________________________________________________________
|
|
From: Luke T. <ne...@fr...> - 2004-03-18 17:00:13
|
Keith Donald wrote: > ** > > The thing I like about confluence is I can easily create and edit > content from my browser whenever I get a bit of free time. That and > people see the edits immediately. Don't forget that the automated build is also updating the online documentation, so changes should be visible shortly after the docbook sources are updated in CVS: http://monkeymachine.co.uk/spring/ref/index.html Luke. > And of course, since it is a wiki, > you can easily build links between pages/topics. > > I'm just personally a fan of wikis and Confluence looks sharp. Keith > -- Luke Taylor. Monkey Machine Ltd. PGP Key ID: 0x57E9523C http://www.monkeymachine.ltd.uk |
|
From: <sam...@ma...> - 2004-03-18 16:30:57
|
Wikis to not technical documentation make. What I mean by that is that Wikis are excellent places for discussion and storings ideas etc. My recommendation is to use the Wiki and a database of information for the project as a whole, and perhaps even for online tutorials/examples. The technical documentation (the docbook one) should remain as it is, but may well take aspects from the Wiki (confluence). Confluence seems good enough to actually host the whole Spring website if required. sam Quoting sk...@fe...: > > From what I can tell Confluence can export to pdf but I see no mention of > docbook. I personally like the ease of wikis and webdav like products but I > don't think they are sufficient for real technical documentation that needs > to be exported to many different formats. I've always done the "stream of > consciousness" documentation on a day by day basis in a wiki then > cut'n'pasted it into something else in the end for proper editing. > > So this is off topic a bit but as it involves Spring documentation I would > tend to favor anything that keeps the docs in a docbook or superset of > docbook like format. Now if confluence was a web based docbook editor or > could export to something that I could then convert automatically to any > number of formats I'd be sold right now. > > Sean Kroah > FedEx Ground > (412) 859-5130 > > sk...@fe... > > > > > > ------------------------------------------------------- > This SF.Net email is sponsored by: IBM Linux Tutorials > Free Linux tutorial presented by Daniel Robbins, President and CEO of > GenToo technologies. Learn everything from fundamentals to system > administration.http://ads.osdn.com/?ad_id=1470&alloc_id=3638&op=click > _______________________________________________ > Springframework-developer mailing list > Spr...@li... > https://lists.sourceforge.net/lists/listinfo/springframework-developer > sam http://www.magpiebrain.com/ |
|
From: Rod J. <rod...@in...> - 2004-03-18 16:27:51
|
The one outstanding issue is the AOP Alliance update. This should be committed tomorrow. Nothing major there, but needs testing like anything else... ----- Original Message ----- From: "j=FCrgen h=F6ller [werk3AT]" <jue...@we...> To: <spr...@li...> Sent: Thursday, March 18, 2004 3:21 PM Subject: [Springframework-developer] Getting ready for 1.0 final Everybody, As we're about to release Spring 1.0 final in a couple of days, I'd like = to encourage everybody to test a current CVS snapshot against your Spring-ba= sed applications. The last two weeks were mainly about bugfixes, but we've also got some mi= nor new features and internal refinements: setting array/List/Map elements directly, ResourceLoader, JdbcTemplate's execute methods, character encod= ing in ReloadableResourceBundleMessageSource and MimeMessageHelper, FreeMarke= r support. See the changelog for details. My main concern is to verify that we haven't broken any existing Spring functionality, but - of course - feel free to check out any of the new features and try to nail down bugs and gaps there too. Regards, Juergen ------------------------------------------------------- This SF.Net email is sponsored by: IBM Linux Tutorials Free Linux tutorial presented by Daniel Robbins, President and CEO of GenToo technologies. Learn everything from fundamentals to system administration.http://ads.osdn.com/?ad_id=1470&alloc_id638&op=3Dick _______________________________________________ Springframework-developer mailing list Spr...@li... https://lists.sourceforge.net/lists/listinfo/springframework-developer |
|
From: Anna C. <ac...@er...> - 2004-03-18 16:18:22
|
Keith, I have fixed the bug I reported to you by modifying BeanInfoBeanValidator, ValidationResultsCollector and ValidationResultsCollectorAdapter classes. Please let me what you think. Thanks, Anna |
|
From: Cameron B. <ca...@da...> - 2004-03-18 16:14:06
|
Yeah, scoped bean factories is the idea I was trying to convey ;) I think I got a little lost in the implementation ! Anyway, I guess what I am heading towards is seeing if spring can be adapted to support scopes. I would like to support request, session, and custom scopes like security and others. I think a more elegant way would be to have a scope="session" like attribute for each bean. As well as some sort of scope definition, mapping scope names to scope managers, and the relationship between them. For example nested scopes - to declare the direction of dependaency. More food for thought. Cameron. > -----Original Message----- > From: spr...@li... > [mailto:spr...@li...] > On Behalf Of neuro > Sent: Friday, 19 March 2004 1:45 AM > To: spr...@li... > Subject: [Springframework-developer] Re: Spring Web .. New > idea : requestContext.xml > > All of this is really close to my situation and I even have > similiar ideas but no time to experiment with it. 8( > > Many frameworks have different scopes for helpers or beans - > in some article I saw comparison of XWork/WebWork2 IOC with > Spring - an only feature Spring was "beaten" its ease of > configuration of beans with different scopes. Even > VelocityTools project have this. > > Different bean scopes are natural to many application > architectures and essential to web applications. > > So I think this and (or) similiar things will be very > valuable addition to Spring. > > //regards, neuro > > > > ------------------------------------------------------- > This SF.Net email is sponsored by: IBM Linux Tutorials Free > Linux tutorial presented by Daniel Robbins, President and CEO > of GenToo technologies. Learn everything from fundamentals to > system > administration.http://ads.osdn.com/?ad_id=1470&alloc_id=3638&op=click > _______________________________________________ > Springframework-developer mailing list > Spr...@li... > https://lists.sourceforge.net/lists/listinfo/springframework-developer > > |
|
From: <sk...@fe...> - 2004-03-18 15:55:16
|
From what I can tell Confluence can export to pdf but I see no mention of docbook. I personally like the ease of wikis and webdav like products but I don't think they are sufficient for real technical documentation that needs to be exported to many different formats. I've always done the "stream of consciousness" documentation on a day by day basis in a wiki then cut'n'pasted it into something else in the end for proper editing. So this is off topic a bit but as it involves Spring documentation I would tend to favor anything that keeps the docs in a docbook or superset of docbook like format. Now if confluence was a web based docbook editor or could export to something that I could then convert automatically to any number of formats I'd be sold right now. Sean Kroah FedEx Ground (412) 859-5130 sk...@fe... |
|
From: neuro <ne...@ka...> - 2004-03-18 15:46:24
|
All of this is really close to my situation and I even have similiar ideas but no time to experiment with it. 8( Many frameworks have different scopes for helpers or beans - in some article I saw comparison of XWork/WebWork2 IOC with Spring - an only feature Spring was "beaten" its ease of configuration of beans with different scopes. Even VelocityTools project have this. Different bean scopes are natural to many application architectures and essential to web applications. So I think this and (or) similiar things will be very valuable addition to Spring. //regards, neuro |
|
From: Claudio D'A. <cla...@ob...> - 2004-03-18 15:43:41
|
It's perfect Thanks At 16.22 18/03/2004 +0100, you wrote: >The problem is that DispatcherServlet doesn't know the bean name of the >handlers that a HandlerMapping returns: The handlers don't even have to >have names in the first place. > >What you could do is let your Finder class implement BeanNameAware and >store the passed-in bean name there. In your HandlerInterceptor, check for >Finder and fetch the bean name from it. Alternatively, you could also >check the request URI directly. > >Juergen > > >________________________________ > >Von: spr...@li... im Auftrag von >Kopylenko, Dmitry >Gesendet: Do 18.03.2004 16:14 >An: 'spr...@li...' >Betreff: RE: [Springframework-developer] Handler Interceptor > > >I wouldn't mess around with changing the API at this point because this >API is used in production deployments > >Dmitriy. > > -----Original Message----- > From: Claudio D'Angelo [mailto:cla...@ob...] > Sent: Thursday, March 18, 2004 10:08 AM > To: spr...@li... > Subject: [Springframework-developer] Handler Interceptor > > > Hi, > I need of an Interceptor that controls the execution of workflow: > The methods of the HandleInterceptor are: > public boolean preHandle(javax.servlet.http.HttpServletRequest > request, javax.servlet.http.HttpServletResponse response, > java.lang.Object handler) > public void postHandle(javax.servlet.http.HttpServletRequest > request, javax.servlet.http.HttpServletResponse response, > java.lang.Object handler, ModelAndView modelAndView) > public void afterCompletion(javax.servlet.http.HttpServletRequest > request, javax.servlet.http.HttpServletResponse response, > java.lang.Object handler, java.lang.Exception ex) > > > In all method is passed the instance of Controller that must be > execute but I need to know about the bean name (id value of configuration > file) becouse I've have similar bean with different id: > ie: > > <bean name="/find.do" class="it.test.view.Finder"> > ... > <property name="commandName"> > <value>command</value></property> > <property > name="formView"><value>.find.normal</value></property> > <property > name="successView"><value>.detail.Normal</value></property> > </bean> > <bean name="/extendedFind.do" class="it.test.view.Finder"> > ... > <property name="commandName"> > <value>command</value></property> > <property > name="formView"><value>.find.extended</value></property> > <property > name="successView"><value>.detail.extended</value></property> > </bean> > > All becouse the Command is the same but the view is different. > > Is possible change the interface ? in : > public boolean preHandle(javax.servlet.http.HttpServletRequest > request, javax.servlet.http.HttpServletResponse response, > java.lang.Object handler, String beanName) > public void postHandle(javax.servlet.http.HttpServletRequest > request, javax.servlet.http.HttpServletResponse response, > java.lang.Object handler, String beanName, ModelAndView modelAndView) > public void afterCompletion(javax.servlet.http.HttpServletRequest > request, javax.servlet.http.HttpServletResponse response, > java.lang.Object handler, String beanName, java.lang.Exception ex) > > > > > > Grazie e buon lavoro > >________________________________ > > Claudio D'Angelo > Software Consultant > ObjectWay S.p.A. > Via G.A. Boltraffio 7 > 20159 Milano (MI) > http://www.objectway.it <http://www.objectway.it/> > > > > > >------------------------------------------------------- >This SF.Net email is sponsored by: IBM Linux Tutorials >Free Linux tutorial presented by Daniel Robbins, President and CEO of >GenToo technologies. Learn everything from fundamentals to system >administration. >_______________________________________________ >Springframework-developer mailing list >Spr...@li... >https://lists.sourceforge.net/lists/listinfo/springframework-developer Grazie e buon lavoro ---------- Claudio D'Angelo Software Consultant ObjectWay S.p.A. Via G.A. Boltraffio 7 20159 Milano (MI) http://www.objectway.it |
|
From: Cameron B. <ca...@da...> - 2004-03-18 15:43:23
|
I actually don't have this working with factories...
I think my knowledge of spring's internals still leaves a lot to be desired
;)
If one of the spring developers would like to help, you know where to reach
me ;)
Thanks.
Cameron
_____
From: spr...@li...
[mailto:spr...@li...] On Behalf Of
Cameron Braid
Sent: Friday, 19 March 2004 1:16 AM
To: spr...@li...
Subject: [Springframework-developer] Spring Web .. New idea :
requestContext.xml
I have wanted to use filters in a similiar way that you can use servlets
with the FrameworkServlet class - having servletName-servlet.xml as a child
context, in an web app. Thus creating a servlet scoped bean factory.
I wish to have a request scoped bean factory, so what I have done is this :
Coppied the FrameworkServlet class into
org.springframework.filter.FrameworkFilter .
I basically change the keywords servlet to filter, Servlet to Filter,
getServletName() to getFilterName()
I fixed all compile bugs
I made some little changes.
I changed the class hierarchy so that it extends OncePerRequestFilter
I stripped out the RequestHandledEvent sending
I introduced two new interfaces :
public interface HttpServletRequestAware {
public void setHttpServletRequest(HttpServletRequest httpServletRequest)
throws Exception;
}
public interface HttpServletResponseAware {
public void setHttpServletResponse(HttpServletResponse
httpServletResponse) throws Exception;
}
I created a FactoryFilterPostProcessor to set the request and response onto
beans created within this context that implement these interfaces.
I also implemented a filter that extends FrameworkFilter called
RequestContextFilterBean that gets every bean defined in this context and
sets it as a request attribute.
NOW : I can easily create request scoped beans just by adding them to this
new xml file.
I can use normal bean refrences to bind application scoped beans onto the
new request scoped beans, request scoped beans can depend on each other.
Request scoped beans can be aware of their application context, the servlet
context, the current request, the current response.
It works with factories as well.
I had to use some hacks to get the factories to work, since I need to add
the special postProcessor into the beanFactory's post processor list.
I have this all implemented, without tests, and partial docs.
Is anyone interested in using this.
Does it sound like a valuable addition to spring ?
A driving force for me doing this is I was often either
a) writing filters that created new objects, and placed them in the request
b) adding request scoped objects to my freemarker views by extending the
freemarker servlet
c) adding request scoped objects to my webwork actions by using interceptors
and in doing so I would often need to create custom factory classes, and use
request attributes to bind them together.
This was problematic because
- the filters had to be in the correct order.
- colaborating components needed to either use static methods to lookup
other request scoped beans, or use named request attributes to look them up
Moving all of this into a requestContext.xml has certainly simplified and
standardised this.
It also removes it from my webwork and freemarker dependencies.
The attached patch and example web.xml and requestContext-filter.xml files
will be a starting point for someone to review what I have done.
It is getting late here (1:10am) so I will leave preparing a working demo
until tomorrow.
Thanks for taking the time to read this, and I am certainly looking forward
to some feedback.
Cameron
|
|
From: Dmitriy K. <dko...@ru...> - 2004-03-18 15:42:58
|
Claudio,
try Juergen's suggestion.
Regards,
Dmitriy.
-----Original Message-----
From: spr...@li...
[mailto:spr...@li...] On Behalf Of
Claudio D'Angelo
Sent: Thursday, March 18, 2004 10:30 AM
To: spr...@li...
Subject: RE: [Springframework-developer] Handler Interceptor
It's right but can be possible create another interface and insert an if
with instanceof to elab the handler interceptor
At 10.14 18/03/2004 -0500, you wrote:
I wouldn't mess around with changing the API at this point because this API
is used in production deployments
Dmitriy.
-----Original Message-----
From: Claudio D'Angelo [mailto:cla...@ob...]
Sent: Thursday, March 18, 2004 10:08 AM
To: spr...@li...
Subject: [Springframework-developer] Handler Interceptor
Hi,
I need of an Interceptor that controls the execution of workflow:
The methods of the HandleInterceptor are:
public boolean preHandle(javax.servlet.http.HttpServletRequest request,
javax.servlet.http.HttpServletResponse response, java.lang.Object handler)
public void postHandle(javax.servlet.http.HttpServletRequest request,
javax.servlet.http.HttpServletResponse response, java.lang.Object handler,
ModelAndView modelAndView)
public void afterCompletion(javax.servlet.http.HttpServletRequest request,
javax.servlet.http.HttpServletResponse response, java.lang.Object handler,
java.lang.Exception ex)
In all method is passed the instance of Controller that must be execute but
I need to know about the bean name (id value of configuration file) becouse
I've have similar bean with different id:
ie:
<bean name="/find.do" class="it.test.view.Finder">
...
<property name="commandName"> <value>command</value></property>
<property name="formView"><value>.find.normal</value></property>
<property
name="successView"><value>.detail.Normal</value></property>
</bean>
<bean name="/extendedFind.do" class="it.test.view.Finder">
...
<property name="commandName"> <value>command</value></property>
<property name="formView"><value>.find.extended</value></property>
<property
name="successView"><value>.detail.extended</value></property>
</bean>
All becouse the Command is the same but the view is different.
Is possible change the interface ? in :
public boolean preHandle(javax.servlet.http.HttpServletRequest request,
javax.servlet.http.HttpServletResponse response, java.lang.Object handler,
String beanName)
public void postHandle(javax.servlet.http.HttpServletRequest request,
javax.servlet.http.HttpServletResponse response, java.lang.Object handler,
String beanName, ModelAndView modelAndView)
public void afterCompletion(javax.servlet.http.HttpServletRequest request,
javax.servlet.http.HttpServletResponse response, java.lang.Object handler,
String beanName, java.lang.Exception ex)
Grazie e buon lavoro
_____
Claudio D'Angelo
Software Consultant
ObjectWay S.p.A.
Via G.A. Boltraffio 7
20159 Milano (MI)
http://www.objectway.it <http://www.objectway.it/>
Grazie e buon lavoro
_____
Claudio D'Angelo
Software Consultant
ObjectWay S.p.A.
Via G.A. Boltraffio 7
20159 Milano (MI)
http://www.objectway.it <http://www.objectway.it/>
|
|
From: <sam...@ma...> - 2004-03-18 15:42:58
|
You can also do fancy stuff, like extract code snippets from CVS - so your example documentation will never be out of date. sam Quoting Keith Donald <kd...@cs...>: > The thing I like about confluence is I can easily create and edit content > from my browser whenever I get a bit of free time. That and people see the > edits immediately. And of course, since it is a wiki, you can easily build > links between pages/topics. > > I'm just personally a fan of wikis and Confluence looks sharp. Keith > > -----Original Message----- > From: spr...@li... > [mailto:spr...@li...] On Behalf Of > Alef Arendsen > Sent: Thursday, March 18, 2004 3:47 AM > To: spr...@li... > Subject: RE: [Springframework-developer] reference documentation > > > > People are editing the XML with XMLMind's xml editor. Updating the > documentation online for now happens manually, once every now and then. > > > > I haven't looked into Confluence yet. I don't really care what system the > documentation is written with, as long as it generates HTML and something > like PDF (I like this very much). I don't think migrating it right now makes > sense :-). > > > > Alef > > > > > _____ > > > From: spr...@li... > [mailto:spr...@li...] On Behalf Of > Keith Donald > Sent: Wednesday, March 17, 2004 8:08 PM > To: spr...@li... > Subject: [Springframework-developer] reference documentation > > > > What's the process for updating the reference documentation? Any particular > tool I need to edit the .xml files? Just wonderin' because I have some > content/tutorial/samples I'd like to contribute! > > > > Thanks! > > Keith > > > > p.s. are we going to convert our docs over to Confluence? Do we have a > timeframe for the that? > > > > > > sam http://www.magpiebrain.com/ |
|
From: Claudio D'A. <cla...@ob...> - 2004-03-18 15:30:22
|
It's right but can be possible create another interface and insert an if with instanceof to elab the handler interceptor At 10.14 18/03/2004 -0500, you wrote: >I wouldn't mess around with changing the API at this point because this >API is used in production deployments > >Dmitriy. >-----Original Message----- >From: Claudio D'Angelo [mailto:cla...@ob...] >Sent: Thursday, March 18, 2004 10:08 AM >To: spr...@li... >Subject: [Springframework-developer] Handler Interceptor > >Hi, >I need of an Interceptor that controls the execution of workflow: >The methods of the HandleInterceptor are: >public boolean preHandle(javax.servlet.http.HttpServletRequest request, >javax.servlet.http.HttpServletResponse response, java.lang.Object handler) >public void postHandle(javax.servlet.http.HttpServletRequest request, >javax.servlet.http.HttpServletResponse response, java.lang.Object handler, >ModelAndView modelAndView) >public void afterCompletion(javax.servlet.http.HttpServletRequest request, >javax.servlet.http.HttpServletResponse response, java.lang.Object handler, >java.lang.Exception ex) > > > >In all method is passed the instance of Controller that must be execute >but I need to know about the bean name (id value of configuration file) >becouse I've have similar bean with different id: >ie: > > <bean name="/find.do" class="it.test.view.Finder"> > ... > <property name="commandName"> <value>command</value></property> > <property name="formView"><value>.find.normal</value></property> > <property > name="successView"><value>.detail.Normal</value></property> > </bean> > <bean name="/extendedFind.do" class="it.test.view.Finder"> > ... > <property name="commandName"> <value>command</value></property> > <property name="formView"><value>.find.extended</value></property> > <property > name="successView"><value>.detail.extended</value></property> > </bean> > >All becouse the Command is the same but the view is different. > >Is possible change the interface ? in : >public boolean preHandle(javax.servlet.http.HttpServletRequest request, >javax.servlet.http.HttpServletResponse response, java.lang.Object handler, >String beanName) >public void postHandle(javax.servlet.http.HttpServletRequest request, >javax.servlet.http.HttpServletResponse response, java.lang.Object handler, >String beanName, ModelAndView modelAndView) >public void afterCompletion(javax.servlet.http.HttpServletRequest request, >javax.servlet.http.HttpServletResponse response, java.lang.Object handler, >String beanName, java.lang.Exception ex) > > > > > >Grazie e buon lavoro >---------- >Claudio D'Angelo >Software Consultant >ObjectWay S.p.A. >Via G.A. Boltraffio 7 >20159 Milano (MI) >http://www.objectway.it Grazie e buon lavoro ---------- Claudio D'Angelo Software Consultant ObjectWay S.p.A. Via G.A. Boltraffio 7 20159 Milano (MI) http://www.objectway.it |
|
From: Keith D. <kd...@cs...> - 2004-03-18 15:25:45
|
The thing I like about confluence is I can easily create and edit = content from my browser whenever I get a bit of free time. That and people see = the edits immediately. And of course, since it is a wiki, you can easily = build links between pages/topics. =20 I'm just personally a fan of wikis and Confluence looks sharp. Keith =20 -----Original Message----- From: spr...@li... [mailto:spr...@li...] On Behalf = Of Alef Arendsen Sent: Thursday, March 18, 2004 3:47 AM To: spr...@li... Subject: RE: [Springframework-developer] reference documentation People are editing the XML with XMLMind's xml editor. Updating the documentation online for now happens manually, once every now and then. =20 I haven't looked into Confluence yet. I don't really care what system = the documentation is written with, as long as it generates HTML and = something like PDF (I like this very much). I don't think migrating it right now = makes sense :-). =20 Alef =20 _____ =20 From: spr...@li... [mailto:spr...@li...] On Behalf = Of Keith Donald Sent: Wednesday, March 17, 2004 8:08 PM To: spr...@li... Subject: [Springframework-developer] reference documentation =20 What's the process for updating the reference documentation? Any = particular tool I need to edit the .xml files? Just wonderin' because I have some content/tutorial/samples I'd like to contribute! =20 Thanks! Keith =20 p.s. are we going to convert our docs over to Confluence? Do we have a timeframe for the that? =20 =20 |
|
From: <jue...@we...> - 2004-03-18 15:23:51
|
The problem is that DispatcherServlet doesn't know the bean name of the = handlers that a HandlerMapping returns: The handlers don't even have to = have names in the first place. =20 What you could do is let your Finder class implement BeanNameAware and = store the passed-in bean name there. In your HandlerInterceptor, check = for Finder and fetch the bean name from it. Alternatively, you could = also check the request URI directly. =20 Juergen =20 ________________________________ Von: spr...@li... im Auftrag = von Kopylenko, Dmitry Gesendet: Do 18.03.2004 16:14 An: 'spr...@li...' Betreff: RE: [Springframework-developer] Handler Interceptor I wouldn't mess around with changing the API at this point because this = API is used in production deployments =20 Dmitriy. -----Original Message----- From: Claudio D'Angelo [mailto:cla...@ob...]=20 Sent: Thursday, March 18, 2004 10:08 AM To: spr...@li... Subject: [Springframework-developer] Handler Interceptor =09 =09 Hi, I need of an Interceptor that controls the execution of workflow: The methods of the HandleInterceptor are: public boolean preHandle(javax.servlet.http.HttpServletRequest request, = javax.servlet.http.HttpServletResponse response, java.lang.Object = handler)=20 public void postHandle(javax.servlet.http.HttpServletRequest request, = javax.servlet.http.HttpServletResponse response, java.lang.Object = handler, ModelAndView modelAndView)=20 public void afterCompletion(javax.servlet.http.HttpServletRequest = request, javax.servlet.http.HttpServletResponse response, = java.lang.Object handler, java.lang.Exception ex)=20 =09 =09 In all method is passed the instance of Controller that must be execute = but I need to know about the bean name (id value of configuration file) = becouse I've have similar bean with different id: ie: =09 <bean name=3D"/find.do" class=3D"it.test.view.Finder"> ... <property name=3D"commandName"> = <value>command</value></property> <property = name=3D"formView"><value>.find.normal</value></property> <property = name=3D"successView"><value>.detail.Normal</value></property> </bean> <bean name=3D"/extendedFind.do" class=3D"it.test.view.Finder"> ... <property name=3D"commandName"> = <value>command</value></property> <property = name=3D"formView"><value>.find.extended</value></property> <property = name=3D"successView"><value>.detail.extended</value></property> </bean> =09 All becouse the Command is the same but the view is different. =09 Is possible change the interface ? in : public boolean preHandle(javax.servlet.http.HttpServletRequest request, = javax.servlet.http.HttpServletResponse response, java.lang.Object = handler, String beanName)=20 public void postHandle(javax.servlet.http.HttpServletRequest request, = javax.servlet.http.HttpServletResponse response, java.lang.Object = handler, String beanName, ModelAndView modelAndView)=20 public void afterCompletion(javax.servlet.http.HttpServletRequest = request, javax.servlet.http.HttpServletResponse response, = java.lang.Object handler, String beanName, java.lang.Exception ex)=20 =09 =09 =09 =09 Grazie e buon lavoro =09 ________________________________ Claudio D'Angelo Software Consultant ObjectWay S.p.A. Via G.A. Boltraffio 7 20159 Milano (MI) http://www.objectway.it <http://www.objectway.it/>=20 =09 =09 |
|
From: <jue...@we...> - 2004-03-18 15:19:41
|
Everybody, =20 As we're about to release Spring 1.0 final in a couple of days, I'd like = to encourage everybody to test a current CVS snapshot against your = Spring-based applications. =20 The last two weeks were mainly about bugfixes, but we've also got some = minor new features and internal refinements: setting array/List/Map = elements directly, ResourceLoader, JdbcTemplate's execute methods, = character encoding in ReloadableResourceBundleMessageSource and = MimeMessageHelper, FreeMarker support. See the changelog for details. =20 My main concern is to verify that we haven't broken any existing Spring = functionality, but - of course - feel free to check out any of the new = features and try to nail down bugs and gaps there too. =20 Regards, Juergen =20 |
|
From: Kopylenko, D. <dko...@ac...> - 2004-03-18 15:14:09
|
I wouldn't mess around with changing the API at this point because this API
is used in production deployments
Dmitriy.
-----Original Message-----
From: Claudio D'Angelo [mailto:cla...@ob...]
Sent: Thursday, March 18, 2004 10:08 AM
To: spr...@li...
Subject: [Springframework-developer] Handler Interceptor
Hi,
I need of an Interceptor that controls the execution of workflow:
The methods of the HandleInterceptor are:
public boolean preHandle(javax.servlet.http.HttpServletRequest request,
javax.servlet.http.HttpServletResponse response, java.lang.Object handler)
public void postHandle(javax.servlet.http.HttpServletRequest request,
javax.servlet.http.HttpServletResponse response, java.lang.Object handler,
ModelAndView modelAndView)
public void afterCompletion(javax.servlet.http.HttpServletRequest request,
javax.servlet.http.HttpServletResponse response, java.lang.Object handler,
java.lang.Exception ex)
In all method is passed the instance of Controller that must be execute but
I need to know about the bean name (id value of configuration file) becouse
I've have similar bean with different id:
ie:
<bean name="/find.do" class="it.test.view.Finder">
...
<property name="commandName"> <value>command</value></property>
<property name="formView"><value>.find.normal</value></property>
<property
name="successView"><value>.detail.Normal</value></property>
</bean>
<bean name="/extendedFind.do" class="it.test.view.Finder">
...
<property name="commandName"> <value>command</value></property>
<property name="formView"><value>.find.extended</value></property>
<property
name="successView"><value>.detail.extended</value></property>
</bean>
All becouse the Command is the same but the view is different.
Is possible change the interface ? in :
public boolean preHandle(javax.servlet.http.HttpServletRequest request,
javax.servlet.http.HttpServletResponse response, java.lang.Object handler,
String beanName)
public void postHandle(javax.servlet.http.HttpServletRequest request,
javax.servlet.http.HttpServletResponse response, java.lang.Object handler,
String beanName, ModelAndView modelAndView)
public void afterCompletion(javax.servlet.http.HttpServletRequest request,
javax.servlet.http.HttpServletResponse response, java.lang.Object handler,
String beanName, java.lang.Exception ex)
Grazie e buon lavoro
_____
Claudio D'Angelo
Software Consultant
ObjectWay S.p.A.
Via G.A. Boltraffio 7
20159 Milano (MI)
http://www.objectway.it <http://www.objectway.it/>
|
|
From: Claudio D'A. <cla...@ob...> - 2004-03-18 15:09:09
|
Hi,
I need of an Interceptor that controls the execution of workflow:
The methods of the HandleInterceptor are:
public boolean preHandle(javax.servlet.http.HttpServletRequest request,
javax.servlet.http.HttpServletResponse response, java.lang.Object handler)
public void postHandle(javax.servlet.http.HttpServletRequest request,
javax.servlet.http.HttpServletResponse response, java.lang.Object handler,
ModelAndView modelAndView)
public void afterCompletion(javax.servlet.http.HttpServletRequest request,
javax.servlet.http.HttpServletResponse response, java.lang.Object handler,
java.lang.Exception ex)
In all method is passed the instance of Controller that must be execute but
I need to know about the bean name (id value of configuration file) becouse
I've have similar bean with different id:
ie:
<bean name="/find.do" class="it.test.view.Finder">
...
<property name="commandName"> <value>command</value></property>
<property name="formView"><value>.find.normal</value></property>
<property name="successView"><value>.detail.Normal</value></property>
</bean>
<bean name="/extendedFind.do" class="it.test.view.Finder">
...
<property name="commandName"> <value>command</value></property>
<property name="formView"><value>.find.extended</value></property>
<property
name="successView"><value>.detail.extended</value></property>
</bean>
All becouse the Command is the same but the view is different.
Is possible change the interface ? in :
public boolean preHandle(javax.servlet.http.HttpServletRequest request,
javax.servlet.http.HttpServletResponse response, java.lang.Object handler,
String beanName)
public void postHandle(javax.servlet.http.HttpServletRequest request,
javax.servlet.http.HttpServletResponse response, java.lang.Object handler,
String beanName, ModelAndView modelAndView)
public void afterCompletion(javax.servlet.http.HttpServletRequest request,
javax.servlet.http.HttpServletResponse response, java.lang.Object handler,
String beanName, java.lang.Exception ex)
Grazie e buon lavoro
----------
Claudio D'Angelo
Software Consultant
ObjectWay S.p.A.
Via G.A. Boltraffio 7
20159 Milano (MI)
http://www.objectway.it
|
|
From: <jue...@we...> - 2004-03-18 14:57:26
|
FYI, I've just added support for directly setting bean property values =
in arrays, lists, and maps. So code like the following will now work, =
just like the getPropertyValue counterparts:
=20
MutablePropertyValues pvs =3D new MutablePropertyValues();
pvs.addPropertyValue("array[0]", tb5);
pvs.addPropertyValue("array[1]",tb4);
pvs.addPropertyValue("list[0]", tb3);
pvs.addPropertyValue("list[1]", tb2);
pvs.addPropertyValue("map[key1]", tb1);
pvs.addPropertyValue("map['key2']", tb0);
bw.setPropertyValues(pvs);
=20
Note that you can't set array elements outside of the size of the array, =
and can only set List elements within the List or added to the end of =
the List.
=20
Of course, this is straightforwardly available in =
ServletRequestDataBinder and consequently Spring's out-of-the-box =
command/form controller implementations.
=20
Juergen
=20
________________________________
Von: spr...@li... im Auftrag =
von Seth Ladd
Gesendet: Mi 17.03.2004 19:23
An: spr...@li...
Betreff: [Springframework-developer] Re: [Springframework-user] =
java.util.Map binder in spring-mvc?
Rim, Mark wrote:
> jozsa,
>
> well, for now, i think the short answer is yes. you do have to =
manually parse
> request parameters. otherwise, you could look through some source code =
and
> override methods at just the right points. but manual parsing might be =
easier.
>
> it looks like the issue is in the bean framework and not in the web =
stuff.
> although you can "get" map values by key using the BeanWrapper, you =
cannot set
> them. for example,
>
> MapBean tb =3D new MapBean();
> BeanWrapper bw =3D new BeanWrapperImpl(tb);
> tb.getMap().put("key1","value1");
> # the following works
> assertEquals("value1", bw.getPropertyValue("map[key1]"));
> # the next statement fails
> bw.setPropertyValue("map[key1]","value2");
>
> since mvc bindings (probably) depends on the bean framework, this is =
the
> likely cause of your pain. this may be by-design or a bug. i raised =
the issue
> on the developer mailing list during a bout with insomnia last night.
What is the current status on this issue for a 1.0 release? Do the
developers feel this is an issue to be fixed?
Judging from the amount of questions related to this issue found in the
forums and mailing lists (including my own) I feel this a feature worth
implementing.
It provides some symmetry with how getPropertyValue works. Also, many
of Spring's MVC users are Struts converts. The above functionality is
present in Struts, and having it in Spring would make porting those
applications to Spring easier and more straight forward.
If this functionality won't be added for 1.0, it would be very helpful
to have a workaround posted.
There are many patches for this, including my own, that are good
starting points. Most are labeled "hacks" so having the developer's
feedback would be very useful. :)
Thoughts or comments?
Thanks!
Seth
-------------------------------------------------------
This SF.Net email is sponsored by: IBM Linux Tutorials
Free Linux tutorial presented by Daniel Robbins, President and CEO of
GenToo technologies. Learn everything from fundamentals to system
administration.http://ads.osdn.com/?ad_id=3D1470&alloc_id=3D3638&op=3Dcli=
ck
_______________________________________________
Springframework-developer mailing list
Spr...@li...
https://lists.sourceforge.net/lists/listinfo/springframework-developer
|
|
From: <jue...@we...> - 2004-03-18 14:54:50
|
FYI, I've just added support for directly setting bean property values =
in arrays, lists, and maps. So code like the following will now work, =
just like the getPropertyValue counterparts:
=20
MutablePropertyValues pvs =3D new MutablePropertyValues();
pvs.addPropertyValue("array[0]", tb5);
pvs.addPropertyValue("array[1]",tb4);
pvs.addPropertyValue("list[0]", tb3);
pvs.addPropertyValue("list[1]", tb2);
pvs.addPropertyValue("map[key1]", tb1);
pvs.addPropertyValue("map['key2']", tb0);
bw.setPropertyValues(pvs);
=20
Note that you can't set array elements outside of the size of the array, =
and can only set List elements within the List or added to the end of =
the List.
=20
Of course, this is straightforwardly available in =
ServletRequestDataBinder and consequently Spring's out-of-the-box =
command/form controller implementations.
=20
Juergen
=20
________________________________
Von: spr...@li... im Auftrag =
von Seth Ladd
Gesendet: Mi 17.03.2004 19:23
An: spr...@li...
Betreff: [Springframework-developer] Re: [Springframework-user] =
java.util.Map binder in spring-mvc?
Rim, Mark wrote:
> jozsa,
>
> well, for now, i think the short answer is yes. you do have to =
manually parse
> request parameters. otherwise, you could look through some source code =
and
> override methods at just the right points. but manual parsing might be =
easier.
>
> it looks like the issue is in the bean framework and not in the web =
stuff.
> although you can "get" map values by key using the BeanWrapper, you =
cannot set
> them. for example,
>
> MapBean tb =3D new MapBean();
> BeanWrapper bw =3D new BeanWrapperImpl(tb);
> tb.getMap().put("key1","value1");
> # the following works
> assertEquals("value1", bw.getPropertyValue("map[key1]"));
> # the next statement fails
> bw.setPropertyValue("map[key1]","value2");
>
> since mvc bindings (probably) depends on the bean framework, this is =
the
> likely cause of your pain. this may be by-design or a bug. i raised =
the issue
> on the developer mailing list during a bout with insomnia last night.
What is the current status on this issue for a 1.0 release? Do the
developers feel this is an issue to be fixed?
Judging from the amount of questions related to this issue found in the
forums and mailing lists (including my own) I feel this a feature worth
implementing.
It provides some symmetry with how getPropertyValue works. Also, many
of Spring's MVC users are Struts converts. The above functionality is
present in Struts, and having it in Spring would make porting those
applications to Spring easier and more straight forward.
If this functionality won't be added for 1.0, it would be very helpful
to have a workaround posted.
There are many patches for this, including my own, that are good
starting points. Most are labeled "hacks" so having the developer's
feedback would be very useful. :)
Thoughts or comments?
Thanks!
Seth
-------------------------------------------------------
This SF.Net email is sponsored by: IBM Linux Tutorials
Free Linux tutorial presented by Daniel Robbins, President and CEO of
GenToo technologies. Learn everything from fundamentals to system
administration.http://ads.osdn.com/?ad_id=3D1470&alloc_id=3D3638&op=3Dcli=
ck
_______________________________________________
Springframework-developer mailing list
Spr...@li...
https://lists.sourceforge.net/lists/listinfo/springframework-developer
|
|
From: Max K. <mk...@um...> - 2004-03-18 11:34:10
|
> The only thing that Spring does in terms of JSTL is to expose a JSTL > LocalizationContext to JstlViews: So if you use a DispatcherServlet > with JstlViews, fmt tags in those views will access the Spring > MessageSource. That's clear now. When I provided no messageSource bean Spring created the empty one for me. Thus my fmt tags failed to see the l10n messages. Could you explanation to be added to the "MVC step by step" tutorial? MessageSource first appeared on the step 2 and it wasn't clear of how Spring handles LocalizationContext with jstl. I also skim the reference documentation and wasn't able to find it there either. > In all other views like plain InternalResourceViews, > there shouldn't be any sort of JSTL interference. > And no, Spring doesn't mess with the classloader ;-) Sorry for that. I found that ResourceBundle.getBundle() failed for another reason. Thanks. -- Max |
|
From: Andre V. <ave...@su...> - 2004-03-18 09:27:37
|
It fixed my problem !!=20 Thanks for the quick repsonse! andre -----Original Message----- From: spr...@li... [mailto:spr...@li...]On Behalf Of Andre Vermeulen Sent: 18 March 2004 09:03 To: spr...@li... Subject: RE: [Springframework-developer] AutoProxy+Hibernate Thanks ! I will try that. andre -----Original Message----- From: spr...@li... [mailto:spr...@li...]On Behalf Of j=FCrgen h=F6ller [werk3AT] Sent: 17 March 2004 18:25 To: spr...@li... Subject: Re: [Springframework-developer] AutoProxy+Hibernate I've just fixed a bug in AbstractAutoProxyCreator today (reported by = Cameron Braid), where common interceptors were initialized too eagerly, = potentially causing implicit circular references. So please check out = the current CVS version: There's a good chance that you're issue is = fixed there. This will of course also make it into the upcoming Spring = 1.0 final. Juergen -----Original Message----- From: spr...@li... = [mailto:spr...@li...]On Behalf = Of Andre Vermeulen Sent: Wednesday, March 17, 2004 3:15 PM To: spr...@li... Subject: [Springframework-developer] AutoProxy+Hibernate I have two AutoProxy instances createAuditInfoProxyCreator and = deleteAuditInfoProxyCreator, which wrap some of my classes with = Interceptors. The two interceptors I am using is createAuditInfoAdvice and = deleteAuditInfoAdvice. The configuration settings is below.=20 I have an implementation which use the same AutoProxies, but it is using = SQLMap which works fine - I am not using SQLMapTemplate at the moment = for this implemetation. Now have I written the same functionality as my = previous SQLMap implemetation, but using Hibernate and HibernateTemplate = (no Transaction support at the moment). I can include one of the = AutoProxies instances to the Hibernate implementation and it will work = fine. But as soon as I add both the AutoProxies I get a exception = (org.springframework.beans.factory.FactoryBeanCircularReferenceException)= .=20 I am not sure whether I unstand the concept of a = FactoryBeanCircularReferenceException 100%, but both my iterceptors are = using a Hibernate SessionFactory - this should not be a problem ?? I = will include the whole tacktrace below. Any pointers ? Something obvious I am missing ? Or is it just a CR... This problem seem similar to Cameron Braid problem as... = http://sourceforge.net/mailarchive/message.php?msg_id=3D7536635 Did you solve your problem Cameron ?? Any help will be appreciated - I will see whta I can figure out in the = mean while. regards andre=20 AutoProxys : ************** <bean id=3D"createAuditInfoProxyCreator" = class=3D"org.springframework.aop.framework.autoproxy.BeanNameAutoProxyCre= ator"> <property name=3D"proxyTargetClass"> <value>true</value> </property> <property name=3D"beanNames"> <value>*FetchRule</value> </property> <property name=3D"interceptorNames"> <list> <value>createAuditInfoAdvice</value> </list> </property> </bean> <bean id=3D"deleteAuditInfoProxyCreator" = class=3D"org.springframework.aop.framework.autoproxy.BeanNameAutoProxyCre= ator"> <property name=3D"proxyTargetClass"> <value>true</value> </property> <property name=3D"beanNames"> <value>*ConfirmRule</value> </property> <property name=3D"interceptorNames"> <list> <value>deleteAuditInfoAdvice</value> </list> </property> </bean> Advices :=20 ********** <bean id=3D"createAuditInfoAdvice" = class=3D"com.cablenet.datasync.interceptors.HibernateCreateAuditInfoAdvic= e"> <property name=3D"sessionFactory" > <ref bean=3D"sessionFactory"/> </property> <property name=3D"uuidGenerator" > <ref bean=3D"keyGenerator"/> </property> </bean> <bean id=3D"deleteAuditInfoAdvice" = class=3D"com.cablenet.datasync.interceptors.HibernateDeleteAuditInfoAdvic= e"> <property name=3D"sessionFactory" > <ref bean=3D"sessionFactory"/> </property> </bean> Exception : ************ Testcase: = testExecute(com.cablenet.datasync.rules.hibernate.test.TestHibernateConfi= rmRule): Caused an ERROR Error creating bean with name 'confirmReplyListener' defined in = classpath resource [appConfig.xml]: Can't resolve reference to bean = 'confirmRuleRegistry' while setting property 'constructor argument'; = nested exception is = org.springframework.beans.factory.BeanCreationException: Error creating = bean with name 'confirmRuleRegistry' defined in classpath resource = [appConfig.xml]: Initialization method of bean failed; nested exception = is org.springframework.beans.factory.BeanCreationException: Error = creating bean with name 'createAuditInfoAdvice' defined in classpath = resource [appConfig-Hibernate.xml]: Can't resolve reference to bean = 'sessionFactory' while setting property 'sessionFactory'; nested = exception is org.springframework.beans.factory.BeanCreationException: = Error creating bean with name 'sessionFactory' defined in classpath = resource [appConfig-Hibernate.xml]: Can't resolve reference to bean = 'cnDS' while setting property 'dataSource'; nested exception is = org.springframework.beans.factory.BeanCreationException: Error creating = bean with name 'cnDS' defined in classpath resource [appConfig.xml]: = Initialization method of bean failed; nested exception is = org.springframework.beans.factory.BeanCreationException: Error creating = bean with name 'deleteAuditInfoAdvice' defined in classpath resource = [appConfig-Hibernate.xml]: Can't resolve reference to bean = 'sessionFactory' while setting property 'sessionFactory'; nested = exception is = org.springframework.beans.factory.FactoryBeanCircularReferenceException: = Factory bean 'sessionFactory' returned null object - possible cause: not = fully initialized due to circular bean reference org.springframework.beans.factory.BeanCreationException: Error creating = bean with name 'confirmReplyListener' defined in classpath resource = [appConfig.xml]: Can't resolve reference to bean 'confirmRuleRegistry' = while setting property 'constructor argument'; nested exception is = org.springframework.beans.factory.BeanCreationException: Error creating = bean with name 'confirmRuleRegistry' defined in classpath resource = [appConfig.xml]: Initialization method of bean failed; nested exception = is org.springframework.beans.factory.BeanCreationException: Error = creating bean with name 'createAuditInfoAdvice' defined in classpath = resource [appConfig-Hibernate.xml]: Can't resolve reference to bean = 'sessionFactory' while setting property 'sessionFactory'; nested = exception is org.springframework.beans.factory.BeanCreationException: = Error creating bean with name 'sessionFactory' defined in classpath = resource [appConfig-Hibernate.xml]: Can't resolve reference to bean = 'cnDS' while setting property 'dataSource'; nested exception is = org.springframework.beans.factory.BeanCreationException: Error creating = bean with name 'cnDS' defined in classpath resource [appConfig.xml]: = Initialization method of bean failed; nested exception is = org.springframework.beans.factory.BeanCreationException: Error creating = bean with name 'deleteAuditInfoAdvice' defined in classpath resource = [appConfig-Hibernate.xml]: Can't resolve reference to bean = 'sessionFactory' while setting property 'sessionFactory'; nested = exception is = org.springframework.beans.factory.FactoryBeanCircularReferenceException: = Factory bean 'sessionFactory' returned null object - possible cause: not = fully initialized due to circular bean reference org.springframework.beans.factory.BeanCreationException: Error creating = bean with name 'confirmRuleRegistry' defined in classpath resource = [appConfig.xml]: Initialization method of bean failed; nested exception = is org.springframework.beans.factory.BeanCreationException: Error = creating bean with name 'createAuditInfoAdvice' defined in classpath = resource [appConfig-Hibernate.xml]: Can't resolve reference to bean = 'sessionFactory' while setting property 'sessionFactory'; nested = exception is org.springframework.beans.factory.BeanCreationException: = Error creating bean with name 'sessionFactory' defined in classpath = resource [appConfig-Hibernate.xml]: Can't resolve reference to bean = 'cnDS' while setting property 'dataSource'; nested exception is = org.springframework.beans.factory.BeanCreationException: Error creating = bean with name 'cnDS' defined in classpath resource [appConfig.xml]: = Initialization method of bean failed; nested exception is = org.springframework.beans.factory.BeanCreationException: Error creating = bean with name 'deleteAuditInfoAdvice' defined in classpath resource = [appConfig-Hibernate.xml]: Can't resolve reference to bean = 'sessionFactory' while setting property 'sessionFactory'; nested = exception is = org.springframework.beans.factory.FactoryBeanCircularReferenceException: = Factory bean 'sessionFactory' returned null object - possible cause: not = fully initialized due to circular bean reference org.springframework.beans.factory.BeanCreationException: Error creating = bean with name 'createAuditInfoAdvice' defined in classpath resource = [appConfig-Hibernate.xml]: Can't resolve reference to bean = 'sessionFactory' while setting property 'sessionFactory'; nested = exception is org.springframework.beans.factory.BeanCreationException: = Error creating bean with name 'sessionFactory' defined in classpath = resource [appConfig-Hibernate.xml]: Can't resolve reference to bean = 'cnDS' while setting property 'dataSource'; nested exception is = org.springframework.beans.factory.BeanCreationException: Error creating = bean with name 'cnDS' defined in classpath resource [appConfig.xml]: = Initialization method of bean failed; nested exception is = org.springframework.beans.factory.BeanCreationException: Error creating = bean with name 'deleteAuditInfoAdvice' defined in classpath resource = [appConfig-Hibernate.xml]: Can't resolve reference to bean = 'sessionFactory' while setting property 'sessionFactory'; nested = exception is = org.springframework.beans.factory.FactoryBeanCircularReferenceException: = Factory bean 'sessionFactory' returned null object - possible cause: not = fully initialized due to circular bean reference org.springframework.beans.factory.BeanCreationException: Error creating = bean with name 'sessionFactory' defined in classpath resource = [appConfig-Hibernate.xml]: Can't resolve reference to bean 'cnDS' while = setting property 'dataSource'; nested exception is = org.springframework.beans.factory.BeanCreationException: Error creating = bean with name 'cnDS' defined in classpath resource [appConfig.xml]: = Initialization method of bean failed; nested exception is = org.springframework.beans.factory.BeanCreationException: Error creating = bean with name 'deleteAuditInfoAdvice' defined in classpath resource = [appConfig-Hibernate.xml]: Can't resolve reference to bean = 'sessionFactory' while setting property 'sessionFactory'; nested = exception is = org.springframework.beans.factory.FactoryBeanCircularReferenceException: = Factory bean 'sessionFactory' returned null object - possible cause: not = fully initialized due to circular bean reference org.springframework.beans.factory.BeanCreationException: Error creating = bean with name 'cnDS' defined in classpath resource [appConfig.xml]: = Initialization method of bean failed; nested exception is = org.springframework.beans.factory.BeanCreationException: Error creating = bean with name 'deleteAuditInfoAdvice' defined in classpath resource = [appConfig-Hibernate.xml]: Can't resolve reference to bean = 'sessionFactory' while setting property 'sessionFactory'; nested = exception is = org.springframework.beans.factory.FactoryBeanCircularReferenceException: = Factory bean 'sessionFactory' returned null object - possible cause: not = fully initialized due to circular bean reference org.springframework.beans.factory.BeanCreationException: Error creating = bean with name 'deleteAuditInfoAdvice' defined in classpath resource = [appConfig-Hibernate.xml]: Can't resolve reference to bean = 'sessionFactory' while setting property 'sessionFactory'; nested = exception is = org.springframework.beans.factory.FactoryBeanCircularReferenceException: = Factory bean 'sessionFactory' returned null object - possible cause: not = fully initialized due to circular bean reference org.springframework.beans.factory.FactoryBeanCircularReferenceException: = Factory bean 'sessionFactory' returned null object - possible cause: not = fully initialized due to circular bean reference at = org.springframework.beans.factory.support.AbstractBeanFactory.getObjectFo= rSharedInstance(AbstractBeanFactory.java:444) at = org.springframework.beans.factory.support.AbstractBeanFactory.getBean(Abs= tractBeanFactory.java:124) at = org.springframework.beans.factory.support.AbstractAutowireCapableBeanFact= ory.resolveReference(AbstractAutowireCapableBeanFactory.java:585) at = org.springframework.beans.factory.support.AbstractAutowireCapableBeanFact= ory.resolveValueIfNecessary(AbstractAutowireCapableBeanFactory.java:553) at = org.springframework.beans.factory.support.AbstractAutowireCapableBeanFact= ory.applyPropertyValues(AbstractAutowireCapableBeanFactory.java:506) at = org.springframework.beans.factory.support.AbstractAutowireCapableBeanFact= ory.populateBean(AbstractAutowireCapableBeanFactory.java:361) at = org.springframework.beans.factory.support.AbstractAutowireCapableBeanFact= ory.createBean(AbstractAutowireCapableBeanFactory.java:150) at = org.springframework.beans.factory.support.AbstractBeanFactory.getBean(Abs= tractBeanFactory.java:142) at = org.springframework.aop.framework.autoproxy.AbstractAutoProxyCreator.reso= lveInterceptorNames(AbstractAutoProxyCreator.java:240) at = org.springframework.aop.framework.autoproxy.AbstractAutoProxyCreator.post= ProcessAfterInitialization(AbstractAutoProxyCreator.java:188) at = org.springframework.beans.factory.support.AbstractAutowireCapableBeanFact= ory.applyBeanPostProcessorsAfterInitialization(AbstractAutowireCapableBea= nFactory.java:111) at = org.springframework.beans.factory.support.AbstractAutowireCapableBeanFact= ory.createBean(AbstractAutowireCapableBeanFactory.java:172) at = org.springframework.beans.factory.support.AbstractBeanFactory.getBean(Abs= tractBeanFactory.java:142) at = org.springframework.beans.factory.support.AbstractAutowireCapableBeanFact= ory.resolveReference(AbstractAutowireCapableBeanFactory.java:585) at = org.springframework.beans.factory.support.AbstractAutowireCapableBeanFact= ory.resolveValueIfNecessary(AbstractAutowireCapableBeanFactory.java:553) at = org.springframework.beans.factory.support.AbstractAutowireCapableBeanFact= ory.applyPropertyValues(AbstractAutowireCapableBeanFactory.java:506) at = org.springframework.beans.factory.support.AbstractAutowireCapableBeanFact= ory.populateBean(AbstractAutowireCapableBeanFactory.java:361) at = org.springframework.beans.factory.support.AbstractAutowireCapableBeanFact= ory.createBean(AbstractAutowireCapableBeanFactory.java:150) at = org.springframework.beans.factory.support.AbstractBeanFactory.getBean(Abs= tractBeanFactory.java:142) at = org.springframework.beans.factory.support.AbstractAutowireCapableBeanFact= ory.resolveReference(AbstractAutowireCapableBeanFactory.java:585) at = org.springframework.beans.factory.support.AbstractAutowireCapableBeanFact= ory.resolveValueIfNecessary(AbstractAutowireCapableBeanFactory.java:553) at = org.springframework.beans.factory.support.AbstractAutowireCapableBeanFact= ory.applyPropertyValues(AbstractAutowireCapableBeanFactory.java:506) at = org.springframework.beans.factory.support.AbstractAutowireCapableBeanFact= ory.populateBean(AbstractAutowireCapableBeanFactory.java:361) at = org.springframework.beans.factory.support.AbstractAutowireCapableBeanFact= ory.createBean(AbstractAutowireCapableBeanFactory.java:150) at = org.springframework.beans.factory.support.AbstractBeanFactory.getBean(Abs= tractBeanFactory.java:142) at = org.springframework.aop.framework.autoproxy.AbstractAutoProxyCreator.reso= lveInterceptorNames(AbstractAutoProxyCreator.java:240) at = org.springframework.aop.framework.autoproxy.AbstractAutoProxyCreator.post= ProcessAfterInitialization(AbstractAutoProxyCreator.java:188) at = org.springframework.beans.factory.support.AbstractAutowireCapableBeanFact= ory.applyBeanPostProcessorsAfterInitialization(AbstractAutowireCapableBea= nFactory.java:111) at = org.springframework.beans.factory.support.AbstractAutowireCapableBeanFact= ory.createBean(AbstractAutowireCapableBeanFactory.java:172) at = org.springframework.beans.factory.support.AbstractBeanFactory.getBean(Abs= tractBeanFactory.java:142) at = org.springframework.beans.factory.support.AbstractAutowireCapableBeanFact= ory.resolveReference(AbstractAutowireCapableBeanFactory.java:585) at = org.springframework.beans.factory.support.AbstractAutowireCapableBeanFact= ory.resolveValueIfNecessary(AbstractAutowireCapableBeanFactory.java:553) at = org.springframework.beans.factory.support.AbstractAutowireCapableBeanFact= ory.autowireConstructor(AbstractAutowireCapableBeanFactory.java:222) at = org.springframework.beans.factory.support.AbstractAutowireCapableBeanFact= ory.createBean(AbstractAutowireCapableBeanFactory.java:136) at = org.springframework.beans.factory.support.AbstractBeanFactory.getBean(Abs= tractBeanFactory.java:142) at = org.springframework.beans.factory.support.DefaultListableBeanFactory.preI= nstantiateSingletons(DefaultListableBeanFactory.java:159) at = org.springframework.context.support.AbstractApplicationContext.refresh(Ab= stractApplicationContext.java:268) at = org.springframework.context.support.FileSystemXmlApplicationContext.<init= >(FileSystemXmlApplicationContext.java:42) at = org.springframework.context.support.ClassPathXmlApplicationContext.<init>= (ClassPathXmlApplicationContext.java:40) at com.cablenet.datasync.AppContext.getAppContextHibernate(Unknown = Source) at = com.cablenet.datasync.rules.hibernate.test.TestHibernateConfirmRule.testE= xecute(Unknown Source) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ------------------------------------------------------- This SF.Net email is sponsored by: IBM Linux Tutorials Free Linux tutorial presented by Daniel Robbins, President and CEO of GenToo technologies. Learn everything from fundamentals to system administration.http://ads.osdn.com/?ad_id=1470&alloc_id638&op=3Dick _______________________________________________ Springframework-developer mailing list Spr...@li... https://lists.sourceforge.net/lists/listinfo/springframework-developer ------------------------------------------------------- This SF.Net email is sponsored by: IBM Linux Tutorials Free Linux tutorial presented by Daniel Robbins, President and CEO of GenToo technologies. Learn everything from fundamentals to system administration.http://ads.osdn.com/?ad_id=1470&alloc_id638&op=3Dick _______________________________________________ Springframework-developer mailing list Spr...@li... https://lists.sourceforge.net/lists/listinfo/springframework-developer |