You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@myfaces.apache.org by mm...@apache.org on 2006/01/23 09:16:54 UTC
svn commit: r371488 - in /myfaces/core/trunk/api/src:
main/java/javax/faces/component/ test/java/javax/faces/
test/java/javax/faces/component/ test/java/org/apache/myfaces/
test/java/org/apache/myfaces/mock/
Author: mmarinschek
Date: Mon Jan 23 00:16:37 2006
New Revision: 371488
URL: http://svn.apache.org/viewcvs?rev=371488&view=rev
Log:
Started architecture for callbacks, added some testing for getClientId and findComponent, moved the stuff I implemented in UIComponent for partial validation out to the new SubForm
Added:
myfaces/core/trunk/api/src/test/java/javax/faces/MockRenderKit.java
myfaces/core/trunk/api/src/test/java/javax/faces/MockRenderKitFactory.java
myfaces/core/trunk/api/src/test/java/org/apache/myfaces/mock/MockExternalContext.java
Modified:
myfaces/core/trunk/api/src/main/java/javax/faces/component/UIComponentBase.java
myfaces/core/trunk/api/src/main/java/javax/faces/component/UIInput.java
myfaces/core/trunk/api/src/main/java/javax/faces/component/_ComponentUtils.java
myfaces/core/trunk/api/src/test/java/javax/faces/component/UIComponentBaseTest.java
myfaces/core/trunk/api/src/test/java/org/apache/myfaces/FacesContextHelper.java
Modified: myfaces/core/trunk/api/src/main/java/javax/faces/component/UIComponentBase.java
URL: http://svn.apache.org/viewcvs/myfaces/core/trunk/api/src/main/java/javax/faces/component/UIComponentBase.java?rev=371488&r1=371487&r2=371488&view=diff
==============================================================================
--- myfaces/core/trunk/api/src/main/java/javax/faces/component/UIComponentBase.java (original)
+++ myfaces/core/trunk/api/src/main/java/javax/faces/component/UIComponentBase.java Mon Jan 23 00:16:37 2006
@@ -58,9 +58,6 @@
{
private static Log log = LogFactory.getLog(UIComponentBase.class);
- private static final String PARTIAL_ENABLED = "org.apache.myfaces.IsPartialPhaseExecutionEnabled";
- private static final String ACTION_FOR_LIST = "org.apache.myfaces.ActionForList";
-
private _ComponentAttributesMap _attributesMap = null;
private Map _valueBindingMap = null;
private List _childrenList = null;
@@ -615,82 +612,17 @@
}
}
- /**Sets up information if this component is included in
- * the group of components which are associated with the current action.
- *
- * @param context
- * @return true if there has been a change by this setup which has to be undone after the phase finishes.
- */
- private boolean setupPartialInfo(FacesContext context)
- {
- //the following section is not in the spec
- //there is no place to put it into the actual implementation, though
- //we want to execute validation (and model update) only
- //if certain conditions are met
- //especially, we want to switch validation/update on/off depending on
- //the attribute "actionFor" of a MyFaces extended button or link
- //if you use commandButtons which don't set these
- //request parameters, this won't cause any adverse effects
- //except the additional performance hit of getting the request-parameter
-
- //is it necessary to remove the request-parameter again?
- boolean tearDownRequired = false;
-
- //get the list of (parent) client-ids for which a validation should be performed
- List li = (List) context.getExternalContext().getRequestMap().get(
- ACTION_FOR_LIST);
-
- //check if the list is existing at all - if not, we want to validate in any case.
- if(li==null || li.size()==0)
- {
- if(!context.getExternalContext().getRequestMap().containsKey(PARTIAL_ENABLED))
- {
- context.getExternalContext().getRequestMap().put(PARTIAL_ENABLED,Boolean.TRUE);
- tearDownRequired = true;
- }
- }
- //if there is a list, check if the current client id
- //matches an entry of the list
- else if(li.contains(getClientId(context)))
- {
- if(!context.getExternalContext().getRequestMap().containsKey(PARTIAL_ENABLED))
- {
- context.getExternalContext().getRequestMap().put(PARTIAL_ENABLED,Boolean.TRUE);
- tearDownRequired = true;
- }
- }
-
- return tearDownRequired;
- }
-
- /**
- * Remove the information about this component being included in the partial
- * phase execution.
- *
- * @param context
- */
- private void tearDownPartialInfo(FacesContext context)
- {
- context.getExternalContext().getRequestMap().remove(PARTIAL_ENABLED);
- }
public void processValidators(FacesContext context)
{
if (context == null) throw new NullPointerException("context");
if (!isRendered()) return;
- boolean tearDownRequired = setupPartialInfo(context);
-
for (Iterator it = getFacetsAndChildren(); it.hasNext(); )
{
UIComponent childOrFacet = (UIComponent)it.next();
childOrFacet.processValidators(context);
}
-
- if(tearDownRequired)
- {
- tearDownPartialInfo(context);
- }
}
/**
@@ -707,17 +639,10 @@
if (context == null) throw new NullPointerException("context");
if (!isRendered()) return;
- boolean tearDownRequired = setupPartialInfo(context);
-
for (Iterator it = getFacetsAndChildren(); it.hasNext(); )
{
UIComponent childOrFacet = (UIComponent)it.next();
childOrFacet.processUpdates(context);
- }
-
- if(tearDownRequired)
- {
- tearDownPartialInfo(context);
}
}
Modified: myfaces/core/trunk/api/src/main/java/javax/faces/component/UIInput.java
URL: http://svn.apache.org/viewcvs/myfaces/core/trunk/api/src/main/java/javax/faces/component/UIInput.java?rev=371488&r1=371487&r2=371488&view=diff
==============================================================================
--- myfaces/core/trunk/api/src/main/java/javax/faces/component/UIInput.java (original)
+++ myfaces/core/trunk/api/src/main/java/javax/faces/component/UIInput.java Mon Jan 23 00:16:37 2006
@@ -169,18 +169,6 @@
}
}
- /**
- * execute phase only if the component is partial-enabled or one
- * of its ancestors is partial-enabled
- *
- * @param context
- * @return true if component is being included in partial phase execution
- */
- private boolean isPartialEnabled(FacesContext context)
- {
- return context.getExternalContext().getRequestMap().get(PARTIAL_ENABLED)==Boolean.TRUE;
- }
-
public void processValidators(FacesContext context)
{
if (context == null) throw new NullPointerException("context");
@@ -188,23 +176,20 @@
super.processValidators(context);
- if(isPartialEnabled(context))
+ if (!isImmediate())
{
- if (!isImmediate())
+ try
{
- try
- {
- validate(context);
- }
- catch (RuntimeException e)
- {
- context.renderResponse();
- throw e;
- }
- if (!isValid())
- {
- context.renderResponse();
- }
+ validate(context);
+ }
+ catch (RuntimeException e)
+ {
+ context.renderResponse();
+ throw e;
+ }
+ if (!isValid())
+ {
+ context.renderResponse();
}
}
}
@@ -216,21 +201,18 @@
super.processUpdates(context);
- if(isPartialEnabled(context))
+ try
{
- try
- {
- updateModel(context);
- }
- catch (RuntimeException e)
- {
- context.renderResponse();
- throw e;
- }
- if (!isValid())
- {
- context.renderResponse();
- }
+ updateModel(context);
+ }
+ catch (RuntimeException e)
+ {
+ context.renderResponse();
+ throw e;
+ }
+ if (!isValid())
+ {
+ context.renderResponse();
}
}
Modified: myfaces/core/trunk/api/src/main/java/javax/faces/component/_ComponentUtils.java
URL: http://svn.apache.org/viewcvs/myfaces/core/trunk/api/src/main/java/javax/faces/component/_ComponentUtils.java?rev=371488&r1=371487&r2=371488&view=diff
==============================================================================
--- myfaces/core/trunk/api/src/main/java/javax/faces/component/_ComponentUtils.java (original)
+++ myfaces/core/trunk/api/src/main/java/javax/faces/component/_ComponentUtils.java Mon Jan 23 00:16:37 2006
@@ -132,7 +132,7 @@
}
else
{
- return id.equals(cmp.getId()+"_"+uiData.getRowIndex());
+ return id.equals(cmp.getId()+NamingContainer.SEPARATOR_CHAR+uiData.getRowIndex());
}
}
@@ -141,7 +141,7 @@
private static boolean dynamicIdIsEqual(String dynamicId, String id)
{
- return dynamicId.matches(id+"_[0-9]*");
+ return dynamicId.matches(id+":[0-9]*");
}
Added: myfaces/core/trunk/api/src/test/java/javax/faces/MockRenderKit.java
URL: http://svn.apache.org/viewcvs/myfaces/core/trunk/api/src/test/java/javax/faces/MockRenderKit.java?rev=371488&view=auto
==============================================================================
--- myfaces/core/trunk/api/src/test/java/javax/faces/MockRenderKit.java (added)
+++ myfaces/core/trunk/api/src/test/java/javax/faces/MockRenderKit.java Mon Jan 23 00:16:37 2006
@@ -0,0 +1,52 @@
+/*
+ * Copyright 2004-2006 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package javax.faces;
+
+import javax.faces.render.RenderKit;
+import javax.faces.render.Renderer;
+import javax.faces.render.ResponseStateManager;
+import javax.faces.context.ResponseWriter;
+import javax.faces.context.ResponseStream;
+import java.io.Writer;
+import java.io.OutputStream;
+
+public class MockRenderKit extends RenderKit
+{
+ public void addRenderer(String family, String rendererType, Renderer renderer)
+ {
+ //To change body of implemented methods use File | Settings | File Templates.
+ }
+
+ public Renderer getRenderer(String family, String rendererType)
+ {
+ return null; //To change body of implemented methods use File | Settings | File Templates.
+ }
+
+ public ResponseStateManager getResponseStateManager()
+ {
+ return null; //To change body of implemented methods use File | Settings | File Templates.
+ }
+
+ public ResponseWriter createResponseWriter(Writer writer, String contentTypeList, String characterEncoding)
+ {
+ return null; //To change body of implemented methods use File | Settings | File Templates.
+ }
+
+ public ResponseStream createResponseStream(OutputStream out)
+ {
+ return null; //To change body of implemented methods use File | Settings | File Templates.
+ }
+}
Added: myfaces/core/trunk/api/src/test/java/javax/faces/MockRenderKitFactory.java
URL: http://svn.apache.org/viewcvs/myfaces/core/trunk/api/src/test/java/javax/faces/MockRenderKitFactory.java?rev=371488&view=auto
==============================================================================
--- myfaces/core/trunk/api/src/test/java/javax/faces/MockRenderKitFactory.java (added)
+++ myfaces/core/trunk/api/src/test/java/javax/faces/MockRenderKitFactory.java Mon Jan 23 00:16:37 2006
@@ -0,0 +1,62 @@
+/*
+ * Copyright 2004-2006 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package javax.faces;
+
+import javax.faces.render.RenderKitFactory;
+import javax.faces.render.RenderKit;
+import javax.faces.context.FacesContext;
+import java.util.Iterator;
+
+
+public class MockRenderKitFactory extends RenderKitFactory
+{
+ RenderKitFactory delegate;
+
+ public MockRenderKitFactory(RenderKitFactory factory)
+ {
+ delegate = factory;
+ }
+
+ public MockRenderKitFactory()
+ {
+
+ }
+
+ public void addRenderKit(String renderKitId, RenderKit renderKit)
+ {
+ if(delegate != null)
+ {
+ delegate.addRenderKit(renderKitId, renderKit);
+ }
+ }
+
+ public RenderKit getRenderKit(FacesContext context, String renderKitId)
+ {
+ if(delegate != null)
+ {
+ return delegate.getRenderKit(context, renderKitId);
+ }
+ return new MockRenderKit();
+ }
+
+ public Iterator getRenderKitIds()
+ {
+ if(delegate != null)
+ {
+ return delegate.getRenderKitIds();
+ }
+ return null; }
+}
Modified: myfaces/core/trunk/api/src/test/java/javax/faces/component/UIComponentBaseTest.java
URL: http://svn.apache.org/viewcvs/myfaces/core/trunk/api/src/test/java/javax/faces/component/UIComponentBaseTest.java?rev=371488&r1=371487&r2=371488&view=diff
==============================================================================
--- myfaces/core/trunk/api/src/test/java/javax/faces/component/UIComponentBaseTest.java (original)
+++ myfaces/core/trunk/api/src/test/java/javax/faces/component/UIComponentBaseTest.java Mon Jan 23 00:16:37 2006
@@ -18,8 +18,12 @@
import javax.faces.context.FacesContext;
import javax.faces.el.ValueBinding;
+import javax.faces.FactoryFinder;
+import javax.faces.MockApplicationFactory;
+import javax.faces.MockRenderKitFactory;
import org.apache.myfaces.AbstractTestCase;
+import org.apache.myfaces.FacesContextHelper;
import org.easymock.MockControl;
import org.easymock.classextension.MockClassControl;
@@ -116,15 +120,59 @@
*/
public void testGetClientIdFacesContext() {
- }
+ FacesContext context = new FacesContextHelper();
- /*
- * Test method for 'javax.faces.component.UIComponentBase.getId()'
- */
- public void testGetId() {
+ UIInput input = createInputInTree(context);
+
+ String str = input.getClientId(context);
+
+ assertEquals(str, "data:input");
+
+ UIData uiData = (UIData) input.getParent().getParent();
+
+ uiData.setRowIndex(1);
+ str = input.getClientId(context);
}
+ private UIInput createInputInTree(FacesContext context)
+ {
+ UIViewRoot viewRoot = new UIViewRoot();
+ viewRoot.setId("root");
+
+ UIData uiData = new UIData();
+ uiData.setId("data");
+
+ UIColumn column = new UIColumn();
+
+ uiData.getChildren().add(column);
+
+ UIInput input = new UIInput();
+ input.setId("input");
+
+ column.getChildren().add(input);
+
+ viewRoot.getChildren().add(uiData);
+
+ FactoryFinder.setFactory(FactoryFinder.APPLICATION_FACTORY,
+ MockApplicationFactory.class.getName());
+
+ FactoryFinder.setFactory(FactoryFinder.RENDER_KIT_FACTORY,
+ MockRenderKitFactory.class.getName());
+
+ context.setViewRoot(viewRoot);
+
+ FacesContextHelper.setCurrentInstance(context);
+ return input;
+ }
+
+ /*
+ * Test method for 'javax.faces.component.UIComponentBase.getId()'
+ */
+ public void testGetId() {
+
+ }
+
/*
* Test method for 'javax.faces.component.UIComponentBase.setId(String)'
*/
@@ -157,6 +205,17 @@
* Test method for 'javax.faces.component.UIComponentBase.findComponent(String)'
*/
public void testFindComponentString() {
+ FacesContext context = new FacesContextHelper();
+
+ UIInput input = createInputInTree(context);
+
+ UIComponent comp = input.findComponent(":data:input");
+
+ assertEquals(input, comp);
+
+ comp = input.findComponent("input");
+
+ assertEquals(input, comp);
}
Modified: myfaces/core/trunk/api/src/test/java/org/apache/myfaces/FacesContextHelper.java
URL: http://svn.apache.org/viewcvs/myfaces/core/trunk/api/src/test/java/org/apache/myfaces/FacesContextHelper.java?rev=371488&r1=371487&r2=371488&view=diff
==============================================================================
--- myfaces/core/trunk/api/src/test/java/org/apache/myfaces/FacesContextHelper.java (original)
+++ myfaces/core/trunk/api/src/test/java/org/apache/myfaces/FacesContextHelper.java Mon Jan 23 00:16:37 2006
@@ -15,7 +15,17 @@
*/
package org.apache.myfaces;
+import org.apache.myfaces.mock.MockExternalContext;
+
import javax.faces.context.FacesContext;
+import javax.faces.context.ExternalContext;
+import javax.faces.context.ResponseStream;
+import javax.faces.context.ResponseWriter;
+import javax.faces.application.Application;
+import javax.faces.application.FacesMessage;
+import javax.faces.render.RenderKit;
+import javax.faces.component.UIViewRoot;
+import java.util.Iterator;
/**
* Simple test helper class to allow unit tests to configure
@@ -25,13 +35,126 @@
* hence cannot be accessed by unit tests wanting to configure
* a mock object as the value seen by code calling method
* FacesContext.getCurrentInstance().
- * <p>
- * This class is abstract because an instance is not needed
- * in order to invoke the static helper method it provides.
*/
-public abstract class FacesContextHelper extends FacesContext
+public class FacesContextHelper extends FacesContext
{
+ private Application application;
+ private ExternalContext externalContext;
+ private UIViewRoot viewRoot;
+
+ public Application getApplication()
+ {
+ return application;
+ }
+
+ public void setApplication(Application application)
+ {
+ this.application = application;
+ }
+
+ public ExternalContext getExternalContext()
+ {
+ if(externalContext==null)
+ {
+ externalContext = new MockExternalContext();
+ }
+
+ return externalContext;
+ }
+
+ public void setExternalContext(ExternalContext externalContext)
+ {
+ this.externalContext = externalContext;
+ }
+
+ public UIViewRoot getViewRoot()
+ {
+ return viewRoot;
+ }
+
+ public void setViewRoot(UIViewRoot viewRoot)
+ {
+ this.viewRoot = viewRoot;
+ }
+
+
+ public Iterator getClientIdsWithMessages()
+ {
+ return null; //To change body of implemented methods use File | Settings | File Templates.
+ }
+
+
+ public FacesMessage.Severity getMaximumSeverity()
+ {
+ return null; //To change body of implemented methods use File | Settings | File Templates.
+ }
+
+ public Iterator getMessages()
+ {
+ return null; //To change body of implemented methods use File | Settings | File Templates.
+ }
+
+ public Iterator getMessages(String clientId)
+ {
+ return null; //To change body of implemented methods use File | Settings | File Templates.
+ }
+
+ public RenderKit getRenderKit()
+ {
+ return null; //To change body of implemented methods use File | Settings | File Templates.
+ }
+
+ public boolean getRenderResponse()
+ {
+ return false; //To change body of implemented methods use File | Settings | File Templates.
+ }
+
+ public boolean getResponseComplete()
+ {
+ return false; //To change body of implemented methods use File | Settings | File Templates.
+ }
+
+ public ResponseStream getResponseStream()
+ {
+ return null; //To change body of implemented methods use File | Settings | File Templates.
+ }
+
+ public void setResponseStream(ResponseStream responseStream)
+ {
+ //To change body of implemented methods use File | Settings | File Templates.
+ }
+
+ public ResponseWriter getResponseWriter()
+ {
+ return null; //To change body of implemented methods use File | Settings | File Templates.
+ }
+
+ public void setResponseWriter(ResponseWriter responseWriter)
+ {
+ //To change body of implemented methods use File | Settings | File Templates.
+ }
+
+ public void addMessage(String clientId, FacesMessage message)
+ {
+ //To change body of implemented methods use File | Settings | File Templates.
+ }
+
+ public void release()
+ {
+ //To change body of implemented methods use File | Settings | File Templates.
+ }
+
+ public void renderResponse()
+ {
+ //To change body of implemented methods use File | Settings | File Templates.
+ }
+
+ public void responseComplete()
+ {
+ //To change body of implemented methods use File | Settings | File Templates.
+ }
+
public static void setCurrentInstance(FacesContext other)
{
FacesContext.setCurrentInstance(other);
Added: myfaces/core/trunk/api/src/test/java/org/apache/myfaces/mock/MockExternalContext.java
URL: http://svn.apache.org/viewcvs/myfaces/core/trunk/api/src/test/java/org/apache/myfaces/mock/MockExternalContext.java?rev=371488&view=auto
==============================================================================
--- myfaces/core/trunk/api/src/test/java/org/apache/myfaces/mock/MockExternalContext.java (added)
+++ myfaces/core/trunk/api/src/test/java/org/apache/myfaces/mock/MockExternalContext.java Mon Jan 23 00:16:37 2006
@@ -0,0 +1,200 @@
+/*
+ * Copyright 2006 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.myfaces.mock;
+
+import javax.faces.context.ExternalContext;
+import java.io.IOException;
+import java.io.InputStream;
+import java.util.Map;
+import java.util.Locale;
+import java.util.Iterator;
+import java.util.Set;
+import java.net.URL;
+import java.net.MalformedURLException;
+import java.security.Principal;
+
+public class MockExternalContext extends ExternalContext
+{
+ public void dispatch(String path) throws IOException
+ {
+ //To change body of implemented methods use File | Settings | File Templates.
+ }
+
+ public String encodeActionURL(String url)
+ {
+ return null; //To change body of implemented methods use File | Settings | File Templates.
+ }
+
+ public String encodeNamespace(String name)
+ {
+ return null; //To change body of implemented methods use File | Settings | File Templates.
+ }
+
+ public String encodeResourceURL(String url)
+ {
+ return null; //To change body of implemented methods use File | Settings | File Templates.
+ }
+
+ public Map getApplicationMap()
+ {
+ return null; //To change body of implemented methods use File | Settings | File Templates.
+ }
+
+ public String getAuthType()
+ {
+ return null; //To change body of implemented methods use File | Settings | File Templates.
+ }
+
+ public Object getContext()
+ {
+ return null; //To change body of implemented methods use File | Settings | File Templates.
+ }
+
+ public String getInitParameter(String name)
+ {
+ return null; //To change body of implemented methods use File | Settings | File Templates.
+ }
+
+ public Map getInitParameterMap()
+ {
+ return null; //To change body of implemented methods use File | Settings | File Templates.
+ }
+
+ public String getRemoteUser()
+ {
+ return null; //To change body of implemented methods use File | Settings | File Templates.
+ }
+
+ public Object getRequest()
+ {
+ return null; //To change body of implemented methods use File | Settings | File Templates.
+ }
+
+ public String getRequestContextPath()
+ {
+ return null; //To change body of implemented methods use File | Settings | File Templates.
+ }
+
+ public Map getRequestCookieMap()
+ {
+ return null; //To change body of implemented methods use File | Settings | File Templates.
+ }
+
+ public Map getRequestHeaderMap()
+ {
+ return null; //To change body of implemented methods use File | Settings | File Templates.
+ }
+
+ public Map getRequestHeaderValuesMap()
+ {
+ return null; //To change body of implemented methods use File | Settings | File Templates.
+ }
+
+ public Locale getRequestLocale()
+ {
+ return null; //To change body of implemented methods use File | Settings | File Templates.
+ }
+
+ public Iterator getRequestLocales()
+ {
+ return null; //To change body of implemented methods use File | Settings | File Templates.
+ }
+
+ public Map getRequestMap()
+ {
+ return null; //To change body of implemented methods use File | Settings | File Templates.
+ }
+
+ public Map getRequestParameterMap()
+ {
+ return null; //To change body of implemented methods use File | Settings | File Templates.
+ }
+
+ public Iterator getRequestParameterNames()
+ {
+ return null; //To change body of implemented methods use File | Settings | File Templates.
+ }
+
+ public Map getRequestParameterValuesMap()
+ {
+ return null; //To change body of implemented methods use File | Settings | File Templates.
+ }
+
+ public String getRequestPathInfo()
+ {
+ return null; //To change body of implemented methods use File | Settings | File Templates.
+ }
+
+ public String getRequestServletPath()
+ {
+ return null; //To change body of implemented methods use File | Settings | File Templates.
+ }
+
+ public URL getResource(String path) throws MalformedURLException
+ {
+ return null; //To change body of implemented methods use File | Settings | File Templates.
+ }
+
+ public InputStream getResourceAsStream(String path)
+ {
+ return null; //To change body of implemented methods use File | Settings | File Templates.
+ }
+
+ public Set getResourcePaths(String path)
+ {
+ return null; //To change body of implemented methods use File | Settings | File Templates.
+ }
+
+ public Object getResponse()
+ {
+ return null; //To change body of implemented methods use File | Settings | File Templates.
+ }
+
+ public Object getSession(boolean create)
+ {
+ return null; //To change body of implemented methods use File | Settings | File Templates.
+ }
+
+ public Map getSessionMap()
+ {
+ return null; //To change body of implemented methods use File | Settings | File Templates.
+ }
+
+ public Principal getUserPrincipal()
+ {
+ return null; //To change body of implemented methods use File | Settings | File Templates.
+ }
+
+ public boolean isUserInRole(String role)
+ {
+ return false; //To change body of implemented methods use File | Settings | File Templates.
+ }
+
+ public void log(String message)
+ {
+ //To change body of implemented methods use File | Settings | File Templates.
+ }
+
+ public void log(String message, Throwable exception)
+ {
+ //To change body of implemented methods use File | Settings | File Templates.
+ }
+
+ public void redirect(String url) throws IOException
+ {
+ //To change body of implemented methods use File | Settings | File Templates.
+ }
+}