You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@myfaces.apache.org by we...@apache.org on 2009/09/10 14:15:08 UTC
svn commit: r813399 - in
/myfaces/extensions/scripting/trunk/core/myfaces2-extensions: ./
src/main/java/org/apache/myfaces/scripting/jsf/dynamicdecorators/factories/
src/main/java/org/apache/myfaces/scripting/jsf/dynamicdecorators/implemetations/
Author: werpu
Date: Thu Sep 10 12:15:07 2009
New Revision: 813399
URL: http://svn.apache.org/viewvc?rev=813399&view=rev
Log:
http://issues.apache.org/jira/browse/EXTSCRIPT-1
first initial changes to support all new methods in the existing factories and hooks
the new hooks will be added later
Modified:
myfaces/extensions/scripting/trunk/core/myfaces2-extensions/pom.xml
myfaces/extensions/scripting/trunk/core/myfaces2-extensions/src/main/java/org/apache/myfaces/scripting/jsf/dynamicdecorators/factories/ScriptingApplicationFactory.java
myfaces/extensions/scripting/trunk/core/myfaces2-extensions/src/main/java/org/apache/myfaces/scripting/jsf/dynamicdecorators/factories/ScriptingFacesContextFactory.java
myfaces/extensions/scripting/trunk/core/myfaces2-extensions/src/main/java/org/apache/myfaces/scripting/jsf/dynamicdecorators/factories/ScriptingLifecycleFactory.java
myfaces/extensions/scripting/trunk/core/myfaces2-extensions/src/main/java/org/apache/myfaces/scripting/jsf/dynamicdecorators/factories/ScriptingRenderkitFactory.java
myfaces/extensions/scripting/trunk/core/myfaces2-extensions/src/main/java/org/apache/myfaces/scripting/jsf/dynamicdecorators/implemetations/ApplicationProxy.java
myfaces/extensions/scripting/trunk/core/myfaces2-extensions/src/main/java/org/apache/myfaces/scripting/jsf/dynamicdecorators/implemetations/ELResolverProxy.java
myfaces/extensions/scripting/trunk/core/myfaces2-extensions/src/main/java/org/apache/myfaces/scripting/jsf/dynamicdecorators/implemetations/FacesContextProxy.java
myfaces/extensions/scripting/trunk/core/myfaces2-extensions/src/main/java/org/apache/myfaces/scripting/jsf/dynamicdecorators/implemetations/RenderkitProxy.java
myfaces/extensions/scripting/trunk/core/myfaces2-extensions/src/main/java/org/apache/myfaces/scripting/jsf/dynamicdecorators/implemetations/ViewHandlerProxy.java
Modified: myfaces/extensions/scripting/trunk/core/myfaces2-extensions/pom.xml
URL: http://svn.apache.org/viewvc/myfaces/extensions/scripting/trunk/core/myfaces2-extensions/pom.xml?rev=813399&r1=813398&r2=813399&view=diff
==============================================================================
--- myfaces/extensions/scripting/trunk/core/myfaces2-extensions/pom.xml (original)
+++ myfaces/extensions/scripting/trunk/core/myfaces2-extensions/pom.xml Thu Sep 10 12:15:07 2009
@@ -18,6 +18,13 @@
<dependencies>
<dependency>
+ <groupId>org.apache.myfaces.extension-scripting</groupId>
+ <artifactId>core</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ </dependency>
+
+
+ <dependency>
<groupId>javax.servlet</groupId>
<artifactId>servlet-api</artifactId>
<version>2.3</version>
Modified: myfaces/extensions/scripting/trunk/core/myfaces2-extensions/src/main/java/org/apache/myfaces/scripting/jsf/dynamicdecorators/factories/ScriptingApplicationFactory.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/scripting/trunk/core/myfaces2-extensions/src/main/java/org/apache/myfaces/scripting/jsf/dynamicdecorators/factories/ScriptingApplicationFactory.java?rev=813399&r1=813398&r2=813399&view=diff
==============================================================================
--- myfaces/extensions/scripting/trunk/core/myfaces2-extensions/src/main/java/org/apache/myfaces/scripting/jsf/dynamicdecorators/factories/ScriptingApplicationFactory.java (original)
+++ myfaces/extensions/scripting/trunk/core/myfaces2-extensions/src/main/java/org/apache/myfaces/scripting/jsf/dynamicdecorators/factories/ScriptingApplicationFactory.java Thu Sep 10 12:15:07 2009
@@ -69,6 +69,11 @@
_delegate.setApplication(application);
}
+ @Override
+ public ApplicationFactory getWrapped() {
+ return _delegate.getWrapped();
+ }
+
public Object getDelegate() {
return _delegate; //To change body of implemented methods use File | Settings | File Templates.
}
Modified: myfaces/extensions/scripting/trunk/core/myfaces2-extensions/src/main/java/org/apache/myfaces/scripting/jsf/dynamicdecorators/factories/ScriptingFacesContextFactory.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/scripting/trunk/core/myfaces2-extensions/src/main/java/org/apache/myfaces/scripting/jsf/dynamicdecorators/factories/ScriptingFacesContextFactory.java?rev=813399&r1=813398&r2=813399&view=diff
==============================================================================
--- myfaces/extensions/scripting/trunk/core/myfaces2-extensions/src/main/java/org/apache/myfaces/scripting/jsf/dynamicdecorators/factories/ScriptingFacesContextFactory.java (original)
+++ myfaces/extensions/scripting/trunk/core/myfaces2-extensions/src/main/java/org/apache/myfaces/scripting/jsf/dynamicdecorators/factories/ScriptingFacesContextFactory.java Thu Sep 10 12:15:07 2009
@@ -59,6 +59,11 @@
return retVal;
}
+ @Override
+ public FacesContextFactory getWrapped() {
+ return _delegate.getWrapped();
+ }
+
public Object getDelegate() {
return _delegate; //To change body of implemented methods use File | Settings | File Templates.
}
Modified: myfaces/extensions/scripting/trunk/core/myfaces2-extensions/src/main/java/org/apache/myfaces/scripting/jsf/dynamicdecorators/factories/ScriptingLifecycleFactory.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/scripting/trunk/core/myfaces2-extensions/src/main/java/org/apache/myfaces/scripting/jsf/dynamicdecorators/factories/ScriptingLifecycleFactory.java?rev=813399&r1=813398&r2=813399&view=diff
==============================================================================
--- myfaces/extensions/scripting/trunk/core/myfaces2-extensions/src/main/java/org/apache/myfaces/scripting/jsf/dynamicdecorators/factories/ScriptingLifecycleFactory.java (original)
+++ myfaces/extensions/scripting/trunk/core/myfaces2-extensions/src/main/java/org/apache/myfaces/scripting/jsf/dynamicdecorators/factories/ScriptingLifecycleFactory.java Thu Sep 10 12:15:07 2009
@@ -65,6 +65,11 @@
this._delegate = delegate;
}
+ @Override
+ public LifecycleFactory getWrapped() {
+ return _delegate.getWrapped();
+ }
+
public Object getDelegate() {
return _delegate; //To change body of implemented methods use File | Settings | File Templates.
}
Modified: myfaces/extensions/scripting/trunk/core/myfaces2-extensions/src/main/java/org/apache/myfaces/scripting/jsf/dynamicdecorators/factories/ScriptingRenderkitFactory.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/scripting/trunk/core/myfaces2-extensions/src/main/java/org/apache/myfaces/scripting/jsf/dynamicdecorators/factories/ScriptingRenderkitFactory.java?rev=813399&r1=813398&r2=813399&view=diff
==============================================================================
--- myfaces/extensions/scripting/trunk/core/myfaces2-extensions/src/main/java/org/apache/myfaces/scripting/jsf/dynamicdecorators/factories/ScriptingRenderkitFactory.java (original)
+++ myfaces/extensions/scripting/trunk/core/myfaces2-extensions/src/main/java/org/apache/myfaces/scripting/jsf/dynamicdecorators/factories/ScriptingRenderkitFactory.java Thu Sep 10 12:15:07 2009
@@ -64,6 +64,11 @@
_delegate = delegate;
}
+ @Override
+ public RenderKitFactory getWrapped() {
+ return _delegate.getWrapped();
+ }
+
RenderKitFactory _delegate = null;
public Object getDelegate() {
Modified: myfaces/extensions/scripting/trunk/core/myfaces2-extensions/src/main/java/org/apache/myfaces/scripting/jsf/dynamicdecorators/implemetations/ApplicationProxy.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/scripting/trunk/core/myfaces2-extensions/src/main/java/org/apache/myfaces/scripting/jsf/dynamicdecorators/implemetations/ApplicationProxy.java?rev=813399&r1=813398&r2=813399&view=diff
==============================================================================
--- myfaces/extensions/scripting/trunk/core/myfaces2-extensions/src/main/java/org/apache/myfaces/scripting/jsf/dynamicdecorators/implemetations/ApplicationProxy.java (original)
+++ myfaces/extensions/scripting/trunk/core/myfaces2-extensions/src/main/java/org/apache/myfaces/scripting/jsf/dynamicdecorators/implemetations/ApplicationProxy.java Thu Sep 10 12:15:07 2009
@@ -24,22 +24,19 @@
import javax.el.*;
import javax.faces.FacesException;
-import javax.faces.application.Application;
-import javax.faces.application.NavigationHandler;
-import javax.faces.application.StateManager;
-import javax.faces.application.ViewHandler;
+import javax.faces.application.*;
import javax.faces.component.UIComponent;
+import javax.faces.component.behavior.Behavior;
import javax.faces.context.FacesContext;
import javax.faces.convert.Converter;
import javax.faces.el.*;
import javax.faces.event.ActionListener;
+import javax.faces.event.SystemEventListener;
+import javax.faces.event.SystemEvent;
import javax.faces.validator.Validator;
import javax.servlet.ServletRequest;
import java.lang.reflect.Proxy;
-import java.util.Collection;
-import java.util.Iterator;
-import java.util.Locale;
-import java.util.ResourceBundle;
+import java.util.*;
/**
* our decorating applicstion
@@ -149,14 +146,6 @@
return _delegate.getELContextListeners();
}
- public Object evaluateExpressionGet(FacesContext facesContext, String s, Class aClass) throws ELException {
- weaveDelegate();
- //good place for a dynamic reloading check as well
- Object retVal = _delegate.evaluateExpressionGet(facesContext, s, aClass);
- if (ProxyUtils.isDynamic(retVal.getClass()))
- retVal = ProxyUtils.getWeaver().reloadScriptingInstance(retVal);
- return retVal;
- }
public ActionListener getActionListener() {
weaveDelegate();
@@ -370,7 +359,7 @@
}
- public Iterator<Class> getConverterTypes() {
+ public Iterator<Class<?>> getConverterTypes() {
weaveDelegate();
return _delegate.getConverterTypes();
}
@@ -414,6 +403,120 @@
return _delegate.createValueBinding(s);
}
+ //TODO add new implementation stuff here
+
+ @Override
+ public void addBehavior(String s, String s1) {
+ weaveDelegate();
+ _delegate.addBehavior(s, s1);
+ }
+
+ @Override
+ public void addDefaultValidatorId(String s) {
+ weaveDelegate();
+ _delegate.addDefaultValidatorId(s);
+ }
+
+ @Override
+ public Behavior createBehavior(String s) throws FacesException {
+ weaveDelegate();
+ return _delegate.createBehavior(s);
+ }
+
+ @Override
+ public UIComponent createComponent(FacesContext facesContext, Resource resource) {
+ return super.createComponent(facesContext, resource);
+ }
+
+ @Override
+ public UIComponent createComponent(FacesContext facesContext, String s, String s1) {
+ weaveDelegate();
+ //TODO check if we can add a component weaving here, but I assume it is handled in the viewroot already decently
+ return _delegate.createComponent(facesContext, s, s1);
+ }
+
+ @Override
+ public UIComponent createComponent(ValueExpression valueExpression, FacesContext facesContext, String s, String s1) {
+ weaveDelegate();
+ return _delegate.createComponent(valueExpression, facesContext, s, s1);
+ }
+
+ @Override
+ public <T> T evaluateExpressionGet(FacesContext facesContext, String s, Class<? extends T> aClass) throws ELException {
+ weaveDelegate();
+ //good place for a dynamic reloading check as well
+ T retVal = _delegate.evaluateExpressionGet(facesContext, s, aClass);
+ if (ProxyUtils.isDynamic(retVal.getClass()))
+ retVal = (T) ProxyUtils.getWeaver().reloadScriptingInstance(retVal);
+ return retVal;
+ }
+
+ @Override
+ public Iterator<String> getBehaviorIds() {
+ weaveDelegate();
+ return _delegate.getBehaviorIds();
+ }
+
+ @Override
+ public Map<String, String> getDefaultValidatorInfo() {
+ weaveDelegate();
+ return _delegate.getDefaultValidatorInfo();
+ }
+
+ @Override
+ public ProjectStage getProjectStage() {
+ weaveDelegate();
+ return _delegate.getProjectStage();
+ }
+
+ @Override
+ public ResourceHandler getResourceHandler() {
+ weaveDelegate();
+ return _delegate.getResourceHandler();
+ }
+
+ @Override
+ public void publishEvent(FacesContext facesContext, Class<? extends SystemEvent> eventClass, Class<?> aClass, Object o) {
+ weaveDelegate();
+ _delegate.publishEvent(facesContext, eventClass, aClass, o);
+ }
+
+ @Override
+ public void publishEvent(FacesContext facesContext, Class<? extends SystemEvent> eventClass, Object o) {
+ weaveDelegate();
+ _delegate.publishEvent(facesContext, eventClass, o);
+ }
+
+ @Override
+ public void setResourceHandler(ResourceHandler resourceHandler) {
+ weaveDelegate();
+ _delegate.setResourceHandler(resourceHandler);
+ }
+
+ @Override
+ public void subscribeToEvent(Class<? extends SystemEvent> eventClass, Class<?> aClass, SystemEventListener systemEventListener) {
+ weaveDelegate();
+ _delegate.subscribeToEvent(eventClass, aClass, systemEventListener);
+ }
+
+ @Override
+ public void subscribeToEvent(Class<? extends SystemEvent> aClass, SystemEventListener systemEventListener) {
+ weaveDelegate();
+ _delegate.subscribeToEvent(aClass, systemEventListener);
+ }
+
+ @Override
+ public void unsubscribeFromEvent(Class<? extends SystemEvent> eventClass, Class<?> aClass, SystemEventListener systemEventListener) {
+ weaveDelegate();
+ _delegate.unsubscribeFromEvent(eventClass, aClass, systemEventListener);
+ }
+
+ @Override
+ public void unsubscribeFromEvent(Class<? extends SystemEvent> aClass, SystemEventListener systemEventListener) {
+ weaveDelegate();
+ _delegate.unsubscribeFromEvent(aClass, systemEventListener);
+ }
+
public ApplicationProxy(Application delegate) {
_delegate = delegate;
}
Modified: myfaces/extensions/scripting/trunk/core/myfaces2-extensions/src/main/java/org/apache/myfaces/scripting/jsf/dynamicdecorators/implemetations/ELResolverProxy.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/scripting/trunk/core/myfaces2-extensions/src/main/java/org/apache/myfaces/scripting/jsf/dynamicdecorators/implemetations/ELResolverProxy.java?rev=813399&r1=813398&r2=813399&view=diff
==============================================================================
--- myfaces/extensions/scripting/trunk/core/myfaces2-extensions/src/main/java/org/apache/myfaces/scripting/jsf/dynamicdecorators/implemetations/ELResolverProxy.java (original)
+++ myfaces/extensions/scripting/trunk/core/myfaces2-extensions/src/main/java/org/apache/myfaces/scripting/jsf/dynamicdecorators/implemetations/ELResolverProxy.java Thu Sep 10 12:15:07 2009
@@ -87,6 +87,9 @@
return _delegate.getCommonPropertyType(elContext, o);
}
+
+
+
public ELResolverProxy(ELResolver delegate) {
_delegate = delegate;
}
Modified: myfaces/extensions/scripting/trunk/core/myfaces2-extensions/src/main/java/org/apache/myfaces/scripting/jsf/dynamicdecorators/implemetations/FacesContextProxy.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/scripting/trunk/core/myfaces2-extensions/src/main/java/org/apache/myfaces/scripting/jsf/dynamicdecorators/implemetations/FacesContextProxy.java?rev=813399&r1=813398&r2=813399&view=diff
==============================================================================
--- myfaces/extensions/scripting/trunk/core/myfaces2-extensions/src/main/java/org/apache/myfaces/scripting/jsf/dynamicdecorators/implemetations/FacesContextProxy.java (original)
+++ myfaces/extensions/scripting/trunk/core/myfaces2-extensions/src/main/java/org/apache/myfaces/scripting/jsf/dynamicdecorators/implemetations/FacesContextProxy.java Thu Sep 10 12:15:07 2009
@@ -21,17 +21,18 @@
import org.apache.myfaces.scripting.api.Decorated;
import org.apache.myfaces.scripting.core.util.ProxyUtils;
-import javax.faces.context.FacesContext;
-import javax.faces.context.ExternalContext;
-import javax.faces.context.ResponseStream;
-import javax.faces.context.ResponseWriter;
+import javax.faces.context.*;
import javax.faces.application.Application;
import javax.faces.application.FacesMessage;
+import javax.faces.application.ProjectStage;
import javax.faces.render.RenderKit;
import javax.faces.component.UIViewRoot;
import javax.faces.lifecycle.Lifecycle;
+import javax.faces.event.PhaseId;
import javax.el.ELContext;
import java.util.Iterator;
+import java.util.Map;
+import java.util.List;
/**
* A reloading, weaving faces context
@@ -142,6 +143,78 @@
weaveDelegate();
}
+
+ //TODO add support for myfaces 2.0 fully here
+ @Override
+ public Map<Object, Object> getAttributes() {
+ return _delegate.getAttributes();
+ }
+
+ @Override
+ public PhaseId getCurrentPhaseId() {
+ return _delegate.getCurrentPhaseId();
+ }
+
+ @Override
+ public ExceptionHandler getExceptionHandler() {
+ return _delegate.getExceptionHandler();
+ }
+
+ @Override
+ public List<FacesMessage> getMessageList() {
+ return _delegate.getMessageList();
+ }
+
+ @Override
+ public List<FacesMessage> getMessageList(String s) {
+ return _delegate.getMessageList(s);
+ }
+
+ @Override
+ public PartialViewContext getPartialViewContext() {
+ return _delegate.getPartialViewContext();
+ }
+
+ @Override
+ public boolean isValidationFailed() {
+ return _delegate.isValidationFailed();
+ }
+
+ @Override
+ public boolean isPostback() {
+ return _delegate.isPostback();
+ }
+
+ @Override
+ public boolean isProcessingEvents() {
+ return _delegate.isProcessingEvents();
+ }
+
+ @Override
+ public void setCurrentPhaseId(PhaseId phaseId) {
+ _delegate.setCurrentPhaseId(phaseId);
+ }
+
+ @Override
+ public void setExceptionHandler(ExceptionHandler exceptionHandler) {
+ _delegate.setExceptionHandler(exceptionHandler);
+ }
+
+ @Override
+ public void setProcessingEvents(boolean b) {
+ _delegate.setProcessingEvents(b);
+ }
+
+ @Override
+ public void validationFailed() {
+ _delegate.validationFailed();
+ }
+
+ @Override
+ public boolean isProjectStage(ProjectStage projectStage) {
+ return _delegate.isProjectStage(projectStage);
+ }
+
public Object getDelegate() {
return _delegate; //To change body of implemented methods use File | Settings | File Templates.
}
Modified: myfaces/extensions/scripting/trunk/core/myfaces2-extensions/src/main/java/org/apache/myfaces/scripting/jsf/dynamicdecorators/implemetations/RenderkitProxy.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/scripting/trunk/core/myfaces2-extensions/src/main/java/org/apache/myfaces/scripting/jsf/dynamicdecorators/implemetations/RenderkitProxy.java?rev=813399&r1=813398&r2=813399&view=diff
==============================================================================
--- myfaces/extensions/scripting/trunk/core/myfaces2-extensions/src/main/java/org/apache/myfaces/scripting/jsf/dynamicdecorators/implemetations/RenderkitProxy.java (original)
+++ myfaces/extensions/scripting/trunk/core/myfaces2-extensions/src/main/java/org/apache/myfaces/scripting/jsf/dynamicdecorators/implemetations/RenderkitProxy.java Thu Sep 10 12:15:07 2009
@@ -26,10 +26,12 @@
import javax.faces.render.RenderKit;
import javax.faces.render.Renderer;
import javax.faces.render.ResponseStateManager;
+import javax.faces.render.ClientBehaviorRenderer;
import javax.faces.context.ResponseWriter;
import javax.faces.context.ResponseStream;
import java.io.Writer;
import java.io.OutputStream;
+import java.util.Iterator;
import javax.servlet.ServletRequest;
/**
@@ -101,6 +103,37 @@
return _delegate.createResponseStream(outputStream);
}
+ //TODO add full support for myfaces 2.0 here
+ @Override
+ public void addClientBehaviorRenderer(String s, ClientBehaviorRenderer clientBehaviorRenderer) {
+ weaveDelegate();
+ _delegate.addClientBehaviorRenderer(s, clientBehaviorRenderer);
+ }
+
+ @Override
+ public ClientBehaviorRenderer getClientBehaviorRenderer(String s) {
+ weaveDelegate();
+ return _delegate.getClientBehaviorRenderer(s);
+ }
+
+ @Override
+ public Iterator<String> getClientBehaviorRendererTypes() {
+ weaveDelegate();
+ return _delegate.getClientBehaviorRendererTypes();
+ }
+
+ @Override
+ public Iterator<String> getComponentFamilies() {
+ weaveDelegate();
+ return _delegate.getComponentFamilies();
+ }
+
+ @Override
+ public Iterator<String> getRendererTypes(String s) {
+ weaveDelegate();
+ return _delegate.getRendererTypes(s);
+ }
+
public Object getDelegate() {
return _delegate; //To change body of implemented methods use File | Settings | File Templates.
}
Modified: myfaces/extensions/scripting/trunk/core/myfaces2-extensions/src/main/java/org/apache/myfaces/scripting/jsf/dynamicdecorators/implemetations/ViewHandlerProxy.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/scripting/trunk/core/myfaces2-extensions/src/main/java/org/apache/myfaces/scripting/jsf/dynamicdecorators/implemetations/ViewHandlerProxy.java?rev=813399&r1=813398&r2=813399&view=diff
==============================================================================
--- myfaces/extensions/scripting/trunk/core/myfaces2-extensions/src/main/java/org/apache/myfaces/scripting/jsf/dynamicdecorators/implemetations/ViewHandlerProxy.java (original)
+++ myfaces/extensions/scripting/trunk/core/myfaces2-extensions/src/main/java/org/apache/myfaces/scripting/jsf/dynamicdecorators/implemetations/ViewHandlerProxy.java Thu Sep 10 12:15:07 2009
@@ -25,7 +25,10 @@
import javax.faces.context.FacesContext;
import javax.faces.component.UIViewRoot;
import javax.faces.FacesException;
+import javax.faces.view.ViewDeclarationLanguage;
import java.util.Locale;
+import java.util.Map;
+import java.util.List;
import java.io.IOException;
/**
@@ -97,7 +100,30 @@
_delegate.writeState(facesContext);
}
+ //TODO add myfaces 2.0 stuff here
+ @Override
+ public String deriveViewId(FacesContext facesContext, String s) {
+ weaveDelegate();
+ return _delegate.deriveViewId(facesContext, s);
+ }
+
+ @Override
+ public String getBookmarkableURL(FacesContext facesContext, String s, Map<String, List<String>> stringListMap, boolean b) {
+ return super.getBookmarkableURL(facesContext, s, stringListMap, b);
+ }
+
+ @Override
+ public ViewDeclarationLanguage getViewDeclarationLanguage(FacesContext facesContext, String s) {
+ weaveDelegate();
+ return _delegate.getViewDeclarationLanguage(facesContext, s);
+ }
+
+ @Override
+ public String getRedirectURL(FacesContext facesContext, String s, Map<String, List<String>> stringListMap, boolean b) {
+ weaveDelegate();
+ return _delegate.getRedirectURL(facesContext, s, stringListMap, b);
+ }
public Object getDelegate() {
return _delegate; //To change body of implemented methods use File | Settings | File Templates.