You are viewing a plain text version of this content. The canonical link for it is here.
Posted to pluto-scm@portals.apache.org by cd...@apache.org on 2007/09/20 13:01:52 UTC
svn commit: r577681 - in /portals/pluto/branches/1.1-286-trunk-merge:
pluto-container/src/main/java/org/apache/pluto/internal/impl/
pluto-descriptor-api/src/main/java/org/apache/pluto/descriptors/portlet/
Author: cdoremus
Date: Thu Sep 20 04:01:52 2007
New Revision: 577681
URL: http://svn.apache.org/viewvc?rev=577681&view=rev
Log:
Applied ResourceURL_getLocalPort_Session_090507.patch in PLUTO-263. Thanks Torsten!
Modified:
portals/pluto/branches/1.1-286-trunk-merge/pluto-container/src/main/java/org/apache/pluto/internal/impl/PortletRequestDispatcherImpl.java
portals/pluto/branches/1.1-286-trunk-merge/pluto-container/src/main/java/org/apache/pluto/internal/impl/PortletRequestImpl.java
portals/pluto/branches/1.1-286-trunk-merge/pluto-container/src/main/java/org/apache/pluto/internal/impl/PortletSessionImpl.java
portals/pluto/branches/1.1-286-trunk-merge/pluto-container/src/main/java/org/apache/pluto/internal/impl/RenderRequestImpl.java
portals/pluto/branches/1.1-286-trunk-merge/pluto-container/src/main/java/org/apache/pluto/internal/impl/ResourceURLImpl.java
portals/pluto/branches/1.1-286-trunk-merge/pluto-descriptor-api/src/main/java/org/apache/pluto/descriptors/portlet/EventDefinitionDD.java
Modified: portals/pluto/branches/1.1-286-trunk-merge/pluto-container/src/main/java/org/apache/pluto/internal/impl/PortletRequestDispatcherImpl.java
URL: http://svn.apache.org/viewvc/portals/pluto/branches/1.1-286-trunk-merge/pluto-container/src/main/java/org/apache/pluto/internal/impl/PortletRequestDispatcherImpl.java?rev=577681&r1=577680&r2=577681&view=diff
==============================================================================
--- portals/pluto/branches/1.1-286-trunk-merge/pluto-container/src/main/java/org/apache/pluto/internal/impl/PortletRequestDispatcherImpl.java (original)
+++ portals/pluto/branches/1.1-286-trunk-merge/pluto-container/src/main/java/org/apache/pluto/internal/impl/PortletRequestDispatcherImpl.java Thu Sep 20 04:01:52 2007
@@ -135,8 +135,7 @@
}
InternalPortletRequest internalRequest = InternalImplConverter.getInternalRequest(request);
InternalPortletResponse internalResponse = InternalImplConverter.getInternalResponse(response);
- boolean isForwarded = (internalRequest.isForwarded()
- || internalResponse.isForwarded());
+ boolean isForwarded = (internalRequest.isForwarded()||internalResponse.isForwarded());
try {
internalRequest.setForwarded(true);
internalRequest.setForwardedQueryString(queryString);
Modified: portals/pluto/branches/1.1-286-trunk-merge/pluto-container/src/main/java/org/apache/pluto/internal/impl/PortletRequestImpl.java
URL: http://svn.apache.org/viewvc/portals/pluto/branches/1.1-286-trunk-merge/pluto-container/src/main/java/org/apache/pluto/internal/impl/PortletRequestImpl.java?rev=577681&r1=577680&r2=577681&view=diff
==============================================================================
--- portals/pluto/branches/1.1-286-trunk-merge/pluto-container/src/main/java/org/apache/pluto/internal/impl/PortletRequestImpl.java (original)
+++ portals/pluto/branches/1.1-286-trunk-merge/pluto-container/src/main/java/org/apache/pluto/internal/impl/PortletRequestImpl.java Thu Sep 20 04:01:52 2007
@@ -269,6 +269,12 @@
internalPortletWindow,
httpSession);
}
+ //for RequestDispatcher
+ if (isForwarded() || isIncluded())
+ ((PortletSessionImpl)portletSession).setIncludeOrForward(true);
+ else
+ ((PortletSessionImpl)portletSession).setIncludeOrForward(false);
+
return portletSession;
}
@@ -783,7 +789,7 @@
@Override
public int getLocalPort() {
- return (isIncluded() || isForwarded()) ? null : super.getLocalPort();
+ return (isIncluded() || isForwarded()) ? 0 : super.getLocalPort();
}
public String getProtocol() {
@@ -919,7 +925,23 @@
return (isIncluded() || isForwarded()) ? null : super.getRequestURL();
}
+ @Override
+ public HttpSession getSession() {
+ if (isIncluded() || isForwarded()){
+ PortletSession session = getPortletSession();
+ return (HttpSession)session;
+ }
+ return super.getSession();
+ }
+ @Override
+ public HttpSession getSession(boolean arg0) {
+ if (isIncluded() || isForwarded()){
+ PortletSession session = getPortletSession(arg0);
+ return (HttpSession)session;
+ }
+ return super.getSession();
+ }
// ============= private methods ==================
Modified: portals/pluto/branches/1.1-286-trunk-merge/pluto-container/src/main/java/org/apache/pluto/internal/impl/PortletSessionImpl.java
URL: http://svn.apache.org/viewvc/portals/pluto/branches/1.1-286-trunk-merge/pluto-container/src/main/java/org/apache/pluto/internal/impl/PortletSessionImpl.java?rev=577681&r1=577680&r2=577681&view=diff
==============================================================================
--- portals/pluto/branches/1.1-286-trunk-merge/pluto-container/src/main/java/org/apache/pluto/internal/impl/PortletSessionImpl.java (original)
+++ portals/pluto/branches/1.1-286-trunk-merge/pluto-container/src/main/java/org/apache/pluto/internal/impl/PortletSessionImpl.java Thu Sep 20 04:01:52 2007
@@ -67,6 +67,8 @@
/** The internal portlet window. */
private InternalPortletWindow internalPortletWindow = null;
+ //
+ private boolean isIncludeOrForward = false;
// Constructor -------------------------------------------------------------
@@ -85,6 +87,8 @@
// PortletSession Impl: Attributes -----------------------------------------
public Object getAttribute(String name) {
+ if (isIncludeOrForward)
+ return getAttribute(name, APPLICATION_SCOPE);
return getAttribute(name, DEFAULT_SCOPE);
}
@@ -103,6 +107,8 @@
}
public Enumeration getAttributeNames() {
+ if (isIncludeOrForward)
+ return getAttributeNames(APPLICATION_SCOPE);
return getAttributeNames(DEFAULT_SCOPE);
}
@@ -126,7 +132,10 @@
}
public void removeAttribute(String name) {
- removeAttribute(name, DEFAULT_SCOPE);
+ if(isIncludeOrForward)
+ removeAttribute(name, APPLICATION_SCOPE);
+ else
+ removeAttribute(name, DEFAULT_SCOPE);
}
public void removeAttribute(String name, int scope) {
@@ -139,7 +148,10 @@
}
public void setAttribute(String name, Object value) {
- setAttribute(name, value, DEFAULT_SCOPE);
+ if (isIncludeOrForward)
+ setAttribute(name, value, PortletSession.APPLICATION_SCOPE);
+ else
+ setAttribute(name, value, DEFAULT_SCOPE);
}
public void setAttribute(String name, Object value, int scope) {
@@ -263,7 +275,10 @@
}
public Object getValue(String name) {
- return this.getAttribute(name, DEFAULT_SCOPE);
+ if (isIncludeOrForward)
+ return this.getAttribute(name, APPLICATION_SCOPE);
+ else
+ return this.getAttribute(name, DEFAULT_SCOPE);
}
/**
@@ -275,17 +290,21 @@
}
public void putValue(String name, Object value) {
+ if (isIncludeOrForward)
+ this.setAttribute(name, value, APPLICATION_SCOPE);
this.setAttribute(name, value, DEFAULT_SCOPE);
}
public void removeValue(String name) {
+ if (isIncludeOrForward)
+ this.removeAttribute(name, APPLICATION_SCOPE);
this.removeAttribute(name, DEFAULT_SCOPE);
}
public Map<String, Object> getMap() {
List<String> paramNames = getAttributeNamesAsList(DEFAULT_SCOPE);
- return fillMap(paramNames, DEFAULT_SCOPE);
+ return fillMap(paramNames, DEFAULT_SCOPE);
}
public Map<String, Object> getMap(int scope) {
@@ -319,5 +338,10 @@
resultMap.put(string, getAttribute(string,scope));
}
return resultMap;
+ }
+
+
+ public void setIncludeOrForward(boolean isIncludeOrForward) {
+ this.isIncludeOrForward = isIncludeOrForward;
}
}
Modified: portals/pluto/branches/1.1-286-trunk-merge/pluto-container/src/main/java/org/apache/pluto/internal/impl/RenderRequestImpl.java
URL: http://svn.apache.org/viewvc/portals/pluto/branches/1.1-286-trunk-merge/pluto-container/src/main/java/org/apache/pluto/internal/impl/RenderRequestImpl.java?rev=577681&r1=577680&r2=577681&view=diff
==============================================================================
--- portals/pluto/branches/1.1-286-trunk-merge/pluto-container/src/main/java/org/apache/pluto/internal/impl/RenderRequestImpl.java (original)
+++ portals/pluto/branches/1.1-286-trunk-merge/pluto-container/src/main/java/org/apache/pluto/internal/impl/RenderRequestImpl.java Thu Sep 20 04:01:52 2007
@@ -31,7 +31,6 @@
import javax.servlet.ServletInputStream;
import javax.servlet.http.Cookie;
import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpSession;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
@@ -271,13 +270,5 @@
public Cookie[] getCookieProperties() {
// TODO Auto-generated method stub
throw new UnsupportedOperationException("This method needs to be implemented.");
- }
-
- @Override
- public HttpSession getSession() {
- if (isIncluded() || isForwarded()){
- return (HttpSession) this.getPortletSession();
- }
- return super.getSession();
}
}
Modified: portals/pluto/branches/1.1-286-trunk-merge/pluto-container/src/main/java/org/apache/pluto/internal/impl/ResourceURLImpl.java
URL: http://svn.apache.org/viewvc/portals/pluto/branches/1.1-286-trunk-merge/pluto-container/src/main/java/org/apache/pluto/internal/impl/ResourceURLImpl.java?rev=577681&r1=577680&r2=577681&view=diff
==============================================================================
--- portals/pluto/branches/1.1-286-trunk-merge/pluto-container/src/main/java/org/apache/pluto/internal/impl/ResourceURLImpl.java (original)
+++ portals/pluto/branches/1.1-286-trunk-merge/pluto-container/src/main/java/org/apache/pluto/internal/impl/ResourceURLImpl.java Thu Sep 20 04:01:52 2007
@@ -60,7 +60,7 @@
}
public void setParameter(String name, String value) {
- if (name == null) {
+ if (name == null||value == null) {
throw new IllegalArgumentException(
"name and value must not be null");
}
@@ -78,14 +78,30 @@
}
public void setParameter(String name, String[] values) {
- // TODO:
+ if (name == null || values == null) {
+ throw new IllegalArgumentException(
+ "name and values must not be null");
+ }
+ //first make a get parameter
+ String[] tmp = this.servletRequest.getParameterValues(name);
+ if ( tmp== null){
+ super.setParameter(name, values);
+ }
+ else{
+ String[] tmpValues = new String[tmp.length+values.length];
+ System.arraycopy(tmp, 0, tmpValues, 0, tmp.length);
+ System.arraycopy(values, 0, tmpValues, tmp.length, values.length);
+ super.setParameter(name, tmpValues);
+ }
}
public void setParameters(Map<String, String[]> parameters) {
-
- // TODO:
-
-
+ if (parameters == null){
+ throw new IllegalArgumentException("parameter must not be null");
+ }
+ for (String name : parameters.keySet()) {
+ setParameter(name, parameters.get(name));
+ }
}
private String[] getRenderParameters(String name){
Modified: portals/pluto/branches/1.1-286-trunk-merge/pluto-descriptor-api/src/main/java/org/apache/pluto/descriptors/portlet/EventDefinitionDD.java
URL: http://svn.apache.org/viewvc/portals/pluto/branches/1.1-286-trunk-merge/pluto-descriptor-api/src/main/java/org/apache/pluto/descriptors/portlet/EventDefinitionDD.java?rev=577681&r1=577680&r2=577681&view=diff
==============================================================================
--- portals/pluto/branches/1.1-286-trunk-merge/pluto-descriptor-api/src/main/java/org/apache/pluto/descriptors/portlet/EventDefinitionDD.java (original)
+++ portals/pluto/branches/1.1-286-trunk-merge/pluto-descriptor-api/src/main/java/org/apache/pluto/descriptors/portlet/EventDefinitionDD.java Thu Sep 20 04:01:52 2007
@@ -156,7 +156,7 @@
* @return Returns the javaType.
*/
public String getJavaClass() {
- return javaClass;
+ return javaClass.trim();
}
/**
@@ -184,7 +184,7 @@
* @return Returns the xmlType.
*/
public String getXmlType() {
- return xmlType;
+ return xmlType.trim();
}
/**