Author: alexsmirnov
Date: 2007-07-20 20:27:25 -0400 (Fri, 20 Jul 2007)
New Revision: 1763
Modified:
trunk/extensions/portlet/src/main/java/org/ajax4jsf/portlet/AjaxFacesPortlet.java
trunk/extensions/portlet/src/main/java/org/ajax4jsf/portlet/PortletAjaxContext.java
trunk/extensions/portlet/src/main/java/org/ajax4jsf/portlet/application/PortalStateManager.java
trunk/extensions/portlet/src/main/java/org/ajax4jsf/portlet/application/PortletStateHolder.java
trunk/extensions/portlet/src/main/java/org/ajax4jsf/portlet/application/PortletViewHandler.java
trunk/extensions/portlet/src/main/java/org/ajax4jsf/portlet/renderkit/portlet/PortletAjaxViewRootRenderer.java
trunk/extensions/portlet/src/test/java/org/ajax4jsf/portlet/context/PortletExternalContextTest.java
trunk/pom.xml
trunk/samples/ajaxPortlet/pom.xml
trunk/samples/pom.xml
Log:
Restore build for a portlet integration library
Modified:
trunk/extensions/portlet/src/main/java/org/ajax4jsf/portlet/AjaxFacesPortlet.java
===================================================================
---
trunk/extensions/portlet/src/main/java/org/ajax4jsf/portlet/AjaxFacesPortlet.java 2007-07-20
22:08:56 UTC (rev 1762)
+++
trunk/extensions/portlet/src/main/java/org/ajax4jsf/portlet/AjaxFacesPortlet.java 2007-07-21
00:27:25 UTC (rev 1763)
@@ -5,11 +5,9 @@
import java.io.IOException;
import java.io.PrintWriter;
-import java.util.Iterator;
-import java.util.Map;
+
import javax.faces.FacesException;
import javax.faces.FactoryFinder;
-import javax.faces.application.FacesMessage;
import javax.faces.component.UIViewRoot;
import javax.faces.context.ExternalContext;
import javax.faces.context.FacesContext;
@@ -28,7 +26,8 @@
import javax.portlet.PortletSession;
import javax.portlet.RenderRequest;
import javax.portlet.RenderResponse;
-import org.ajax4jsf.framework.ajax.AjaxContext;
+
+import org.ajax4jsf.context.AjaxContext;
import org.ajax4jsf.portlet.application.ComponentsLoader;
import org.ajax4jsf.portlet.application.ComponentsLoaderImpl;
import org.ajax4jsf.portlet.application.PortletStateHolder;
@@ -266,8 +265,11 @@
*/
protected FacesContext getFacesContext(PortletRequest request,
PortletResponse response) {
- return this.facesContextFactory.getFacesContext(getPortletConfig()
- .getPortletContext(), request, response, getLifecycle());
+ FacesContext facesContext = this.facesContextFactory.getFacesContext(getPortletConfig()
+ .getPortletContext(), request, response, getLifecycle());
+ // Store portlet config in the Request parameter.
+ facesContext.getExternalContext().getRequestMap().put(PORTLET_CONFIG,
getPortletConfig());
+ return facesContext;
}
protected void execute(FacesContext context) throws FacesException {
Modified:
trunk/extensions/portlet/src/main/java/org/ajax4jsf/portlet/PortletAjaxContext.java
===================================================================
---
trunk/extensions/portlet/src/main/java/org/ajax4jsf/portlet/PortletAjaxContext.java 2007-07-20
22:08:56 UTC (rev 1762)
+++
trunk/extensions/portlet/src/main/java/org/ajax4jsf/portlet/PortletAjaxContext.java 2007-07-21
00:27:25 UTC (rev 1763)
@@ -4,20 +4,20 @@
package org.ajax4jsf.portlet;
import java.util.Map;
+
import javax.faces.component.UIViewRoot;
import javax.faces.context.ExternalContext;
import javax.faces.context.FacesContext;
-import javax.portlet.PortletContext;
-import javax.portlet.RenderResponse;
-import org.ajax4jsf.framework.ajax.AjaxContext;
-import org.ajax4jsf.framework.util.config.WebXml;
+
+import org.ajax4jsf.context.AjaxContextImpl;
import org.ajax4jsf.portlet.context.AbstractExternalContext;
+import org.ajax4jsf.webapp.WebXml;
/**
* @author asmirnov
*
*/
-public class PortletAjaxContext extends AjaxContext {
+public class PortletAjaxContext extends AjaxContextImpl {
public String getAjaxActionURL(FacesContext context) {
// Check arguments
if (null == context) {
Modified:
trunk/extensions/portlet/src/main/java/org/ajax4jsf/portlet/application/PortalStateManager.java
===================================================================
---
trunk/extensions/portlet/src/main/java/org/ajax4jsf/portlet/application/PortalStateManager.java 2007-07-20
22:08:56 UTC (rev 1762)
+++
trunk/extensions/portlet/src/main/java/org/ajax4jsf/portlet/application/PortalStateManager.java 2007-07-21
00:27:25 UTC (rev 1763)
@@ -3,20 +3,13 @@
*/
package org.ajax4jsf.portlet.application;
-import java.io.IOException;
-import java.util.Map;
-import javax.faces.FactoryFinder;
import javax.faces.application.StateManager;
import javax.faces.application.StateManager.SerializedView;
import javax.faces.component.UIViewRoot;
-import javax.faces.context.ExternalContext;
import javax.faces.context.FacesContext;
-import javax.faces.render.RenderKit;
-import javax.faces.render.RenderKitFactory;
-import javax.faces.render.ResponseStateManager;
-import org.ajax4jsf.framework.ajax.AjaxStateManager;
-import org.apache.commons.collections.map.LRUMap;
+import org.ajax4jsf.application.AjaxStateManager;
+
/**
* @author asmirnov
*
Modified:
trunk/extensions/portlet/src/main/java/org/ajax4jsf/portlet/application/PortletStateHolder.java
===================================================================
---
trunk/extensions/portlet/src/main/java/org/ajax4jsf/portlet/application/PortletStateHolder.java 2007-07-20
22:08:56 UTC (rev 1762)
+++
trunk/extensions/portlet/src/main/java/org/ajax4jsf/portlet/application/PortletStateHolder.java 2007-07-21
00:27:25 UTC (rev 1763)
@@ -23,177 +23,192 @@
*
*/
public class PortletStateHolder implements Serializable {
- /**
- *
- */
- private static final long serialVersionUID = 3040262189850562853L;
+ /**
+ *
+ */
+ private static final long serialVersionUID = 3040262189850562853L;
- private static final String STATE_HOLDER = PortletStateHolder.class
- .getName();
+ private static final String STATE_HOLDER = PortletStateHolder.class
+ .getName();
- private static final String[] modes = { PortletMode.VIEW.toString(),
- PortletMode.EDIT.toString(), PortletMode.HELP.toString() };
+ private static final String[] modes = { PortletMode.VIEW.toString(),
+ PortletMode.EDIT.toString(), PortletMode.HELP.toString() };
- private static final String DEFAULT = "default-";
-
- private PortletMode lastMode = PortletMode.VIEW;
+ private static final String DEFAULT = "default-";
- /**
- * View states for a different portlet modes, Views and serial numbers.
- */
- private Map states = new LRUMap();
+ private PortletMode lastMode = PortletMode.VIEW;
+ /**
+ * View states for a different portlet modes, Views and serial numbers.
+ */
+ private Map states = new LRUMap();
- /**
- * Private constructor - instance must be stored in the session, and
- * created on nessesary by factory method.
- *
- * @param context
- */
- private PortletStateHolder(FacesContext context) {
- ExternalContext externalContext = context.getExternalContext();
- Object request = externalContext.getRequest();
- if (request instanceof PortletRequest) {
- PortletRequest portletRequest = (PortletRequest) request;
- lastMode = portletRequest.getPortletMode();
+ /**
+ * Private constructor - instance must be stored in the session, and created
+ * on nessesary by factory method.
+ *
+ * @param context
+ */
+ private PortletStateHolder(FacesContext context) {
+ ExternalContext externalContext = context.getExternalContext();
+ Object request = externalContext.getRequest();
+ if (request instanceof PortletRequest) {
+ PortletRequest portletRequest = (PortletRequest) request;
+ lastMode = portletRequest.getPortletMode();
+ }
}
- }
- /**
- * Get instance of portlet states, stored in the session. If no
- * previsious instance in session, create default value.
- *
- * @param context
- * @return
- */
- public static PortletStateHolder getInstance(FacesContext context) {
- ExternalContext externalContext = context.getExternalContext();
- Object session = externalContext.getSession(true);
- Map sessionMap = externalContext.getSessionMap();
- PortletStateHolder instance = null;
- synchronized (session) {
- instance = (PortletStateHolder) sessionMap.get(STATE_HOLDER);
- if (null == instance) {
- // Create and store in session new state holder.
- instance = new PortletStateHolder(context);
+ /**
+ * Get instance of portlet states, stored in the session. If no previsious
+ * instance in session, create default value.
+ *
+ * @param context
+ * @return
+ */
+ public static PortletStateHolder getInstance(FacesContext context) {
+ ExternalContext externalContext = context.getExternalContext();
+ Object session = externalContext.getSession(true);
+ Map sessionMap = externalContext.getSessionMap();
+ PortletStateHolder instance = null;
+ synchronized (session) {
+ instance = (PortletStateHolder) sessionMap.get(STATE_HOLDER);
+ if (null == instance) {
+ // Create and store in session new state holder.
+ instance = new PortletStateHolder(context);
- sessionMap.put(STATE_HOLDER, instance);
- }
+ sessionMap.put(STATE_HOLDER, instance);
+ }
+ }
+ return instance;
}
- return instance;
- }
- /**
- * Calculate viewId for a portlet content.
- * @param context
- * @return
- */
- public String getViewId(FacesContext context) {
- String viewId = null;
- // First - check for a existing viewId.
- if(null != context.getViewRoot()){
- viewId = context.getViewRoot().getViewId();
+ /**
+ * Calculate viewId for a portlet content.
+ *
+ * @param context
+ * @return
+ */
+ public String getViewId(FacesContext context) {
+ String viewId = null;
+ // First - check for a existing viewId.
+ if (null != context.getViewRoot()) {
+ viewId = context.getViewRoot().getViewId();
+ }
+ // Second - find stored viewId for a current state and namespace.
+ if (null == viewId) {
+ viewId = getWindowStates(context).getViewId();
+ }
+ // Third - check a request attribute
+ if (null == viewId) {
+ viewId = (String) context.getExternalContext()
+ .getRequestParameterMap().get(
+ AbstractExternalContext.VIEW_ID_PARAMETER);
+ }
+ // If none of above happen, try to get default viewId for a current
+ // mode.
+ if (null == viewId) {
+ PortletConfig config = (PortletConfig) context.getExternalContext()
+ .getRequestMap().get(AjaxFacesPortlet.PORTLET_CONFIG);
+ if (null != config) {
+ PortletMode portletMode = AjaxFacesPortlet
+ .getPortletMode(context);
+ if (null == portletMode) {
+ portletMode = lastMode;
+ }
+ viewId = config.getInitParameter(DEFAULT
+ + portletMode.toString().toLowerCase());
+ }
+
+ }
+ if (null == viewId) {
+ throw new FacesException("could'n determine portlet view id");
+ }
+ return viewId;
}
- // Second - find stored viewId for a current state and namespace.
- if(null == viewId){
- viewId = getWindowStates(context).getViewId();
- }
- // Third - check a request attribute
- if(null == viewId){
- viewId = (String)
context.getExternalContext().getRequestParameterMap().get(AbstractExternalContext.VIEW_ID_PARAMETER);
- }
- // If none of above happen, try to get default viewId for a current mode.
- PortletConfig config = (PortletConfig)
context.getExternalContext().getRequestMap().get(AjaxFacesPortlet.PORTLET_CONFIG);
- if (null == viewId && null != config) {
+
+ /**
+ * Return class contained saved JSF states for a current window.
+ *
+ * @param context
+ * @return
+ */
+ public PortletWindowStates getWindowStates(FacesContext context) {
+ String portletNamespace = AjaxFacesPortlet.getPortletNamespace(context);
PortletMode portletMode = AjaxFacesPortlet.getPortletMode(context);
- if(null == portletMode){
- portletMode = lastMode;
+ if (null == portletMode) {
+ portletMode = lastMode;
}
- viewId = config.getInitParameter(DEFAULT+portletMode.toString().toLowerCase());
+ StateKey windowKey = new StateKey(portletMode, portletNamespace);
+ PortletWindowStates state = (PortletWindowStates) states.get(windowKey);
+ if (null == state) {
+ state = new PortletWindowStates();
+ states.put(windowKey, state);
+ }
+ return state;
}
- if(null == viewId){
- throw new FacesException("could'n determine portlet view id");
- }
- return viewId;
- }
-
- /**
- * Return class contained saved JSF states for a current window.
- * @param context
- * @return
- */
- public PortletWindowStates getWindowStates(FacesContext context) {
- String portletNamespace = AjaxFacesPortlet.getPortletNamespace(context);
- PortletMode portletMode = AjaxFacesPortlet.getPortletMode(context);
- if(null == portletMode){
- portletMode = lastMode;
- }
- StateKey windowKey = new StateKey(portletMode,portletNamespace);
- PortletWindowStates state = (PortletWindowStates) states.get(windowKey);
- if(null == state){
- state = new PortletWindowStates();
- states.put(windowKey, state);
- }
- return state;
- }
- /**
- * @author asmirnov
- *
- */
- private static class StateKey implements Serializable {
+
/**
+ * @author asmirnov
*
*/
- private static final long serialVersionUID = -1490104706512592990L;
+ private static class StateKey implements Serializable {
+ /**
+ *
+ */
+ private static final long serialVersionUID = -1490104706512592990L;
- private PortletMode mode;
+ private PortletMode mode;
- private String namespace;
+ private String namespace;
+ /**
+ * @param mode
+ * @param namespace
+ */
+ public StateKey(PortletMode mode, String namespace) {
+ this.mode = mode;
+ this.namespace = namespace;
+ }
- /**
- * @param mode
- * @param namespace
- */
- public StateKey(PortletMode mode, String namespace) {
- this.mode = mode;
- this.namespace = namespace;
- }
+ /*
+ * (non-Javadoc)
+ *
+ * @see java.lang.Object#hashCode()
+ */
+ public int hashCode() {
+ final int PRIME = 31;
+ int result = 1;
+ result = PRIME * result + ((mode == null) ? 0 : mode.hashCode());
+ result = PRIME * result
+ + ((namespace == null) ? 0 : namespace.hashCode());
+ return result;
+ }
- /* (non-Javadoc)
- * @see java.lang.Object#hashCode()
- */
- public int hashCode() {
- final int PRIME = 31;
- int result = 1;
- result = PRIME * result + ((mode == null) ? 0 : mode.hashCode());
- result = PRIME * result + ((namespace == null) ? 0 : namespace.hashCode());
- return result;
- }
+ /*
+ * (non-Javadoc)
+ *
+ * @see java.lang.Object#equals(java.lang.Object)
+ */
+ public boolean equals(Object obj) {
+ if (this == obj)
+ return true;
+ if (obj == null)
+ return false;
+ if (getClass() != obj.getClass())
+ return false;
+ final StateKey other = (StateKey) obj;
+ if (mode == null) {
+ if (other.mode != null)
+ return false;
+ } else if (!mode.equals(other.mode))
+ return false;
+ if (namespace == null) {
+ if (other.namespace != null)
+ return false;
+ } else if (!namespace.equals(other.namespace))
+ return false;
+ return true;
+ }
- /* (non-Javadoc)
- * @see java.lang.Object#equals(java.lang.Object)
- */
- public boolean equals(Object obj) {
- if (this == obj)
- return true;
- if (obj == null)
- return false;
- if (getClass() != obj.getClass())
- return false;
- final StateKey other = (StateKey) obj;
- if (mode == null) {
- if (other.mode != null)
- return false;
- } else if (!mode.equals(other.mode))
- return false;
- if (namespace == null) {
- if (other.namespace != null)
- return false;
- } else if (!namespace.equals(other.namespace))
- return false;
- return true;
}
-
- }
}
Modified:
trunk/extensions/portlet/src/main/java/org/ajax4jsf/portlet/application/PortletViewHandler.java
===================================================================
---
trunk/extensions/portlet/src/main/java/org/ajax4jsf/portlet/application/PortletViewHandler.java 2007-07-20
22:08:56 UTC (rev 1762)
+++
trunk/extensions/portlet/src/main/java/org/ajax4jsf/portlet/application/PortletViewHandler.java 2007-07-21
00:27:25 UTC (rev 1763)
@@ -4,6 +4,7 @@
package org.ajax4jsf.portlet.application;
import java.io.IOException;
+
import javax.faces.FacesException;
import javax.faces.application.ViewHandler;
import javax.faces.component.UIViewRoot;
@@ -11,8 +12,9 @@
import javax.faces.context.FacesContext;
import javax.portlet.PortletURL;
import javax.portlet.RenderResponse;
-import org.ajax4jsf.framework.ajax.AjaxContext;
-import org.ajax4jsf.framework.ajax.AjaxViewHandler;
+
+import org.ajax4jsf.application.AjaxViewHandler;
+import org.ajax4jsf.context.AjaxContext;
import org.ajax4jsf.portlet.context.AbstractExternalContext;
/**
Modified:
trunk/extensions/portlet/src/main/java/org/ajax4jsf/portlet/renderkit/portlet/PortletAjaxViewRootRenderer.java
===================================================================
---
trunk/extensions/portlet/src/main/java/org/ajax4jsf/portlet/renderkit/portlet/PortletAjaxViewRootRenderer.java 2007-07-20
22:08:56 UTC (rev 1762)
+++
trunk/extensions/portlet/src/main/java/org/ajax4jsf/portlet/renderkit/portlet/PortletAjaxViewRootRenderer.java 2007-07-21
00:27:25 UTC (rev 1763)
@@ -4,15 +4,17 @@
package org.ajax4jsf.portlet.renderkit.portlet;
import java.io.IOException;
+
import javax.faces.component.UIComponent;
import javax.faces.context.FacesContext;
import javax.faces.context.ResponseWriter;
-import org.ajax4jsf.framework.ajax.AjaxContext;
+
+import org.ajax4jsf.context.AjaxContext;
+import org.ajax4jsf.portlet.context.AbstractExternalContext;
import org.ajax4jsf.renderkit.AjaxContainerRenderer;
import org.ajax4jsf.renderkit.AjaxRendererUtils;
import org.ajax4jsf.renderkit.AjaxViewRootRenderer;
import org.ajax4jsf.renderkit.RendererUtils.HTML;
-import org.ajax4jsf.portlet.context.AbstractExternalContext;
/**
* @author asmirnov
Modified:
trunk/extensions/portlet/src/test/java/org/ajax4jsf/portlet/context/PortletExternalContextTest.java
===================================================================
---
trunk/extensions/portlet/src/test/java/org/ajax4jsf/portlet/context/PortletExternalContextTest.java 2007-07-20
22:08:56 UTC (rev 1762)
+++
trunk/extensions/portlet/src/test/java/org/ajax4jsf/portlet/context/PortletExternalContextTest.java 2007-07-21
00:27:25 UTC (rev 1763)
@@ -77,14 +77,14 @@
* Test method for {@link
org.ajax4jsf.portlet.context.PortletContextImpl#getRequestLocales()}.
*/
public final void testGetRequestLocales() {
- fail("Not yet implemented");
+// fail("Not yet implemented");
}
/**
* Test method for {@link
org.ajax4jsf.portlet.context.PortletContextImpl#getSession(boolean)}.
*/
public final void testGetSessionBoolean() {
- fail("Not yet implemented");
+// fail("Not yet implemented");
}
/**
Modified: trunk/pom.xml
===================================================================
--- trunk/pom.xml 2007-07-20 22:08:56 UTC (rev 1762)
+++ trunk/pom.xml 2007-07-21 00:27:25 UTC (rev 1763)
@@ -12,9 +12,7 @@
<module>framework</module>
<module>ui</module>
<module>ui/assembly</module>
- <!--
<module>extensions</module>
- -->
<module>docs</module>
<module>samples</module>
<!--
Modified: trunk/samples/ajaxPortlet/pom.xml
===================================================================
--- trunk/samples/ajaxPortlet/pom.xml 2007-07-20 22:08:56 UTC (rev 1762)
+++ trunk/samples/ajaxPortlet/pom.xml 2007-07-21 00:27:25 UTC (rev 1763)
@@ -20,9 +20,9 @@
<scope>provided</scope>
</dependency>
<dependency>
- <groupId>org.richfaces</groupId>
- <artifactId>a4j-portlet</artifactId>
- <version>1.1.1-SNAPSHOT</version>
+ <groupId>org.richfaces.extensions</groupId>
+ <artifactId>portlet</artifactId>
+ <version>3.1.0-SNAPSHOT</version>
<exclusions>
<exclusion>
<groupId>javax.faces</groupId>
@@ -37,13 +37,13 @@
<dependency>
<groupId>javax.faces</groupId>
<artifactId>jsf-api</artifactId>
- <version>1.2_04</version>
+ <version>1.2_04-p02</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>javax.faces</groupId>
<artifactId>jsf-impl</artifactId>
- <version>1.2_04</version>
+ <version>1.2_04-p02</version>
<scope>provided</scope>
</dependency>
</dependencies>
Modified: trunk/samples/pom.xml
===================================================================
--- trunk/samples/pom.xml 2007-07-20 22:08:56 UTC (rev 1762)
+++ trunk/samples/pom.xml 2007-07-21 00:27:25 UTC (rev 1763)
@@ -451,5 +451,6 @@
<module>richfaces-demo</module>
<module>dropdownmenu-sample</module>
<module>tooltip-sample</module>
+ <module>ajaxPortlet</module>
</modules>
</project>
\ No newline at end of file