minor structure polishing / naming conventions
This commit is contained in:
@@ -19,9 +19,9 @@ import org.springframework.beans.factory.support.BeanDefinitionBuilder;
|
||||
import org.springframework.beans.factory.xml.AbstractSingleBeanDefinitionParser;
|
||||
import org.springframework.beans.factory.xml.BeanDefinitionParser;
|
||||
import org.springframework.binding.expression.el.DefaultExpressionFactoryUtils;
|
||||
import org.springframework.faces.expression.LegacyJSFELExpressionParser;
|
||||
import org.springframework.faces.model.converter.FacesConversionService;
|
||||
import org.springframework.faces.webflow.JsfViewFactoryCreator;
|
||||
import org.springframework.faces.webflow.JsfManagedBeanAwareELExpressionParser;
|
||||
import org.springframework.util.StringUtils;
|
||||
import org.springframework.webflow.engine.builder.support.FlowBuilderServices;
|
||||
import org.springframework.webflow.expression.el.WebFlowELExpressionParser;
|
||||
@@ -54,7 +54,7 @@ public class FacesFlowBuilderServicesBeanDefinitionParser extends AbstractSingle
|
||||
protected void doParse(Element element, BeanDefinitionBuilder definitionBuilder) {
|
||||
boolean enableManagedBeans = parseEnableManagedBeans(element, definitionBuilder);
|
||||
if (enableManagedBeans) {
|
||||
definitionBuilder.addPropertyValue(EXPRESSION_PARSER_PROPERTY, new LegacyJSFELExpressionParser(
|
||||
definitionBuilder.addPropertyValue(EXPRESSION_PARSER_PROPERTY, new JsfManagedBeanAwareELExpressionParser(
|
||||
DefaultExpressionFactoryUtils.createExpressionFactory()));
|
||||
} else {
|
||||
parseExpressionParser(element, definitionBuilder);
|
||||
|
||||
@@ -7,7 +7,7 @@ import java.util.Map;
|
||||
import javax.faces.component.UIComponent;
|
||||
import javax.faces.context.FacesContext;
|
||||
|
||||
import org.springframework.faces.ui.resource.FlowResourceHelper;
|
||||
import org.springframework.faces.ui.resource.ResourceHelper;
|
||||
|
||||
public abstract class BaseDojoParentComponentRenderer extends BaseSpringFacesParentComponentRenderer {
|
||||
|
||||
@@ -19,7 +19,7 @@ public abstract class BaseDojoParentComponentRenderer extends BaseSpringFacesPar
|
||||
|
||||
private String springDojoJsResourceUri = "/spring/Spring-Dojo.js";
|
||||
|
||||
private FlowResourceHelper resourceHelper = new FlowResourceHelper();
|
||||
private ResourceHelper resourceHelper = new ResourceHelper();
|
||||
|
||||
public void encodeBegin(FacesContext context, UIComponent component) throws IOException {
|
||||
super.encodeBegin(context, component);
|
||||
|
||||
@@ -5,13 +5,13 @@ import java.io.IOException;
|
||||
import javax.faces.component.UIComponent;
|
||||
import javax.faces.context.FacesContext;
|
||||
|
||||
import org.springframework.faces.ui.resource.FlowResourceHelper;
|
||||
import org.springframework.faces.ui.resource.ResourceHelper;
|
||||
|
||||
public abstract class BaseSpringFacesParentComponentRenderer extends BaseParentComponentRenderer {
|
||||
|
||||
private String springJsResourceUri = "/spring/Spring.js";
|
||||
|
||||
private FlowResourceHelper resourceHelper = new FlowResourceHelper();
|
||||
private ResourceHelper resourceHelper = new ResourceHelper();
|
||||
|
||||
public void encodeBegin(FacesContext context, UIComponent component) throws IOException {
|
||||
|
||||
|
||||
@@ -24,14 +24,14 @@ import javax.faces.component.ValueHolder;
|
||||
import javax.faces.context.FacesContext;
|
||||
import javax.faces.context.ResponseWriter;
|
||||
|
||||
import org.springframework.faces.ui.resource.FlowResourceHelper;
|
||||
import org.springframework.faces.ui.resource.ResourceHelper;
|
||||
import org.springframework.util.StringUtils;
|
||||
|
||||
public class DojoAdvisorRenderer extends DojoRenderer {
|
||||
|
||||
private static final String SCRIPT_ELEMENT = "script";
|
||||
|
||||
private FlowResourceHelper resourceHelper = new FlowResourceHelper();
|
||||
private ResourceHelper resourceHelper = new ResourceHelper();
|
||||
|
||||
public void encodeEnd(FacesContext context, UIComponent component) throws IOException {
|
||||
|
||||
|
||||
@@ -22,7 +22,7 @@ import java.util.Map;
|
||||
import javax.faces.component.UIComponent;
|
||||
import javax.faces.context.FacesContext;
|
||||
|
||||
import org.springframework.faces.ui.resource.FlowResourceHelper;
|
||||
import org.springframework.faces.ui.resource.ResourceHelper;
|
||||
|
||||
public class DojoRenderer extends SpringFacesRenderer {
|
||||
|
||||
@@ -34,7 +34,7 @@ public class DojoRenderer extends SpringFacesRenderer {
|
||||
|
||||
private String springDojoJsResourceUri = "/spring/Spring-Dojo.js";
|
||||
|
||||
private FlowResourceHelper resourceHelper = new FlowResourceHelper();
|
||||
private ResourceHelper resourceHelper = new ResourceHelper();
|
||||
|
||||
public void encodeBegin(FacesContext context, UIComponent component) throws IOException {
|
||||
|
||||
|
||||
@@ -20,7 +20,7 @@ import java.io.IOException;
|
||||
import javax.faces.component.UIComponent;
|
||||
import javax.faces.context.FacesContext;
|
||||
|
||||
import org.springframework.faces.ui.resource.FlowResourceHelper;
|
||||
import org.springframework.faces.ui.resource.ResourceHelper;
|
||||
|
||||
public class ExtJsRenderer extends SpringFacesRenderer {
|
||||
|
||||
@@ -30,7 +30,7 @@ public class ExtJsRenderer extends SpringFacesRenderer {
|
||||
|
||||
private static final String SPRING_EXT_SCRIPT = "/spring/Spring-Ext.js";
|
||||
|
||||
private FlowResourceHelper resourceHelper = new FlowResourceHelper();
|
||||
private ResourceHelper resourceHelper = new ResourceHelper();
|
||||
|
||||
public void encodeBegin(FacesContext context, UIComponent component) throws IOException {
|
||||
|
||||
|
||||
@@ -21,13 +21,13 @@ import javax.faces.component.UIComponent;
|
||||
import javax.faces.context.FacesContext;
|
||||
import javax.faces.render.Renderer;
|
||||
|
||||
import org.springframework.faces.ui.resource.FlowResourceHelper;
|
||||
import org.springframework.faces.ui.resource.ResourceHelper;
|
||||
|
||||
public class SpringFacesRenderer extends Renderer {
|
||||
|
||||
private String springJsResourceUri = "/spring/Spring.js";
|
||||
|
||||
private FlowResourceHelper resourceHelper = new FlowResourceHelper();
|
||||
private ResourceHelper resourceHelper = new ResourceHelper();
|
||||
|
||||
public void encodeBegin(FacesContext context, UIComponent component) throws IOException {
|
||||
|
||||
|
||||
@@ -25,9 +25,6 @@ import java.util.Set;
|
||||
import javax.faces.context.FacesContext;
|
||||
import javax.faces.context.ResponseWriter;
|
||||
|
||||
import org.springframework.webflow.execution.RequestContext;
|
||||
import org.springframework.webflow.execution.RequestContextHolder;
|
||||
|
||||
/**
|
||||
* Helper used by Spring Faces component renderers to add links to javascript and css resources. The resource links will
|
||||
* be rendered in the correct format for the requests to be handled by Web Flow and routed to a special "resources" flow
|
||||
@@ -36,7 +33,7 @@ import org.springframework.webflow.execution.RequestContextHolder;
|
||||
* @author Jeremy Grelle
|
||||
*
|
||||
*/
|
||||
public class FlowResourceHelper {
|
||||
public class ResourceHelper {
|
||||
|
||||
private static final String RENDERED_RESOURCES_KEY = "org.springframework.faces.RenderedResources";
|
||||
|
||||
@@ -58,31 +55,20 @@ public class FlowResourceHelper {
|
||||
* @throws IOException
|
||||
*/
|
||||
public void renderScriptLink(FacesContext facesContext, String scriptPath, Map attributes) throws IOException {
|
||||
|
||||
if (alreadyRendered(facesContext, scriptPath)) {
|
||||
return;
|
||||
}
|
||||
|
||||
RequestContext requestContext = RequestContextHolder.getRequestContext();
|
||||
|
||||
ResponseWriter writer = facesContext.getResponseWriter();
|
||||
|
||||
writer.startElement("script", null);
|
||||
|
||||
writer.writeAttribute("type", "text/javascript", null);
|
||||
|
||||
Iterator i = attributes.keySet().iterator();
|
||||
while (i.hasNext()) {
|
||||
String key = (String) i.next();
|
||||
writer.writeAttribute(key, attributes.get(key), null);
|
||||
}
|
||||
|
||||
String src = requestContext.getExternalContext().getContextPath() + "/resources" + scriptPath;
|
||||
|
||||
String src = facesContext.getExternalContext().getRequestContextPath() + "/resources" + scriptPath;
|
||||
writer.writeAttribute("src", src, null);
|
||||
|
||||
writer.endElement("script");
|
||||
|
||||
markRendered(facesContext, scriptPath);
|
||||
}
|
||||
|
||||
@@ -93,26 +79,16 @@ public class FlowResourceHelper {
|
||||
* @throws IOException
|
||||
*/
|
||||
public void renderStyleLink(FacesContext facesContext, String cssPath) throws IOException {
|
||||
|
||||
if (alreadyRendered(facesContext, cssPath)) {
|
||||
return;
|
||||
}
|
||||
|
||||
RequestContext requestContext = RequestContextHolder.getRequestContext();
|
||||
|
||||
ResponseWriter writer = facesContext.getResponseWriter();
|
||||
|
||||
writer.startElement("link", null);
|
||||
|
||||
writer.writeAttribute("type", "text/css", null);
|
||||
writer.writeAttribute("rel", "stylesheet", null);
|
||||
|
||||
String src = requestContext.getExternalContext().getContextPath() + "/resources" + cssPath;
|
||||
|
||||
String src = facesContext.getExternalContext().getRequestContextPath() + "/resources" + cssPath;
|
||||
writer.writeAttribute("href", src, null);
|
||||
|
||||
writer.endElement("link");
|
||||
|
||||
markRendered(facesContext, cssPath);
|
||||
}
|
||||
|
||||
@@ -123,21 +99,14 @@ public class FlowResourceHelper {
|
||||
* @throws IOException
|
||||
*/
|
||||
public void renderDojoInclude(FacesContext facesContext, String module) throws IOException {
|
||||
|
||||
if (alreadyRendered(facesContext, module)) {
|
||||
return;
|
||||
}
|
||||
|
||||
ResponseWriter writer = facesContext.getResponseWriter();
|
||||
|
||||
writer.startElement("script", null);
|
||||
|
||||
writer.writeAttribute("type", "text/javascript", null);
|
||||
|
||||
writer.writeText("dojo.require('" + module + "');", null);
|
||||
|
||||
writer.endElement("script");
|
||||
|
||||
markRendered(facesContext, module);
|
||||
}
|
||||
|
||||
@@ -13,22 +13,20 @@
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
package org.springframework.faces.expression;
|
||||
package org.springframework.faces.webflow;
|
||||
|
||||
import javax.el.CompositeELResolver;
|
||||
import javax.faces.el.PropertyResolver;
|
||||
|
||||
import org.springframework.binding.expression.el.MapAdaptableELResolver;
|
||||
import org.springframework.webflow.expression.el.RequestContextELResolver;
|
||||
import org.springframework.webflow.expression.el.ScopeSearchingELResolver;
|
||||
import org.springframework.faces.expression.ELDelegatingPropertyResolver;
|
||||
|
||||
/**
|
||||
* Assembles {@link RequestContextELResolver} and {@link ScopeSearchingELResolver} into a composite that may be used
|
||||
* with JSF 1.1 and higher for property resolution.
|
||||
* For resolving MapAdaptable properties with JSF 1.1 or >.
|
||||
*
|
||||
* @author Jeremy Grelle
|
||||
*/
|
||||
public class CompositeFlowPropertyResolver extends ELDelegatingPropertyResolver {
|
||||
public class FlowPropertyResolver extends ELDelegatingPropertyResolver {
|
||||
|
||||
private static final CompositeELResolver composite = new CompositeELResolver();
|
||||
|
||||
@@ -36,7 +34,7 @@ public class CompositeFlowPropertyResolver extends ELDelegatingPropertyResolver
|
||||
composite.add(new MapAdaptableELResolver());
|
||||
}
|
||||
|
||||
public CompositeFlowPropertyResolver(PropertyResolver nextResolver) {
|
||||
public FlowPropertyResolver(PropertyResolver nextResolver) {
|
||||
super(nextResolver, composite);
|
||||
}
|
||||
}
|
||||
@@ -13,11 +13,12 @@
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
package org.springframework.faces.expression;
|
||||
package org.springframework.faces.webflow;
|
||||
|
||||
import javax.el.CompositeELResolver;
|
||||
import javax.faces.el.VariableResolver;
|
||||
|
||||
import org.springframework.faces.expression.ELDelegatingVariableResolver;
|
||||
import org.springframework.util.ClassUtils;
|
||||
import org.springframework.webflow.expression.el.ImplicitFlowVariableELResolver;
|
||||
import org.springframework.webflow.expression.el.RequestContextELResolver;
|
||||
@@ -26,26 +27,25 @@ import org.springframework.webflow.expression.el.SpringBeanWebFlowELResolver;
|
||||
import org.springframework.webflow.expression.el.SpringSecurityELResolver;
|
||||
|
||||
/**
|
||||
* Assembles {@link RequestContextELResolver} and {@link ScopeSearchingELResolver} into a composite that may be used
|
||||
* with JSF 1.1 and higher for variable resolution.
|
||||
* For resolving flow request context variables with JSF 1.1 or >.
|
||||
*
|
||||
* @author Jeremy Grelle
|
||||
*/
|
||||
public class CompositeFlowVariableResolver extends ELDelegatingVariableResolver {
|
||||
public class FlowVariableResolver extends ELDelegatingVariableResolver {
|
||||
|
||||
private static final CompositeELResolver composite = new CompositeELResolver();
|
||||
|
||||
static {
|
||||
composite.add(new RequestContextELResolver());
|
||||
composite.add(new ImplicitFlowVariableELResolver());
|
||||
composite.add(new ScopeSearchingELResolver());
|
||||
if (ClassUtils.isPresent("org.springframework.security.context.SecurityContextHolder")) {
|
||||
composite.add(new SpringSecurityELResolver());
|
||||
}
|
||||
composite.add(new SpringBeanWebFlowELResolver());
|
||||
composite.add(new ImplicitFlowVariableELResolver());
|
||||
composite.add(new ScopeSearchingELResolver());
|
||||
}
|
||||
|
||||
public CompositeFlowVariableResolver(VariableResolver nextResolver) {
|
||||
public FlowVariableResolver(VariableResolver nextResolver) {
|
||||
super(nextResolver, composite);
|
||||
}
|
||||
}
|
||||
@@ -13,7 +13,7 @@
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
package org.springframework.faces.expression;
|
||||
package org.springframework.faces.webflow;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
@@ -43,9 +43,9 @@ import org.springframework.webflow.expression.el.SpringSecurityELResolver;
|
||||
*
|
||||
* @author Jeremy Grelle
|
||||
*/
|
||||
public class LegacyJSFELExpressionParser extends ELExpressionParser {
|
||||
public class JsfManagedBeanAwareELExpressionParser extends ELExpressionParser {
|
||||
|
||||
public LegacyJSFELExpressionParser(ExpressionFactory expressionFactory) {
|
||||
public JsfManagedBeanAwareELExpressionParser(ExpressionFactory expressionFactory) {
|
||||
super(expressionFactory);
|
||||
putContextFactory(RequestContext.class, new RequestContextELContextFactory());
|
||||
putContextFactory(MutableAttributeMap.class, new AttributeMapELContextFactory());
|
||||
@@ -63,7 +63,7 @@ public class LegacyJSFELExpressionParser extends ELExpressionParser {
|
||||
customResolvers.add(new SpringSecurityELResolver());
|
||||
}
|
||||
customResolvers.add(new SpringBeanWebFlowELResolver(context));
|
||||
customResolvers.add(new LegacyJSFBeanResolver());
|
||||
customResolvers.add(new JsfManagedBeanResolver());
|
||||
ELResolver resolver = new DefaultELResolver(target, customResolvers);
|
||||
return new WebFlowELContext(resolver);
|
||||
}
|
||||
@@ -13,7 +13,7 @@
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
package org.springframework.faces.expression;
|
||||
package org.springframework.faces.webflow;
|
||||
|
||||
import java.util.Iterator;
|
||||
|
||||
@@ -32,7 +32,7 @@ import org.springframework.webflow.execution.RequestContextHolder;
|
||||
*
|
||||
* @author Jeremy Grelle
|
||||
*/
|
||||
public class LegacyJSFBeanResolver extends ELResolver {
|
||||
public class JsfManagedBeanResolver extends ELResolver {
|
||||
|
||||
public Class getCommonPropertyType(ELContext context, Object base) {
|
||||
return Object.class;
|
||||
Reference in New Issue
Block a user