You can subscribe to this list here.
2006 |
Jan
|
Feb
|
Mar
|
Apr
(387) |
May
(1066) |
Jun
(689) |
Jul
(504) |
Aug
(697) |
Sep
(660) |
Oct
(591) |
Nov
(393) |
Dec
(324) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2007 |
Jan
(567) |
Feb
(448) |
Mar
(461) |
Apr
(368) |
May
(887) |
Jun
(243) |
Jul
(429) |
Aug
(670) |
Sep
(648) |
Oct
(684) |
Nov
(599) |
Dec
(317) |
2008 |
Jan
(388) |
Feb
(400) |
Mar
(323) |
Apr
(214) |
May
(228) |
Jun
(120) |
Jul
(168) |
Aug
(64) |
Sep
(78) |
Oct
(127) |
Nov
(28) |
Dec
|
2009 |
Jan
|
Feb
(1) |
Mar
(22) |
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
(1) |
2017 |
Jan
|
Feb
|
Mar
|
Apr
|
May
(1) |
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
From: Thomas R. <tri...@us...> - 2009-03-19 18:51:24
|
Update of /cvsroot/springframework/spring In directory fdv4jf1.ch3.sourceforge.com:/tmp/cvs-serv17753 Modified Files: changelog.txt Log Message: updated changelog Index: changelog.txt =================================================================== RCS file: /cvsroot/springframework/spring/changelog.txt,v retrieving revision 1.741 retrieving revision 1.742 diff -C2 -d -r1.741 -r1.742 *** changelog.txt 19 Feb 2009 15:15:22 -0000 1.741 --- changelog.txt 19 Mar 2009 18:51:04 -0000 1.742 *************** *** 9,12 **** --- 9,29 ---- Package org.springframework.jdbc * added sort to all error code categories for SQLErrorCodes (SPR-5272) + * added custom SQLExceptionTranslator to provide customized translation for any SQLException (SPR-4899 backport) + * added a DuplicatKeyException catagory for SQLException translation (SPR-5125 backport) + * added a concrete GenericSqlQuery class to make it possible to configure in application context (SPR-3986 backport) + * added a concrete GenericStoredProcedure class to make it possible to configure using application context (SPR-3987 backport) + + Package org.springframework.jms + * fixed JmsUtils.buildExceptionMessage to avoid potential NPE (SPR-5275) + * fixed MessageListenerAdapter's "getSubscriptionName()" to work without delegate as well (SPR-5309 backport) + + Package org.springframework.orm + * AnnotationSessionFactoryBean now properly scans subpackages as well (SPR-5324) + + Package org.springframework.remoting + * fixed HTTP invoker to support resolution of multi-level primitive array classes again (SPR-5473 backport) + + Package org.springframework.transaction + * WebSphereUowTransactionManager preserves original exception in case of rollback (SPR-5270 backport) |
From: Thomas R. <tri...@us...> - 2009-03-19 16:21:41
|
Update of /cvsroot/springframework/spring/test/org/springframework/remoting/httpinvoker In directory fdv4jf1.ch3.sourceforge.com:/tmp/cvs-serv9918/test/org/springframework/remoting/httpinvoker Modified Files: HttpInvokerTests.java Log Message: removed autoboxing Index: HttpInvokerTests.java =================================================================== RCS file: /cvsroot/springframework/spring/test/org/springframework/remoting/httpinvoker/HttpInvokerTests.java,v retrieving revision 1.7 retrieving revision 1.8 diff -C2 -d -r1.7 -r1.8 *** HttpInvokerTests.java 19 Mar 2009 15:17:39 -0000 1.7 --- HttpInvokerTests.java 19 Mar 2009 16:21:19 -0000 1.8 *************** *** 98,107 **** proxy.setStringArray(new String[] {"str1", "str2"}); assertTrue(Arrays.equals(new String[] {"str1", "str2"}, proxy.getStringArray())); ! proxy.setSomeIntegerArray(new Integer[] {1, 2, 3}); ! assertTrue(Arrays.equals(new Integer[] {1, 2, 3}, proxy.getSomeIntegerArray())); ! proxy.setNestedIntegerArray(new Integer[][] {{1, 2, 3}, {4, 5, 6}}); Integer[][] integerArray = proxy.getNestedIntegerArray(); ! assertTrue(Arrays.equals(new Integer[] {1, 2, 3}, integerArray[0])); ! assertTrue(Arrays.equals(new Integer[] {4, 5, 6}, integerArray[1])); proxy.setSomeIntArray(new int[] {1, 2, 3}); assertTrue(Arrays.equals(new int[] {1, 2, 3}, proxy.getSomeIntArray())); --- 98,109 ---- proxy.setStringArray(new String[] {"str1", "str2"}); assertTrue(Arrays.equals(new String[] {"str1", "str2"}, proxy.getStringArray())); ! proxy.setSomeIntegerArray(new Integer[] {new Integer(1), new Integer(2), new Integer(3)}); ! assertTrue(Arrays.equals(new Integer[] {new Integer(1), new Integer(2), new Integer(3)}, ! proxy.getSomeIntegerArray())); ! proxy.setNestedIntegerArray(new Integer[][] {{new Integer(1), new Integer(2), new Integer(3)}, ! {new Integer(4), new Integer(5), new Integer(6)}}); Integer[][] integerArray = proxy.getNestedIntegerArray(); ! assertTrue(Arrays.equals(new Integer[] {new Integer(1), new Integer(2), new Integer(3)}, integerArray[0])); ! assertTrue(Arrays.equals(new Integer[] {new Integer(4), new Integer(5), new Integer(6)}, integerArray[1])); proxy.setSomeIntArray(new int[] {1, 2, 3}); assertTrue(Arrays.equals(new int[] {1, 2, 3}, proxy.getSomeIntArray())); |
From: Juergen H. <jho...@us...> - 2009-03-19 15:17:53
|
Update of /cvsroot/springframework/spring/test/org/springframework/remoting/httpinvoker In directory fdv4jf1.ch3.sourceforge.com:/tmp/cvs-serv28750/test/org/springframework/remoting/httpinvoker Modified Files: HttpInvokerTests.java Log Message: fixed HTTP invoker to support resolution of multi-level primitive array classes again Index: HttpInvokerTests.java =================================================================== RCS file: /cvsroot/springframework/spring/test/org/springframework/remoting/httpinvoker/HttpInvokerTests.java,v retrieving revision 1.6 retrieving revision 1.7 diff -C2 -d -r1.6 -r1.7 *** HttpInvokerTests.java 13 Jan 2007 19:31:20 -0000 1.6 --- HttpInvokerTests.java 19 Mar 2009 15:17:39 -0000 1.7 *************** *** 1,4 **** /* ! * Copyright 2002-2007 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); --- 1,4 ---- /* ! * Copyright 2002-2009 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); *************** *** 98,101 **** --- 98,113 ---- proxy.setStringArray(new String[] {"str1", "str2"}); assertTrue(Arrays.equals(new String[] {"str1", "str2"}, proxy.getStringArray())); + proxy.setSomeIntegerArray(new Integer[] {1, 2, 3}); + assertTrue(Arrays.equals(new Integer[] {1, 2, 3}, proxy.getSomeIntegerArray())); + proxy.setNestedIntegerArray(new Integer[][] {{1, 2, 3}, {4, 5, 6}}); + Integer[][] integerArray = proxy.getNestedIntegerArray(); + assertTrue(Arrays.equals(new Integer[] {1, 2, 3}, integerArray[0])); + assertTrue(Arrays.equals(new Integer[] {4, 5, 6}, integerArray[1])); + proxy.setSomeIntArray(new int[] {1, 2, 3}); + assertTrue(Arrays.equals(new int[] {1, 2, 3}, proxy.getSomeIntArray())); + proxy.setNestedIntArray(new int[][] {{1, 2, 3}, {4, 5, 6}}); + int[][] intArray = proxy.getNestedIntArray(); + assertTrue(Arrays.equals(new int[] {1, 2, 3}, intArray[0])); + assertTrue(Arrays.equals(new int[] {4, 5, 6}, intArray[1])); try { |
From: Juergen H. <jho...@us...> - 2009-03-19 15:17:51
|
Update of /cvsroot/springframework/spring/test/org/springframework/beans In directory fdv4jf1.ch3.sourceforge.com:/tmp/cvs-serv28750/test/org/springframework/beans Modified Files: TestBean.java ITestBean.java Log Message: fixed HTTP invoker to support resolution of multi-level primitive array classes again Index: ITestBean.java =================================================================== RCS file: /cvsroot/springframework/spring/test/org/springframework/beans/ITestBean.java,v retrieving revision 1.12 retrieving revision 1.13 diff -C2 -d -r1.12 -r1.13 *** ITestBean.java 27 Mar 2007 20:04:37 -0000 1.12 --- ITestBean.java 19 Mar 2009 15:17:39 -0000 1.13 *************** *** 1,4 **** /* ! * Copyright 2002-2007 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); --- 1,4 ---- /* ! * Copyright 2002-2009 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); *************** *** 34,38 **** void setAge(int age); ! String getName(); void setName(String name); --- 34,38 ---- void setAge(int age); ! String getName(); void setName(String name); *************** *** 48,51 **** --- 48,67 ---- void setStringArray(String[] stringArray); + Integer[][] getNestedIntegerArray(); + + Integer[] getSomeIntegerArray(); + + void setSomeIntegerArray(Integer[] someIntegerArray); + + void setNestedIntegerArray(Integer[][] nestedIntegerArray); + + int[] getSomeIntArray(); + + void setSomeIntArray(int[] someIntArray); + + int[][] getNestedIntArray(); + + void setNestedIntArray(int[][] someNestedArray); + /** * Throws a given (non-null) exception. Index: TestBean.java =================================================================== RCS file: /cvsroot/springframework/spring/test/org/springframework/beans/TestBean.java,v retrieving revision 1.36 retrieving revision 1.37 diff -C2 -d -r1.36 -r1.37 *** TestBean.java 15 Mar 2008 00:19:51 -0000 1.36 --- TestBean.java 19 Mar 2009 15:17:39 -0000 1.37 *************** *** 1,4 **** /* ! * Copyright 2002-2008 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); --- 1,4 ---- /* ! * Copyright 2002-2009 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); *************** *** 67,70 **** --- 67,76 ---- private Integer[] someIntegerArray; + private Integer[][] nestedIntegerArray; + + private int[] someIntArray; + + private int[][] nestedIntArray; + private Date date = new Date(); *************** *** 247,250 **** --- 253,280 ---- } + public Integer[][] getNestedIntegerArray() { + return nestedIntegerArray; + } + + public void setNestedIntegerArray(Integer[][] nestedIntegerArray) { + this.nestedIntegerArray = nestedIntegerArray; + } + + public int[] getSomeIntArray() { + return someIntArray; + } + + public void setSomeIntArray(int[] someIntArray) { + this.someIntArray = someIntArray; + } + + public int[][] getNestedIntArray() { + return nestedIntArray; + } + + public void setNestedIntArray(int[][] nestedIntArray) { + this.nestedIntArray = nestedIntArray; + } + public Date getDate() { return date; *************** *** 368,374 **** - /** - * @see ITestBean#exceptional(Throwable) - */ public void exceptional(Throwable t) throws Throwable { if (t != null) { --- 398,401 ---- *************** *** 380,393 **** throw new IOException(); } ! /** ! * @see ITestBean#returnsThis() ! */ public Object returnsThis() { return this; } - /** - * @see IOther#absquatulate() - */ public void absquatulate() { } --- 407,415 ---- throw new IOException(); } ! public Object returnsThis() { return this; } public void absquatulate() { } |
From: Juergen H. <jho...@us...> - 2009-03-19 15:17:51
|
Update of /cvsroot/springframework/spring/src/org/springframework/util In directory fdv4jf1.ch3.sourceforge.com:/tmp/cvs-serv28750/src/org/springframework/util Modified Files: ClassUtils.java Log Message: fixed HTTP invoker to support resolution of multi-level primitive array classes again Index: ClassUtils.java =================================================================== RCS file: /cvsroot/springframework/spring/src/org/springframework/util/ClassUtils.java,v retrieving revision 1.77 retrieving revision 1.78 diff -C2 -d -r1.77 -r1.78 *** ClassUtils.java 16 Sep 2008 20:09:21 -0000 1.77 --- ClassUtils.java 19 Mar 2009 15:17:38 -0000 1.78 *************** *** 1,4 **** /* ! * Copyright 2002-2008 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); --- 1,4 ---- /* ! * Copyright 2002-2009 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); *************** *** 52,57 **** public static final String ARRAY_SUFFIX = "[]"; ! /** Prefix for internal array class names: "[L" */ ! private static final String INTERNAL_ARRAY_PREFIX = "[L"; /** The package separator character '.' */ --- 52,60 ---- public static final String ARRAY_SUFFIX = "[]"; ! /** Prefix for internal array class names: "[" */ ! private static final String INTERNAL_ARRAY_PREFIX = "["; ! ! /** Prefix for internal non-primitive array class names: "[L" */ ! private static final String NON_PRIMITIVE_ARRAY_PREFIX = "[L"; /** The package separator character '.' */ *************** *** 192,205 **** // "[Ljava.lang.String;" style arrays ! int internalArrayMarker = name.indexOf(INTERNAL_ARRAY_PREFIX); ! if (internalArrayMarker != -1 && name.endsWith(";")) { ! String elementClassName = null; ! if (internalArrayMarker == 0) { ! elementClassName = name.substring(INTERNAL_ARRAY_PREFIX.length(), name.length() - 1); ! } ! else if (name.startsWith("[")) { ! elementClassName = name.substring(1); ! } ! Class elementClass = forName(elementClassName, classLoader); return Array.newInstance(elementClass, 0).getClass(); } --- 195,208 ---- // "[Ljava.lang.String;" style arrays ! if (name.startsWith(NON_PRIMITIVE_ARRAY_PREFIX) && name.endsWith(";")) { ! String elementName = name.substring(NON_PRIMITIVE_ARRAY_PREFIX.length(), name.length() - 1); ! Class elementClass = forName(elementName, classLoader); ! return Array.newInstance(elementClass, 0).getClass(); ! } ! ! // "[[I" or "[[Ljava.lang.String;" style arrays ! if (name.startsWith(INTERNAL_ARRAY_PREFIX)) { ! String elementName = name.substring(INTERNAL_ARRAY_PREFIX.length()); ! Class elementClass = forName(elementName, classLoader); return Array.newInstance(elementClass, 0).getClass(); } |
From: Thomas R. <tri...@us...> - 2009-03-19 14:50:51
|
Update of /cvsroot/springframework/spring/src/org/springframework/transaction/jta In directory fdv4jf1.ch3.sourceforge.com:/tmp/cvs-serv22109/src/org/springframework/transaction/jta Modified Files: WebSphereUowTransactionManager.java Log Message: WebSphereUowTransactionManager preserves original exception in case of rollback (SPR-5270 backport) Index: WebSphereUowTransactionManager.java =================================================================== RCS file: /cvsroot/springframework/spring/src/org/springframework/transaction/jta/WebSphereUowTransactionManager.java,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -d -r1.4 -r1.5 *** WebSphereUowTransactionManager.java 18 Dec 2007 15:18:40 -0000 1.4 --- WebSphereUowTransactionManager.java 19 Mar 2009 14:50:39 -0000 1.5 *************** *** 38,41 **** --- 38,42 ---- import org.springframework.transaction.support.TransactionCallback; import org.springframework.transaction.support.TransactionSynchronizationManager; + import org.springframework.util.ReflectionUtils; /** *************** *** 289,292 **** --- 290,295 ---- private Object result; + private Throwable exception; + public UOWActionAdapter(TransactionDefinition definition, TransactionCallback callback, boolean actualTransaction, boolean newTransaction, boolean newSynchronization, boolean debug) { *************** *** 307,310 **** --- 310,316 ---- triggerBeforeCommit(status); } + catch (Throwable ex) { + this.exception = ex; + } finally { if (status.isLocalRollbackOnly()) { *************** *** 324,327 **** --- 330,336 ---- public Object getResult() { + if (this.exception != null) { + ReflectionUtils.rethrowRuntimeException(this.exception); + } return this.result; } |
From: Juergen H. <jho...@us...> - 2009-03-19 14:46:10
|
Update of /cvsroot/springframework/spring/tiger/src/org/springframework/ejb/interceptor In directory fdv4jf1.ch3.sourceforge.com:/tmp/cvs-serv20521/tiger/src/org/springframework/ejb/interceptor Modified Files: SpringBeanAutowiringInterceptor.java Log Message: made SpringBeanAutowiringInterceptor callback signature compatible with WebSphere Index: SpringBeanAutowiringInterceptor.java =================================================================== RCS file: /cvsroot/springframework/spring/tiger/src/org/springframework/ejb/interceptor/SpringBeanAutowiringInterceptor.java,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** SpringBeanAutowiringInterceptor.java 28 Aug 2008 09:00:22 -0000 1.3 --- SpringBeanAutowiringInterceptor.java 19 Mar 2009 14:45:52 -0000 1.4 *************** *** 1,4 **** /* ! * Copyright 2002-2008 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); --- 1,4 ---- /* ! * Copyright 2002-2009 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); *************** *** 22,25 **** --- 22,26 ---- import javax.annotation.PostConstruct; import javax.annotation.PreDestroy; + import javax.ejb.EJBException; import javax.ejb.PostActivate; import javax.ejb.PrePassivate; *************** *** 94,100 **** @PostConstruct @PostActivate ! public void autowireBean(InvocationContext invocationContext) throws Exception { doAutowireBean(invocationContext.getTarget()); ! invocationContext.proceed(); } --- 95,110 ---- @PostConstruct @PostActivate ! public void autowireBean(InvocationContext invocationContext) { doAutowireBean(invocationContext.getTarget()); ! try { ! invocationContext.proceed(); ! } ! catch (RuntimeException ex) { ! throw ex; ! } ! catch (Exception ex) { ! // Cannot declare a checked exception on WebSphere here - so we need to wrap. ! throw new EJBException(ex); ! } } *************** *** 184,190 **** @PreDestroy @PrePassivate ! public void releaseBean(InvocationContext invocationContext) throws Exception { doReleaseBean(invocationContext.getTarget()); ! invocationContext.proceed(); } --- 194,209 ---- @PreDestroy @PrePassivate ! public void releaseBean(InvocationContext invocationContext) { doReleaseBean(invocationContext.getTarget()); ! try { ! invocationContext.proceed(); ! } ! catch (RuntimeException ex) { ! throw ex; ! } ! catch (Exception ex) { ! // Cannot declare a checked exception on WebSphere here - so we need to wrap. ! throw new EJBException(ex); ! } } |
From: Thomas R. <tri...@us...> - 2009-03-17 21:37:53
|
Update of /cvsroot/springframework/spring/test/org/springframework/jdbc/object In directory fdv4jf1.ch3.sourceforge.com:/tmp/cvs-serv22732/test/org/springframework/jdbc/object Modified Files: GenericStoredProcedureTests-context.xml GenericStoredProcedureTests.java Log Message: removed autoboxing (SPR-3986 SPR-3987) Index: GenericStoredProcedureTests-context.xml =================================================================== RCS file: /cvsroot/springframework/spring/test/org/springframework/jdbc/object/GenericStoredProcedureTests-context.xml,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** GenericStoredProcedureTests-context.xml 17 Mar 2009 15:30:18 -0000 1.1 --- GenericStoredProcedureTests-context.xml 17 Mar 2009 21:37:36 -0000 1.2 *************** *** 16,20 **** <constructor-arg index="1"> <util:constant static-field="java.sql.Types.INTEGER"/> ! </constructor-arg> </bean> <bean class="org.springframework.jdbc.core.SqlParameter"> --- 16,20 ---- <constructor-arg index="1"> <util:constant static-field="java.sql.Types.INTEGER"/> ! </constructor-arg> </bean> <bean class="org.springframework.jdbc.core.SqlParameter"> Index: GenericStoredProcedureTests.java =================================================================== RCS file: /cvsroot/springframework/spring/test/org/springframework/jdbc/object/GenericStoredProcedureTests.java,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** GenericStoredProcedureTests.java 17 Mar 2009 15:30:18 -0000 1.1 --- GenericStoredProcedureTests.java 17 Mar 2009 21:37:36 -0000 1.2 *************** *** 101,106 **** StoredProcedure adder = (StoredProcedure) bf.getBean("genericProcedure"); Map in = new HashMap(2); ! in.put("amount", amount); ! in.put("custid", custid); Map out = adder.execute(in); Integer id = (Integer) out.get("newid"); --- 101,106 ---- StoredProcedure adder = (StoredProcedure) bf.getBean("genericProcedure"); Map in = new HashMap(2); ! in.put("amount", new Integer(amount)); ! in.put("custid", new Integer(custid)); Map out = adder.execute(in); Integer id = (Integer) out.get("newid"); |
From: Thomas R. <tri...@us...> - 2009-03-17 20:45:59
|
Update of /cvsroot/springframework/spring/src/org/springframework/jms/listener/adapter In directory fdv4jf1.ch3.sourceforge.com:/tmp/cvs-serv11768/src/org/springframework/jms/listener/adapter Modified Files: MessageListenerAdapter.java Log Message: fixed MessageListenerAdapter's "getSubscriptionName()" to work without delegate as well (SPR-5309 backport) Index: MessageListenerAdapter.java =================================================================== RCS file: /cvsroot/springframework/spring/src/org/springframework/jms/listener/adapter/MessageListenerAdapter.java,v retrieving revision 1.18 retrieving revision 1.19 diff -C2 -d -r1.18 -r1.19 *** MessageListenerAdapter.java 15 Oct 2008 14:42:00 -0000 1.18 --- MessageListenerAdapter.java 17 Mar 2009 20:45:48 -0000 1.19 *************** *** 1,4 **** /* ! * Copyright 2002-2008 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); --- 1,4 ---- /* ! * Copyright 2002-2009 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); *************** *** 18,22 **** import java.lang.reflect.InvocationTargetException; - import javax.jms.Destination; import javax.jms.InvalidDestinationException; --- 18,21 ---- *************** *** 367,375 **** public String getSubscriptionName() { ! if (this.delegate instanceof SubscriptionNameProvider) { ! return ((SubscriptionNameProvider) this.delegate).getSubscriptionName(); } else { ! return this.delegate.getClass().getName(); } } --- 366,375 ---- public String getSubscriptionName() { ! Object delegate = getDelegate(); ! if (delegate != this && delegate instanceof SubscriptionNameProvider) { ! return ((SubscriptionNameProvider) delegate).getSubscriptionName(); } else { ! return delegate.getClass().getName(); } } |
From: Thomas R. <tri...@us...> - 2009-03-17 15:35:03
|
Update of /cvsroot/springframework/spring/test/org/springframework/jdbc/object In directory fdv4jf1.ch3.sourceforge.com:/tmp/cvs-serv18305/test/org/springframework/jdbc/object Added Files: CustomerMapper.java GenericSqlQueryTests-context.xml GenericSqlQueryTests.java Log Message: added a concrete GenericSqlQuery class to make it possible to configure in application context (SPR-3986 backport) --- NEW FILE: CustomerMapper.java --- package org.springframework.jdbc.object; import org.springframework.jdbc.core.RowMapper; import org.springframework.jdbc.Customer; import java.sql.ResultSet; import java.sql.SQLException; public class CustomerMapper implements RowMapper { private static final String[] COLUMN_NAMES = new String[] {"id", "forename"}; public Object mapRow(ResultSet rs, int rownum) throws SQLException { Customer cust = new Customer(); cust.setId(rs.getInt(COLUMN_NAMES[0])); cust.setForename(rs.getString(COLUMN_NAMES[1])); return cust; } } --- NEW FILE: GenericSqlQueryTests-context.xml --- <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:util="http://www.springframework.org/schema/util" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd http://www.springframework.org/schema/util http://www.springframework.org/schema/util/spring-util-2.5.xsd"> <bean id="dataSource" class="org.springframework.jdbc.datasource.TestDataSourceWrapper"/> <bean id="queryWithPlaceHolders" class="org.springframework.jdbc.object.GenericSqlQuery"> <property name="dataSource" ref="dataSource"/> <property name="sql" value="select id, forename from custmr where id = ? and country = ?"/> <property name="parameters"> <list> <bean class="org.springframework.jdbc.core.SqlParameter"> <constructor-arg index="0" value="amount"/> <constructor-arg index="1"> <util:constant static-field="java.sql.Types.INTEGER"/> </constructor-arg> </bean> <bean class="org.springframework.jdbc.core.SqlParameter"> <constructor-arg index="0" value="custid"/> <constructor-arg index="1"> <util:constant static-field="java.sql.Types.VARCHAR"/> </constructor-arg> </bean> </list> </property> <property name="rowMapperClass" value="org.springframework.jdbc.object.CustomerMapper"/> </bean> <bean id="queryWithNamedParameters" class="org.springframework.jdbc.object.GenericSqlQuery"> <property name="dataSource" ref="dataSource"/> <property name="sql" value="select id, forename from custmr where id = :id and country = :country"/> <property name="parameters"> <list> <bean class="org.springframework.jdbc.core.SqlParameter"> <constructor-arg index="0" value="id"/> <constructor-arg index="1"> <util:constant static-field="java.sql.Types.INTEGER"/> </constructor-arg> </bean> <bean class="org.springframework.jdbc.core.SqlParameter"> <constructor-arg index="0" value="country"/> <constructor-arg index="1"> <util:constant static-field="java.sql.Types.VARCHAR"/> </constructor-arg> </bean> </list> </property> <property name="rowMapperClass" value="org.springframework.jdbc.object.CustomerMapper"/> </bean> </beans> --- NEW FILE: GenericSqlQueryTests.java --- /* * Copyright 2002-2008 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ package org.springframework.jdbc.object; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Types; import java.util.HashMap; import java.util.List; import java.util.Map; import org.easymock.MockControl; import org.apache.commons.logging.LogFactory; import org.springframework.jdbc.AbstractJdbcTests; import org.springframework.jdbc.Customer; import org.springframework.jdbc.datasource.TestDataSourceWrapper; import org.springframework.jdbc.core.JdbcTemplate; import org.springframework.beans.factory.BeanFactory; import org.springframework.beans.factory.xml.XmlBeanFactory; import org.springframework.core.io.ClassPathResource; /** * @author Thomas Risberg */ public class GenericSqlQueryTests extends AbstractJdbcTests { private static final String SELECT_ID_FORENAME_NAMED_PARAMETERS_PARSED = "select id, forename from custmr where id = ? and country = ?"; private final boolean debugEnabled = LogFactory.getLog(JdbcTemplate.class).isDebugEnabled(); private MockControl ctrlPreparedStatement; private PreparedStatement mockPreparedStatement; private MockControl ctrlResultSet; private ResultSet mockResultSet; private BeanFactory bf; protected void setUp() throws Exception { super.setUp(); ctrlPreparedStatement = MockControl.createControl(PreparedStatement.class); mockPreparedStatement = (PreparedStatement) ctrlPreparedStatement.getMock(); ctrlResultSet = MockControl.createControl(ResultSet.class); mockResultSet = (ResultSet) ctrlResultSet.getMock(); this.bf = new XmlBeanFactory( new ClassPathResource("org/springframework/jdbc/object/GenericSqlQueryTests-context.xml")); TestDataSourceWrapper testDataSource = (TestDataSourceWrapper) bf.getBean("dataSource"); testDataSource.setTarget(mockDataSource); } protected void tearDown() throws Exception { super.tearDown(); if (shouldVerify()) { ctrlPreparedStatement.verify(); ctrlResultSet.verify(); } } protected void replay() { super.replay(); ctrlPreparedStatement.replay(); ctrlResultSet.replay(); } public void testPlaceHoldersCustomerQuery() throws SQLException { SqlQuery query = (SqlQuery) bf.getBean("queryWithPlaceHolders"); testCustomerQuery(query, false); } public void testNamedParameterCustomerQuery() throws SQLException { SqlQuery query = (SqlQuery) bf.getBean("queryWithNamedParameters"); testCustomerQuery(query, true); } private void testCustomerQuery(SqlQuery query, boolean namedParameters) throws SQLException { mockResultSet.next(); ctrlResultSet.setReturnValue(true); mockResultSet.getInt("id"); ctrlResultSet.setReturnValue(1); mockResultSet.getString("forename"); ctrlResultSet.setReturnValue("rod"); mockResultSet.next(); ctrlResultSet.setReturnValue(false); mockResultSet.close(); ctrlResultSet.setVoidCallable(); mockPreparedStatement.setObject(1, new Integer(1), Types.INTEGER); ctrlPreparedStatement.setVoidCallable(); mockPreparedStatement.setString(2, "UK"); ctrlPreparedStatement.setVoidCallable(); mockPreparedStatement.executeQuery(); ctrlPreparedStatement.setReturnValue(mockResultSet); if (debugEnabled) { mockPreparedStatement.getWarnings(); ctrlPreparedStatement.setReturnValue(null); } mockPreparedStatement.close(); ctrlPreparedStatement.setVoidCallable(); mockConnection.prepareStatement(SELECT_ID_FORENAME_NAMED_PARAMETERS_PARSED); ctrlConnection.setReturnValue(mockPreparedStatement); replay(); List l = null; if (namedParameters) { Map params = new HashMap(2); params.put("id", new Integer(1)); params.put("country", "UK"); l = query.executeByNamedParam(params); } else { Object[] params = new Object[] {new Integer(1), "UK"}; l = query.execute(params); } assertTrue("Customer was returned correctly", l.size() == 1); Customer cust = (Customer) l.get(0); assertTrue("Customer id was assigned correctly", cust.getId() == 1); assertTrue("Customer forename was assigned correctly", cust.getForename().equals("rod")); } } |
From: Thomas R. <tri...@us...> - 2009-03-17 15:34:57
|
Update of /cvsroot/springframework/spring/src/org/springframework/jdbc/object In directory fdv4jf1.ch3.sourceforge.com:/tmp/cvs-serv18305/src/org/springframework/jdbc/object Added Files: GenericSqlQuery.java Log Message: added a concrete GenericSqlQuery class to make it possible to configure in application context (SPR-3986 backport) --- NEW FILE: GenericSqlQuery.java --- /* * Copyright 2002-2009 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ package org.springframework.jdbc.object; import java.util.Map; import org.springframework.jdbc.core.RowMapper; import org.springframework.util.Assert; import org.springframework.dao.InvalidDataAccessResourceUsageException; public class GenericSqlQuery extends SqlQuery { Class rowMapperClass; RowMapper rowMapper; public void setRowMapperClass(Class rowMapperClass) throws IllegalAccessException, InstantiationException { this.rowMapperClass = rowMapperClass; if (!RowMapper.class.isAssignableFrom(rowMapperClass)) throw new IllegalStateException("The specified class '" + rowMapperClass.getName() + " is not a sub class of " + "'org.springframework.jdbc.core.RowMapper'"); } public void afterPropertiesSet() { super.afterPropertiesSet(); Assert.notNull(rowMapperClass, "The 'rowMapperClass' property is required"); } protected RowMapper newRowMapper(Object[] parameters, Map context) { try { return (RowMapper) rowMapperClass.newInstance(); } catch (InstantiationException e) { throw new InvalidDataAccessResourceUsageException("Unable to instantiate RowMapper", e); } catch (IllegalAccessException e) { throw new InvalidDataAccessResourceUsageException("Unable to instantiate RowMapper", e); } } } |
From: Thomas R. <tri...@us...> - 2009-03-17 15:30:35
|
Update of /cvsroot/springframework/spring/test/org/springframework/jdbc/object In directory fdv4jf1.ch3.sourceforge.com:/tmp/cvs-serv17574/test/org/springframework/jdbc/object Added Files: GenericStoredProcedureTests-context.xml GenericStoredProcedureTests.java Log Message: added a concrete GenericStoredProcedure class to make it possible to configure using application context (SPR-3987 backport) --- NEW FILE: GenericStoredProcedureTests-context.xml --- <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:util="http://www.springframework.org/schema/util" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd http://www.springframework.org/schema/util http://www.springframework.org/schema/util/spring-util-2.5.xsd"> <bean id="dataSource" class="org.springframework.jdbc.datasource.TestDataSourceWrapper"/> <bean id="genericProcedure" class="org.springframework.jdbc.object.GenericStoredProcedure"> <property name="dataSource" ref="dataSource"/> <property name="sql" value="add_invoice"/> <property name="parameters"> <list> <bean class="org.springframework.jdbc.core.SqlParameter"> <constructor-arg index="0" value="amount"/> <constructor-arg index="1"> <util:constant static-field="java.sql.Types.INTEGER"/> </constructor-arg> </bean> <bean class="org.springframework.jdbc.core.SqlParameter"> <constructor-arg index="0" value="custid"/> <constructor-arg index="1"> <util:constant static-field="java.sql.Types.INTEGER"/> </constructor-arg> </bean> <bean class="org.springframework.jdbc.core.SqlOutParameter"> <constructor-arg index="0" value="newid"/> <constructor-arg index="1"> <util:constant static-field="java.sql.Types.INTEGER"/> </constructor-arg> </bean> </list> </property> </bean> </beans> --- NEW FILE: GenericStoredProcedureTests.java --- /* * Copyright 2002-2009 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ package org.springframework.jdbc.object; import java.sql.CallableStatement; import java.sql.Types; import java.util.HashMap; import java.util.Map; import org.easymock.MockControl; import org.apache.commons.logging.LogFactory; import org.springframework.jdbc.AbstractJdbcTests; import org.springframework.jdbc.datasource.TestDataSourceWrapper; import org.springframework.jdbc.core.JdbcTemplate; import org.springframework.beans.factory.BeanFactory; import org.springframework.beans.factory.xml.XmlBeanFactory; import org.springframework.core.io.ClassPathResource; /** * @author Thomas Risberg */ public class GenericStoredProcedureTests extends AbstractJdbcTests { private final boolean debugEnabled = LogFactory.getLog(JdbcTemplate.class).isDebugEnabled(); private MockControl ctrlCallable; private CallableStatement mockCallable; private BeanFactory bf; protected void setUp() throws Exception { super.setUp(); ctrlCallable = MockControl.createControl(CallableStatement.class); mockCallable = (CallableStatement) ctrlCallable.getMock(); this.bf = new XmlBeanFactory( new ClassPathResource("org/springframework/jdbc/object/GenericStoredProcedureTests-context.xml")); TestDataSourceWrapper testDataSource = (TestDataSourceWrapper) bf.getBean("dataSource"); testDataSource.setTarget(mockDataSource); } protected void tearDown() throws Exception { super.tearDown(); if (shouldVerify()) { ctrlCallable.verify(); } } protected void replay() { super.replay(); ctrlCallable.replay(); } public void testAddInvoices() throws Exception { mockCallable.setObject(1, new Integer(1106), Types.INTEGER); ctrlCallable.setVoidCallable(); mockCallable.setObject(2, new Integer(3), Types.INTEGER); ctrlCallable.setVoidCallable(); mockCallable.registerOutParameter(3, Types.INTEGER); ctrlCallable.setVoidCallable(); mockCallable.execute(); ctrlCallable.setReturnValue(false); mockCallable.getUpdateCount(); ctrlCallable.setReturnValue(-1); mockCallable.getObject(3); ctrlCallable.setReturnValue(new Integer(4)); if (debugEnabled) { mockCallable.getWarnings(); ctrlCallable.setReturnValue(null); } mockCallable.close(); ctrlCallable.setVoidCallable(); mockConnection.prepareCall("{call " + "add_invoice" + "(?, ?, ?)}"); ctrlConnection.setReturnValue(mockCallable); replay(); testAddInvoice(1106, 3); } private void testAddInvoice(final int amount, final int custid) throws Exception { StoredProcedure adder = (StoredProcedure) bf.getBean("genericProcedure"); Map in = new HashMap(2); in.put("amount", amount); in.put("custid", custid); Map out = adder.execute(in); Integer id = (Integer) out.get("newid"); assertEquals(4, id.intValue()); } } |
From: Thomas R. <tri...@us...> - 2009-03-17 15:30:29
|
Update of /cvsroot/springframework/spring/test/org/springframework/jdbc/datasource In directory fdv4jf1.ch3.sourceforge.com:/tmp/cvs-serv17574/test/org/springframework/jdbc/datasource Added Files: TestDataSourceWrapper.java Log Message: added a concrete GenericStoredProcedure class to make it possible to configure using application context (SPR-3987 backport) --- NEW FILE: TestDataSourceWrapper.java --- package org.springframework.jdbc.datasource; import java.sql.Connection; import java.sql.SQLException; import javax.sql.DataSource; public class TestDataSourceWrapper extends AbstractDataSource { private DataSource target; public void setTarget(DataSource target) { this.target = target; } public Connection getConnection() throws SQLException { return target.getConnection(); } public Connection getConnection(String username, String password) throws SQLException { return target.getConnection(username, password); } } |
From: Thomas R. <tri...@us...> - 2009-03-17 15:30:29
|
Update of /cvsroot/springframework/spring/src/org/springframework/jdbc/object In directory fdv4jf1.ch3.sourceforge.com:/tmp/cvs-serv17574/src/org/springframework/jdbc/object Added Files: GenericStoredProcedure.java Log Message: added a concrete GenericStoredProcedure class to make it possible to configure using application context (SPR-3987 backport) --- NEW FILE: GenericStoredProcedure.java --- /* * Copyright 2002-2009 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ package org.springframework.jdbc.object; import org.springframework.jdbc.object.StoredProcedure; public class GenericStoredProcedure extends StoredProcedure { } |
From: Thomas R. <tri...@us...> - 2009-03-17 15:20:56
|
Update of /cvsroot/springframework/spring/src/org/springframework/jdbc/support In directory fdv4jf1.ch3.sourceforge.com:/tmp/cvs-serv16163/src/org/springframework/jdbc/support Modified Files: SQLErrorCodeSQLExceptionTranslator.java SQLErrorCodes.java Log Message: added the option of providing a database specific custom SQLExceptionTranslator to provide customized translation for any SQLException before the error codes translation happens (SPR-4899 backport) Index: SQLErrorCodes.java =================================================================== RCS file: /cvsroot/springframework/spring/src/org/springframework/jdbc/support/SQLErrorCodes.java,v retrieving revision 1.18 retrieving revision 1.19 diff -C2 -d -r1.18 -r1.19 *** SQLErrorCodes.java 17 Mar 2009 15:12:21 -0000 1.18 --- SQLErrorCodes.java 17 Mar 2009 15:20:29 -0000 1.19 *************** *** 39,42 **** --- 39,44 ---- private boolean useSqlStateForTranslation = false; + private SQLExceptionTranslator customSqlExceptionTranslator = null; + private String[] badSqlGrammarCodes = new String[0]; *************** *** 98,101 **** --- 100,124 ---- } + public SQLExceptionTranslator getCustomSqlExceptionTranslator() { + return customSqlExceptionTranslator; + } + + public void setCustomSqlExceptionTranslatorClass(Class customSqlExceptionTranslatorClass) { + if (customSqlExceptionTranslatorClass != null) { + try { + this.customSqlExceptionTranslator = + (SQLExceptionTranslator) customSqlExceptionTranslatorClass.newInstance(); + } + catch (InstantiationException e) { + throw new InvalidDataAccessResourceUsageException( + "Unable to instantiate " + customSqlExceptionTranslatorClass.getName(), e); + } + catch (IllegalAccessException e) { + throw new InvalidDataAccessResourceUsageException( + "Unable to instantiate " + customSqlExceptionTranslatorClass.getName(), e); + } + } + } + public void setBadSqlGrammarCodes(String[] badSqlGrammarCodes) { this.badSqlGrammarCodes = StringUtils.sortStringArray(badSqlGrammarCodes); Index: SQLErrorCodeSQLExceptionTranslator.java =================================================================== RCS file: /cvsroot/springframework/spring/src/org/springframework/jdbc/support/SQLErrorCodeSQLExceptionTranslator.java,v retrieving revision 1.33 retrieving revision 1.34 diff -C2 -d -r1.33 -r1.34 *** SQLErrorCodeSQLExceptionTranslator.java 17 Mar 2009 15:12:21 -0000 1.33 --- SQLErrorCodeSQLExceptionTranslator.java 17 Mar 2009 15:20:29 -0000 1.34 *************** *** 188,191 **** --- 188,202 ---- } + // Next, try the custom SQLException translator, if available. + if (this.sqlErrorCodes != null) { + SQLExceptionTranslator customTranslator = this.sqlErrorCodes.getCustomSqlExceptionTranslator(); + if (customTranslator != null) { + DataAccessException customDex = customTranslator.translate(task, sql, sqlEx); + if (customDex != null) { + return customDex; + } + } + } + // Check SQLErrorCodes with corresponding error code, if available. if (this.sqlErrorCodes != null) { |
From: Thomas R. <tri...@us...> - 2009-03-17 15:20:40
|
Update of /cvsroot/springframework/spring/test/org/springframework/jdbc/support In directory fdv4jf1.ch3.sourceforge.com:/tmp/cvs-serv16163/test/org/springframework/jdbc/support Added Files: SQLExceptionCustomTranslatorTests.java CustomSqlExceptionTranslator.java Log Message: added the option of providing a database specific custom SQLExceptionTranslator to provide customized translation for any SQLException before the error codes translation happens (SPR-4899 backport) --- NEW FILE: SQLExceptionCustomTranslatorTests.java --- /* * Copyright 2002-2008 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ package org.springframework.jdbc.support; import org.springframework.dao.DataAccessException; import org.springframework.dao.TransientDataAccessResourceException; import org.springframework.jdbc.BadSqlGrammarException; import java.sql.SQLException; import junit.framework.TestCase; /** * Class to test custom SQLException translation. * * @author Thomas Risberg */ public class SQLExceptionCustomTranslatorTests extends TestCase { private static SQLErrorCodes ERROR_CODES = new SQLErrorCodes(); static { ERROR_CODES.setBadSqlGrammarCodes(new String[] { "1" }); ERROR_CODES.setDataAccessResourceFailureCodes(new String[] { "2" }); ERROR_CODES.setCustomSqlExceptionTranslatorClass(CustomSqlExceptionTranslator.class); } public void testCustomErrorCodeTranslation() { SQLExceptionTranslator sext = new SQLErrorCodeSQLExceptionTranslator(ERROR_CODES); SQLException dataIntegrityViolationEx = SQLExceptionSubclassFactory.newSQLDataException("", "", 1); DataAccessException daeex = sext.translate("task", "SQL", dataIntegrityViolationEx); assertEquals(dataIntegrityViolationEx, daeex.getCause()); assertTrue(daeex instanceof BadSqlGrammarException); SQLException dataAccessResourceEx = SQLExceptionSubclassFactory.newSQLDataException("", "", 2); DataAccessException darex = sext.translate("task", "SQL", dataAccessResourceEx); assertEquals(dataIntegrityViolationEx, daeex.getCause()); assertTrue(darex instanceof TransientDataAccessResourceException); } } --- NEW FILE: CustomSqlExceptionTranslator.java --- /* * Copyright 2002-2009 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ package org.springframework.jdbc.support; import org.springframework.dao.DataAccessException; import org.springframework.dao.TransientDataAccessResourceException; import java.sql.SQLException; /** * Custom SQLException translation for testing. * * @author Thomas Risberg */ public class CustomSqlExceptionTranslator implements SQLExceptionTranslator { public DataAccessException translate(String task, String sql, SQLException ex) { if (ex.getErrorCode() == 2) { return new TransientDataAccessResourceException("Custom", ex); } return null; } } |
From: Thomas R. <tri...@us...> - 2009-03-17 15:12:57
|
Update of /cvsroot/springframework/spring/src/org/springframework/jdbc/support In directory fdv4jf1.ch3.sourceforge.com:/tmp/cvs-serv14903/src/org/springframework/jdbc/support Modified Files: SQLErrorCodeSQLExceptionTranslator.java SQLErrorCodes.java sql-error-codes.xml Log Message: added a DuplicatKeyException catagory for SQLException translation (SPR-5125 backport) Index: SQLErrorCodes.java =================================================================== RCS file: /cvsroot/springframework/spring/src/org/springframework/jdbc/support/SQLErrorCodes.java,v retrieving revision 1.17 retrieving revision 1.18 diff -C2 -d -r1.17 -r1.18 *** SQLErrorCodes.java 7 Nov 2008 20:22:24 -0000 1.17 --- SQLErrorCodes.java 17 Mar 2009 15:12:21 -0000 1.18 *************** *** 18,21 **** --- 18,22 ---- import org.springframework.util.StringUtils; + import org.springframework.dao.InvalidDataAccessResourceUsageException; /** *************** *** 42,45 **** --- 43,48 ---- private String[] invalidResultSetAccessCodes = new String[0]; + private String[] duplicateKeyCodes = new String[0]; + private String[] dataIntegrityViolationCodes = new String[0]; *************** *** 58,62 **** private CustomSQLErrorCodesTranslation[] customTranslations; - /** * Set this property if the database name contains spaces, --- 61,64 ---- *************** *** 96,100 **** } - public void setBadSqlGrammarCodes(String[] badSqlGrammarCodes) { this.badSqlGrammarCodes = StringUtils.sortStringArray(badSqlGrammarCodes); --- 98,101 ---- *************** *** 113,116 **** --- 114,125 ---- } + public String[] getDuplicateKeyCodes() { + return duplicateKeyCodes; + } + + public void setDuplicateKeyCodes(String[] duplicateKeyCodes) { + this.duplicateKeyCodes = duplicateKeyCodes; + } + public void setDataIntegrityViolationCodes(String[] dataIntegrityViolationCodes) { this.dataIntegrityViolationCodes = StringUtils.sortStringArray(dataIntegrityViolationCodes); Index: sql-error-codes.xml =================================================================== RCS file: /cvsroot/springframework/spring/src/org/springframework/jdbc/support/sql-error-codes.xml,v retrieving revision 1.32 retrieving revision 1.33 diff -C2 -d -r1.32 -r1.33 *** sql-error-codes.xml 16 Oct 2008 19:17:16 -0000 1.32 --- sql-error-codes.xml 17 Mar 2009 15:12:21 -0000 1.33 *************** *** 22,27 **** <value>-007,-029,-097,-104,-109,-115,-128,-199,-204,-206,-301,-408,-441,-491</value> </property> <property name="dataIntegrityViolationCodes"> ! <value>-407,-530,-531,-532,-543,-544,-545,-603,-667,-803</value> </property> <property name="dataAccessResourceFailureCodes"> --- 22,30 ---- <value>-007,-029,-097,-104,-109,-115,-128,-199,-204,-206,-301,-408,-441,-491</value> </property> + <property name="duplicateKeyCodes"> + <value>-803</value> + </property> <property name="dataIntegrityViolationCodes"> ! <value>-407,-530,-531,-532,-543,-544,-545,-603,-667</value> </property> <property name="dataAccessResourceFailureCodes"> *************** *** 46,51 **** <value>42802,42821,42X01,42X02,42X03,42X04,42X05,42X06,42X07,42X08</value> </property> <property name="dataIntegrityViolationCodes"> ! <value>22001,22005,23502,23503,23505,23513,X0Y32</value> </property> <property name="dataAccessResourceFailureCodes"> --- 49,57 ---- <value>42802,42821,42X01,42X02,42X03,42X04,42X05,42X06,42X07,42X08</value> </property> + <property name="duplicateKeyCodes"> + <value>23505</value> + </property> <property name="dataIntegrityViolationCodes"> ! <value>22001,22005,23502,23503,23513,X0Y32</value> </property> <property name="dataAccessResourceFailureCodes"> *************** *** 64,69 **** <value>42000,42001,42101,42102,42111,42112,42121,42122,42132</value> </property> <property name="dataIntegrityViolationCodes"> ! <value>22003,22012,22025,23000,23001</value> </property> <property name="dataAccessResourceFailureCodes"> --- 70,78 ---- <value>42000,42001,42101,42102,42111,42112,42121,42122,42132</value> </property> + <property name="duplicateKeyCodes"> + <value>23001</value> + </property> <property name="dataIntegrityViolationCodes"> ! <value>22003,22012,22025,23000</value> </property> <property name="dataAccessResourceFailureCodes"> *************** *** 79,82 **** --- 88,94 ---- <value>-22,-28</value> </property> + <property name="duplicateKeyCodes"> + <value>-104</value> + </property> <property name="dataIntegrityViolationCodes"> <value>-9</value> *************** *** 94,99 **** <value>-201,-217,-696</value> </property> <property name="dataIntegrityViolationCodes"> ! <value>-239,-268,-692,-11030</value> </property> </bean> --- 106,114 ---- <value>-201,-217,-696</value> </property> + <property name="duplicateKeyCodes"> + <value>-239,-268,-6017</value> + </property> <property name="dataIntegrityViolationCodes"> ! <value>-692,-11030</value> </property> </bean> *************** *** 109,114 **** <value>229</value> </property> <property name="dataIntegrityViolationCodes"> ! <value>544,2601,2627,8114,8115</value> </property> <property name="cannotAcquireLockCodes"> --- 124,132 ---- <value>229</value> </property> + <property name="duplicateKeyCodes"> + <value>2601,2627</value> + </property> <property name="dataIntegrityViolationCodes"> ! <value>544,8114,8115</value> </property> <property name="cannotAcquireLockCodes"> *************** *** 124,129 **** <value>1054,1064,1146</value> </property> <property name="dataIntegrityViolationCodes"> ! <value>630,839,840,893,1062,1169,1215,1216,1217,1451,1452,1557</value> </property> <property name="dataAccessResourceFailureCodes"> --- 142,150 ---- <value>1054,1064,1146</value> </property> + <property name="duplicateKeyCodes"> + <value>1062</value> + </property> <property name="dataIntegrityViolationCodes"> ! <value>630,839,840,893,1169,1215,1216,1217,1451,1452,1557</value> </property> <property name="dataAccessResourceFailureCodes"> *************** *** 145,150 **** <value>17003</value> </property> <property name="dataIntegrityViolationCodes"> ! <value>1,1400,1722,2291,2292</value> </property> <property name="dataAccessResourceFailureCodes"> --- 166,174 ---- <value>17003</value> </property> + <property name="duplicateKeyCodes"> + <value>1</value> + </property> <property name="dataIntegrityViolationCodes"> ! <value>1400,1722,2291,2292</value> </property> <property name="dataAccessResourceFailureCodes"> *************** *** 169,174 **** <value>03000,42000,42601,42602,42622,42804,42P01</value> </property> <property name="dataIntegrityViolationCodes"> ! <value>23000,23502,23503,23505,23514</value> </property> <property name="dataAccessResourceFailureCodes"> --- 193,201 ---- <value>03000,42000,42601,42602,42622,42804,42P01</value> </property> + <property name="duplicateKeyCodes"> + <value>23505</value> + </property> <property name="dataIntegrityViolationCodes"> ! <value>23000,23502,23503,23514</value> </property> <property name="dataAccessResourceFailureCodes"> *************** *** 197,202 **** <value>101,102,103,104,105,106,107,108,109,110,111,112,113,116,120,121,123,207,208,213,257,512</value> </property> <property name="dataIntegrityViolationCodes"> ! <value>233,423,511,515,530,547,2601,2615,2714</value> </property> <property name="transientDataAccessResourceCodes"> --- 224,232 ---- <value>101,102,103,104,105,106,107,108,109,110,111,112,113,116,120,121,123,207,208,213,257,512</value> </property> + <property name="duplicateKeyCodes"> + <value>2601</value> + </property> <property name="dataIntegrityViolationCodes"> ! <value>233,423,511,515,530,547,2615,2714</value> </property> <property name="transientDataAccessResourceCodes"> Index: SQLErrorCodeSQLExceptionTranslator.java =================================================================== RCS file: /cvsroot/springframework/spring/src/org/springframework/jdbc/support/SQLErrorCodeSQLExceptionTranslator.java,v retrieving revision 1.32 retrieving revision 1.33 diff -C2 -d -r1.32 -r1.33 *** SQLErrorCodeSQLExceptionTranslator.java 16 Oct 2008 19:17:16 -0000 1.32 --- SQLErrorCodeSQLExceptionTranslator.java 17 Mar 2009 15:12:21 -0000 1.33 *************** *** 33,36 **** --- 33,37 ---- import org.springframework.dao.PermissionDeniedDataAccessException; import org.springframework.dao.TransientDataAccessResourceException; + import org.springframework.dao.DuplicateKeyException; import org.springframework.jdbc.BadSqlGrammarException; import org.springframework.jdbc.InvalidResultSetAccessException; *************** *** 228,231 **** --- 229,236 ---- return new DataIntegrityViolationException(buildMessage(task, sql, sqlEx), sqlEx); } + else if (Arrays.binarySearch(this.sqlErrorCodes.getDuplicateKeyCodes(), errorCode) >= 0) { + logTranslation(task, sql, sqlEx, false); + return new DuplicateKeyException(buildMessage(task, sql, sqlEx), sqlEx); + } else if (Arrays.binarySearch(this.sqlErrorCodes.getPermissionDeniedCodes(), errorCode) >= 0) { logTranslation(task, sql, sqlEx, false); |
From: Thomas R. <tri...@us...> - 2009-03-17 15:12:39
|
Update of /cvsroot/springframework/spring/src/org/springframework/dao In directory fdv4jf1.ch3.sourceforge.com:/tmp/cvs-serv14903/src/org/springframework/dao Added Files: DuplicateKeyException.java Log Message: added a DuplicatKeyException catagory for SQLException translation (SPR-5125 backport) --- NEW FILE: DuplicateKeyException.java --- /* * Copyright 2002-2009 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ package org.springframework.dao; /** * Exception thrown when an attempt to insert or update data * results in violation of an primary key or unique constraint. * Note that this is not necessarily a purely relational concept; * unique primary keys are required by most database types. * * @author Thomas Risberg */ public class DuplicateKeyException extends DataIntegrityViolationException { /** * Constructor for DuplicateKeyException. * @param msg the detail message */ public DuplicateKeyException(String msg) { super(msg); } /** * Constructor for DuplicateKeyException. * @param msg the detail message * @param cause the root cause from the data access API in use */ public DuplicateKeyException(String msg, Throwable cause) { super(msg, cause); } } |
From: Thomas R. <tri...@us...> - 2009-03-17 15:12:38
|
Update of /cvsroot/springframework/spring/test/org/springframework/jdbc/support In directory fdv4jf1.ch3.sourceforge.com:/tmp/cvs-serv14903/test/org/springframework/jdbc/support Modified Files: SQLErrorCodeSQLExceptionTranslatorTests.java Log Message: added a DuplicatKeyException catagory for SQLException translation (SPR-5125 backport) Index: SQLErrorCodeSQLExceptionTranslatorTests.java =================================================================== RCS file: /cvsroot/springframework/spring/test/org/springframework/jdbc/support/SQLErrorCodeSQLExceptionTranslatorTests.java,v retrieving revision 1.9 retrieving revision 1.10 diff -C2 -d -r1.9 -r1.10 *** SQLErrorCodeSQLExceptionTranslatorTests.java 29 Aug 2007 21:00:48 -0000 1.9 --- SQLErrorCodeSQLExceptionTranslatorTests.java 17 Mar 2009 15:12:22 -0000 1.10 *************** *** 28,31 **** --- 28,32 ---- import org.springframework.dao.DataIntegrityViolationException; import org.springframework.dao.DeadlockLoserDataAccessException; + import org.springframework.dao.DuplicateKeyException; import org.springframework.jdbc.BadSqlGrammarException; import org.springframework.jdbc.InvalidResultSetAccessException; *************** *** 40,43 **** --- 41,45 ---- ERROR_CODES.setBadSqlGrammarCodes(new String[] { "1", "2" }); ERROR_CODES.setInvalidResultSetAccessCodes(new String[] { "3", "4" }); + ERROR_CODES.setDuplicateKeyCodes(new String[] {"10"}); ERROR_CODES.setDataAccessResourceFailureCodes(new String[] { "5" }); ERROR_CODES.setDataIntegrityViolationCodes(new String[] { "6" }); *************** *** 65,68 **** --- 67,76 ---- checkTranslation(sext, 8, DeadlockLoserDataAccessException.class); checkTranslation(sext, 9, CannotSerializeTransactionException.class); + checkTranslation(sext, 10, DuplicateKeyException.class); + + SQLException dupKeyEx = new SQLException("", "", 10); + DataAccessException dksex = sext.translate("task", "SQL", dupKeyEx); + assertTrue("Not instance of DataIntegrityViolationException", + DataIntegrityViolationException.class.isAssignableFrom(dksex.getClass())); // Test fallback. We assume that no database will ever return this error code, |
Update of /cvsroot/springframework/spring/osgi/bundlor In directory fdv4jf1.ch3.sourceforge.com:/tmp/cvs-serv27861/osgi/bundlor Modified Files: Tag: branch-2-5-6-p1 org.springframework.aspects.mf org.springframework.transaction.mf org.springframework.web.struts.mf org.springframework.beans.mf org.springframework.web.mf org.springframework.web.servlet.mf org.springframework.test.mf org.springframework.orm.mf org.springframework.jms.mf org.springframework.context.mf org.springframework.context.support.mf org.springframework.jdbc.mf org.springframework.aop.mf org.springframework.web.portlet.mf Log Message: fix for garbage collection issue Index: org.springframework.jdbc.mf =================================================================== RCS file: /cvsroot/springframework/spring/osgi/bundlor/org.springframework.jdbc.mf,v retrieving revision 1.4 retrieving revision 1.4.2.1 diff -C2 -d -r1.4 -r1.4.2.1 *** org.springframework.jdbc.mf 28 Oct 2008 17:12:08 -0000 1.4 --- org.springframework.jdbc.mf 16 Mar 2009 12:42:31 -0000 1.4.2.1 *************** *** 16,25 **** org.apache.commons.logging.*;version="[1.0.4, 2.0.0)", org.enhydra.jdbc.*;version="[1.5.0, 2.0.0)";resolution:=optional, ! org.springframework.beans.*;version="[2.5.6, 2.5.6]";resolution:=optional, ! org.springframework.core.*;version="[2.5.6, 2.5.6]";resolution:=optional, ! org.springframework.dao.*;version="[2.5.6, 2.5.6]", ! org.springframework.jndi.*;version="[2.5.6, 2.5.6]";resolution:=optional, ! org.springframework.transaction.*;version="[2.5.6, 2.5.6]";resolution:=optional, ! org.springframework.util;version="[2.5.6, 2.5.6]";resolution:=optional, *;resolution:=optional Unversioned-Imports: --- 16,25 ---- org.apache.commons.logging.*;version="[1.0.4, 2.0.0)", org.enhydra.jdbc.*;version="[1.5.0, 2.0.0)";resolution:=optional, ! org.springframework.beans.*;version="[2.5.6, 2.5.6.PR01]";resolution:=optional, ! org.springframework.core.*;version="[2.5.6, 2.5.6.PR01]";resolution:=optional, ! org.springframework.dao.*;version="[2.5.6, 2.5.6.PR01]", ! org.springframework.jndi.*;version="[2.5.6, 2.5.6.PR01]";resolution:=optional, ! org.springframework.transaction.*;version="[2.5.6, 2.5.6.PR01]";resolution:=optional, ! org.springframework.util;version="[2.5.6, 2.5.6.PR01]";resolution:=optional, *;resolution:=optional Unversioned-Imports: Index: org.springframework.test.mf =================================================================== RCS file: /cvsroot/springframework/spring/osgi/bundlor/org.springframework.test.mf,v retrieving revision 1.4 retrieving revision 1.4.2.1 diff -C2 -d -r1.4 -r1.4.2.1 *** org.springframework.test.mf 28 Oct 2008 17:12:08 -0000 1.4 --- org.springframework.test.mf 16 Mar 2009 12:42:31 -0000 1.4.2.1 *************** *** 15,19 **** org.aspectj.weaver.*;version="[1.5.4, 2.0.0)";resolution:=optional, org.junit.*;version="[4.4.0, 5.0.0)";resolution:=optional, ! org.springframework.*;version="[2.5.6, 2.5.6]";resolution:=optional, org.testng.*;version="[5.8.0, 6.0.0)";resolution:=optional Unversioned-Imports: --- 15,19 ---- org.aspectj.weaver.*;version="[1.5.4, 2.0.0)";resolution:=optional, org.junit.*;version="[4.4.0, 5.0.0)";resolution:=optional, ! org.springframework.*;version="[2.5.6, 2.5.6.PR01]";resolution:=optional, org.testng.*;version="[5.8.0, 6.0.0)";resolution:=optional Unversioned-Imports: Index: org.springframework.orm.mf =================================================================== RCS file: /cvsroot/springframework/spring/osgi/bundlor/org.springframework.orm.mf,v retrieving revision 1.5 retrieving revision 1.5.2.1 diff -C2 -d -r1.5 -r1.5.2.1 *** org.springframework.orm.mf 28 Oct 2008 17:12:08 -0000 1.5 --- org.springframework.orm.mf 16 Mar 2009 12:42:31 -0000 1.5.2.1 *************** *** 50,65 **** org.hibernate.usertype;version="[3.2.6.ga, 4.0.0)";resolution:=optional, org.hibernate.util;version="[3.2.6.ga, 4.0.0)";resolution:=optional, ! org.springframework.aop.*;version="[2.5.6, 2.5.6]";resolution:=optional, ! org.springframework.beans.*;version="[2.5.6, 2.5.6]";resolution:=optional, ! org.springframework.context.*;version="[2.5.6, 2.5.6]";resolution:=optional, ! org.springframework.core.*;version="[2.5.6, 2.5.6]";resolution:=optional, ! org.springframework.dao.*;version="[2.5.6, 2.5.6]", ! org.springframework.instrument.classloading.*;version="[2.5.6, 2.5.6]";resolution:=optional, ! org.springframework.jdbc.*;version="[2.5.6, 2.5.6]";resolution:=optional, ! org.springframework.jndi.*;version="[2.5.6, 2.5.6]";resolution:=optional, ! org.springframework.transaction.*;version="[2.5.6, 2.5.6]";resolution:=optional, ! org.springframework.util.*;version="[2.5.6, 2.5.6]";resolution:=optional, ! org.springframework.web.*;version="[2.5.6, 2.5.6]";resolution:=optional, ! org.springframework.ui.*;version="[2.5.6, 2.5.6]";resolution:=optional, *;resolution:=optional, Unversioned-Imports: --- 50,65 ---- org.hibernate.usertype;version="[3.2.6.ga, 4.0.0)";resolution:=optional, org.hibernate.util;version="[3.2.6.ga, 4.0.0)";resolution:=optional, ! org.springframework.aop.*;version="[2.5.6, 2.5.6.PR01]";resolution:=optional, ! org.springframework.beans.*;version="[2.5.6, 2.5.6.PR01]";resolution:=optional, ! org.springframework.context.*;version="[2.5.6, 2.5.6.PR01]";resolution:=optional, ! org.springframework.core.*;version="[2.5.6, 2.5.6.PR01]";resolution:=optional, ! org.springframework.dao.*;version="[2.5.6, 2.5.6.PR01]", ! org.springframework.instrument.classloading.*;version="[2.5.6, 2.5.6.PR01]";resolution:=optional, ! org.springframework.jdbc.*;version="[2.5.6, 2.5.6.PR01]";resolution:=optional, ! org.springframework.jndi.*;version="[2.5.6, 2.5.6.PR01]";resolution:=optional, ! org.springframework.transaction.*;version="[2.5.6, 2.5.6.PR01]";resolution:=optional, ! org.springframework.util.*;version="[2.5.6, 2.5.6.PR01]";resolution:=optional, ! org.springframework.web.*;version="[2.5.6, 2.5.6.PR01]";resolution:=optional, ! org.springframework.ui.*;version="[2.5.6, 2.5.6.PR01]";resolution:=optional, *;resolution:=optional, Unversioned-Imports: Index: org.springframework.aop.mf =================================================================== RCS file: /cvsroot/springframework/spring/osgi/bundlor/org.springframework.aop.mf,v retrieving revision 1.4 retrieving revision 1.4.2.1 diff -C2 -d -r1.4 -r1.4.2.1 *** org.springframework.aop.mf 28 Oct 2008 17:12:08 -0000 1.4 --- org.springframework.aop.mf 16 Mar 2009 12:42:31 -0000 1.4.2.1 *************** *** 10,16 **** org.apache.commons.pool.*;version="[1.3.0, 2.0.0)";resolution:=optional, org.aspectj.*;version="[1.5.4, 2.0.0)";resolution:=optional, ! org.springframework.beans.*;version="[2.5.6, 2.5.6]";resolution:=optional, ! org.springframework.core.*;version="[2.5.6, 2.5.6]";resolution:=optional, ! org.springframework.util.*;version="[2.5.6, 2.5.6]";resolution:=optional, *;resolution:=optional Unversioned-Imports: --- 10,16 ---- org.apache.commons.pool.*;version="[1.3.0, 2.0.0)";resolution:=optional, org.aspectj.*;version="[1.5.4, 2.0.0)";resolution:=optional, ! org.springframework.beans.*;version="[2.5.6, 2.5.6.PR01]";resolution:=optional, ! org.springframework.core.*;version="[2.5.6, 2.5.6.PR01]";resolution:=optional, ! org.springframework.util.*;version="[2.5.6, 2.5.6.PR01]";resolution:=optional, *;resolution:=optional Unversioned-Imports: Index: org.springframework.transaction.mf =================================================================== RCS file: /cvsroot/springframework/spring/osgi/bundlor/org.springframework.transaction.mf,v retrieving revision 1.4 retrieving revision 1.4.2.1 diff -C2 -d -r1.4 -r1.4.2.1 *** org.springframework.transaction.mf 28 Oct 2008 17:12:08 -0000 1.4 --- org.springframework.transaction.mf 16 Mar 2009 12:42:31 -0000 1.4.2.1 *************** *** 7,11 **** com.ibm.ws.Transaction;resolution:=optional, oracle.j2ee.transaction;resolution:=optional, ! org.springframework.stereotype;version="[2.5.6, 2.5.6]";resolution:=optional, weblogic.transaction;resolution:=optional Import-Template: --- 7,11 ---- com.ibm.ws.Transaction;resolution:=optional, oracle.j2ee.transaction;resolution:=optional, ! org.springframework.stereotype;version="[2.5.6, 2.5.6.PR01]";resolution:=optional, weblogic.transaction;resolution:=optional Import-Template: *************** *** 17,28 **** org.apache.commons.logging.*;version="[1.0.4, 2.0.0)", org.objectweb.jotm.*;version="[2.0.10, 3.0.0)";resolution:=optional, ! org.springframework.aop.*;version="[2.5.6, 2.5.6]";resolution:=optional, ! org.springframework.beans.*;version="[2.5.6, 2.5.6]";resolution:=optional, ! org.springframework.context.*;version="[2.5.6, 2.5.6]";resolution:=optional, ! org.springframework.core.*;version="[2.5.6, 2.5.6]";resolution:=optional, ! org.springframework.jndi.*;version="[2.5.6, 2.5.6]";resolution:=optional, ! org.springframework.metadata.*;version="[2.5.6, 2.5.6]";resolution:=optional, ! org.springframework.scheduling.*;version="[2.5.6, 2.5.6]";resolution:=optional, ! org.springframework.util.*;version="[2.5.6, 2.5.6]";resolution:=optional, *;resolution:=optional Unversioned-Imports: --- 17,28 ---- org.apache.commons.logging.*;version="[1.0.4, 2.0.0)", org.objectweb.jotm.*;version="[2.0.10, 3.0.0)";resolution:=optional, ! org.springframework.aop.*;version="[2.5.6, 2.5.6.PR01]";resolution:=optional, ! org.springframework.beans.*;version="[2.5.6, 2.5.6.PR01]";resolution:=optional, ! org.springframework.context.*;version="[2.5.6, 2.5.6.PR01]";resolution:=optional, ! org.springframework.core.*;version="[2.5.6, 2.5.6.PR01]";resolution:=optional, ! org.springframework.jndi.*;version="[2.5.6, 2.5.6.PR01]";resolution:=optional, ! org.springframework.metadata.*;version="[2.5.6, 2.5.6.PR01]";resolution:=optional, ! org.springframework.scheduling.*;version="[2.5.6, 2.5.6.PR01]";resolution:=optional, ! org.springframework.util.*;version="[2.5.6, 2.5.6.PR01]";resolution:=optional, *;resolution:=optional Unversioned-Imports: Index: org.springframework.web.portlet.mf =================================================================== RCS file: /cvsroot/springframework/spring/osgi/bundlor/org.springframework.web.portlet.mf,v retrieving revision 1.4 retrieving revision 1.4.2.1 diff -C2 -d -r1.4 -r1.4.2.1 *** org.springframework.web.portlet.mf 28 Oct 2008 17:12:08 -0000 1.4 --- org.springframework.web.portlet.mf 16 Mar 2009 12:42:31 -0000 1.4.2.1 *************** *** 8,19 **** org.apache.commons.fileupload.*;version="[1.2.0, 2.0.0)";resolution:=optional, org.apache.commons.logging.*;version="[1.0.4, 2.0.0)", ! org.springframework.beans.*;version="[2.5.6, 2.5.6]";resolution:=optional, ! org.springframework.context.*;version="[2.5.6, 2.5.6]";resolution:=optional, ! org.springframework.core.*;version="[2.5.6, 2.5.6]";resolution:=optional, ! org.springframework.stereotype;version="[2.5.6, 2.5.6]";resolution:=optional, ! org.springframework.ui.*;version="[2.5.6, 2.5.6]";resolution:=optional, ! org.springframework.util.*;version="[2.5.6, 2.5.6]";resolution:=optional, ! org.springframework.validation.*;version="[2.5.6, 2.5.6]";resolution:=optional, ! org.springframework.web.*;version="[2.5.6, 2.5.6]";resolution:=optional, *;resolution:=optional Unversioned-Imports: --- 8,19 ---- org.apache.commons.fileupload.*;version="[1.2.0, 2.0.0)";resolution:=optional, org.apache.commons.logging.*;version="[1.0.4, 2.0.0)", ! org.springframework.beans.*;version="[2.5.6, 2.5.6.PR01]";resolution:=optional, ! org.springframework.context.*;version="[2.5.6, 2.5.6.PR01]";resolution:=optional, ! org.springframework.core.*;version="[2.5.6, 2.5.6.PR01]";resolution:=optional, ! org.springframework.stereotype;version="[2.5.6, 2.5.6.PR01]";resolution:=optional, ! org.springframework.ui.*;version="[2.5.6, 2.5.6.PR01]";resolution:=optional, ! org.springframework.util.*;version="[2.5.6, 2.5.6.PR01]";resolution:=optional, ! org.springframework.validation.*;version="[2.5.6, 2.5.6.PR01]";resolution:=optional, ! org.springframework.web.*;version="[2.5.6, 2.5.6.PR01]";resolution:=optional, *;resolution:=optional Unversioned-Imports: Index: org.springframework.beans.mf =================================================================== RCS file: /cvsroot/springframework/spring/osgi/bundlor/org.springframework.beans.mf,v retrieving revision 1.4 retrieving revision 1.4.2.1 diff -C2 -d -r1.4 -r1.4.2.1 *** org.springframework.beans.mf 28 Oct 2008 17:12:08 -0000 1.4 --- org.springframework.beans.mf 16 Mar 2009 12:42:31 -0000 1.4.2.1 *************** *** 7,12 **** net.sf.cglib.*;version="[2.1.3, 2.2.0)";resolution:=optional, org.apache.commons.logging.*;version="[1.0.4, 2.0.0)", ! org.springframework.core.*;version="[2.5.6, 2.5.6]";resolution:=optional, ! org.springframework.util.*;version="[2.5.6, 2.5.6]";resolution:=optional, *;resolution:=optional Unversioned-Imports: --- 7,12 ---- net.sf.cglib.*;version="[2.1.3, 2.2.0)";resolution:=optional, org.apache.commons.logging.*;version="[1.0.4, 2.0.0)", ! org.springframework.core.*;version="[2.5.6, 2.5.6.PR01]";resolution:=optional, ! org.springframework.util.*;version="[2.5.6, 2.5.6.PR01]";resolution:=optional, *;resolution:=optional Unversioned-Imports: Index: org.springframework.web.mf =================================================================== RCS file: /cvsroot/springframework/spring/osgi/bundlor/org.springframework.web.mf,v retrieving revision 1.5 retrieving revision 1.5.2.1 diff -C2 -d -r1.5 -r1.5.2.1 *** org.springframework.web.mf 30 Oct 2008 14:45:16 -0000 1.5 --- org.springframework.web.mf 16 Mar 2009 12:42:31 -0000 1.5.2.1 *************** *** 19,29 **** org.apache.log4j.*;version="[1.2.15, 2.0.0)";resolution:=optional, org.apache.taglibs.*;version="[1.1.2, 2.0.0)";resolution:=optional, ! org.springframework.aop.*;version="[2.5.6, 2.5.6]";resolution:=optional, ! org.springframework.beans.*;version="[2.5.6, 2.5.6]";resolution:=optional, ! org.springframework.context.*;version="[2.5.6, 2.5.6]";resolution:=optional, ! org.springframework.core.*;version="[2.5.6, 2.5.6]";resolution:=optional, ! org.springframework.remoting.*;version="[2.5.6, 2.5.6]";resolution:=optional, ! org.springframework.ui.*;version="[2.5.6, 2.5.6]";resolution:=optional, ! org.springframework.util.*;version="[2.5.6, 2.5.6]";resolution:=optional, *;resolution:=optional Unversioned-Imports: --- 19,29 ---- org.apache.log4j.*;version="[1.2.15, 2.0.0)";resolution:=optional, org.apache.taglibs.*;version="[1.1.2, 2.0.0)";resolution:=optional, ! org.springframework.aop.*;version="[2.5.6, 2.5.6.PR01]";resolution:=optional, ! org.springframework.beans.*;version="[2.5.6, 2.5.6.PR01]";resolution:=optional, ! org.springframework.context.*;version="[2.5.6, 2.5.6.PR01]";resolution:=optional, ! org.springframework.core.*;version="[2.5.6, 2.5.6.PR01]";resolution:=optional, ! org.springframework.remoting.*;version="[2.5.6, 2.5.6.PR01]";resolution:=optional, ! org.springframework.ui.*;version="[2.5.6, 2.5.6.PR01]";resolution:=optional, ! org.springframework.util.*;version="[2.5.6, 2.5.6.PR01]";resolution:=optional, *;resolution:=optional Unversioned-Imports: Index: org.springframework.context.mf =================================================================== RCS file: /cvsroot/springframework/spring/osgi/bundlor/org.springframework.context.mf,v retrieving revision 1.4 retrieving revision 1.4.2.1 diff -C2 -d -r1.4 -r1.4.2.1 *** org.springframework.context.mf 28 Oct 2008 17:12:08 -0000 1.4 --- org.springframework.context.mf 16 Mar 2009 12:42:31 -0000 1.4.2.1 *************** *** 5,9 **** Import-Package: javax.persistence;version="[1.0.0, 2.0.0)";resolution:=optional, ! org.springframework.orm.jpa.support;version="[2.5.6, 2.5.6]";resolution:=optional, com.ibm.websphere.management;resolution:=optional Import-Template: --- 5,9 ---- Import-Package: javax.persistence;version="[1.0.0, 2.0.0)";resolution:=optional, ! org.springframework.orm.jpa.support;version="[2.5.6, 2.5.6.PR01]";resolution:=optional, com.ibm.websphere.management;resolution:=optional Import-Template: *************** *** 25,34 **** org.codehaus.groovy.*;version="[1.5.1, 2.0.0)";resolution:=optional, org.jruby.*;version="[1.1.0, 2.0.0)";resolution:=optional, ! org.springframework.aop.*;version="[2.5.6, 2.5.6]";resolution:=optional, ! org.springframework.beans.*;version="[2.5.6, 2.5.6]";resolution:=optional, ! org.springframework.core.*;version="[2.5.6, 2.5.6]";resolution:=optional, ! org.springframework.instrument.*;version="[2.5.6, 2.5.6]";resolution:=optional, ! org.springframework.metadata.*;version="[2.5.6, 2.5.6]";resolution:=optional, ! org.springframework.util.*;version="[2.5.6, 2.5.6]";resolution:=optional, *;resolution:=optional, Unversioned-Imports: --- 25,34 ---- org.codehaus.groovy.*;version="[1.5.1, 2.0.0)";resolution:=optional, org.jruby.*;version="[1.1.0, 2.0.0)";resolution:=optional, ! org.springframework.aop.*;version="[2.5.6, 2.5.6.PR01]";resolution:=optional, ! org.springframework.beans.*;version="[2.5.6, 2.5.6.PR01]";resolution:=optional, ! org.springframework.core.*;version="[2.5.6, 2.5.6.PR01]";resolution:=optional, ! org.springframework.instrument.*;version="[2.5.6, 2.5.6.PR01]";resolution:=optional, ! org.springframework.metadata.*;version="[2.5.6, 2.5.6.PR01]";resolution:=optional, ! org.springframework.util.*;version="[2.5.6, 2.5.6.PR01]";resolution:=optional, *;resolution:=optional, Unversioned-Imports: Index: org.springframework.web.struts.mf =================================================================== RCS file: /cvsroot/springframework/spring/osgi/bundlor/org.springframework.web.struts.mf,v retrieving revision 1.3 retrieving revision 1.3.2.1 diff -C2 -d -r1.3 -r1.3.2.1 *** org.springframework.web.struts.mf 28 Oct 2008 13:04:32 -0000 1.3 --- org.springframework.web.struts.mf 16 Mar 2009 12:42:31 -0000 1.3.2.1 *************** *** 8,14 **** org.apache.commons.logging.*;version="[1.0.4, 2.0.0)", org.apache.struts.*;version="[1.2.9, 2.0.0)", ! org.springframework.beans.*;version="[2.5.6, 2.5.6]", ! org.springframework.context.*;version="[2.5.6, 2.5.6]", ! org.springframework.util.*;version="[2.5.6, 2.5.6]", ! org.springframework.validation.*;version="[2.5.6, 2.5.6]", ! org.springframework.web.*;version="[2.5.6, 2.5.6]" --- 8,14 ---- org.apache.commons.logging.*;version="[1.0.4, 2.0.0)", org.apache.struts.*;version="[1.2.9, 2.0.0)", ! org.springframework.beans.*;version="[2.5.6, 2.5.6.PR01]", ! org.springframework.context.*;version="[2.5.6, 2.5.6.PR01]", ! org.springframework.util.*;version="[2.5.6, 2.5.6.PR01]", ! org.springframework.validation.*;version="[2.5.6, 2.5.6.PR01]", ! org.springframework.web.*;version="[2.5.6, 2.5.6.PR01]" Index: org.springframework.context.support.mf =================================================================== RCS file: /cvsroot/springframework/spring/osgi/bundlor/org.springframework.context.support.mf,v retrieving revision 1.4 retrieving revision 1.4.2.1 diff -C2 -d -r1.4 -r1.4.2.1 *** org.springframework.context.support.mf 28 Oct 2008 17:12:08 -0000 1.4 --- org.springframework.context.support.mf 16 Mar 2009 12:42:31 -0000 1.4.2.1 *************** *** 14,25 **** org.apache.velocity.*;version="[1.5.0, 2.0.0)";resolution:=optional, org.quartz.*;version="[1.6.0, 2.0.0)";resolution:=optional, ! org.springframework.beans.*;version="[2.5.6, 2.5.6]";resolution:=optional, ! org.springframework.context.*;version="[2.5.6, 2.5.6]";resolution:=optional, ! org.springframework.core.*;version="[2.5.6, 2.5.6]";resolution:=optional, ! org.springframework.jdbc.datasource.*;version="[2.5.6, 2.5.6]";resolution:=optional, ! org.springframework.jndi.*;version="[2.5.6, 2.5.6]";resolution:=optional, ! org.springframework.scheduling.*;version="[2.5.6, 2.5.6]";resolution:=optional, ! org.springframework.transaction.*;version="[2.5.6, 2.5.6]";resolution:=optional, ! org.springframework.util.*;version="[2.5.6, 2.5.6]";resolution:=optional, *;resolution:=optional Unversioned-Imports: --- 14,25 ---- org.apache.velocity.*;version="[1.5.0, 2.0.0)";resolution:=optional, org.quartz.*;version="[1.6.0, 2.0.0)";resolution:=optional, ! org.springframework.beans.*;version="[2.5.6, 2.5.6.PR01]";resolution:=optional, ! org.springframework.context.*;version="[2.5.6, 2.5.6.PR01]";resolution:=optional, ! org.springframework.core.*;version="[2.5.6, 2.5.6.PR01]";resolution:=optional, ! org.springframework.jdbc.datasource.*;version="[2.5.6, 2.5.6.PR01]";resolution:=optional, ! org.springframework.jndi.*;version="[2.5.6, 2.5.6.PR01]";resolution:=optional, ! org.springframework.scheduling.*;version="[2.5.6, 2.5.6.PR01]";resolution:=optional, ! org.springframework.transaction.*;version="[2.5.6, 2.5.6.PR01]";resolution:=optional, ! org.springframework.util.*;version="[2.5.6, 2.5.6.PR01]";resolution:=optional, *;resolution:=optional Unversioned-Imports: Index: org.springframework.web.servlet.mf =================================================================== RCS file: /cvsroot/springframework/spring/osgi/bundlor/org.springframework.web.servlet.mf,v retrieving revision 1.4 retrieving revision 1.4.2.1 diff -C2 -d -r1.4 -r1.4.2.1 *** org.springframework.web.servlet.mf 28 Oct 2008 17:12:08 -0000 1.4 --- org.springframework.web.servlet.mf 16 Mar 2009 12:42:31 -0000 1.4.2.1 *************** *** 4,8 **** Bundle-ManifestVersion: 2 Import-Package: ! org.springframework.stereotype;version="[2.5.6, 2.5.6]";resolution:=optional, org.apache.tiles.definition;version="[2.0.5.osgi, 3.0.0)";resolution:=optional, org.apache.tiles.jsp.context;version="[2.0.5, 3.0.0)";resolution:=optional --- 4,8 ---- Bundle-ManifestVersion: 2 Import-Package: ! org.springframework.stereotype;version="[2.5.6, 2.5.6.PR01]";resolution:=optional, org.apache.tiles.definition;version="[2.0.5.osgi, 3.0.0)";resolution:=optional, org.apache.tiles.jsp.context;version="[2.0.5, 3.0.0)";resolution:=optional *************** *** 36,46 **** org.apache.velocity.tools.generic;version="[1.4.0, 2.0.0)";resolution:=optional, org.apache.velocity.tools.view.*;version="[1.4.0, 2.0.0)";resolution:=optional, ! org.springframework.beans.*;version="[2.5.6, 2.5.6]";resolution:=optional, ! org.springframework.context.*;version="[2.5.6, 2.5.6]";resolution:=optional, ! org.springframework.core.*;version="[2.5.6, 2.5.6]";resolution:=optional, ! org.springframework.ui.*;version="[2.5.6, 2.5.6]";resolution:=optional, ! org.springframework.util.*;version="[2.5.6, 2.5.6]";resolution:=optional, ! org.springframework.validation.*;version="[2.5.6, 2.5.6]";resolution:=optional, ! org.springframework.web.*;version="[2.5.6, 2.5.6]";resolution:=optional, *;resolution:=optional, Unversioned-Imports: --- 36,46 ---- org.apache.velocity.tools.generic;version="[1.4.0, 2.0.0)";resolution:=optional, org.apache.velocity.tools.view.*;version="[1.4.0, 2.0.0)";resolution:=optional, ! org.springframework.beans.*;version="[2.5.6, 2.5.6.PR01]";resolution:=optional, ! org.springframework.context.*;version="[2.5.6, 2.5.6.PR01]";resolution:=optional, ! org.springframework.core.*;version="[2.5.6, 2.5.6.PR01]";resolution:=optional, ! org.springframework.ui.*;version="[2.5.6, 2.5.6.PR01]";resolution:=optional, ! org.springframework.util.*;version="[2.5.6, 2.5.6.PR01]";resolution:=optional, ! org.springframework.validation.*;version="[2.5.6, 2.5.6.PR01]";resolution:=optional, ! org.springframework.web.*;version="[2.5.6, 2.5.6.PR01]";resolution:=optional, *;resolution:=optional, Unversioned-Imports: Index: org.springframework.aspects.mf =================================================================== RCS file: /cvsroot/springframework/spring/osgi/bundlor/org.springframework.aspects.mf,v retrieving revision 1.3 retrieving revision 1.3.2.1 diff -C2 -d -r1.3 -r1.3.2.1 *** org.springframework.aspects.mf 28 Oct 2008 13:04:32 -0000 1.3 --- org.springframework.aspects.mf 16 Mar 2009 12:42:31 -0000 1.3.2.1 *************** *** 6,9 **** org.apache.commons.logging.*;version="[1.0.4, 2.0.0)", org.aspectj.*;version="[1.5.4, 2.0.0)";resolution:=optional, ! org.springframework.beans.*;version="[2.5.6, 2.5.6]";resolution:=optional, ! org.springframework.transaction.*;version="[2.5.6, 2.5.6]";resolution:=optional --- 6,9 ---- org.apache.commons.logging.*;version="[1.0.4, 2.0.0)", org.aspectj.*;version="[1.5.4, 2.0.0)";resolution:=optional, ! org.springframework.beans.*;version="[2.5.6, 2.5.6.PR01]";resolution:=optional, ! org.springframework.transaction.*;version="[2.5.6, 2.5.6.PR01]";resolution:=optional Index: org.springframework.jms.mf =================================================================== RCS file: /cvsroot/springframework/spring/osgi/bundlor/org.springframework.jms.mf,v retrieving revision 1.4 retrieving revision 1.4.2.1 diff -C2 -d -r1.4 -r1.4.2.1 *** org.springframework.jms.mf 28 Oct 2008 17:12:08 -0000 1.4 --- org.springframework.jms.mf 16 Mar 2009 12:42:31 -0000 1.4.2.1 *************** *** 9,22 **** org.apache.commons.logging;version="[1.0.4, 2.0.0)", org.apache.commons.pool.*;version="[1.3.0, 2.0.0)";resolution:=optional, ! org.springframework.aop.*;version="[2.5.6, 2.5.6]";resolution:=optional, ! org.springframework.beans.*;version="[2.5.6, 2.5.6]";resolution:=optional, ! org.springframework.context.*;version="[2.5.6, 2.5.6]";resolution:=optional, ! org.springframework.core.*;version="[2.5.6, 2.5.6]";resolution:=optional, ! org.springframework.jca.*;version="[2.5.6, 2.5.6]";resolution:=optional, ! org.springframework.jndi.*;version="[2.5.6, 2.5.6]";resolution:=optional, ! org.springframework.remoting.*;version="[2.5.6, 2.5.6]";resolution:=optional, ! org.springframework.scheduling.*;version="[2.5.6, 2.5.6]";resolution:=optional, ! org.springframework.transaction.*;version="[2.5.6, 2.5.6]";resolution:=optional, ! org.springframework.util.*;version="[2.5.6, 2.5.6]";resolution:=optional, *;resolution:=optional Unversioned-Imports: --- 9,22 ---- org.apache.commons.logging;version="[1.0.4, 2.0.0)", org.apache.commons.pool.*;version="[1.3.0, 2.0.0)";resolution:=optional, ! org.springframework.aop.*;version="[2.5.6, 2.5.6.PR01]";resolution:=optional, ! org.springframework.beans.*;version="[2.5.6, 2.5.6.PR01]";resolution:=optional, ! org.springframework.context.*;version="[2.5.6, 2.5.6.PR01]";resolution:=optional, ! org.springframework.core.*;version="[2.5.6, 2.5.6.PR01]";resolution:=optional, ! org.springframework.jca.*;version="[2.5.6, 2.5.6.PR01]";resolution:=optional, ! org.springframework.jndi.*;version="[2.5.6, 2.5.6.PR01]";resolution:=optional, ! org.springframework.remoting.*;version="[2.5.6, 2.5.6.PR01]";resolution:=optional, ! org.springframework.scheduling.*;version="[2.5.6, 2.5.6.PR01]";resolution:=optional, ! org.springframework.transaction.*;version="[2.5.6, 2.5.6.PR01]";resolution:=optional, ! org.springframework.util.*;version="[2.5.6, 2.5.6.PR01]";resolution:=optional, *;resolution:=optional Unversioned-Imports: |
From: Thomas R. <tri...@us...> - 2009-03-15 18:44:49
|
Update of /cvsroot/springframework/spring/src/org/springframework/core In directory fdv4jf1.ch3.sourceforge.com:/tmp/cvs-serv14208/src/org/springframework/core Modified Files: Tag: branch-2-5-6-p1 GenericTypeResolver.java Log Message: fix for garbage collection issue Index: GenericTypeResolver.java =================================================================== RCS file: /cvsroot/springframework/spring/src/org/springframework/core/GenericTypeResolver.java,v retrieving revision 1.3 retrieving revision 1.3.2.1 diff -C2 -d -r1.3 -r1.3.2.1 *** GenericTypeResolver.java 8 May 2008 10:58:34 -0000 1.3 --- GenericTypeResolver.java 15 Mar 2009 18:44:28 -0000 1.3.2.1 *************** *** 22,25 **** --- 22,27 ---- import java.lang.reflect.Type; import java.lang.reflect.TypeVariable; + import java.lang.ref.WeakReference; + import java.lang.ref.Reference; import java.util.Collections; import java.util.HashMap; *************** *** 143,147 **** */ static Map getTypeVariableMap(Class clazz) { ! Map typeVariableMap = (Map) typeVariableCache.get(clazz); if (typeVariableMap == null) { --- 145,150 ---- */ static Map getTypeVariableMap(Class clazz) { ! Reference ref = (Reference) typeVariableCache.get(clazz); ! Map typeVariableMap = (Map) (ref != null ? ref.get() : null); if (typeVariableMap == null) { *************** *** 175,179 **** } ! typeVariableCache.put(clazz, typeVariableMap); } --- 178,182 ---- } ! typeVariableCache.put(clazz, new WeakReference(typeVariableMap)); } |
From: Thomas R. <tri...@us...> - 2009-03-15 18:44:44
|
Update of /cvsroot/springframework/spring In directory fdv4jf1.ch3.sourceforge.com:/tmp/cvs-serv14208 Modified Files: Tag: branch-2-5-6-p1 project.properties Log Message: fix for garbage collection issue Index: project.properties =================================================================== RCS file: /cvsroot/springframework/spring/project.properties,v retrieving revision 1.160 retrieving revision 1.160.2.1 diff -C2 -d -r1.160 -r1.160.2.1 *** project.properties 23 Oct 2008 22:37:22 -0000 1.160 --- project.properties 15 Mar 2009 18:44:28 -0000 1.160.2.1 *************** *** 15,19 **** # Spring OSGi version, to be used in version information # '-' is explicitly disallowed ! spring-version-osgi=2.5.6 # Compile with debug code --- 15,19 ---- # Spring OSGi version, to be used in version information # '-' is explicitly disallowed ! spring-version-osgi=2.5.6.PR01 # Compile with debug code |
From: Thomas R. <tri...@us...> - 2009-02-19 15:15:35
|
Update of /cvsroot/springframework/spring In directory fdv4jf1.ch3.sourceforge.com:/tmp/cvs-serv20258 Modified Files: changelog.txt Log Message: updated changelog Index: changelog.txt =================================================================== RCS file: /cvsroot/springframework/spring/changelog.txt,v retrieving revision 1.740 retrieving revision 1.741 diff -C2 -d -r1.740 -r1.741 *** changelog.txt 31 Oct 2008 16:29:43 -0000 1.740 --- changelog.txt 19 Feb 2009 15:15:22 -0000 1.741 *************** *** 4,7 **** --- 4,14 ---- + Changes in 2.5.x maintenance branch + ----------------------------------- + + Package org.springframework.jdbc + * added sort to all error code categories for SQLErrorCodes (SPR-5272) + + Changes in version 2.5.6 (2008-10-31) ------------------------------------- |
From: Juergen H. <jho...@us...> - 2008-11-28 14:08:00
|
Update of /cvsroot/springframework/spring/tiger/src/org/springframework/orm/hibernate3/annotation In directory fdv4jf1.ch3.sourceforge.com:/tmp/cvs-serv2424/tiger/src/org/springframework/orm/hibernate3/annotation Modified Files: AnnotationSessionFactoryBean.java Log Message: properly scan subpackages as well (SPR-5324) Index: AnnotationSessionFactoryBean.java =================================================================== RCS file: /cvsroot/springframework/spring/tiger/src/org/springframework/orm/hibernate3/annotation/AnnotationSessionFactoryBean.java,v retrieving revision 1.5 retrieving revision 1.6 diff -C2 -d -r1.5 -r1.6 *** AnnotationSessionFactoryBean.java 14 Jul 2008 12:48:28 -0000 1.5 --- AnnotationSessionFactoryBean.java 28 Nov 2008 14:07:54 -0000 1.6 *************** *** 79,83 **** public class AnnotationSessionFactoryBean extends LocalSessionFactoryBean implements ResourceLoaderAware { ! private static final String RESOURCE_PATTERN = "**/*.class"; --- 79,83 ---- public class AnnotationSessionFactoryBean extends LocalSessionFactoryBean implements ResourceLoaderAware { ! private static final String RESOURCE_PATTERN = "/**/*.class"; |
From: Juergen H. <jho...@us...> - 2008-11-28 12:18:20
|
Update of /cvsroot/springframework/spring/src/org/springframework/core/style In directory fdv4jf1.ch3.sourceforge.com:/tmp/cvs-serv20615/src/org/springframework/core/style Modified Files: ToStringCreator.java Log Message: polishing Index: ToStringCreator.java =================================================================== RCS file: /cvsroot/springframework/spring/src/org/springframework/core/style/ToStringCreator.java,v retrieving revision 1.5 retrieving revision 1.6 diff -C2 -d -r1.5 -r1.6 *** ToStringCreator.java 31 Jan 2007 11:24:53 -0000 1.5 --- ToStringCreator.java 28 Nov 2008 12:17:53 -0000 1.6 *************** *** 1,4 **** /* ! * Copyright 2002-2007 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); --- 1,4 ---- /* ! * Copyright 2002-2008 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); *************** *** 107,137 **** /** ! * Append a float field value. * @param fieldName the name of the field, usually the member variable name * @param value the field value * @return this, to support call-chaining */ ! public ToStringCreator append(String fieldName, float value) { ! return append(fieldName, new Float(value)); } /** ! * Append a double field value. * @param fieldName the name of the field, usually the member variable name * @param value the field value * @return this, to support call-chaining */ ! public ToStringCreator append(String fieldName, double value) { ! return append(fieldName, new Double(value)); } /** ! * Append a long field value. * @param fieldName the name of the field, usually the member variable name * @param value the field value * @return this, to support call-chaining */ ! public ToStringCreator append(String fieldName, long value) { ! return append(fieldName, new Long(value)); } --- 107,137 ---- /** ! * Append a long field value. * @param fieldName the name of the field, usually the member variable name * @param value the field value * @return this, to support call-chaining */ ! public ToStringCreator append(String fieldName, long value) { ! return append(fieldName, new Long(value)); } /** ! * Append a float field value. * @param fieldName the name of the field, usually the member variable name * @param value the field value * @return this, to support call-chaining */ ! public ToStringCreator append(String fieldName, float value) { ! return append(fieldName, new Float(value)); } /** ! * Append a double field value. * @param fieldName the name of the field, usually the member variable name * @param value the field value * @return this, to support call-chaining */ ! public ToStringCreator append(String fieldName, double value) { ! return append(fieldName, new Double(value)); } *************** *** 143,147 **** */ public ToStringCreator append(String fieldName, boolean value) { ! return append(fieldName, value ? Boolean.TRUE : Boolean.FALSE); } --- 143,147 ---- */ public ToStringCreator append(String fieldName, boolean value) { ! return append(fieldName, Boolean.valueOf(value)); } |