diff --git a/spring-faces/src/main/java/org/springframework/faces/config/AbstractFacesFlowConfiguration.java b/spring-faces/src/main/java/org/springframework/faces/config/AbstractFacesFlowConfiguration.java index 925c9f40..29df0985 100644 --- a/spring-faces/src/main/java/org/springframework/faces/config/AbstractFacesFlowConfiguration.java +++ b/spring-faces/src/main/java/org/springframework/faces/config/AbstractFacesFlowConfiguration.java @@ -1,5 +1,5 @@ /* - * Copyright 2004-2014 the original author or authors. + * Copyright 2004-2023 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. diff --git a/spring-faces/src/main/java/org/springframework/faces/config/ResourcesBeanDefinitionParser.java b/spring-faces/src/main/java/org/springframework/faces/config/ResourcesBeanDefinitionParser.java index 3788293a..5245bab0 100644 --- a/spring-faces/src/main/java/org/springframework/faces/config/ResourcesBeanDefinitionParser.java +++ b/spring-faces/src/main/java/org/springframework/faces/config/ResourcesBeanDefinitionParser.java @@ -1,5 +1,5 @@ /* - * Copyright 2004-2016 the original author or authors. + * Copyright 2004-2023 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. diff --git a/spring-faces/src/main/java/org/springframework/faces/model/ManySelectionTrackingListDataModel.java b/spring-faces/src/main/java/org/springframework/faces/model/ManySelectionTrackingListDataModel.java index 8721fa81..1fe3be6b 100644 --- a/spring-faces/src/main/java/org/springframework/faces/model/ManySelectionTrackingListDataModel.java +++ b/spring-faces/src/main/java/org/springframework/faces/model/ManySelectionTrackingListDataModel.java @@ -1,5 +1,5 @@ /* - * Copyright 2004-2012 the original author or authors. + * Copyright 2004-2023 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. @@ -18,10 +18,10 @@ package org.springframework.faces.model; import java.util.ArrayList; import java.util.List; -import org.springframework.util.Assert; - import jakarta.faces.model.DataModel; +import org.springframework.util.Assert; + /** * A {@link DataModel} implementation that tracks the currently selected rows, allowing any number of rows to be * selected at one time. diff --git a/spring-faces/src/main/java/org/springframework/faces/model/OneSelectionTrackingListDataModel.java b/spring-faces/src/main/java/org/springframework/faces/model/OneSelectionTrackingListDataModel.java index ef5479f8..61434a90 100644 --- a/spring-faces/src/main/java/org/springframework/faces/model/OneSelectionTrackingListDataModel.java +++ b/spring-faces/src/main/java/org/springframework/faces/model/OneSelectionTrackingListDataModel.java @@ -1,5 +1,5 @@ /* - * Copyright 2004-2012 the original author or authors. + * Copyright 2004-2023 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. @@ -18,10 +18,10 @@ package org.springframework.faces.model; import java.util.ArrayList; import java.util.List; -import org.springframework.util.Assert; - import jakarta.faces.model.DataModel; +import org.springframework.util.Assert; + /** * A {@link DataModel} implementation that tracks the currently selected row, allowing only one selection at a time. * diff --git a/spring-faces/src/main/java/org/springframework/faces/model/SelectionAware.java b/spring-faces/src/main/java/org/springframework/faces/model/SelectionAware.java index 4d44d51b..0dda650e 100644 --- a/spring-faces/src/main/java/org/springframework/faces/model/SelectionAware.java +++ b/spring-faces/src/main/java/org/springframework/faces/model/SelectionAware.java @@ -1,5 +1,5 @@ /* - * Copyright 2004-2012 the original author or authors. + * Copyright 2004-2023 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. diff --git a/spring-faces/src/main/java/org/springframework/faces/model/SelectionTrackingActionListener.java b/spring-faces/src/main/java/org/springframework/faces/model/SelectionTrackingActionListener.java index d514ced0..d59d2aec 100644 --- a/spring-faces/src/main/java/org/springframework/faces/model/SelectionTrackingActionListener.java +++ b/spring-faces/src/main/java/org/springframework/faces/model/SelectionTrackingActionListener.java @@ -1,5 +1,5 @@ /* - * Copyright 2004-2020 the original author or authors. + * Copyright 2004-2023 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. @@ -19,18 +19,18 @@ import java.lang.reflect.Method; import java.util.Map; import java.util.concurrent.ConcurrentHashMap; -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; -import org.springframework.faces.webflow.FlowActionListener; -import org.springframework.util.ClassUtils; -import org.springframework.util.ReflectionUtils; - import jakarta.faces.component.UIComponent; import jakarta.faces.component.UIData; import jakarta.faces.component.UIViewRoot; import jakarta.faces.event.AbortProcessingException; import jakarta.faces.event.ActionEvent; import jakarta.faces.event.ActionListener; +import org.apache.commons.logging.Log; +import org.apache.commons.logging.LogFactory; + +import org.springframework.faces.webflow.FlowActionListener; +import org.springframework.util.ClassUtils; +import org.springframework.util.ReflectionUtils; /** * Custom {@link ActionListener} that inspects the {@link UIComponent} that signaled the current {@link ActionEvent} to diff --git a/spring-faces/src/main/java/org/springframework/faces/model/SerializableListDataModel.java b/spring-faces/src/main/java/org/springframework/faces/model/SerializableListDataModel.java index d4631e16..0dd1807f 100644 --- a/spring-faces/src/main/java/org/springframework/faces/model/SerializableListDataModel.java +++ b/spring-faces/src/main/java/org/springframework/faces/model/SerializableListDataModel.java @@ -1,5 +1,5 @@ /* - * Copyright 2004-2012 the original author or authors. + * Copyright 2004-2023 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. @@ -22,10 +22,10 @@ import java.io.Serializable; import java.util.ArrayList; import java.util.List; -import org.springframework.util.Assert; - import jakarta.faces.model.ListDataModel; +import org.springframework.util.Assert; + /** * A simple {@link ListDataModel List-to-JSF-DataModel} adapter that is also {@link Serializable}. * diff --git a/spring-faces/src/main/java/org/springframework/faces/model/converter/DataModelConverter.java b/spring-faces/src/main/java/org/springframework/faces/model/converter/DataModelConverter.java index bda04c75..c7f3c575 100644 --- a/spring-faces/src/main/java/org/springframework/faces/model/converter/DataModelConverter.java +++ b/spring-faces/src/main/java/org/springframework/faces/model/converter/DataModelConverter.java @@ -1,5 +1,5 @@ /* - * Copyright 2004-2012 the original author or authors. + * Copyright 2004-2023 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. @@ -18,12 +18,12 @@ package org.springframework.faces.model.converter; import java.lang.reflect.Constructor; import java.util.List; +import jakarta.faces.model.DataModel; + import org.springframework.binding.convert.converters.Converter; import org.springframework.faces.model.OneSelectionTrackingListDataModel; import org.springframework.util.ClassUtils; -import jakarta.faces.model.DataModel; - /** * A {@link Converter} implementation that converts an Object, Object array, or {@link List} into a JSF * {@link DataModel}. diff --git a/spring-faces/src/main/java/org/springframework/faces/model/converter/FacesConversionService.java b/spring-faces/src/main/java/org/springframework/faces/model/converter/FacesConversionService.java index cf1ffbed..0fe894cf 100644 --- a/spring-faces/src/main/java/org/springframework/faces/model/converter/FacesConversionService.java +++ b/spring-faces/src/main/java/org/springframework/faces/model/converter/FacesConversionService.java @@ -1,5 +1,5 @@ /* - * Copyright 2004-2012 the original author or authors. + * Copyright 2004-2023 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. diff --git a/spring-faces/src/main/java/org/springframework/faces/mvc/JsfView.java b/spring-faces/src/main/java/org/springframework/faces/mvc/JsfView.java index f2e838f2..fdf2c884 100644 --- a/spring-faces/src/main/java/org/springframework/faces/mvc/JsfView.java +++ b/spring-faces/src/main/java/org/springframework/faces/mvc/JsfView.java @@ -1,5 +1,5 @@ /* - * Copyright 2004-2012 the original author or authors. + * Copyright 2004-2023 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. @@ -17,12 +17,6 @@ package org.springframework.faces.mvc; import java.util.Map; -import org.springframework.faces.webflow.FacesContextHelper; -import org.springframework.faces.webflow.JsfUtils; -import org.springframework.util.Assert; -import org.springframework.web.servlet.support.RequestContextUtils; -import org.springframework.web.servlet.view.AbstractUrlBasedView; - import jakarta.faces.application.ViewHandler; import jakarta.faces.component.UIViewRoot; import jakarta.faces.context.FacesContext; @@ -32,6 +26,12 @@ import jakarta.faces.lifecycle.LifecycleFactory; import jakarta.servlet.http.HttpServletRequest; import jakarta.servlet.http.HttpServletResponse; +import org.springframework.faces.webflow.FacesContextHelper; +import org.springframework.faces.webflow.JsfUtils; +import org.springframework.util.Assert; +import org.springframework.web.servlet.support.RequestContextUtils; +import org.springframework.web.servlet.view.AbstractUrlBasedView; + /** * JSF View that renders a transient (stateless) JSF view template. The UIViewRoot will not be saved and thus the JSF * lifecycle will not be able to be invoked on postback. @@ -47,8 +47,8 @@ public class JsfView extends AbstractUrlBasedView { this.facesLifecycle = createFacesLifecycle(); } - protected void renderMergedOutputModel(Map model, HttpServletRequest request, - HttpServletResponse response) { + protected void renderMergedOutputModel( + Map model, HttpServletRequest request, HttpServletResponse response) throws Exception { FacesContextHelper facesContextHelper = new FacesContextHelper(); FacesContext facesContext = facesContextHelper.getFacesContext(getServletContext(), request, response); diff --git a/spring-faces/src/main/java/org/springframework/faces/security/FaceletsAuthorizeTag.java b/spring-faces/src/main/java/org/springframework/faces/security/FaceletsAuthorizeTag.java index d7f65a8f..d11b14f1 100644 --- a/spring-faces/src/main/java/org/springframework/faces/security/FaceletsAuthorizeTag.java +++ b/spring-faces/src/main/java/org/springframework/faces/security/FaceletsAuthorizeTag.java @@ -1,5 +1,5 @@ /* - * Copyright 2004-2015 the original author or authors. + * Copyright 2004-2023 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. @@ -15,10 +15,6 @@ */ package org.springframework.faces.security; -import org.springframework.security.taglibs.authz.AbstractAuthorizeTag; -import org.springframework.util.ObjectUtils; -import org.springframework.util.StringUtils; - import jakarta.el.ValueExpression; import jakarta.faces.context.FacesContext; import jakarta.faces.view.facelets.FaceletContext; @@ -28,6 +24,10 @@ import jakarta.servlet.ServletContext; import jakarta.servlet.ServletRequest; import jakarta.servlet.ServletResponse; +import org.springframework.security.taglibs.authz.AbstractAuthorizeTag; +import org.springframework.util.ObjectUtils; +import org.springframework.util.StringUtils; + /** * A concrete implementation of {@link AbstractAuthorizeTag} for use with standard Facelets rendering technology. * diff --git a/spring-faces/src/main/java/org/springframework/faces/security/FaceletsAuthorizeTagHandler.java b/spring-faces/src/main/java/org/springframework/faces/security/FaceletsAuthorizeTagHandler.java index 8a2ab5b6..d65de56b 100644 --- a/spring-faces/src/main/java/org/springframework/faces/security/FaceletsAuthorizeTagHandler.java +++ b/spring-faces/src/main/java/org/springframework/faces/security/FaceletsAuthorizeTagHandler.java @@ -1,5 +1,5 @@ /* - * Copyright 2004-2012 the original author or authors. + * Copyright 2004-2023 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. diff --git a/spring-faces/src/main/java/org/springframework/faces/support/LifecycleWrapper.java b/spring-faces/src/main/java/org/springframework/faces/support/LifecycleWrapper.java index 09464cc6..dc196da2 100644 --- a/spring-faces/src/main/java/org/springframework/faces/support/LifecycleWrapper.java +++ b/spring-faces/src/main/java/org/springframework/faces/support/LifecycleWrapper.java @@ -1,5 +1,5 @@ /* - * Copyright 2004-2012 the original author or authors. + * Copyright 2004-2023 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. diff --git a/spring-faces/src/main/java/org/springframework/faces/support/RequestLoggingPhaseListener.java b/spring-faces/src/main/java/org/springframework/faces/support/RequestLoggingPhaseListener.java index e0af8346..68ad55a7 100644 --- a/spring-faces/src/main/java/org/springframework/faces/support/RequestLoggingPhaseListener.java +++ b/spring-faces/src/main/java/org/springframework/faces/support/RequestLoggingPhaseListener.java @@ -1,5 +1,5 @@ /* - * Copyright 2004-2012 the original author or authors. + * Copyright 2004-2023 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. @@ -15,12 +15,11 @@ */ package org.springframework.faces.support; -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; - import jakarta.faces.event.PhaseEvent; import jakarta.faces.event.PhaseId; import jakarta.faces.event.PhaseListener; +import org.apache.commons.logging.Log; +import org.apache.commons.logging.LogFactory; /** * {@link PhaseListener} that logs the execution of the individual phases of the JSF lifecycle. Useful during JSF diff --git a/spring-faces/src/main/java/org/springframework/faces/webflow/FacesContextHelper.java b/spring-faces/src/main/java/org/springframework/faces/webflow/FacesContextHelper.java index b595c650..b815ef10 100644 --- a/spring-faces/src/main/java/org/springframework/faces/webflow/FacesContextHelper.java +++ b/spring-faces/src/main/java/org/springframework/faces/webflow/FacesContextHelper.java @@ -1,5 +1,5 @@ /* - * Copyright 2004-2012 the original author or authors. + * Copyright 2004-2023 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. diff --git a/spring-faces/src/main/java/org/springframework/faces/webflow/FlowActionListener.java b/spring-faces/src/main/java/org/springframework/faces/webflow/FlowActionListener.java index 79f931ba..c6050d39 100644 --- a/spring-faces/src/main/java/org/springframework/faces/webflow/FlowActionListener.java +++ b/spring-faces/src/main/java/org/springframework/faces/webflow/FlowActionListener.java @@ -1,5 +1,5 @@ /* - * Copyright 2004-2014 the original author or authors. + * Copyright 2004-2023 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. @@ -24,9 +24,9 @@ import jakarta.faces.context.FacesContext; import jakarta.faces.event.AbortProcessingException; import jakarta.faces.event.ActionEvent; import jakarta.faces.event.ActionListener; - import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; + import org.springframework.binding.expression.Expression; import org.springframework.util.StringUtils; import org.springframework.validation.MessageCodesResolver; diff --git a/spring-faces/src/main/java/org/springframework/faces/webflow/FlowApplication.java b/spring-faces/src/main/java/org/springframework/faces/webflow/FlowApplication.java index 9d5b8b95..d9dbb409 100644 --- a/spring-faces/src/main/java/org/springframework/faces/webflow/FlowApplication.java +++ b/spring-faces/src/main/java/org/springframework/faces/webflow/FlowApplication.java @@ -1,5 +1,5 @@ /* - * Copyright 2004-2012 the original author or authors. + * Copyright 2004-2023 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. diff --git a/spring-faces/src/main/java/org/springframework/faces/webflow/FlowApplicationFactory.java b/spring-faces/src/main/java/org/springframework/faces/webflow/FlowApplicationFactory.java index 1785eb70..a099b23e 100644 --- a/spring-faces/src/main/java/org/springframework/faces/webflow/FlowApplicationFactory.java +++ b/spring-faces/src/main/java/org/springframework/faces/webflow/FlowApplicationFactory.java @@ -1,5 +1,5 @@ /* - * Copyright 2004-2012 the original author or authors. + * Copyright 2004-2023 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. @@ -15,11 +15,11 @@ */ package org.springframework.faces.webflow; -import org.springframework.util.Assert; - import jakarta.faces.application.Application; import jakarta.faces.application.ApplicationFactory; +import org.springframework.util.Assert; + /** * Custom {@link ApplicationFactory} that ensures the FlowApplication is the first {@link Application} in the chain, * which in turn guarantees the install order for other JSF components. diff --git a/spring-faces/src/main/java/org/springframework/faces/webflow/FlowELResolver.java b/spring-faces/src/main/java/org/springframework/faces/webflow/FlowELResolver.java index 37954459..bd04c4f7 100644 --- a/spring-faces/src/main/java/org/springframework/faces/webflow/FlowELResolver.java +++ b/spring-faces/src/main/java/org/springframework/faces/webflow/FlowELResolver.java @@ -1,5 +1,5 @@ /* - * Copyright 2004-2012 the original author or authors. + * Copyright 2004-2023 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. diff --git a/spring-faces/src/main/java/org/springframework/faces/webflow/FlowExternalContext.java b/spring-faces/src/main/java/org/springframework/faces/webflow/FlowExternalContext.java index e0939eb9..7bff96e6 100644 --- a/spring-faces/src/main/java/org/springframework/faces/webflow/FlowExternalContext.java +++ b/spring-faces/src/main/java/org/springframework/faces/webflow/FlowExternalContext.java @@ -1,5 +1,5 @@ /* - * Copyright 2004-2012 the original author or authors. + * Copyright 2004-2023 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. @@ -20,9 +20,9 @@ import java.io.IOException; import jakarta.faces.context.ExternalContext; import jakarta.faces.context.ExternalContextWrapper; import jakarta.servlet.http.HttpServletResponse; - import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; + import org.springframework.webflow.execution.RequestContext; /** diff --git a/spring-faces/src/main/java/org/springframework/faces/webflow/FlowFacesContext.java b/spring-faces/src/main/java/org/springframework/faces/webflow/FlowFacesContext.java index 21354691..53541fdd 100644 --- a/spring-faces/src/main/java/org/springframework/faces/webflow/FlowFacesContext.java +++ b/spring-faces/src/main/java/org/springframework/faces/webflow/FlowFacesContext.java @@ -1,5 +1,5 @@ /* - * Copyright 2004-2020 the original author or authors. + * Copyright 2004-2023 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. diff --git a/spring-faces/src/main/java/org/springframework/faces/webflow/FlowFacesContextLifecycleListener.java b/spring-faces/src/main/java/org/springframework/faces/webflow/FlowFacesContextLifecycleListener.java index 79a30c42..3b75cad0 100644 --- a/spring-faces/src/main/java/org/springframework/faces/webflow/FlowFacesContextLifecycleListener.java +++ b/spring-faces/src/main/java/org/springframework/faces/webflow/FlowFacesContextLifecycleListener.java @@ -1,5 +1,5 @@ /* - * Copyright 2004-2012 the original author or authors. + * Copyright 2004-2023 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. diff --git a/spring-faces/src/main/java/org/springframework/faces/webflow/FlowLifecycle.java b/spring-faces/src/main/java/org/springframework/faces/webflow/FlowLifecycle.java index c172149b..230b3938 100644 --- a/spring-faces/src/main/java/org/springframework/faces/webflow/FlowLifecycle.java +++ b/spring-faces/src/main/java/org/springframework/faces/webflow/FlowLifecycle.java @@ -1,5 +1,5 @@ /* - * Copyright 2004-2012 the original author or authors. + * Copyright 2004-2023 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. @@ -20,9 +20,9 @@ import jakarta.faces.context.FacesContext; import jakarta.faces.event.PhaseId; import jakarta.faces.lifecycle.Lifecycle; import jakarta.faces.lifecycle.LifecycleFactory; - import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; + import org.springframework.faces.support.LifecycleWrapper; /** diff --git a/spring-faces/src/main/java/org/springframework/faces/webflow/FlowPartialViewContext.java b/spring-faces/src/main/java/org/springframework/faces/webflow/FlowPartialViewContext.java index ba76140d..b6c80a23 100644 --- a/spring-faces/src/main/java/org/springframework/faces/webflow/FlowPartialViewContext.java +++ b/spring-faces/src/main/java/org/springframework/faces/webflow/FlowPartialViewContext.java @@ -1,5 +1,5 @@ /* - * Copyright 2004-2012 the original author or authors. + * Copyright 2004-2023 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. diff --git a/spring-faces/src/main/java/org/springframework/faces/webflow/FlowRenderKit.java b/spring-faces/src/main/java/org/springframework/faces/webflow/FlowRenderKit.java index 74ad241e..0558a637 100644 --- a/spring-faces/src/main/java/org/springframework/faces/webflow/FlowRenderKit.java +++ b/spring-faces/src/main/java/org/springframework/faces/webflow/FlowRenderKit.java @@ -1,5 +1,5 @@ /* - * Copyright 2004-2015 the original author or authors. + * Copyright 2004-2023 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. diff --git a/spring-faces/src/main/java/org/springframework/faces/webflow/FlowResourceHandler.java b/spring-faces/src/main/java/org/springframework/faces/webflow/FlowResourceHandler.java index 67d436c7..823ae187 100644 --- a/spring-faces/src/main/java/org/springframework/faces/webflow/FlowResourceHandler.java +++ b/spring-faces/src/main/java/org/springframework/faces/webflow/FlowResourceHandler.java @@ -1,5 +1,5 @@ /* - * Copyright 2004-2018 the original author or authors. + * Copyright 2004-2023 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. @@ -18,17 +18,17 @@ package org.springframework.faces.webflow; import java.io.IOException; import java.net.URL; -import org.springframework.context.ApplicationContext; -import org.springframework.core.io.Resource; -import org.springframework.webflow.execution.RequestContext; -import org.springframework.webflow.execution.RequestContextHolder; - import jakarta.faces.FacesException; import jakarta.faces.application.ResourceHandler; import jakarta.faces.application.ResourceHandlerWrapper; import jakarta.faces.application.ViewResource; import jakarta.faces.context.FacesContext; +import org.springframework.context.ApplicationContext; +import org.springframework.core.io.Resource; +import org.springframework.webflow.execution.RequestContext; +import org.springframework.webflow.execution.RequestContextHolder; + /** * Resolves Facelets resources using Spring Resource paths such as "classpath:foo.xhtml". *

This handler is auto-configured in the faces-config.xml bundled with the diff --git a/spring-faces/src/main/java/org/springframework/faces/webflow/FlowResponseStateManager.java b/spring-faces/src/main/java/org/springframework/faces/webflow/FlowResponseStateManager.java index 31b9fa94..9ec92e6b 100644 --- a/spring-faces/src/main/java/org/springframework/faces/webflow/FlowResponseStateManager.java +++ b/spring-faces/src/main/java/org/springframework/faces/webflow/FlowResponseStateManager.java @@ -1,5 +1,5 @@ /* - * Copyright 2004-2012 the original author or authors. + * Copyright 2004-2023 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. @@ -23,7 +23,6 @@ import jakarta.faces.context.FacesContext; import jakarta.faces.context.ResponseWriter; import jakarta.faces.render.RenderKitFactory; import jakarta.faces.render.ResponseStateManager; - import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; diff --git a/spring-faces/src/main/java/org/springframework/faces/webflow/FlowStateManager.java b/spring-faces/src/main/java/org/springframework/faces/webflow/FlowStateManager.java index 55090b5c..2acf0718 100644 --- a/spring-faces/src/main/java/org/springframework/faces/webflow/FlowStateManager.java +++ b/spring-faces/src/main/java/org/springframework/faces/webflow/FlowStateManager.java @@ -1,5 +1,5 @@ /* - * Copyright 2004-2012 the original author or authors. + * Copyright 2004-2023 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. @@ -30,15 +30,8 @@ import jakarta.faces.context.FacesContext; */ public class FlowStateManager extends StateManagerWrapper { - private final StateManager wrapped; - public FlowStateManager(StateManager wrapped) { super(wrapped); - this.wrapped = wrapped; - } - - public StateManager getWrapped() { - return this.wrapped; } public boolean isSavingStateInClient(FacesContext context) { diff --git a/spring-faces/src/main/java/org/springframework/faces/webflow/FlowViewHandler.java b/spring-faces/src/main/java/org/springframework/faces/webflow/FlowViewHandler.java index 65c060a7..c6e2524b 100644 --- a/spring-faces/src/main/java/org/springframework/faces/webflow/FlowViewHandler.java +++ b/spring-faces/src/main/java/org/springframework/faces/webflow/FlowViewHandler.java @@ -1,5 +1,5 @@ /* - * Copyright 2004-2015 the original author or authors. + * Copyright 2004-2023 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. @@ -16,6 +16,7 @@ package org.springframework.faces.webflow; import java.util.Locale; + import jakarta.faces.application.ViewHandler; import jakarta.faces.application.ViewHandlerWrapper; import jakarta.faces.component.UIViewRoot; diff --git a/spring-faces/src/main/java/org/springframework/faces/webflow/JsfAjaxHandler.java b/spring-faces/src/main/java/org/springframework/faces/webflow/JsfAjaxHandler.java index 337345cd..99417e43 100644 --- a/spring-faces/src/main/java/org/springframework/faces/webflow/JsfAjaxHandler.java +++ b/spring-faces/src/main/java/org/springframework/faces/webflow/JsfAjaxHandler.java @@ -1,5 +1,5 @@ /* - * Copyright 2004-2016 the original author or authors. + * Copyright 2004-2023 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. @@ -18,8 +18,6 @@ package org.springframework.faces.webflow; import java.io.IOException; import java.io.Writer; -import org.springframework.webflow.context.servlet.AbstractAjaxHandler; - import jakarta.faces.context.ExternalContext; import jakarta.faces.context.FacesContext; import jakarta.faces.context.PartialResponseWriter; @@ -29,6 +27,8 @@ import jakarta.faces.render.RenderKitFactory; import jakarta.servlet.http.HttpServletRequest; import jakarta.servlet.http.HttpServletResponse; +import org.springframework.webflow.context.servlet.AbstractAjaxHandler; + /** * Ajax handler for JSF 2 requests that can identify JSF 2 Ajax requests and send redirect instructions back to the * client by including a redirect instruction in the content of the response. diff --git a/spring-faces/src/main/java/org/springframework/faces/webflow/JsfFlowHandlerAdapter.java b/spring-faces/src/main/java/org/springframework/faces/webflow/JsfFlowHandlerAdapter.java index 1c7db047..401947b3 100644 --- a/spring-faces/src/main/java/org/springframework/faces/webflow/JsfFlowHandlerAdapter.java +++ b/spring-faces/src/main/java/org/springframework/faces/webflow/JsfFlowHandlerAdapter.java @@ -1,5 +1,5 @@ /* - * Copyright 2004-2012 the original author or authors. + * Copyright 2004-2023 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. @@ -19,8 +19,8 @@ import jakarta.faces.context.FacesContext; import jakarta.servlet.http.HttpServletRequest; import jakarta.servlet.http.HttpServletResponse; -import org.springframework.webflow.context.servlet.AjaxHandler; import org.springframework.web.servlet.ModelAndView; +import org.springframework.webflow.context.servlet.AjaxHandler; import org.springframework.webflow.mvc.servlet.FlowHandlerAdapter; /** diff --git a/spring-faces/src/main/java/org/springframework/faces/webflow/JsfManagedBeanAwareELExpressionParser.java b/spring-faces/src/main/java/org/springframework/faces/webflow/JsfManagedBeanAwareELExpressionParser.java index 64b00f24..6328ad1b 100644 --- a/spring-faces/src/main/java/org/springframework/faces/webflow/JsfManagedBeanAwareELExpressionParser.java +++ b/spring-faces/src/main/java/org/springframework/faces/webflow/JsfManagedBeanAwareELExpressionParser.java @@ -1,5 +1,5 @@ /* - * Copyright 2004-2012 the original author or authors. + * Copyright 2004-2023 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. diff --git a/spring-faces/src/main/java/org/springframework/faces/webflow/JsfManagedBeanPropertyAccessor.java b/spring-faces/src/main/java/org/springframework/faces/webflow/JsfManagedBeanPropertyAccessor.java index 2d0a7dc6..78f872d0 100644 --- a/spring-faces/src/main/java/org/springframework/faces/webflow/JsfManagedBeanPropertyAccessor.java +++ b/spring-faces/src/main/java/org/springframework/faces/webflow/JsfManagedBeanPropertyAccessor.java @@ -1,5 +1,5 @@ /* - * Copyright 2004-2012 the original author or authors. + * Copyright 2004-2023 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. diff --git a/spring-faces/src/main/java/org/springframework/faces/webflow/JsfManagedBeanResolver.java b/spring-faces/src/main/java/org/springframework/faces/webflow/JsfManagedBeanResolver.java index dedd13b0..5603cc0e 100644 --- a/spring-faces/src/main/java/org/springframework/faces/webflow/JsfManagedBeanResolver.java +++ b/spring-faces/src/main/java/org/springframework/faces/webflow/JsfManagedBeanResolver.java @@ -1,5 +1,5 @@ /* - * Copyright 2004-2012 the original author or authors. + * Copyright 2004-2023 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. diff --git a/spring-faces/src/main/java/org/springframework/faces/webflow/JsfResourceRequestHandler.java b/spring-faces/src/main/java/org/springframework/faces/webflow/JsfResourceRequestHandler.java index 86fe331b..58a2f166 100644 --- a/spring-faces/src/main/java/org/springframework/faces/webflow/JsfResourceRequestHandler.java +++ b/spring-faces/src/main/java/org/springframework/faces/webflow/JsfResourceRequestHandler.java @@ -1,5 +1,5 @@ /* - * Copyright 2004-2010 the original author or authors. + * Copyright 2004-2023 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. @@ -17,14 +17,14 @@ package org.springframework.faces.webflow; import java.io.IOException; -import org.springframework.web.HttpRequestHandler; -import org.springframework.web.context.support.WebApplicationObjectSupport; - import jakarta.faces.application.ResourceHandler; import jakarta.faces.context.FacesContext; import jakarta.servlet.http.HttpServletRequest; import jakarta.servlet.http.HttpServletResponse; +import org.springframework.web.HttpRequestHandler; +import org.springframework.web.context.support.WebApplicationObjectSupport; + /** * Handles a request by delegating to the JSF ResourceHandler, which serves web * application and classpath resources such as images, CSS and JavaScript files diff --git a/spring-faces/src/main/java/org/springframework/faces/webflow/JsfRuntimeInformation.java b/spring-faces/src/main/java/org/springframework/faces/webflow/JsfRuntimeInformation.java index e72cfe19..e7f54bbc 100644 --- a/spring-faces/src/main/java/org/springframework/faces/webflow/JsfRuntimeInformation.java +++ b/spring-faces/src/main/java/org/springframework/faces/webflow/JsfRuntimeInformation.java @@ -1,5 +1,5 @@ /* - * Copyright 2004-2017 the original author or authors. + * Copyright 2004-2023 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. @@ -16,11 +16,11 @@ package org.springframework.faces.webflow; -import org.springframework.util.ClassUtils; - import jakarta.faces.context.FacesContext; import jakarta.faces.context.FacesContextWrapper; +import org.springframework.util.ClassUtils; + /** * Helper class to provide information about the JSF runtime environment such as * JSF version and implementation. diff --git a/spring-faces/src/main/java/org/springframework/faces/webflow/JsfUtils.java b/spring-faces/src/main/java/org/springframework/faces/webflow/JsfUtils.java index d40489af..78ea4fad 100644 --- a/spring-faces/src/main/java/org/springframework/faces/webflow/JsfUtils.java +++ b/spring-faces/src/main/java/org/springframework/faces/webflow/JsfUtils.java @@ -1,5 +1,5 @@ /* - * Copyright 2004-2012 the original author or authors. + * Copyright 2004-2023 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. @@ -17,6 +17,7 @@ package org.springframework.faces.webflow; import java.util.HashMap; import java.util.Map; + import jakarta.faces.FactoryFinder; import jakarta.faces.application.ApplicationFactory; import jakarta.faces.component.visit.VisitContextFactory; @@ -67,11 +68,11 @@ public class JsfUtils { } public static boolean isFlowRequest() { - return RequestContextHolder.getRequestContext() != null; + return (RequestContextHolder.getRequestContext() != null); } public static boolean isAsynchronousFlowRequest() { - return isFlowRequest() && RequestContextHolder.getRequestContext().getExternalContext().isAjaxRequest(); + return (isFlowRequest() && RequestContextHolder.getRequestContext().getExternalContext().isAjaxRequest()); } /** diff --git a/spring-faces/src/main/java/org/springframework/faces/webflow/JsfView.java b/spring-faces/src/main/java/org/springframework/faces/webflow/JsfView.java index 1340045a..dbe19120 100644 --- a/spring-faces/src/main/java/org/springframework/faces/webflow/JsfView.java +++ b/spring-faces/src/main/java/org/springframework/faces/webflow/JsfView.java @@ -1,5 +1,5 @@ /* - * Copyright 2004-2013 the original author or authors. + * Copyright 2004-2023 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. @@ -23,9 +23,9 @@ import jakarta.faces.context.FacesContext; import jakarta.faces.lifecycle.Lifecycle; import jakarta.faces.view.StateManagementStrategy; import jakarta.faces.view.ViewDeclarationLanguage; - import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; + import org.springframework.webflow.execution.Event; import org.springframework.webflow.execution.RequestContext; import org.springframework.webflow.execution.View; diff --git a/spring-faces/src/main/java/org/springframework/faces/webflow/JsfViewFactory.java b/spring-faces/src/main/java/org/springframework/faces/webflow/JsfViewFactory.java index 88934b41..efa3432a 100644 --- a/spring-faces/src/main/java/org/springframework/faces/webflow/JsfViewFactory.java +++ b/spring-faces/src/main/java/org/springframework/faces/webflow/JsfViewFactory.java @@ -1,5 +1,5 @@ /* - * Copyright 2004-2015 the original author or authors. + * Copyright 2004-2023 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. @@ -17,6 +17,8 @@ package org.springframework.faces.webflow; import java.util.EnumSet; import java.util.Iterator; + +import com.sun.faces.component.CompositeComponentStackManager; import jakarta.el.ValueExpression; import jakarta.faces.application.ViewHandler; import jakarta.faces.component.EditableValueHolder; @@ -30,8 +32,6 @@ import jakarta.faces.event.ExceptionQueuedEvent; import jakarta.faces.event.ExceptionQueuedEventContext; import jakarta.faces.event.PhaseId; import jakarta.faces.lifecycle.Lifecycle; - -import com.sun.faces.component.CompositeComponentStackManager; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; @@ -157,9 +157,10 @@ public class JsfViewFactory implements ViewFactory { /** * Walk the component tree to perform any required per-component operations. */ + @SuppressWarnings("CastCanBeRemovedNarrowingVariableType") private void processTree(FacesContext context, UIComponent component) { - MojarraProcessTreeHandler mojarraTreeHandler = null; + Object mojarraTreeHandler = null; if (isMojarraPresent() && !JsfRuntimeInformation.isMyFacesInUse()) { mojarraTreeHandler = new MojarraProcessTreeHandler().handleBefore(context, component); } @@ -181,7 +182,7 @@ public class JsfViewFactory implements ViewFactory { } if (mojarraTreeHandler != null) { - mojarraTreeHandler.handleAfter(); + ((MojarraProcessTreeHandler) mojarraTreeHandler).handleAfter(); } } diff --git a/spring-faces/src/main/java/org/springframework/faces/webflow/JsfViewFactoryCreator.java b/spring-faces/src/main/java/org/springframework/faces/webflow/JsfViewFactoryCreator.java index 3c632ba7..da0dfdad 100644 --- a/spring-faces/src/main/java/org/springframework/faces/webflow/JsfViewFactoryCreator.java +++ b/spring-faces/src/main/java/org/springframework/faces/webflow/JsfViewFactoryCreator.java @@ -1,5 +1,5 @@ /* - * Copyright 2004-2012 the original author or authors. + * Copyright 2004-2023 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. diff --git a/spring-faces/src/main/java/org/springframework/faces/webflow/PostRestoreStateEventVisitCallback.java b/spring-faces/src/main/java/org/springframework/faces/webflow/PostRestoreStateEventVisitCallback.java index 2631dc3b..02cf77ff 100644 --- a/spring-faces/src/main/java/org/springframework/faces/webflow/PostRestoreStateEventVisitCallback.java +++ b/spring-faces/src/main/java/org/springframework/faces/webflow/PostRestoreStateEventVisitCallback.java @@ -1,5 +1,5 @@ /* - * Copyright 2004-2012 the original author or authors. + * Copyright 2004-2023 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. diff --git a/spring-faces/src/main/java/org/springframework/faces/webflow/ViewRootHolder.java b/spring-faces/src/main/java/org/springframework/faces/webflow/ViewRootHolder.java index e790e94e..e5c7da4d 100644 --- a/spring-faces/src/main/java/org/springframework/faces/webflow/ViewRootHolder.java +++ b/spring-faces/src/main/java/org/springframework/faces/webflow/ViewRootHolder.java @@ -1,5 +1,5 @@ /* - * Copyright 2004-2008 the original author or authors. + * Copyright 2004-2023 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. diff --git a/spring-faces/src/test/java/org/springframework/faces/config/AbstractResourcesConfigurationTests.java b/spring-faces/src/test/java/org/springframework/faces/config/AbstractResourcesConfigurationTests.java index 157e1b70..c46cdc7a 100644 --- a/spring-faces/src/test/java/org/springframework/faces/config/AbstractResourcesConfigurationTests.java +++ b/spring-faces/src/test/java/org/springframework/faces/config/AbstractResourcesConfigurationTests.java @@ -1,20 +1,21 @@ package org.springframework.faces.config; -import static org.junit.jupiter.api.Assertions.assertEquals; -import static org.junit.jupiter.api.Assertions.assertNotNull; -import static org.junit.jupiter.api.Assertions.assertSame; -import static org.junit.jupiter.api.Assertions.assertTrue; - import java.util.Map; import org.junit.jupiter.api.AfterEach; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; + import org.springframework.context.ApplicationContext; import org.springframework.faces.webflow.JsfResourceRequestHandler; import org.springframework.web.servlet.handler.SimpleUrlHandlerMapping; import org.springframework.web.servlet.mvc.HttpRequestHandlerAdapter; +import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.assertNotNull; +import static org.junit.jupiter.api.Assertions.assertSame; +import static org.junit.jupiter.api.Assertions.assertTrue; + public abstract class AbstractResourcesConfigurationTests { protected ApplicationContext context; diff --git a/spring-faces/src/test/java/org/springframework/faces/model/SelectionTrackingActionListenerTests.java b/spring-faces/src/test/java/org/springframework/faces/model/SelectionTrackingActionListenerTests.java index 25853a87..813aabb3 100644 --- a/spring-faces/src/test/java/org/springframework/faces/model/SelectionTrackingActionListenerTests.java +++ b/spring-faces/src/test/java/org/springframework/faces/model/SelectionTrackingActionListenerTests.java @@ -1,23 +1,10 @@ package org.springframework.faces.model; -import static org.junit.jupiter.api.Assertions.assertFalse; -import static org.junit.jupiter.api.Assertions.assertNotSame; -import static org.junit.jupiter.api.Assertions.assertSame; -import static org.junit.jupiter.api.Assertions.assertTrue; - import java.lang.reflect.Method; import java.util.ArrayList; import java.util.List; -import org.apache.myfaces.test.mock.MockFacesContext; -import org.junit.jupiter.api.AfterEach; -import org.junit.jupiter.api.BeforeEach; -import org.junit.jupiter.api.Test; -import org.springframework.faces.webflow.JSFMockHelper; -import org.springframework.util.ReflectionUtils; - import com.sun.faces.facelets.component.UIRepeat; - import jakarta.faces.component.UIColumn; import jakarta.faces.component.UICommand; import jakarta.faces.component.UIData; @@ -26,6 +13,18 @@ import jakarta.faces.context.FacesContext; import jakarta.faces.event.AbortProcessingException; import jakarta.faces.event.ActionEvent; import jakarta.faces.event.ActionListener; +import org.apache.myfaces.test.mock.MockFacesContext; +import org.junit.jupiter.api.AfterEach; +import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.Test; + +import org.springframework.faces.webflow.JSFMockHelper; +import org.springframework.util.ReflectionUtils; + +import static org.junit.jupiter.api.Assertions.assertFalse; +import static org.junit.jupiter.api.Assertions.assertNotSame; +import static org.junit.jupiter.api.Assertions.assertSame; +import static org.junit.jupiter.api.Assertions.assertTrue; public class SelectionTrackingActionListenerTests { diff --git a/spring-faces/src/test/java/org/springframework/faces/model/converter/DataModelConverterTests.java b/spring-faces/src/test/java/org/springframework/faces/model/converter/DataModelConverterTests.java index 9181b2bc..8f64acc4 100644 --- a/spring-faces/src/test/java/org/springframework/faces/model/converter/DataModelConverterTests.java +++ b/spring-faces/src/test/java/org/springframework/faces/model/converter/DataModelConverterTests.java @@ -1,21 +1,21 @@ package org.springframework.faces.model.converter; -import static org.junit.jupiter.api.Assertions.assertEquals; -import static org.junit.jupiter.api.Assertions.assertNotNull; -import static org.junit.jupiter.api.Assertions.assertSame; -import static org.junit.jupiter.api.Assertions.assertTrue; - import java.io.Serializable; import java.util.ArrayList; import java.util.List; import jakarta.faces.model.DataModel; import jakarta.faces.model.ListDataModel; - import org.junit.jupiter.api.Test; + import org.springframework.binding.convert.converters.Converter; import org.springframework.faces.model.SerializableListDataModel; +import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.assertNotNull; +import static org.junit.jupiter.api.Assertions.assertSame; +import static org.junit.jupiter.api.Assertions.assertTrue; + public class DataModelConverterTests { Converter converter = new DataModelConverter(); diff --git a/spring-faces/src/test/java/org/springframework/faces/model/converter/FacesConversionServiceTests.java b/spring-faces/src/test/java/org/springframework/faces/model/converter/FacesConversionServiceTests.java index ed9da359..4036738b 100644 --- a/spring-faces/src/test/java/org/springframework/faces/model/converter/FacesConversionServiceTests.java +++ b/spring-faces/src/test/java/org/springframework/faces/model/converter/FacesConversionServiceTests.java @@ -3,11 +3,11 @@ package org.springframework.faces.model.converter; import java.util.ArrayList; import java.util.List; +import jakarta.faces.model.DataModel; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; -import org.springframework.binding.convert.ConversionExecutor; -import jakarta.faces.model.DataModel; +import org.springframework.binding.convert.ConversionExecutor; public class FacesConversionServiceTests { private FacesConversionService service; diff --git a/spring-faces/src/test/java/org/springframework/faces/mvc/JsfViewTests.java b/spring-faces/src/test/java/org/springframework/faces/mvc/JsfViewTests.java index 4549907e..899130da 100644 --- a/spring-faces/src/test/java/org/springframework/faces/mvc/JsfViewTests.java +++ b/spring-faces/src/test/java/org/springframework/faces/mvc/JsfViewTests.java @@ -1,15 +1,14 @@ package org.springframework.faces.mvc; -import static org.junit.jupiter.api.Assertions.assertEquals; -import static org.junit.jupiter.api.Assertions.assertNotNull; -import static org.junit.jupiter.api.Assertions.assertTrue; - import java.util.HashMap; import java.util.Locale; +import jakarta.faces.component.UIViewRoot; +import jakarta.faces.context.FacesContext; import org.junit.jupiter.api.AfterEach; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; + import org.springframework.faces.webflow.JSFMockHelper; import org.springframework.faces.webflow.MockViewHandler; import org.springframework.mock.web.MockHttpServletRequest; @@ -19,8 +18,9 @@ import org.springframework.web.context.support.StaticWebApplicationContext; import org.springframework.web.servlet.View; import org.springframework.web.servlet.view.UrlBasedViewResolver; -import jakarta.faces.component.UIViewRoot; -import jakarta.faces.context.FacesContext; +import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.assertNotNull; +import static org.junit.jupiter.api.Assertions.assertTrue; public class JsfViewTests { diff --git a/spring-faces/src/test/java/org/springframework/faces/webflow/FlowActionListenerTests.java b/spring-faces/src/test/java/org/springframework/faces/webflow/FlowActionListenerTests.java index 103c1c8f..f8add220 100644 --- a/spring-faces/src/test/java/org/springframework/faces/webflow/FlowActionListenerTests.java +++ b/spring-faces/src/test/java/org/springframework/faces/webflow/FlowActionListenerTests.java @@ -1,24 +1,24 @@ package org.springframework.faces.webflow; -import static org.junit.jupiter.api.Assertions.assertEquals; -import static org.junit.jupiter.api.Assertions.assertFalse; -import static org.junit.jupiter.api.Assertions.assertTrue; - -import org.easymock.EasyMock; -import org.junit.jupiter.api.AfterEach; -import org.junit.jupiter.api.BeforeEach; -import org.junit.jupiter.api.Test; -import org.springframework.webflow.core.collection.LocalAttributeMap; -import org.springframework.webflow.engine.Flow; -import org.springframework.webflow.engine.ViewState; -import org.springframework.webflow.execution.RequestContext; -import org.springframework.webflow.execution.RequestContextHolder; - import jakarta.el.ELContext; import jakarta.el.MethodExpression; import jakarta.el.MethodInfo; import jakarta.faces.component.UICommand; import jakarta.faces.event.ActionEvent; +import org.easymock.EasyMock; +import org.junit.jupiter.api.AfterEach; +import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.Test; + +import org.springframework.webflow.core.collection.LocalAttributeMap; +import org.springframework.webflow.engine.Flow; +import org.springframework.webflow.engine.ViewState; +import org.springframework.webflow.execution.RequestContext; +import org.springframework.webflow.execution.RequestContextHolder; + +import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.assertFalse; +import static org.junit.jupiter.api.Assertions.assertTrue; public class FlowActionListenerTests { diff --git a/spring-faces/src/test/java/org/springframework/faces/webflow/FlowELResolverTests.java b/spring-faces/src/test/java/org/springframework/faces/webflow/FlowELResolverTests.java index 7254c5ed..38841b9b 100644 --- a/spring-faces/src/test/java/org/springframework/faces/webflow/FlowELResolverTests.java +++ b/spring-faces/src/test/java/org/springframework/faces/webflow/FlowELResolverTests.java @@ -1,18 +1,11 @@ package org.springframework.faces.webflow; -import static org.junit.jupiter.api.Assertions.assertEquals; -import static org.junit.jupiter.api.Assertions.assertFalse; -import static org.junit.jupiter.api.Assertions.assertNotNull; -import static org.junit.jupiter.api.Assertions.assertNull; -import static org.junit.jupiter.api.Assertions.assertSame; -import static org.junit.jupiter.api.Assertions.assertTrue; - import jakarta.el.ELContext; - import org.apache.myfaces.test.el.MockELContext; import org.junit.jupiter.api.AfterEach; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; + import org.springframework.context.ApplicationContext; import org.springframework.web.context.support.StaticWebApplicationContext; import org.springframework.webflow.core.collection.LocalAttributeMap; @@ -21,6 +14,13 @@ import org.springframework.webflow.execution.RequestContext; import org.springframework.webflow.execution.RequestContextHolder; import org.springframework.webflow.test.MockRequestContext; +import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.assertFalse; +import static org.junit.jupiter.api.Assertions.assertNotNull; +import static org.junit.jupiter.api.Assertions.assertNull; +import static org.junit.jupiter.api.Assertions.assertSame; +import static org.junit.jupiter.api.Assertions.assertTrue; + /** * Tests for {@link FlowELResolver}. * diff --git a/spring-faces/src/test/java/org/springframework/faces/webflow/FlowFacesContextTests.java b/spring-faces/src/test/java/org/springframework/faces/webflow/FlowFacesContextTests.java index 794bcccf..68369402 100644 --- a/spring-faces/src/test/java/org/springframework/faces/webflow/FlowFacesContextTests.java +++ b/spring-faces/src/test/java/org/springframework/faces/webflow/FlowFacesContextTests.java @@ -1,11 +1,5 @@ package org.springframework.faces.webflow; -import static org.junit.jupiter.api.Assertions.assertEquals; -import static org.junit.jupiter.api.Assertions.assertFalse; -import static org.junit.jupiter.api.Assertions.assertNotNull; -import static org.junit.jupiter.api.Assertions.assertSame; -import static org.junit.jupiter.api.Assertions.assertTrue; - import java.io.ByteArrayInputStream; import java.io.ByteArrayOutputStream; import java.io.ObjectInputStream; @@ -17,11 +11,11 @@ import java.util.List; import jakarta.faces.application.FacesMessage; import jakarta.faces.context.FacesContext; - import org.easymock.EasyMock; import org.junit.jupiter.api.AfterEach; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; + import org.springframework.binding.message.DefaultMessageContext; import org.springframework.binding.message.Message; import org.springframework.binding.message.MessageBuilder; @@ -29,6 +23,12 @@ import org.springframework.binding.message.MessageContext; import org.springframework.faces.webflow.FlowFacesContext.FacesMessageSource; import org.springframework.webflow.execution.RequestContext; +import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.assertFalse; +import static org.junit.jupiter.api.Assertions.assertNotNull; +import static org.junit.jupiter.api.Assertions.assertSame; +import static org.junit.jupiter.api.Assertions.assertTrue; + public class FlowFacesContextTests { JSFMockHelper jsf = new JSFMockHelper(); diff --git a/spring-faces/src/test/java/org/springframework/faces/webflow/FlowPartialViewContextTests.java b/spring-faces/src/test/java/org/springframework/faces/webflow/FlowPartialViewContextTests.java index ee5ea607..fffad603 100644 --- a/spring-faces/src/test/java/org/springframework/faces/webflow/FlowPartialViewContextTests.java +++ b/spring-faces/src/test/java/org/springframework/faces/webflow/FlowPartialViewContextTests.java @@ -1,21 +1,21 @@ package org.springframework.faces.webflow; -import static org.junit.jupiter.api.Assertions.assertEquals; - import java.util.Arrays; import java.util.Collection; import java.util.List; import jakarta.faces.context.PartialViewContext; import jakarta.faces.context.PartialViewContextWrapper; - import org.junit.jupiter.api.AfterEach; import org.junit.jupiter.api.Test; + import org.springframework.webflow.execution.RequestContext; import org.springframework.webflow.execution.RequestContextHolder; import org.springframework.webflow.execution.View; import org.springframework.webflow.test.MockRequestContext; +import static org.junit.jupiter.api.Assertions.assertEquals; + public class FlowPartialViewContextTests { @AfterEach diff --git a/spring-faces/src/test/java/org/springframework/faces/webflow/JSFMockHelper.java b/spring-faces/src/test/java/org/springframework/faces/webflow/JSFMockHelper.java index 53100bff..619bdbae 100644 --- a/spring-faces/src/test/java/org/springframework/faces/webflow/JSFMockHelper.java +++ b/spring-faces/src/test/java/org/springframework/faces/webflow/JSFMockHelper.java @@ -4,6 +4,14 @@ import java.io.IOException; import java.net.URL; import java.net.URLClassLoader; +import jakarta.faces.FactoryFinder; +import jakarta.faces.application.Application; +import jakarta.faces.application.ApplicationFactory; +import jakarta.faces.component.UIViewRoot; +import jakarta.faces.context.FacesContext; +import jakarta.faces.context.FacesContextFactory; +import jakarta.faces.lifecycle.LifecycleFactory; +import jakarta.faces.render.RenderKitFactory; import org.apache.myfaces.test.base.junit.AbstractJsfTestCase; import org.apache.myfaces.test.mock.MockApplicationFactory; import org.apache.myfaces.test.mock.MockExternalContext; @@ -21,15 +29,6 @@ import org.apache.myfaces.test.mock.lifecycle.MockLifecycle; import org.apache.myfaces.test.mock.lifecycle.MockLifecycleFactory; import org.apache.myfaces.test.mock.visit.MockVisitContextFactory; -import jakarta.faces.FactoryFinder; -import jakarta.faces.application.Application; -import jakarta.faces.application.ApplicationFactory; -import jakarta.faces.component.UIViewRoot; -import jakarta.faces.context.FacesContext; -import jakarta.faces.context.FacesContextFactory; -import jakarta.faces.lifecycle.LifecycleFactory; -import jakarta.faces.render.RenderKitFactory; - /** * Helper for using the mock JSF environment provided by shale-test inside unit tests that do not extend * {@link AbstractJsfTestCase} diff --git a/spring-faces/src/test/java/org/springframework/faces/webflow/JsfFinalResponseActionTests.java b/spring-faces/src/test/java/org/springframework/faces/webflow/JsfFinalResponseActionTests.java index bcccf210..4065ba85 100644 --- a/spring-faces/src/test/java/org/springframework/faces/webflow/JsfFinalResponseActionTests.java +++ b/spring-faces/src/test/java/org/springframework/faces/webflow/JsfFinalResponseActionTests.java @@ -1,18 +1,23 @@ package org.springframework.faces.webflow; -import static org.junit.jupiter.api.Assertions.assertFalse; -import static org.junit.jupiter.api.Assertions.assertTrue; - -import java.io.IOException; import java.util.ArrayList; import java.util.HashMap; import java.util.List; +import jakarta.faces.FacesException; +import jakarta.faces.application.ViewHandler; +import jakarta.faces.component.UIViewRoot; +import jakarta.faces.context.FacesContext; +import jakarta.faces.event.PhaseEvent; +import jakarta.faces.event.PhaseId; +import jakarta.faces.event.PhaseListener; +import jakarta.faces.lifecycle.Lifecycle; import org.apache.el.ExpressionFactoryImpl; import org.easymock.EasyMock; import org.junit.jupiter.api.AfterEach; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; + import org.springframework.binding.expression.ExpressionParser; import org.springframework.binding.expression.support.FluentParserContext; import org.springframework.mock.web.MockHttpServletRequest; @@ -26,14 +31,8 @@ import org.springframework.webflow.execution.View; import org.springframework.webflow.expression.el.WebFlowELExpressionParser; import org.springframework.webflow.test.MockExternalContext; -import jakarta.faces.FacesException; -import jakarta.faces.application.ViewHandler; -import jakarta.faces.component.UIViewRoot; -import jakarta.faces.context.FacesContext; -import jakarta.faces.event.PhaseEvent; -import jakarta.faces.event.PhaseId; -import jakarta.faces.event.PhaseListener; -import jakarta.faces.lifecycle.Lifecycle; +import static org.junit.jupiter.api.Assertions.assertFalse; +import static org.junit.jupiter.api.Assertions.assertTrue; public class JsfFinalResponseActionTests { diff --git a/spring-faces/src/test/java/org/springframework/faces/webflow/JsfUtilsTests.java b/spring-faces/src/test/java/org/springframework/faces/webflow/JsfUtilsTests.java index b97c19fc..4fc892c0 100644 --- a/spring-faces/src/test/java/org/springframework/faces/webflow/JsfUtilsTests.java +++ b/spring-faces/src/test/java/org/springframework/faces/webflow/JsfUtilsTests.java @@ -4,14 +4,6 @@ import java.io.InputStream; import java.util.ArrayList; import java.util.List; -import org.apache.myfaces.test.base.junit.AbstractJsfTestCase; -import org.apache.myfaces.test.mock.MockApplicationFactory; -import org.apache.myfaces.test.mock.MockFacesContext; -import org.apache.myfaces.test.mock.MockFacesContextFactory; -import org.apache.myfaces.test.mock.MockRenderKitFactory; -import org.apache.myfaces.test.mock.lifecycle.MockLifecycle; -import org.apache.myfaces.test.mock.lifecycle.MockLifecycleFactory; - import jakarta.faces.application.ApplicationFactory; import jakarta.faces.context.FacesContextFactory; import jakarta.faces.event.PhaseEvent; @@ -19,6 +11,13 @@ import jakarta.faces.event.PhaseId; import jakarta.faces.event.PhaseListener; import jakarta.faces.lifecycle.LifecycleFactory; import jakarta.faces.render.RenderKitFactory; +import org.apache.myfaces.test.base.junit.AbstractJsfTestCase; +import org.apache.myfaces.test.mock.MockApplicationFactory; +import org.apache.myfaces.test.mock.MockFacesContext; +import org.apache.myfaces.test.mock.MockFacesContextFactory; +import org.apache.myfaces.test.mock.MockRenderKitFactory; +import org.apache.myfaces.test.mock.lifecycle.MockLifecycle; +import org.apache.myfaces.test.mock.lifecycle.MockLifecycleFactory; import org.junit.jupiter.api.Test; import static org.junit.jupiter.api.Assertions.assertEquals; diff --git a/spring-faces/src/test/java/org/springframework/faces/webflow/JsfViewFactoryTests.java b/spring-faces/src/test/java/org/springframework/faces/webflow/JsfViewFactoryTests.java index 9b0feaa6..d31da262 100644 --- a/spring-faces/src/test/java/org/springframework/faces/webflow/JsfViewFactoryTests.java +++ b/spring-faces/src/test/java/org/springframework/faces/webflow/JsfViewFactoryTests.java @@ -1,39 +1,9 @@ package org.springframework.faces.webflow; -import static org.junit.jupiter.api.Assertions.assertEquals; -import static org.junit.jupiter.api.Assertions.assertFalse; -import static org.junit.jupiter.api.Assertions.assertNotNull; -import static org.junit.jupiter.api.Assertions.assertSame; -import static org.junit.jupiter.api.Assertions.assertTrue; -import static org.junit.jupiter.api.Assertions.fail; - import java.util.ArrayList; import java.util.HashMap; import java.util.List; -import org.apache.el.ExpressionFactoryImpl; -import org.apache.myfaces.test.mock.MockApplication20; -import org.easymock.EasyMock; -import org.junit.jupiter.api.AfterEach; -import org.junit.jupiter.api.BeforeEach; -import org.junit.jupiter.api.Test; -import org.springframework.binding.expression.ExpressionParser; -import org.springframework.binding.expression.support.FluentParserContext; -import org.springframework.mock.web.MockHttpServletRequest; -import org.springframework.mock.web.MockHttpServletResponse; -import org.springframework.mock.web.MockServletContext; -import org.springframework.webflow.core.collection.LocalAttributeMap; -import org.springframework.webflow.core.collection.LocalParameterMap; -import org.springframework.webflow.core.collection.MutableAttributeMap; -import org.springframework.webflow.definition.FlowDefinition; -import org.springframework.webflow.definition.StateDefinition; -import org.springframework.webflow.execution.RequestContext; -import org.springframework.webflow.execution.RequestContextHolder; -import org.springframework.webflow.execution.View; -import org.springframework.webflow.execution.ViewFactory; -import org.springframework.webflow.expression.el.WebFlowELExpressionParser; -import org.springframework.webflow.test.MockExternalContext; - import jakarta.faces.FacesException; import jakarta.faces.application.ViewHandler; import jakarta.faces.component.UIInput; @@ -51,6 +21,36 @@ import jakarta.faces.event.PhaseListener; import jakarta.faces.event.PostRestoreStateEvent; import jakarta.faces.event.SystemEvent; import jakarta.faces.lifecycle.Lifecycle; +import org.apache.el.ExpressionFactoryImpl; +import org.apache.myfaces.test.mock.MockApplication20; +import org.easymock.EasyMock; +import org.junit.jupiter.api.AfterEach; +import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.Test; + +import org.springframework.binding.expression.ExpressionParser; +import org.springframework.binding.expression.support.FluentParserContext; +import org.springframework.mock.web.MockHttpServletRequest; +import org.springframework.mock.web.MockHttpServletResponse; +import org.springframework.mock.web.MockServletContext; +import org.springframework.webflow.core.collection.LocalAttributeMap; +import org.springframework.webflow.core.collection.LocalParameterMap; +import org.springframework.webflow.core.collection.MutableAttributeMap; +import org.springframework.webflow.definition.FlowDefinition; +import org.springframework.webflow.definition.StateDefinition; +import org.springframework.webflow.execution.RequestContext; +import org.springframework.webflow.execution.RequestContextHolder; +import org.springframework.webflow.execution.View; +import org.springframework.webflow.execution.ViewFactory; +import org.springframework.webflow.expression.el.WebFlowELExpressionParser; +import org.springframework.webflow.test.MockExternalContext; + +import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.assertFalse; +import static org.junit.jupiter.api.Assertions.assertNotNull; +import static org.junit.jupiter.api.Assertions.assertSame; +import static org.junit.jupiter.api.Assertions.assertTrue; +import static org.junit.jupiter.api.Assertions.fail; public class JsfViewFactoryTests { diff --git a/spring-faces/src/test/java/org/springframework/faces/webflow/JsfViewTests.java b/spring-faces/src/test/java/org/springframework/faces/webflow/JsfViewTests.java index e1c68f2f..6bfa2910 100644 --- a/spring-faces/src/test/java/org/springframework/faces/webflow/JsfViewTests.java +++ b/spring-faces/src/test/java/org/springframework/faces/webflow/JsfViewTests.java @@ -1,25 +1,8 @@ package org.springframework.faces.webflow; -import static org.junit.jupiter.api.Assertions.assertEquals; -import static org.junit.jupiter.api.Assertions.assertFalse; -import static org.junit.jupiter.api.Assertions.assertTrue; - import java.io.IOException; import java.io.StringWriter; -import org.apache.myfaces.test.mock.MockResponseWriter; -import org.easymock.EasyMock; -import org.junit.jupiter.api.AfterEach; -import org.junit.jupiter.api.BeforeEach; -import org.junit.jupiter.api.Test; -import org.springframework.webflow.core.collection.MutableAttributeMap; -import org.springframework.webflow.execution.FlowExecutionContext; -import org.springframework.webflow.execution.FlowExecutionKey; -import org.springframework.webflow.execution.RequestContext; -import org.springframework.webflow.execution.RequestContextHolder; -import org.springframework.webflow.test.MockExternalContext; -import org.springframework.webflow.test.MockParameterMap; - import jakarta.faces.FacesException; import jakarta.faces.component.UIForm; import jakarta.faces.component.UIInput; @@ -28,6 +11,23 @@ import jakarta.faces.component.html.HtmlForm; import jakarta.faces.component.html.HtmlInputText; import jakarta.faces.context.FacesContext; import jakarta.faces.lifecycle.Lifecycle; +import org.apache.myfaces.test.mock.MockResponseWriter; +import org.easymock.EasyMock; +import org.junit.jupiter.api.AfterEach; +import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.Test; + +import org.springframework.webflow.core.collection.MutableAttributeMap; +import org.springframework.webflow.execution.FlowExecutionContext; +import org.springframework.webflow.execution.FlowExecutionKey; +import org.springframework.webflow.execution.RequestContext; +import org.springframework.webflow.execution.RequestContextHolder; +import org.springframework.webflow.test.MockExternalContext; +import org.springframework.webflow.test.MockParameterMap; + +import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.assertFalse; +import static org.junit.jupiter.api.Assertions.assertTrue; public class JsfViewTests { diff --git a/spring-faces/src/test/java/org/springframework/faces/webflow/MockBaseFacesContext.java b/spring-faces/src/test/java/org/springframework/faces/webflow/MockBaseFacesContext.java index aa57e3be..89941b08 100644 --- a/spring-faces/src/test/java/org/springframework/faces/webflow/MockBaseFacesContext.java +++ b/spring-faces/src/test/java/org/springframework/faces/webflow/MockBaseFacesContext.java @@ -2,13 +2,12 @@ package org.springframework.faces.webflow; import java.util.Map; -import org.apache.myfaces.test.mock.MockFacesContext20; - import jakarta.faces.FactoryFinder; import jakarta.faces.application.Application; import jakarta.faces.application.ApplicationFactory; import jakarta.faces.context.ExternalContext; import jakarta.faces.lifecycle.Lifecycle; +import org.apache.myfaces.test.mock.MockFacesContext20; public class MockBaseFacesContext extends MockFacesContext20 { diff --git a/spring-faces/src/test/java/org/springframework/faces/webflow/MockBaseFacesContextFactory.java b/spring-faces/src/test/java/org/springframework/faces/webflow/MockBaseFacesContextFactory.java index f309cd4d..9db12505 100644 --- a/spring-faces/src/test/java/org/springframework/faces/webflow/MockBaseFacesContextFactory.java +++ b/spring-faces/src/test/java/org/springframework/faces/webflow/MockBaseFacesContextFactory.java @@ -1,8 +1,5 @@ package org.springframework.faces.webflow; -import org.apache.myfaces.test.mock.MockExternalContext; -import org.apache.myfaces.test.mock.MockHttpServletResponse; - import jakarta.faces.FacesException; import jakarta.faces.context.ExternalContext; import jakarta.faces.context.FacesContext; @@ -11,6 +8,8 @@ import jakarta.faces.lifecycle.Lifecycle; import jakarta.servlet.ServletContext; import jakarta.servlet.http.HttpServletRequest; import jakarta.servlet.http.HttpServletResponse; +import org.apache.myfaces.test.mock.MockExternalContext; +import org.apache.myfaces.test.mock.MockHttpServletResponse; public class MockBaseFacesContextFactory extends FacesContextFactory { diff --git a/spring-faces/src/test/java/org/springframework/faces/webflow/MockJsfExternalContext.java b/spring-faces/src/test/java/org/springframework/faces/webflow/MockJsfExternalContext.java index e77ac2b4..d4683a30 100644 --- a/spring-faces/src/test/java/org/springframework/faces/webflow/MockJsfExternalContext.java +++ b/spring-faces/src/test/java/org/springframework/faces/webflow/MockJsfExternalContext.java @@ -1,5 +1,5 @@ /* - * Copyright 2004-2012 the original author or authors. + * Copyright 2004-2023 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. diff --git a/spring-faces/src/test/java/org/springframework/faces/webflow/MockViewHandler.java b/spring-faces/src/test/java/org/springframework/faces/webflow/MockViewHandler.java index 177229c6..3a0ec769 100644 --- a/spring-faces/src/test/java/org/springframework/faces/webflow/MockViewHandler.java +++ b/spring-faces/src/test/java/org/springframework/faces/webflow/MockViewHandler.java @@ -1,5 +1,5 @@ /* - * Copyright 2004-2008 the original author or authors. + * Copyright 2004-2023 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. diff --git a/spring-webflow/src/main/java/org/springframework/webflow/mvc/builder/FlowResourceFlowViewResolver.java b/spring-webflow/src/main/java/org/springframework/webflow/mvc/builder/FlowResourceFlowViewResolver.java index 1e2dbc28..98eb5360 100644 --- a/spring-webflow/src/main/java/org/springframework/webflow/mvc/builder/FlowResourceFlowViewResolver.java +++ b/spring-webflow/src/main/java/org/springframework/webflow/mvc/builder/FlowResourceFlowViewResolver.java @@ -1,5 +1,5 @@ /* - * Copyright 2004-2008 the original author or authors. + * Copyright 2004-2023 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. @@ -35,7 +35,8 @@ import org.springframework.webflow.mvc.view.FlowViewResolver; */ public class FlowResourceFlowViewResolver implements FlowViewResolver { - private static final boolean JSTL_PRESENT = ClassUtils.isPresent("jakarta.servlet.jsp.jstl.fmt.LocalizationContext", FlowResourceFlowViewResolver.class.getClassLoader()); + private static final boolean JSTL_PRESENT = ClassUtils.isPresent( + "jakarta.servlet.jsp.jstl.fmt.LocalizationContext", FlowResourceFlowViewResolver.class.getClassLoader()); private String defaultViewSuffix = ".jsp";