diff --git a/spring-beans/src/main/java/org/springframework/beans/AbstractNestablePropertyAccessor.java b/spring-beans/src/main/java/org/springframework/beans/AbstractNestablePropertyAccessor.java index bf960b1ba67..91ea8e49640 100644 --- a/spring-beans/src/main/java/org/springframework/beans/AbstractNestablePropertyAccessor.java +++ b/spring-beans/src/main/java/org/springframework/beans/AbstractNestablePropertyAccessor.java @@ -695,11 +695,7 @@ public abstract class AbstractNestablePropertyAccessor extends AbstractPropertyA throw new InvalidPropertyException(getRootClass(), this.nestedPath + propertyName, "Index of out of bounds in property path '" + propertyName + "'", ex); } - catch (NumberFormatException ex) { - throw new InvalidPropertyException(getRootClass(), this.nestedPath + propertyName, - "Invalid index in property path '" + propertyName + "'", ex); - } - catch (TypeMismatchException ex) { + catch (NumberFormatException | TypeMismatchException ex) { throw new InvalidPropertyException(getRootClass(), this.nestedPath + propertyName, "Invalid index in property path '" + propertyName + "'", ex); } diff --git a/spring-beans/src/main/java/org/springframework/beans/factory/support/AbstractAutowireCapableBeanFactory.java b/spring-beans/src/main/java/org/springframework/beans/factory/support/AbstractAutowireCapableBeanFactory.java index 168d64b224a..b32cfc6005a 100644 --- a/spring-beans/src/main/java/org/springframework/beans/factory/support/AbstractAutowireCapableBeanFactory.java +++ b/spring-beans/src/main/java/org/springframework/beans/factory/support/AbstractAutowireCapableBeanFactory.java @@ -504,11 +504,8 @@ public abstract class AbstractAutowireCapableBeanFactory extends AbstractBeanFac } return beanInstance; } - catch (BeanCreationException ex) { + catch (BeanCreationException | ImplicitlyAppearedSingletonException ex) { // A previously detected exception with proper bean creation context already... - throw ex; - } - catch (ImplicitlyAppearedSingletonException ex) { // An IllegalStateException to be communicated up to DefaultSingletonBeanRegistry... throw ex; } diff --git a/spring-beans/src/main/java/org/springframework/beans/propertyeditors/PathEditor.java b/spring-beans/src/main/java/org/springframework/beans/propertyeditors/PathEditor.java index 0d9cd7fba8b..c115ff1472c 100644 --- a/spring-beans/src/main/java/org/springframework/beans/propertyeditors/PathEditor.java +++ b/spring-beans/src/main/java/org/springframework/beans/propertyeditors/PathEditor.java @@ -85,10 +85,8 @@ public class PathEditor extends PropertyEditorSupport { return; } } - catch (URISyntaxException ex) { + catch (URISyntaxException | FileSystemNotFoundException ex) { // Not a valid URI: Let's try as Spring resource location. - } - catch (FileSystemNotFoundException ex) { // URI scheme not registered for NIO: // Let's try URL protocol handlers via Spring's resource mechanism. } diff --git a/spring-context/src/main/java/org/springframework/jmx/access/MBeanClientInterceptor.java b/spring-context/src/main/java/org/springframework/jmx/access/MBeanClientInterceptor.java index 6ddb18d7c80..b763d54c53d 100644 --- a/spring-context/src/main/java/org/springframework/jmx/access/MBeanClientInterceptor.java +++ b/spring-context/src/main/java/org/springframework/jmx/access/MBeanClientInterceptor.java @@ -365,10 +365,7 @@ public class MBeanClientInterceptor try { return doInvoke(invocation); } - catch (MBeanConnectFailureException ex) { - return handleConnectFailure(invocation, ex); - } - catch (IOException ex) { + catch (MBeanConnectFailureException | IOException ex) { return handleConnectFailure(invocation, ex); } } diff --git a/spring-jms/src/main/java/org/springframework/jms/listener/AbstractMessageListenerContainer.java b/spring-jms/src/main/java/org/springframework/jms/listener/AbstractMessageListenerContainer.java index 6db7a263db5..1051d7b3a06 100644 --- a/spring-jms/src/main/java/org/springframework/jms/listener/AbstractMessageListenerContainer.java +++ b/spring-jms/src/main/java/org/springframework/jms/listener/AbstractMessageListenerContainer.java @@ -673,18 +673,10 @@ public abstract class AbstractMessageListenerContainer extends AbstractJmsListen try { invokeListener(session, message); } - catch (JMSException ex) { + catch (JMSException | RuntimeException | Error ex) { rollbackOnExceptionIfNecessary(session, ex); throw ex; } - catch (RuntimeException ex) { - rollbackOnExceptionIfNecessary(session, ex); - throw ex; - } - catch (Error err) { - rollbackOnExceptionIfNecessary(session, err); - throw err; - } commitIfNecessary(session, message); } diff --git a/spring-jms/src/main/java/org/springframework/jms/support/JmsUtils.java b/spring-jms/src/main/java/org/springframework/jms/support/JmsUtils.java index 15c761fad35..c60cdeffc70 100644 --- a/spring-jms/src/main/java/org/springframework/jms/support/JmsUtils.java +++ b/spring-jms/src/main/java/org/springframework/jms/support/JmsUtils.java @@ -217,10 +217,7 @@ public abstract class JmsUtils { try { session.commit(); } - catch (javax.jms.TransactionInProgressException ex) { - // Ignore -> can only happen in case of a JTA transaction. - } - catch (javax.jms.IllegalStateException ex) { + catch (javax.jms.TransactionInProgressException | javax.jms.IllegalStateException ex) { // Ignore -> can only happen in case of a JTA transaction. } } @@ -235,10 +232,7 @@ public abstract class JmsUtils { try { session.rollback(); } - catch (javax.jms.TransactionInProgressException ex) { - // Ignore -> can only happen in case of a JTA transaction. - } - catch (javax.jms.IllegalStateException ex) { + catch (javax.jms.TransactionInProgressException | javax.jms.IllegalStateException ex) { // Ignore -> can only happen in case of a JTA transaction. } } diff --git a/spring-tx/src/main/java/org/springframework/transaction/jta/JtaTransactionManager.java b/spring-tx/src/main/java/org/springframework/transaction/jta/JtaTransactionManager.java index e55b5f9ea2a..f550669655d 100644 --- a/spring-tx/src/main/java/org/springframework/transaction/jta/JtaTransactionManager.java +++ b/spring-tx/src/main/java/org/springframework/transaction/jta/JtaTransactionManager.java @@ -847,12 +847,7 @@ public class JtaTransactionManager extends AbstractPlatformTransactionManager try { doJtaBegin(txObject, definition); } - catch (NotSupportedException ex) { - // assume nested transaction not supported - throw new NestedTransactionNotSupportedException( - "JTA implementation does not support nested transactions", ex); - } - catch (UnsupportedOperationException ex) { + catch (NotSupportedException | UnsupportedOperationException ex) { // assume nested transaction not supported throw new NestedTransactionNotSupportedException( "JTA implementation does not support nested transactions", ex); diff --git a/spring-web/src/main/java/org/springframework/web/multipart/commons/CommonsMultipartFile.java b/spring-web/src/main/java/org/springframework/web/multipart/commons/CommonsMultipartFile.java index 84d4a05ef22..15b006eb0b6 100644 --- a/spring-web/src/main/java/org/springframework/web/multipart/commons/CommonsMultipartFile.java +++ b/spring-web/src/main/java/org/springframework/web/multipart/commons/CommonsMultipartFile.java @@ -175,11 +175,8 @@ public class CommonsMultipartFile implements MultipartFile, Serializable { catch (FileUploadException ex) { throw new IllegalStateException(ex.getMessage(), ex); } - catch (IllegalStateException ex) { + catch (IllegalStateException | IOException ex) { // Pass through when coming from FileItem directly - throw ex; - } - catch (IOException ex) { // From I/O operations within FileItem.write throw ex; } diff --git a/spring-webflux/src/main/java/org/springframework/web/reactive/result/condition/AbstractMediaTypeExpression.java b/spring-webflux/src/main/java/org/springframework/web/reactive/result/condition/AbstractMediaTypeExpression.java index f254faf90c9..8402dfe1851 100644 --- a/spring-webflux/src/main/java/org/springframework/web/reactive/result/condition/AbstractMediaTypeExpression.java +++ b/spring-webflux/src/main/java/org/springframework/web/reactive/result/condition/AbstractMediaTypeExpression.java @@ -74,10 +74,7 @@ abstract class AbstractMediaTypeExpression implements Comparable