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: Kopylenko, D. <dko...@ac...> - 2003-12-05 13:13:17
|
Here is the article by Paul Hammant in the next issue of JDJ: http://www.sys-con.com/story/?storyid=38102&DE=1 <http://www.sys-con.com/story/?storyid=38102&DE=1> Regards, Dmitriy. |
|
From: Darren D. <dda...@kg...> - 2003-12-05 11:42:24
|
> >Good point. Since Greg Wilkins joined Core Developers Network, the JBoss > Group doesn't like Jetty anymore ;-) JBoss-Jetty isn't really > important, I agree. We could test on Jetty 4.2 standalone though, as > effectively none of our sample applications requires any particular > JBoss services. > > I would like to see Jetty included for standalone. I was just > talking to someone last night who claimed it's still superior to > Tomcat. Looking at the depth of the Tomcat stack traces vs those > from WebLogic during my Spring performance tests recently, it wasn't > hard to see why WebLogic was 2-4x faster than JBoss/Tomcat. no problem. I'll add Jetty configs to the sources. -- Darren Davison Public Key: http://www.davison.uk.net/key.jsp |
|
From: Rod J. <rod...@in...> - 2003-12-05 10:04:55
|
>Good point. Since Greg Wilkins joined Core Developers Network, the JBoss Group doesn't like Jetty anymore ;-) JBoss-Jetty isn't really important, I agree. We could test on Jetty 4.2 standalone though, as effectively none of our sample applications requires any particular JBoss services. I would like to see Jetty included for standalone. I was just talking to someone last night who claimed it's still superior to Tomcat. Looking at the depth of the Tomcat stack traces vs those from WebLogic during my Spring performance tests recently, it wasn't hard to see why WebLogic was 2-4x faster than JBoss/Tomcat. |
|
From: <jue...@we...> - 2003-12-05 09:56:04
|
Good point. Since Greg Wilkins joined Core Developers Network, the JBoss = Group doesn't like Jetty anymore ;-) JBoss-Jetty isn't really important, = I agree. We could test on Jetty 4.2 standalone though, as effectively = none of our sample applications requires any particular JBoss services. =20 Juergen =20 ________________________________ Von: spr...@li... im Auftrag = von Darren Davison Gesendet: Fr 05.12.2003 10:18 An: spr...@li... Betreff: Re: [Springframework-developer] Orion 2.0.2 > (heavily rewritten) to my mix. I would be happy if we could do > regular tests on JBoss/Jetty 3.2, OC4J 9.0.3, WebLogic 8.1, Do you want jboss-jetty to be used for autobuilds rather than (or in = addition to) the standard jboss which includes Tomcat? I know it essentially = partly duplicates the Tomcat testing, but their SF d/l stats show appx 55000 downloads for standard jboss-3.2.2 final and appx. 1800 for = jboss-jetty-3.2.2 final. -- Darren Davison Public Key: http://www.davison.uk.net/key.jsp ------------------------------------------------------- This SF.net email is sponsored by: IBM Linux Tutorials. Become an expert in LINUX or just sharpen your skills. Sign up for = IBM's Free Linux Tutorials. Learn everything from the bash shell to sys = admin. Click now! http://ads.osdn.com/?ad_id=3D1278&alloc_id=3D3371&op=3Dclick _______________________________________________ Springframework-developer mailing list Spr...@li... https://lists.sourceforge.net/lists/listinfo/springframework-developer |
|
From: Rod J. <rod...@in...> - 2003-12-05 09:47:03
|
>Orion 2.0.2's JSP engine is hopelessly broken. Have a look at the following issue that I submitted back in July: http://bugs.orionserver.com/issue/view.jsp?id=1081 >Therefore, let's simply forget about Orion - it's effectively an abandoned product. We recently had to use Oracle's OC4J at werk3AT: It's far ahead in terms of the JSP engine - everything works nicely. OC4J has its problems in the EJB container, though, but that doesn't worry me at all. It's a pity, I used to like Orion. I did most of the early work on the book and what became Spring on Orion (1.5.2 I think). There are also EJB problems in Orion. A few months ago I was doing a prototype for work project involving remote SLSBs, and couldn't get Orion 2.0.1 to pass parameters of types other than int (I think) over RMI. I was wondering whether or not there was some dreadful bug in the Spring AOP stuff I was using on the client side until I switched to WLS 8.1. Not only did everything work perfectly in WLS (although I did later run into a more complicated problem with RMI that required upgrading to the latest service pack), but I found that WLS 8.1 is a joy to develop on. Just drop the Jar in the applications directory and you're done. I now tend to use JBoss 3.2.2 and WebLogic 8.1 interchangeably for my own projects, with deployment descriptors for both. Regards, Rod |
|
From: Rod J. <rod...@in...> - 2003-12-05 09:36:27
|
> I know zip about WebLogic but from snippets I hear, it sounds like it's not > too difficult to configure (xml files?) so that can be added as a server > option too. WLS is pretty easy. Config is held in config.xml. Basically all you have to do is set up a datasource. You can do this easily in the console and then copy the generated config.xml. You also need weblogic.xml in the WEB-INF directory to resolve mappings. I've checked in an example for the benchmark/cmt application. Also 8.1 has a year-long license, which is nice. Regards, Rod |
|
From: Darren D. <dda...@kg...> - 2003-12-05 09:18:32
|
> (heavily rewritten) to my mix. I would be happy if we could do > regular tests on JBoss/Jetty 3.2, OC4J 9.0.3, WebLogic 8.1, Do you want jboss-jetty to be used for autobuilds rather than (or in addition to) the standard jboss which includes Tomcat? I know it essentially partly duplicates the Tomcat testing, but their SF d/l stats show appx 55000 downloads for standard jboss-3.2.2 final and appx. 1800 for jboss-jetty-3.2.2 final. -- Darren Davison Public Key: http://www.davison.uk.net/key.jsp |
|
From: Darren D. <dda...@kg...> - 2003-12-05 08:46:17
|
> Darren, > > Orion 2.0.2's JSP engine is hopelessly broken. ok, I'll drop the orion stuff from the autobuilds tree - I didn't realise it was in such a state. > BTW, I do Petclinic and Countries tests on Tomcat 4.0 (which is > still the most popular IDE plugin), Tomcat 4.1 (which has a > completely rewritten JSP compiler), and Resin 2.1 before each > release. Starting with 1.0 RCs, I'll add Tomcat 5.0 and Resin 3.0 > (heavily rewritten) to my mix. I would be happy if we could do > regular tests on JBoss/Jetty 3.2, OC4J 9.0.3, WebLogic 8.1, > WebSphere 5.0 too. Tomcat 4.1.x is setup to go already in the project and JBoss will be by tonight. I've never used Resin but I'll grab a copy and add configs for it too. I can do Tomcat 5.x also. The 'infrastructure' for auto deploying and configuring various servers is done, so adding new servers is fairly simple. I know zip about WebLogic but from snippets I hear, it sounds like it's not too difficult to configure (xml files?) so that can be added as a server option too. WebSphere is a different kettle of fish as I've probably mentioned before and there's no realistic chance of it being added as an option for the autobuilds stuff I'm doing. However I can always build the sample apps here at work and run them on a manual basis for each release. -- Darren Davison Public Key: http://www.davison.uk.net/key.jsp |
|
From: <jue...@we...> - 2003-12-05 07:24:17
|
Darren, =20 Orion 2.0.2's JSP engine is hopelessly broken. Have a look at the = following issue that I submitted back in July: http://bugs.orionserver.com/issue/view.jsp?id=3D1081 =20 Noone seems to care about it, even though that definitely is a major bug = in terms of JSP 1.2 compatibility. What you're experiencing seems to be = another Orion bug: It can't load tag library descriptors from the jar = files in WEB-INF\lib, as required by JSP 1.2 (a very convenient feature, = BTW - no manual TLD declarations in web.xml anymore). =20 Therefore, let's simply forget about Orion - it's effectively an = abandoned product. We recently had to use Oracle's OC4J at werk3AT: It's = far ahead in terms of the JSP engine - everything works nicely. OC4J has = its problems in the EJB container, though, but that doesn't worry me at = all. =20 BTW, I do Petclinic and Countries tests on Tomcat 4.0 (which is still = the most popular IDE plugin), Tomcat 4.1 (which has a completely = rewritten JSP compiler), and Resin 2.1 before each release. Starting = with 1.0 RCs, I'll add Tomcat 5.0 and Resin 3.0 (heavily rewritten) to = my mix. I would be happy if we could do regular tests on JBoss/Jetty = 3.2, OC4J 9.0.3, WebLogic 8.1, WebSphere 5.0 too. =20 Juergen =20 ________________________________ Von: spr...@li... im Auftrag = von Darren Davison Gesendet: Fr 05.12.2003 01:04 An: spr...@li... Betreff: [Springframework-developer] Orion 2.0.2 has anyone deployed petclinic on Orion 2.0.2? I'm trying to do it as = part of the autobuilds and app testing, but I get an error trying to access = the default page: 500 Internal Server Error Error parsing JSP page /petclinic/index.jsp Error loading taglib at http://www.springframework.org/tags: META-INF/taglib.tld Seems ok on Tomcat, haven't tried jboss yet. -- Darren Davison Public Key: http://www.davison.uk.net/key.jsp ------------------------------------------------------- This SF.net email is sponsored by: IBM Linux Tutorials. Become an expert in LINUX or just sharpen your skills. Sign up for = IBM's Free Linux Tutorials. Learn everything from the bash shell to sys = admin. Click now! http://ads.osdn.com/?ad_id=3D1278&alloc_id=3D3371&op=3Dclick _______________________________________________ Springframework-developer mailing list Spr...@li... https://lists.sourceforge.net/lists/listinfo/springframework-developer |
|
From: Darren D. <da...@da...> - 2003-12-05 00:04:45
|
has anyone deployed petclinic on Orion 2.0.2? I'm trying to do it as part of the autobuilds and app testing, but I get an error trying to access the default page: 500 Internal Server Error Error parsing JSP page /petclinic/index.jsp Error loading taglib at http://www.springframework.org/tags: META-INF/taglib.tld Seems ok on Tomcat, haven't tried jboss yet. -- Darren Davison Public Key: http://www.davison.uk.net/key.jsp |
|
From: Rajeev K. <Ra...@cu...> - 2003-12-04 19:29:38
|
Rod, I am also attaching the test classes for it. Rajeev ----- Original Message ----- From: "Rod Johnson" <rod...@in...> To: <spr...@li...> Sent: Thursday, December 04, 2003 2:18 AM Subject: Re: [Springframework-developer] Configurable TargetSource for BeanNameAutoProxyCreator > Hi Rajeev, > > Sounds like it might be useful. Can you please send me a CVS patch against > today's CVS? That way it's easier for me to take a look at it and possibly > incorporate it. > > Regards, > Rod > > ----- Original Message ----- > From: "Rajeev Kaul" <Ra...@cu...> > To: <spr...@li...> > Sent: Wednesday, December 03, 2003 8:04 PM > Subject: [Springframework-developer] Configurable TargetSource for > BeanNameAutoProxyCreator > > > I wanted the BeanNameAutoProxyCreator class to allow configuration of its > TargetSource class, so I could easily replace the SingletonTargetSource, > with other implementations such as, PrototypeTargetSource, > ThreadLocalTargetSource , etc. > > I am submitting a modified version of the BeanNameAutoProxyCreator class > along with the supporting test files. If you find it useful, you may want > to include it in the springframework. > > Rajeev Kaul > > > > > ------------------------------------------------------- > This SF.net email is sponsored by OSDN's Audience Survey. > Help shape OSDN's sites and tell us what you think. Take this > five minute survey and you could win a $250 Gift Certificate. > http://www.wrgsurveys.com/2003/osdntech03.php?site=8 > _______________________________________________ > Springframework-developer mailing list > Spr...@li... > https://lists.sourceforge.net/lists/listinfo/springframework-developer |
|
From: Rajeev K. <Ra...@cu...> - 2003-12-04 19:28:52
|
Rod,
Here is the patch:
Index: BeanNameAutoProxyCreator.java
===================================================================
RCS file:
/cvsroot/springframework/spring/src/org/springframework/aop/framework/suppor
t/BeanNameAutoProxyCreator.java,v
retrieving revision 1.7
diff -u -r1.7 BeanNameAutoProxyCreator.java
--- BeanNameAutoProxyCreator.java 15 Nov 2003 15:30:14 -0000 1.7
+++ BeanNameAutoProxyCreator.java 4 Dec 2003 19:00:43 -0000
@@ -1,59 +1,199 @@
package org.springframework.aop.framework.support;
-
+import java.util.ArrayList;
import java.util.Arrays;
import java.util.Iterator;
import java.util.List;
-
+import org.apache.commons.lang.StringUtils;
+import org.springframework.aop.TargetSource;
+import org.springframework.aop.target.PrototypeTargetSource;
+import org.springframework.aop.target.SingletonTargetSource;
+import org.springframework.beans.BeansException;
+import org.springframework.beans.PropertyValue;
+import org.springframework.beans.PropertyValues;
+import org.springframework.beans.factory.BeanFactory;
+import org.springframework.beans.factory.BeanFactoryAware;
+import org.springframework.beans.factory.BeanInitializationException;
+import org.springframework.beans.factory.InitializingBean;
+import org.springframework.beans.factory.support.AbstractBeanFactory;
+import
org.springframework.beans.factory.support.DefaultListableBeanFactory;
+import org.springframework.beans.factory.support.RootBeanDefinition;
+import org.springframework.beans.factory.support.RuntimeBeanReference;
/**
* Auto proxy creator that identifies beans to proxy via a list of names.
* Checks for direct, "xxx*", and "*xxx" matches.
* @author Juergen Hoeller
+ * @author Rajeev Kaul
* @since 10.10.2003
* @see #setBeanNames
* @see #isMatch
*/
-public class BeanNameAutoProxyCreator extends AbstractAutoProxyCreator {
-
- private List beanNames;
-
- /**
- * Set the names of the beans that should automatically get wrapped with
proxies.
- * A name can specify a prefix to match by ending with "*", e.g.
"myBean,tx*"
- * will match the bean named "myBean" and all beans whose name start with
"tx".
- */
- public void setBeanNames(String[] beanNames) {
- this.beanNames = Arrays.asList(beanNames);
- }
-
- /**
- * Identify as bean to proxy if the bean name is in the configured list of
names.
- */
- protected Object[] getInterceptorsAndAdvisorsForBean(Object bean, String
beanName) {
- if (this.beanNames != null) {
- if (this.beanNames.contains(beanName)) {
- return PROXY_WITHOUT_ADDITIONAL_INTERCEPTORS;
+public class BeanNameAutoProxyCreator
+ extends AbstractAutoProxyCreator
+ implements BeanFactoryAware, InitializingBean
+{
+ private List beanNames;
+ private BeanFactory beanFactory;
+ private String targetClass;
+ private TargetSource target;
+ /**
+ * Set the names of the beans that should automatically get wrapped
with proxies.
+ * A name can specify a prefix to match by ending with "*", e.g.
"myBean,tx*"
+ * will match the bean named "myBean" and all beans whose name start
with "tx".
+ */
+ public void setBeanNames(String[] beanNames)
+ {
+ this.beanNames = Arrays.asList(beanNames);
+ }
+ /**
+ * Set class name of a TargetSource bean.
+ */
+ public void setTargetClass(String clazz)
+ {
+ this.targetClass = clazz;
+ }
+ /* (non-Javadoc)
+ * @see
org.springframework.beans.factory.BeanFactoryAware#setBeanFactory(org.spring
framework.beans.factory.BeanFactory)
+ */
+ public void setBeanFactory(BeanFactory beanFactory) throws
BeansException
+ {
+ this.beanFactory = beanFactory;
+ }
+ /* (non-Javadoc)
+ * @see
org.springframework.beans.factory.InitializingBean#afterPropertiesSet()
+ */
+ public void afterPropertiesSet() throws Exception
+ {
+ try
+ {
+ if (!StringUtils.isEmpty(targetClass))
+ this.target =
+ (TargetSource) (Class
+ .forName(
+ targetClass,
+ true,
+ this.getClass().getClassLoader()))
+ .newInstance();
+ }
+ catch (Exception exc)
+ {
+ throw new BeanInitializationException(
+ "Invalid targetClass property is specified for bean post
processor "
+ + this.getClass().getName()
+ + "\n"
+ + exc.getMessage());
+ }
+ }
+ /**
+ * Identify as bean to proxy if the bean name is in the configured list
of names.
+ */
+ protected Object[] getInterceptorsAndAdvisorsForBean(
+ Object bean,
+ String beanName)
+ {
+ if (this.beanNames != null)
+ {
+ if (this.beanNames.contains(beanName))
+ {
+ return PROXY_WITHOUT_ADDITIONAL_INTERCEPTORS;
+ }
+ for (Iterator it = this.beanNames.iterator(); it.hasNext();)
+ {
+ String mappedName = (String) it.next();
+ if (isMatch(beanName, mappedName))
+ {
+ return PROXY_WITHOUT_ADDITIONAL_INTERCEPTORS;
+ }
+ }
+ }
+ return DO_NOT_PROXY;
+ }
+ /**
+ * Return if the given bean name matches the mapped name.
+ * The default implementation checks for "xxx*" and "*xxx" matches.
+ * Can be overridden in subclasses.
+ * @param beanName the bean name to check
+ * @param mappedName the name in the configured list of names
+ * @return if the names match
+ */
+ protected boolean isMatch(String beanName, String mappedName)
+ {
+ return (
+ mappedName.endsWith("*")
+ && beanName.startsWith(
+ mappedName.substring(0, mappedName.length() - 1)))
+ || (mappedName.startsWith("*")
+ && beanName.endsWith(
+ mappedName.substring(1, mappedName.length())));
+ }
+ /* (non-Javadoc)
+ * @see
org.springframework.aop.framework.support.AbstractAutoProxyCreator#getTarget
Source(java.lang.Object, java.lang.String)
+ */
+ protected TargetSource getTargetSource(Object bean, String beanName)
+ {
+ if (null == target)
+ {
+ target = super.getTargetSource(bean, beanName);
+ }
+ else if (target instanceof PrototypeTargetSource)
+ {
+ //Infinite cycle: tries to create the bean if we don't use a
different factory
+ //
+ // Create a new registry
+ DefaultListableBeanFactory bf2 = new
DefaultListableBeanFactory();
+ RootBeanDefinition definition;
+ //
+ // define a list of beans that must be registered in the new
registry
+ List depends = new ArrayList();
+ //
+ // add root bean to the dependency list
+ depends.add(beanName);
+ String name;
+ while (depends.size() > 0)
+ {
+ //
+ // get next bean name from the dependency list
+ name = (String) depends.get(0);
+ //
+ // remove it from the dependency list
+ depends.remove(0);
+ //
+ // get bean definition from the original registry
+ definition = ((AbstractBeanFactory) beanFactory)
+ .getMergedBeanDefinition(name,false);
+ // add it to the new registry
+ bf2.registerBeanDefinition(name, definition);
+ //
+ // find all bean references
+ PropertyValues pvs = definition.getPropertyValues();
+ PropertyValue[] pvArray = pvs.getPropertyValues();
+ int len = pvArray.length;
+ int ind;
+ Object val;
+ for (ind = len - 1; ind >= 0; ind--)
+ {
+ name = pvArray[ind].getName();
+ val = pvArray[ind].getValue();
+ if (val instanceof RuntimeBeanReference)
+ {
+ name = ((RuntimeBeanReference) val).getBeanName();
+ //
+ // if a bean reference is not in the new registry
+ // add it to the dependency list
+ if (!bf2.containsBean(name) &&
!depends.contains(name))depends.add(name);
+ }
+ }
+ }
+ ((PrototypeTargetSource) target).setTargetBeanName(beanName);
+ ((PrototypeTargetSource) target).setBeanFactory(bf2);
+ }
+ else
+ {
+ if (!(target instanceof SingletonTargetSource))
+ {
+ logger.warn("TargetSource class [" + targetClass + "] specified in
configuration, is not supported by the BeanNameAutoProxyCreator post
processor. Using SingletonTargetSource instead of the specified
targetClass.");
}
- for (Iterator it = this.beanNames.iterator(); it.hasNext();) {
- String mappedName = (String) it.next();
- if (isMatch(beanName, mappedName)) {
- return PROXY_WITHOUT_ADDITIONAL_INTERCEPTORS;
- }
- }
- }
- return DO_NOT_PROXY;
- }
-
- /**
- * Return if the given bean name matches the mapped name.
- * The default implementation checks for "xxx*" and "*xxx" matches.
- * Can be overridden in subclasses.
- * @param beanName the bean name to check
- * @param mappedName the name in the configured list of names
- * @return if the names match
- */
- protected boolean isMatch(String beanName, String mappedName) {
- return (mappedName.endsWith("*") &&
beanName.startsWith(mappedName.substring(0, mappedName.length() - 1))) ||
- (mappedName.startsWith("*") &&
beanName.endsWith(mappedName.substring(1, mappedName.length())));
- }
-
+ target = super.getTargetSource(bean, beanName);
+ }
+ return target;
+ }
}
----- Original Message -----
From: "Rod Johnson" <rod...@in...>
To: <spr...@li...>
Sent: Thursday, December 04, 2003 2:18 AM
Subject: Re: [Springframework-developer] Configurable TargetSource for
BeanNameAutoProxyCreator
> Hi Rajeev,
>
> Sounds like it might be useful. Can you please send me a CVS patch against
> today's CVS? That way it's easier for me to take a look at it and possibly
> incorporate it.
>
> Regards,
> Rod
>
> ----- Original Message -----
> From: "Rajeev Kaul" <Ra...@cu...>
> To: <spr...@li...>
> Sent: Wednesday, December 03, 2003 8:04 PM
> Subject: [Springframework-developer] Configurable TargetSource for
> BeanNameAutoProxyCreator
>
>
> I wanted the BeanNameAutoProxyCreator class to allow configuration of its
> TargetSource class, so I could easily replace the SingletonTargetSource,
> with other implementations such as, PrototypeTargetSource,
> ThreadLocalTargetSource , etc.
>
> I am submitting a modified version of the BeanNameAutoProxyCreator class
> along with the supporting test files. If you find it useful, you may want
> to include it in the springframework.
>
> Rajeev Kaul
>
>
>
>
> -------------------------------------------------------
> This SF.net email is sponsored by OSDN's Audience Survey.
> Help shape OSDN's sites and tell us what you think. Take this
> five minute survey and you could win a $250 Gift Certificate.
> http://www.wrgsurveys.com/2003/osdntech03.php?site=8
> _______________________________________________
> Springframework-developer mailing list
> Spr...@li...
> https://lists.sourceforge.net/lists/listinfo/springframework-developer
|
|
From: Rajeev K. <Ra...@cu...> - 2003-12-04 19:07:14
|
Hi Rod, In the same vein, what do you think of having a "PROXY" attribute in the bean definition itself, which would automatically create a proxy of certain type (SingletonTargetSource, PrototypeTargetSource, etc.)? I had earlier suggested this to reduce the verbose configuration for setting up proxies, but got no response. regards, Rajeev ----- Original Message ----- From: "Rod Johnson" <rod...@in...> To: <spr...@li...> Sent: Thursday, December 04, 2003 2:18 AM Subject: Re: [Springframework-developer] Configurable TargetSource for BeanNameAutoProxyCreator > Hi Rajeev, > > Sounds like it might be useful. Can you please send me a CVS patch against > today's CVS? That way it's easier for me to take a look at it and possibly > incorporate it. > > Regards, > Rod > > ----- Original Message ----- > From: "Rajeev Kaul" <Ra...@cu...> > To: <spr...@li...> > Sent: Wednesday, December 03, 2003 8:04 PM > Subject: [Springframework-developer] Configurable TargetSource for > BeanNameAutoProxyCreator > > > I wanted the BeanNameAutoProxyCreator class to allow configuration of its > TargetSource class, so I could easily replace the SingletonTargetSource, > with other implementations such as, PrototypeTargetSource, > ThreadLocalTargetSource , etc. > > I am submitting a modified version of the BeanNameAutoProxyCreator class > along with the supporting test files. If you find it useful, you may want > to include it in the springframework. > > Rajeev Kaul > > > > > ------------------------------------------------------- > This SF.net email is sponsored by OSDN's Audience Survey. > Help shape OSDN's sites and tell us what you think. Take this > five minute survey and you could win a $250 Gift Certificate. > http://www.wrgsurveys.com/2003/osdntech03.php?site=8 > _______________________________________________ > Springframework-developer mailing list > Spr...@li... > https://lists.sourceforge.net/lists/listinfo/springframework-developer |
|
From: Rajeev K. <Ra...@cu...> - 2003-12-04 19:01:50
|
Rod,
I have attached the test files and included the patch below:
Index: BeanNameAutoProxyCreator.java
===================================================================
RCS file:
/cvsroot/springframework/spring/src/org/springframework/aop/framework/suppor
t/BeanNameAutoProxyCreator.java,v
retrieving revision 1.7
diff -u -r1.7 BeanNameAutoProxyCreator.java
--- BeanNameAutoProxyCreator.java 15 Nov 2003 15:30:14 -0000 1.7
+++ BeanNameAutoProxyCreator.java 4 Dec 2003 19:00:43 -0000
@@ -1,59 +1,199 @@
package org.springframework.aop.framework.support;
-
+import java.util.ArrayList;
import java.util.Arrays;
import java.util.Iterator;
import java.util.List;
-
+import org.apache.commons.lang.StringUtils;
+import org.springframework.aop.TargetSource;
+import org.springframework.aop.target.PrototypeTargetSource;
+import org.springframework.aop.target.SingletonTargetSource;
+import org.springframework.beans.BeansException;
+import org.springframework.beans.PropertyValue;
+import org.springframework.beans.PropertyValues;
+import org.springframework.beans.factory.BeanFactory;
+import org.springframework.beans.factory.BeanFactoryAware;
+import org.springframework.beans.factory.BeanInitializationException;
+import org.springframework.beans.factory.InitializingBean;
+import org.springframework.beans.factory.support.AbstractBeanFactory;
+import
org.springframework.beans.factory.support.DefaultListableBeanFactory;
+import org.springframework.beans.factory.support.RootBeanDefinition;
+import org.springframework.beans.factory.support.RuntimeBeanReference;
/**
* Auto proxy creator that identifies beans to proxy via a list of names.
* Checks for direct, "xxx*", and "*xxx" matches.
* @author Juergen Hoeller
+ * @author Rajeev Kaul
* @since 10.10.2003
* @see #setBeanNames
* @see #isMatch
*/
-public class BeanNameAutoProxyCreator extends AbstractAutoProxyCreator {
-
- private List beanNames;
-
- /**
- * Set the names of the beans that should automatically get wrapped with
proxies.
- * A name can specify a prefix to match by ending with "*", e.g.
"myBean,tx*"
- * will match the bean named "myBean" and all beans whose name start with
"tx".
- */
- public void setBeanNames(String[] beanNames) {
- this.beanNames = Arrays.asList(beanNames);
- }
-
- /**
- * Identify as bean to proxy if the bean name is in the configured list of
names.
- */
- protected Object[] getInterceptorsAndAdvisorsForBean(Object bean, String
beanName) {
- if (this.beanNames != null) {
- if (this.beanNames.contains(beanName)) {
- return PROXY_WITHOUT_ADDITIONAL_INTERCEPTORS;
+public class BeanNameAutoProxyCreator
+ extends AbstractAutoProxyCreator
+ implements BeanFactoryAware, InitializingBean
+{
+ private List beanNames;
+ private BeanFactory beanFactory;
+ private String targetClass;
+ private TargetSource target;
+ /**
+ * Set the names of the beans that should automatically get wrapped
with proxies.
+ * A name can specify a prefix to match by ending with "*", e.g.
"myBean,tx*"
+ * will match the bean named "myBean" and all beans whose name start
with "tx".
+ */
+ public void setBeanNames(String[] beanNames)
+ {
+ this.beanNames = Arrays.asList(beanNames);
+ }
+ /**
+ * Set class name of a TargetSource bean.
+ */
+ public void setTargetClass(String clazz)
+ {
+ this.targetClass = clazz;
+ }
+ /* (non-Javadoc)
+ * @see
org.springframework.beans.factory.BeanFactoryAware#setBeanFactory(org.spring
framework.beans.factory.BeanFactory)
+ */
+ public void setBeanFactory(BeanFactory beanFactory) throws
BeansException
+ {
+ this.beanFactory = beanFactory;
+ }
+ /* (non-Javadoc)
+ * @see
org.springframework.beans.factory.InitializingBean#afterPropertiesSet()
+ */
+ public void afterPropertiesSet() throws Exception
+ {
+ try
+ {
+ if (!StringUtils.isEmpty(targetClass))
+ this.target =
+ (TargetSource) (Class
+ .forName(
+ targetClass,
+ true,
+ this.getClass().getClassLoader()))
+ .newInstance();
+ }
+ catch (Exception exc)
+ {
+ throw new BeanInitializationException(
+ "Invalid targetClass property is specified for bean post
processor "
+ + this.getClass().getName()
+ + "\n"
+ + exc.getMessage());
+ }
+ }
+ /**
+ * Identify as bean to proxy if the bean name is in the configured list
of names.
+ */
+ protected Object[] getInterceptorsAndAdvisorsForBean(
+ Object bean,
+ String beanName)
+ {
+ if (this.beanNames != null)
+ {
+ if (this.beanNames.contains(beanName))
+ {
+ return PROXY_WITHOUT_ADDITIONAL_INTERCEPTORS;
+ }
+ for (Iterator it = this.beanNames.iterator(); it.hasNext();)
+ {
+ String mappedName = (String) it.next();
+ if (isMatch(beanName, mappedName))
+ {
+ return PROXY_WITHOUT_ADDITIONAL_INTERCEPTORS;
+ }
+ }
+ }
+ return DO_NOT_PROXY;
+ }
+ /**
+ * Return if the given bean name matches the mapped name.
+ * The default implementation checks for "xxx*" and "*xxx" matches.
+ * Can be overridden in subclasses.
+ * @param beanName the bean name to check
+ * @param mappedName the name in the configured list of names
+ * @return if the names match
+ */
+ protected boolean isMatch(String beanName, String mappedName)
+ {
+ return (
+ mappedName.endsWith("*")
+ && beanName.startsWith(
+ mappedName.substring(0, mappedName.length() - 1)))
+ || (mappedName.startsWith("*")
+ && beanName.endsWith(
+ mappedName.substring(1, mappedName.length())));
+ }
+ /* (non-Javadoc)
+ * @see
org.springframework.aop.framework.support.AbstractAutoProxyCreator#getTarget
Source(java.lang.Object, java.lang.String)
+ */
+ protected TargetSource getTargetSource(Object bean, String beanName)
+ {
+ if (null == target)
+ {
+ target = super.getTargetSource(bean, beanName);
+ }
+ else if (target instanceof PrototypeTargetSource)
+ {
+ //Infinite cycle: tries to create the bean if we don't use a
different factory
+ //
+ // Create a new registry
+ DefaultListableBeanFactory bf2 = new
DefaultListableBeanFactory();
+ RootBeanDefinition definition;
+ //
+ // define a list of beans that must be registered in the new
registry
+ List depends = new ArrayList();
+ //
+ // add root bean to the dependency list
+ depends.add(beanName);
+ String name;
+ while (depends.size() > 0)
+ {
+ //
+ // get next bean name from the dependency list
+ name = (String) depends.get(0);
+ //
+ // remove it from the dependency list
+ depends.remove(0);
+ //
+ // get bean definition from the original registry
+ definition = ((AbstractBeanFactory) beanFactory)
+ .getMergedBeanDefinition(name,false);
+ // add it to the new registry
+ bf2.registerBeanDefinition(name, definition);
+ //
+ // find all bean references
+ PropertyValues pvs = definition.getPropertyValues();
+ PropertyValue[] pvArray = pvs.getPropertyValues();
+ int len = pvArray.length;
+ int ind;
+ Object val;
+ for (ind = len - 1; ind >= 0; ind--)
+ {
+ name = pvArray[ind].getName();
+ val = pvArray[ind].getValue();
+ if (val instanceof RuntimeBeanReference)
+ {
+ name = ((RuntimeBeanReference) val).getBeanName();
+ //
+ // if a bean reference is not in the new registry
+ // add it to the dependency list
+ if (!bf2.containsBean(name) &&
!depends.contains(name))depends.add(name);
+ }
+ }
+ }
+ ((PrototypeTargetSource) target).setTargetBeanName(beanName);
+ ((PrototypeTargetSource) target).setBeanFactory(bf2);
+ }
+ else
+ {
+ if (!(target instanceof SingletonTargetSource))
+ {
+ logger.warn("TargetSource class [" + targetClass + "] specified in
configuration, is not supported by the BeanNameAutoProxyCreator post
processor. Using SingletonTargetSource instead of the specified
targetClass.");
}
- for (Iterator it = this.beanNames.iterator(); it.hasNext();) {
- String mappedName = (String) it.next();
- if (isMatch(beanName, mappedName)) {
- return PROXY_WITHOUT_ADDITIONAL_INTERCEPTORS;
- }
- }
- }
- return DO_NOT_PROXY;
- }
-
- /**
- * Return if the given bean name matches the mapped name.
- * The default implementation checks for "xxx*" and "*xxx" matches.
- * Can be overridden in subclasses.
- * @param beanName the bean name to check
- * @param mappedName the name in the configured list of names
- * @return if the names match
- */
- protected boolean isMatch(String beanName, String mappedName) {
- return (mappedName.endsWith("*") &&
beanName.startsWith(mappedName.substring(0, mappedName.length() - 1))) ||
- (mappedName.startsWith("*") &&
beanName.endsWith(mappedName.substring(1, mappedName.length())));
- }
-
+ target = super.getTargetSource(bean, beanName);
+ }
+ return target;
+ }
}
----- Original Message -----
From: "Rod Johnson" <rod...@in...>
To: <spr...@li...>
Sent: Thursday, December 04, 2003 2:18 AM
Subject: Re: [Springframework-developer] Configurable TargetSource for
BeanNameAutoProxyCreator
> Hi Rajeev,
>
> Sounds like it might be useful. Can you please send me a CVS patch against
> today's CVS? That way it's easier for me to take a look at it and possibly
> incorporate it.
>
> Regards,
> Rod
>
> ----- Original Message -----
> From: "Rajeev Kaul" <Ra...@cu...>
> To: <spr...@li...>
> Sent: Wednesday, December 03, 2003 8:04 PM
> Subject: [Springframework-developer] Configurable TargetSource for
> BeanNameAutoProxyCreator
>
>
> I wanted the BeanNameAutoProxyCreator class to allow configuration of its
> TargetSource class, so I could easily replace the SingletonTargetSource,
> with other implementations such as, PrototypeTargetSource,
> ThreadLocalTargetSource , etc.
>
> I am submitting a modified version of the BeanNameAutoProxyCreator class
> along with the supporting test files. If you find it useful, you may want
> to include it in the springframework.
>
> Rajeev Kaul
>
>
>
>
> -------------------------------------------------------
> This SF.net email is sponsored by OSDN's Audience Survey.
> Help shape OSDN's sites and tell us what you think. Take this
> five minute survey and you could win a $250 Gift Certificate.
> http://www.wrgsurveys.com/2003/osdntech03.php?site=8
> _______________________________________________
> Springframework-developer mailing list
> Spr...@li...
> https://lists.sourceforge.net/lists/listinfo/springframework-developer
|
|
From: Giorgos Z. <gi...@pe...> - 2003-12-04 15:38:49
|
Thanks Ken, I will make sure that I read it. Best regards, Giorgos Ken Krebs wrote: > Giorgos, > > Check the *ContextLoaderServlet *Javadoc for an explanation. > > Ken > > Giorgos Zervas wrote: > >> Hi Darren, >> >> Actually I am doing what you suggested but the order was still wrong. >> >> Until I tried to use the <listener> tag instead of the <servlet> tag >> to define the ContextLoaderListener. This fixed the problem although >> I must admin that I don't quite understand why. >> >> Thanks, >> Giorgos >> >> Darren Davison wrote: >> >>> >>> >>> >>>> now here comes the problem... in the applicationSpecication.xml >>>> file i have defined a simple DAO bean (<bean id="beanService"... etc>) >>>> >>>> and from the servlet-name.xml i refer to this bean in the >>>> definition of my Controller: >>>> >>>> <bean id="myController" class="myControllerClass"> >>>> <property name="myService"><ref bean="beanService"></property> >>>> </bean> >>>> >>> >>> >>> >>> the default name for the file is 'applicationContext.xml' rather than >>> 'applicationSpecification.xml'. If you don't use the default name, >>> you have >>> to declare this in your web.xml as follows.. >>> >>> <web-app> >>> ... >>> <context-param> >>> <param-name>contextConfigLocation</param-name> >>> <param-value>/WEB-INF/applicationSpecification.xml</param-value> >>> </context-param> >>> ... >>> </web-app> >>> >>> >>> hth, >>> Darren. >>> >>> >>> -- >>> Darren Davison >>> Public Key: http://www.davison.uk.net/key.jsp >>> >>> >>> ------------------------------------------------------- >>> This SF.net email is sponsored by: IBM Linux Tutorials. >>> Become an expert in LINUX or just sharpen your skills. Sign up for >>> IBM's >>> Free Linux Tutorials. Learn everything from the bash shell to sys >>> admin. >>> Click now! http://ads.osdn.com/?ad_id=1278&alloc_id=3371&op=click >>> _______________________________________________ >>> Springframework-developer mailing list >>> Spr...@li... >>> https://lists.sourceforge.net/lists/listinfo/springframework-developer >>> >>> >> >> >> >> >> ------------------------------------------------------- >> This SF.net email is sponsored by: IBM Linux Tutorials. >> Become an expert in LINUX or just sharpen your skills. Sign up for >> IBM's >> Free Linux Tutorials. Learn everything from the bash shell to sys >> admin. >> Click now! http://ads.osdn.com/?ad_id=1278&alloc_id=3371&op=click >> _______________________________________________ >> Springframework-developer mailing list >> Spr...@li... >> https://lists.sourceforge.net/lists/listinfo/springframework-developer >> >> > |
|
From: Ken K. <kk...@kk...> - 2003-12-04 15:32:02
|
Giorgos, Check the *ContextLoaderServlet *Javadoc for an explanation. Ken Giorgos Zervas wrote: > Hi Darren, > > Actually I am doing what you suggested but the order was still wrong. > > Until I tried to use the <listener> tag instead of the <servlet> tag > to define the ContextLoaderListener. This fixed the problem although I > must admin that I don't quite understand why. > > Thanks, > Giorgos > > Darren Davison wrote: > >> >> >> >>> now here comes the problem... in the applicationSpecication.xml file >>> i have defined a simple DAO bean (<bean id="beanService"... etc>) >>> >>> and from the servlet-name.xml i refer to this bean in the definition >>> of my Controller: >>> >>> <bean id="myController" class="myControllerClass"> >>> <property name="myService"><ref bean="beanService"></property> >>> </bean> >>> >> >> >> >> the default name for the file is 'applicationContext.xml' rather than >> 'applicationSpecification.xml'. If you don't use the default name, >> you have >> to declare this in your web.xml as follows.. >> >> <web-app> >> ... >> <context-param> >> <param-name>contextConfigLocation</param-name> >> <param-value>/WEB-INF/applicationSpecification.xml</param-value> >> </context-param> >> ... >> </web-app> >> >> >> hth, >> Darren. >> >> >> -- >> Darren Davison >> Public Key: http://www.davison.uk.net/key.jsp >> >> >> ------------------------------------------------------- >> This SF.net email is sponsored by: IBM Linux Tutorials. >> Become an expert in LINUX or just sharpen your skills. Sign up for >> IBM's >> Free Linux Tutorials. Learn everything from the bash shell to sys >> admin. >> Click now! http://ads.osdn.com/?ad_id=1278&alloc_id=3371&op=click >> _______________________________________________ >> Springframework-developer mailing list >> Spr...@li... >> https://lists.sourceforge.net/lists/listinfo/springframework-developer >> >> > > > > > ------------------------------------------------------- > This SF.net email is sponsored by: IBM Linux Tutorials. > Become an expert in LINUX or just sharpen your skills. Sign up for IBM's > Free Linux Tutorials. Learn everything from the bash shell to sys admin. > Click now! http://ads.osdn.com/?ad_id=1278&alloc_id=3371&op=click > _______________________________________________ > Springframework-developer mailing list > Spr...@li... > https://lists.sourceforge.net/lists/listinfo/springframework-developer > > |
|
From: Kopylenko, D. <dko...@ac...> - 2003-12-04 15:24:22
|
Alef, all, I've added version 1.1M1 in JIRA. Dmitriy. |
|
From: Giorgos Z. <gi...@pe...> - 2003-12-04 15:13:50
|
Hi Darren, Actually I am doing what you suggested but the order was still wrong. Until I tried to use the <listener> tag instead of the <servlet> tag to define the ContextLoaderListener. This fixed the problem although I must admin that I don't quite understand why. Thanks, Giorgos Darren Davison wrote: > > > >>now here comes the problem... in the applicationSpecication.xml file >>i have defined a simple DAO bean (<bean id="beanService"... etc>) >> >>and from the servlet-name.xml i refer to this bean in the definition >>of my Controller: >> >><bean id="myController" class="myControllerClass"> >> <property name="myService"><ref bean="beanService"></property> >></bean> >> >> > > >the default name for the file is 'applicationContext.xml' rather than >'applicationSpecification.xml'. If you don't use the default name, you have >to declare this in your web.xml as follows.. > ><web-app> >... ><context-param> > <param-name>contextConfigLocation</param-name> > <param-value>/WEB-INF/applicationSpecification.xml</param-value> ></context-param> >... ></web-app> > > >hth, >Darren. > > >-- >Darren Davison >Public Key: http://www.davison.uk.net/key.jsp > > >------------------------------------------------------- >This SF.net email is sponsored by: IBM Linux Tutorials. >Become an expert in LINUX or just sharpen your skills. Sign up for IBM's >Free Linux Tutorials. Learn everything from the bash shell to sys admin. >Click now! http://ads.osdn.com/?ad_id=1278&alloc_id=3371&op=click >_______________________________________________ >Springframework-developer mailing list >Spr...@li... >https://lists.sourceforge.net/lists/listinfo/springframework-developer > > |
|
From: Darren D. <dda...@kg...> - 2003-12-04 15:05:09
|
> now here comes the problem... in the applicationSpecication.xml file > i have defined a simple DAO bean (<bean id="beanService"... etc>) > > and from the servlet-name.xml i refer to this bean in the definition > of my Controller: > > <bean id="myController" class="myControllerClass"> > <property name="myService"><ref bean="beanService"></property> > </bean> the default name for the file is 'applicationContext.xml' rather than 'applicationSpecification.xml'. If you don't use the default name, you have to declare this in your web.xml as follows.. <web-app> ... <context-param> <param-name>contextConfigLocation</param-name> <param-value>/WEB-INF/applicationSpecification.xml</param-value> </context-param> ... </web-app> hth, Darren. -- Darren Davison Public Key: http://www.davison.uk.net/key.jsp |
|
From: Giorgos Z. <gi...@pe...> - 2003-12-04 12:36:25
|
dear list, i am new to spring framework so please excuse me if my question has an obvious answer. here it is: i have setup a simple we application where my web.xml file defines two servlets: a ContextLoaderServler and a DispatcherServer. the first one is responsible for loading my applicationSpecification.xml. the second one loads its servel-name.xml configuration file. now here comes the problem... in the applicationSpecication.xml file i have defined a simple DAO bean (<bean id="beanService"... etc>) and from the servlet-name.xml i refer to this bean in the definition of my Controller: <bean id="myController" class="myControllerClass"> <property name="myService"><ref bean="beanService"></property> </bean> then i deploy my app into tomcat but the two configuration files insist on loading in the wrong order, ie servler-name.xml first, applicationConfiguration.xml second which results in the following deployment error: Can't resolve reference to bean 'beanService' while setting property 'myService' on bean 'myController'; i have tried reading every bit of documentation i could find but i didn't seem to see anything relevant. your help will be greatly appreciated. best regards, giorgos |
|
From: Rod J. <rod...@in...> - 2003-12-04 10:21:47
|
Hi Rajeev, Sounds like it might be useful. Can you please send me a CVS patch against today's CVS? That way it's easier for me to take a look at it and possibly incorporate it. Regards, Rod ----- Original Message ----- From: "Rajeev Kaul" <Ra...@cu...> To: <spr...@li...> Sent: Wednesday, December 03, 2003 8:04 PM Subject: [Springframework-developer] Configurable TargetSource for BeanNameAutoProxyCreator I wanted the BeanNameAutoProxyCreator class to allow configuration of its TargetSource class, so I could easily replace the SingletonTargetSource, with other implementations such as, PrototypeTargetSource, ThreadLocalTargetSource , etc. I am submitting a modified version of the BeanNameAutoProxyCreator class along with the supporting test files. If you find it useful, you may want to include it in the springframework. Rajeev Kaul |
|
From: Dmitriy K. <dko...@ru...> - 2003-12-04 03:38:02
|
I could do it tomorrow if that's agreed. Regards, Dmitriy. ----- Original Message ----- From: "Alef Arendsen (JTeam)" <al...@jt...> Date: Wednesday, December 3, 2003 5:40 pm Subject: [Springframework-developer] JIRA: include version 1.1 > Rod, Juergen, > > Maybe you (or whoever is capabe of doing that) could include a Spring > 1.1 version in the JIRA project just to be able to log any feature > requests that we might get in the coming weeks (we won't be including > many new features will we?)... > > Alef > > |
|
From: Patrick B. <spr...@pa...> - 2003-12-04 01:26:35
|
Rod Johnson wrote: > Yes, it will certainly help with the big picture. For example, it outlines > the IoC approach and the rationale behind it, and the essentials of the JDBC > package and web framework. And it's a good book anyway :-) > > The picture has gotten bigger since the book was published, however. New > features include AOP and transaction management. > > Regards, > Rod > Thanks, it's actually the web framework I am most interested in. The rest seems to flow well in my mind. Just trying to wrap my mind around FormControllers. :-) Thanks, Patrick |
|
From: Mike Cannon-B. <mi...@at...> - 2003-12-03 23:07:38
|
Well, I'm certainly not in favour of making the EL generic or pluggable - that seems like a world of pain to me. Why do you need a pluggable EL? However I don't see why dropping in OGNL support should take long - if I get a chance I might have a hack at it today (never having looked at Spring internals mind you) to contribute back. M On 4/12/03 9:38 AM, "Alef Arendsen (JTeam)" (al...@jt...) penned the words: > Mike, > > This was discussed about a month ago shortly (see quoted email below). I > think this is definitely a feature worth while considering! But I don't > think it's possible to include his before 1.0final. We can put it on the > wishlist? > > Alef > > <QUOTE EMAIL OCTOBER 17TH> > A richer expression language would have its use cases. The right thing > to do might be to make the language pluggable :^) > > A little while ago I rolled a simple generic Validator implementation -- > > configured using the Spring configuration file -- using JEX > (http://www.plotnix.com/jex/). This a little pluggable expression > language framework. I added JEX plugins for regexps and the JSTL > expression language so I could use these (in addition to JavaScript, > BEXL and JXPath) to formulate validation rules. I never fed this back to > the list because the implementation is not quite generic enough (eg > there's no i18n support), but having used it for a while it seems > there's a fair bit of mileage in the idea. A decent expression language > is IMHO exactly what's missing from the > brilliant-idea-but-flawed-execution Struts Validator. > > In any case, I can think of a number of reasons why it might be good to > adopt JEX or a Spring equivalent of it. > > On a not entirely unrelated note, one of the things I've been missing > from Spring is what you might call "anonymous beans". In some > situations, I don't really want to pollute the namespace with beans that > will only ever be used in one place: > > <bean id="foo" class="eg.Foo"> > <property name="bar"><ref bean="bar"/></property> > </bean> > > <bean id="bar" class="eg.Bar"/> > > But would like to be able to write something like > > <bean id="foo" class="eg.Foo"> > <property name="bar"><bean class="eg.Bar"/></property> > </bean> > > Has this been discussed before? > > Spring is the best thing I've come across for a while and I'd love to > contribute something back :^) > > - Peter > > > ----- Original Message ----- > From: "Colin Sampaleanu" <col...@ex...> > To: <spr...@li...> > Sent: Wednesday, October 15, 2003 8:17 PM > Subject: [lists] [Springframework-developer] Expression language for use > in ApplicationContext > > >> Has an expression language available for use in the app context ever >> been considered? (as per email below) >> >> -------- Original Message -------- >> Subject: Re: Spring XMLBeanFactory >> Date: Wed, 15 Oct 2003 15:14:42 -0400 >> From: Colin Sampaleanu <col...@ex...> >> To: Vladimir Blagojevic <vla...@cs...> >> References: <Pin...@bl...> >> >> >> >> It can't do this (to the best of my knowledge). There is an expression > >> language available for use in the JSP tags, but this is not accessible > >> in the contexts. >> >> If there is enough of a use case for this it could certainly be done. >> One way would be to try leveraging the existing expression language >> code. I have no idea how easy this would be to do since I've actually >> never touched the web ui code. Another mechanism would be to bring in >> something like OGNL, which is quite powerful... >> >> What is your usage scenario? >> >> >> Vladimir Blagojevic wrote: >> >>> Colin, >>> >>> Does XMLBeanFactory support reading property of bean X and assigning >>> it to bean Y within declarative xml config file? I don't think so, >>> but is there any chatter on the lists about that? >>> >>> Cheers > > </QUOTE EMAIL OCTOBER 17TH> > > > >> -----Oorspronkelijk bericht----- >> Van: spr...@li... >> [mailto:spr...@li...] >> Namens Mike Cannon-Brookes >> Verzonden: Wednesday, December 03, 2003 11:04 PM >> Aan: Spring >> Onderwerp: OGNL support WAS: [Springframework-developer] >> Spring Enhancement >> >> >> Any thoughts on this guys? I can't find any replies to it :) >> >> ------ Forwarded Message >> From: Mike Cannon-Brookes <mi...@at...> >> Reply-To: spr...@li... >> Date: Tue, 02 Dec 2003 16:02:58 +1100 >> To: Spring Developer <spr...@li...> >> Subject: Re: [Springframework-developer] Spring Enhancement >> >> Or an even better idea... how about supporting OGNL within >> the Spring config files? (like Xwork does) >> >> This would be _awesome_ and I just found a second use case >> for it (the very minute Rob's email came in). >> >> My use case - Maps. >> >> The Map syntax is nice, but not very useful in practicality >> I'm finding as the key and value of the map are usually >> related, for instance I often want to put a list of >> referenced beans into a map, with ref.getName() (or some >> method) called for the key. >> >> At the moment I have to add a setBeans(List) method to my >> class, and then in that setter iterate and add to a map - smelly! >> >> If we allowed OGNL expressions, it would be very simple to do >> this in the config file itself: >> >> <property value="myMapProp"> >> <map> >> <entry> >> <key>$referencedBean.name</key> >> <value><ref bean="referencedBean" /></value> >> </entry> >> ... More entries >> </map> >> </property> >> >> I'm sure there are a million other places where OGNL would be >> useful too, but AFAIK the above can't be done _without_ it? >> >> Or have I just been at this desk far too long? >> >> M >> >> On 2/12/03 8:32 AM, "Rob Butler" (rob...@ve...) >> penned the >> words: >> >>> Spring now provides the ability to instantiate an object >> using either >>> a JavaBean no arg constructor, or any normal Java >> constructor. But it >>> does not support calling methods. >>> >>> Also, Spring requires that a class implement the InitializingBean >>> interface if it needs to perform some "setup" work after >> the setters >>> have all been called. This means that any class that has >> this need is >>> tied to the Springframework. >>> >>> What if the ability to call any arbitrary method was added >> to Spring? >>> Then users could call "afterPropertiesSet" to do "setup" >> work without >>> having to implement the InitializingBean interface. Ideally method >>> calls could be in any order along with calls to setters. >> Spring would >>> then call each in order. Thus, allowing some setters to be called, >>> then some methods, then more setters if necessary. If this is not >>> possible, then methods should be called after setters. >>> >>> This would allow complete decoupling of classes from Spring. The >>> InitializingBean & BeanFactoryAware interfaces would no longer be >>> needed (although could remain for backwards compatibility). This >>> would be very useful when contributing code to other >> projects that do >>> not want to have a dependency on Spring. Also, it would allow >>> virtually any class used by /developed for another IOC framework / >>> lightweight container to be used in Spring. >>> >>> Thoughts? >>> >>> Later >>> Rob >>> >>> >>> >>> ------------------------------------------------------- >>> This SF.net email is sponsored by: SF.net Giveback Program. Does >>> SourceForge.net help you be more productive? Does it help >> you create >>> better code? SHARE THE LOVE, and help us help YOU! Click Here: >>> http://sourceforge.net/donate/ >>> _______________________________________________ >>> Springframework-developer mailing list >>> Spr...@li... >>> >> https://lists.sourceforge.net/lists/listinfo/s> > pringframework-developer >> >> >> >> ------------------------------------------------------- >> This SF.net email is sponsored by: SF.net Giveback Program. >> Does SourceForge.net help you be more productive? Does it >> help you create better code? SHARE THE LOVE, and help us >> help YOU! Click Here: http://sourceforge.net/donate/ >> _______________________________________________ >> Springframework-developer mailing list >> Spr...@li... >> https://lists.sourceforge.net/lists/listinfo/springframework-developer >> >> ------ End of Forwarded Message >> >> >> >> ------------------------------------------------------- >> This SF.net email is sponsored by OSDN's Audience Survey. >> Help shape OSDN's sites and tell us what you think. Take this >> five minute survey and you could win a $250 Gift Certificate. >> http://www.wrgsurveys.com/2003/osdntech03.php?> site=8 >> >> _______________________________________________ >> >> Springframework-developer mailing list >> Spr...@li... >> https://lists.sourceforge.net/lists/listinfo/springframework-developer >> > > > > ------------------------------------------------------- > This SF.net email is sponsored by OSDN's Audience Survey. > Help shape OSDN's sites and tell us what you think. Take this > five minute survey and you could win a $250 Gift Certificate. > http://www.wrgsurveys.com/2003/osdntech03.php?site=8 > _______________________________________________ > Springframework-developer mailing list > Spr...@li... > https://lists.sourceforge.net/lists/listinfo/springframework-developer |
|
From: Alef A. \(JTeam\) <al...@jt...> - 2003-12-03 22:40:49
|
Rod, Juergen, Maybe you (or whoever is capabe of doing that) could include a Spring 1.1 version in the JIRA project just to be able to log any feature requests that we might get in the coming weeks (we won't be including many new features will we?). Alef |