You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@struts.apache.org by lu...@apache.org on 2012/06/01 07:42:56 UTC

svn commit: r1344990 - /struts/struts2/trunk/plugins/portlet/src/main/java/org/apache/struts2/components/PortletUrlRenderer.java

Author: lukaszlenart
Date: Fri Jun  1 05:42:55 2012
New Revision: 1344990

URL: http://svn.apache.org/viewvc?rev=1344990&view=rev
Log:
WW-3831 adds the same behaviour as in ServletUrlRenderer to render dynamic action in URL tag

Modified:
    struts/struts2/trunk/plugins/portlet/src/main/java/org/apache/struts2/components/PortletUrlRenderer.java

Modified: struts/struts2/trunk/plugins/portlet/src/main/java/org/apache/struts2/components/PortletUrlRenderer.java
URL: http://svn.apache.org/viewvc/struts/struts2/trunk/plugins/portlet/src/main/java/org/apache/struts2/components/PortletUrlRenderer.java?rev=1344990&r1=1344989&r2=1344990&view=diff
==============================================================================
--- struts/struts2/trunk/plugins/portlet/src/main/java/org/apache/struts2/components/PortletUrlRenderer.java (original)
+++ struts/struts2/trunk/plugins/portlet/src/main/java/org/apache/struts2/components/PortletUrlRenderer.java Fri Jun  1 05:42:55 2012
@@ -94,17 +94,24 @@ public class PortletUrlRenderer implemen
         	String namespace = urlComponent.determineNamespace(urlComponent.getNamespace(), urlComponent.getStack(), urlComponent.getHttpServletRequest());
         	urlComponent.setNamespace(namespace);
         	if (onlyActionSpecified(urlComponent)) {
-        		result = portletUrlHelper.buildUrl(urlComponent.getAction(), urlComponent.getNamespace(), urlComponent.getMethod(),
-        				urlComponent.getParameters(), urlComponent.getPortletUrlType(), urlComponent.getPortletMode(), urlComponent.getWindowState());
+        	    if (StringUtils.isNotEmpty(urlComponent.getAction())) {
+        	        String action = urlComponent.findString(urlComponent.getAction());
+                    result = portletUrlHelper.buildUrl(action, urlComponent.getNamespace(), urlComponent.getMethod(),
+                                    urlComponent.getParameters(), urlComponent.getPortletUrlType(), urlComponent.getPortletMode(), urlComponent.getWindowState());
+        	    }
+        	    else {
+                    result = portletUrlHelper.buildUrl(urlComponent.getAction(), urlComponent.getNamespace(), urlComponent.getMethod(),
+                                    urlComponent.getParameters(), urlComponent.getPortletUrlType(), urlComponent.getPortletMode(), urlComponent.getWindowState());
+        	    }
         	} else if (onlyValueSpecified(urlComponent)) {
         		result = portletUrlHelper.buildResourceUrl(urlComponent.getValue(), urlComponent.getParameters());
         	} else {
         		result = createDefaultUrl(urlComponent);
         	}
         }
-        final String anchor = urlComponent.getAnchor();
-        if (anchor != null && anchor.length() > 0) {
-            result += '#' + anchor;
+        String anchor = urlComponent.getAnchor();
+        if (StringUtils.isNotEmpty(anchor)) {
+            result += '#' + urlComponent.findString(anchor);
         }
 
         String var = urlComponent.getVar();