[CONF] Confluence Changes in the last 24 hours
- This is a daily summary of all recent changes in Confluence. - Updated Spaces: - Apache Camel (CAMEL) http://cwiki.apache.org/confluence/display/CAMEL | |-New Comments in This Space |-- http://cwiki.apache.org/confluence/display/CAMEL/Spring+Example (2) Apache Struts 2 Documentation (WW) http://cwiki.apache.org/confluence/display/WW | |-Pages Added or Edited in This Space |-- Core Developers Guide was last edited by [EMAIL PROTECTED] (09:57 AM). | http://cwiki.apache.org/confluence/display/WW/Core+Developers+Guide |-- Localization was last edited by husted (04:41 AM). | http://cwiki.apache.org/confluence/display/WW/Localization |-- Tutorials was last edited by husted (04:39 AM). | http://cwiki.apache.org/confluence/display/WW/Tutorials Apache MINA (MINA) http://cwiki.apache.org/confluence/display/MINA | |-Pages Added or Edited in This Space |-- Index was last edited by trustin (08:11 PM). | http://cwiki.apache.org/confluence/display/MINA/Index |-- Apache MINA 1.0.5 and 1.1.2 Released was created by trustin (07:42 PM). | http://cwiki.apache.org/confluence/display/MINA/2007/08/12/Apache+MINA+1.0.5+and+1.1.2+Released |-- Developer Guide was last edited by trustin (07:21 PM). | http://cwiki.apache.org/confluence/display/MINA/Developer+Guide |-- Downloads was last edited by trustin (07:06 PM). | http://cwiki.apache.org/confluence/display/MINA/Downloads - CONFLUENCE INFORMATION This message is automatically generated by Confluence Unsubscribe or edit your notifications preferences http://cwiki.apache.org/confluence/users/viewnotifications.action If you think it was sent incorrectly contact one of the administrators http://cwiki.apache.org/confluence/administrators.action If you want more information on Confluence, or have a bug to report see http://www.atlassian.com/software/confluence
svn commit: r565259 [9/9] - in /struts/struts2/branches/STRUTS_2_0_X/core/src: main/java/org/apache/struts2/views/annotations/ site/resources/tags/
Modified: struts/struts2/branches/STRUTS_2_0_X/core/src/site/resources/tags/url.html URL: http://svn.apache.org/viewvc/struts/struts2/branches/STRUTS_2_0_X/core/src/site/resources/tags/url.html?view=diff&rev=565259&r1=565258&r2=565259 == --- struts/struts2/branches/STRUTS_2_0_X/core/src/site/resources/tags/url.html (original) +++ struts/struts2/branches/STRUTS_2_0_X/core/src/site/resources/tags/url.html Mon Aug 13 00:55:18 2007 @@ -31,7 +31,7 @@ action false - true + false String The action to generate the URL for, if not using value @@ -39,7 +39,7 @@ anchor false - true + false String The anchor for this URL @@ -47,7 +47,7 @@ encode false true - true + false Boolean Whether to encode parameters @@ -55,7 +55,7 @@ escapeAmp false true - true + false Boolean Specifies whether to escape ampersand (&) to (&) or not @@ -63,7 +63,7 @@ id false - true + false String id for referencing element. For UI and form tags it will be used as HTML id attribute @@ -71,7 +71,7 @@ includeContext false true - true + false Boolean Whether actual context should be included in URL @@ -79,7 +79,7 @@ includeParams false get - true + false String The includeParams attribute may have the value 'none', 'get' or 'all' @@ -87,7 +87,7 @@ method false - true + false String The method of action to use @@ -95,7 +95,7 @@ namespace false - true + false String The namespace to use @@ -103,7 +103,7 @@ portletMode false - true + false String The resulting portlet mode @@ -111,7 +111,7 @@ portletUrlType false - true + false String Specifies if t
svn commit: r565264 - in /struts/struts2/trunk/plugins/dojo/src: main/java/org/apache/struts2/dojo/components/ main/java/org/apache/struts2/dojo/views/jsp/ui/ main/resources/template/ajax/ test/java/o
Author: rgielen Date: Mon Aug 13 01:13:30 2007 New Revision: 565264 URL: http://svn.apache.org/viewvc?view=rev&rev=565264 Log: WW-2108: Make being able to remember last selected tab using a cookie Added: struts/struts2/trunk/plugins/dojo/src/test/java/org/apache/struts2/dojo/views/jsp/ui/TabbedPanelTagTest.java Modified: struts/struts2/trunk/plugins/dojo/src/main/java/org/apache/struts2/dojo/components/TabbedPanel.java struts/struts2/trunk/plugins/dojo/src/main/java/org/apache/struts2/dojo/views/jsp/ui/TabbedPanelTag.java struts/struts2/trunk/plugins/dojo/src/main/resources/template/ajax/tabbedpanel.ftl struts/struts2/trunk/plugins/dojo/src/test/resources/org/apache/struts2/dojo/views/jsp/ui/TabbedPanel-1.txt struts/struts2/trunk/plugins/dojo/src/test/resources/org/apache/struts2/dojo/views/jsp/ui/TabbedPanel-2.txt struts/struts2/trunk/plugins/dojo/src/test/resources/org/apache/struts2/dojo/views/jsp/ui/TabbedPanel-3.txt Modified: struts/struts2/trunk/plugins/dojo/src/main/java/org/apache/struts2/dojo/components/TabbedPanel.java URL: http://svn.apache.org/viewvc/struts/struts2/trunk/plugins/dojo/src/main/java/org/apache/struts2/dojo/components/TabbedPanel.java?view=diff&rev=565264&r1=565263&r2=565264 == --- struts/struts2/trunk/plugins/dojo/src/main/java/org/apache/struts2/dojo/components/TabbedPanel.java (original) +++ struts/struts2/trunk/plugins/dojo/src/main/java/org/apache/struts2/dojo/components/TabbedPanel.java Mon Aug 13 01:13:30 2007 @@ -34,6 +34,11 @@ * * The tabbedpanel widget is primarily an AJAX component, where each tab can either be local content or remote * content (refreshed each time the user selects that tab). + * If the useSelectedTabCookie attribute is set to true, the id of the selected tab is saved in a cookie on activation. + * When coming back to this view, the cookie is read and the tab will be activated again, unless an actual value for the + * selectedTab attribute is specified. + * If you want to use the cookie feature, please be sure that you provide a unique id for your tabbedpanel component, + * since this will also be the identifying name component of the stored cookie. * * * Examples @@ -92,7 +97,8 @@ protected String beforeSelectTabNotifyTopics; protected String afterSelectTabNotifyTopics; protected String disabledTabCssClass; - +protected String useSelectedTabCookie; + public TabbedPanel(ValueStack stack, HttpServletRequest request, HttpServletResponse response) { super(stack, request, response); } @@ -123,7 +129,10 @@ addParameter("afterSelectTabNotifyTopics", findString(afterSelectTabNotifyTopics)); if (disabledTabCssClass!= null) addParameter("disabledTabCssClass", findString(disabledTabCssClass)); - +if(useSelectedTabCookie != null) { +addParameter("useSelectedTabCookie", findString(useSelectedTabCookie)); +} + } @Override @@ -194,5 +203,12 @@ @StrutsTagAttribute(description="Css class to be applied to the tab button of disabled tabs", defaultValue="strutsDisabledTab") public void setDisabledTabCssClass(String disabledTabCssClass) { this.disabledTabCssClass = disabledTabCssClass; +} + +@StrutsTagAttribute(required = false, defaultValue = "false", description = "If set to true, the id of the last selected " + +"tab will be stored in cookie. If the view is rendered, it will be tried to read this cookie and activate " + +"the corresponding tab on success, unless overridden by the selectedTab attribute. The cookie name is \"Struts2TabbedPanel_selectedTab_\"+id.") +public void setUseSelectedTabCookie( String useSelectedTabCookie ) { +this.useSelectedTabCookie = useSelectedTabCookie; } } Modified: struts/struts2/trunk/plugins/dojo/src/main/java/org/apache/struts2/dojo/views/jsp/ui/TabbedPanelTag.java URL: http://svn.apache.org/viewvc/struts/struts2/trunk/plugins/dojo/src/main/java/org/apache/struts2/dojo/views/jsp/ui/TabbedPanelTag.java?view=diff&rev=565264&r1=565263&r2=565264 == --- struts/struts2/trunk/plugins/dojo/src/main/java/org/apache/struts2/dojo/views/jsp/ui/TabbedPanelTag.java (original) +++ struts/struts2/trunk/plugins/dojo/src/main/java/org/apache/struts2/dojo/views/jsp/ui/TabbedPanelTag.java Mon Aug 13 01:13:30 2007 @@ -42,8 +42,9 @@ private String templateCssPath; private String beforeSelectTabNotifyTopics; private String afterSelectTabNotifyTopics; -protected String disabledTabCssClass; - +private String disabledTabCssClass; +private String useSelectedTabCookie; + public Component getBean(ValueStack stack, HttpServletRequest req, HttpServletResponse res) { return new TabbedPanel(stack, req, r
svn commit: r565265 - in /struts/struts2/branches/STRUTS_2_0_X/core/src: main/java/org/apache/struts2/components/ main/java/org/apache/struts2/views/jsp/ui/ main/resources/template/simple/ site/resour
Author: rgielen Date: Mon Aug 13 01:18:07 2007 New Revision: 565265 URL: http://svn.apache.org/viewvc?view=rev&rev=565265 Log: WW-2108: Make being able to remember last selected tab using a cookie Added: struts/struts2/branches/STRUTS_2_0_X/core/src/test/java/org/apache/struts2/views/jsp/ui/TabbedPanelTagTest.java Modified: struts/struts2/branches/STRUTS_2_0_X/core/src/main/java/org/apache/struts2/components/TabbedPanel.java struts/struts2/branches/STRUTS_2_0_X/core/src/main/java/org/apache/struts2/views/jsp/ui/TabbedPanelTag.java struts/struts2/branches/STRUTS_2_0_X/core/src/main/resources/template/simple/tabbedpanel.ftl struts/struts2/branches/STRUTS_2_0_X/core/src/site/resources/tags/tabbedPanel.html struts/struts2/branches/STRUTS_2_0_X/core/src/test/resources/org/apache/struts2/views/jsp/ui/TabbedPanel-1.txt struts/struts2/branches/STRUTS_2_0_X/core/src/test/resources/org/apache/struts2/views/jsp/ui/TabbedPanel-2.txt struts/struts2/branches/STRUTS_2_0_X/core/src/test/resources/org/apache/struts2/views/jsp/ui/TabbedPanel-3.txt Modified: struts/struts2/branches/STRUTS_2_0_X/core/src/main/java/org/apache/struts2/components/TabbedPanel.java URL: http://svn.apache.org/viewvc/struts/struts2/branches/STRUTS_2_0_X/core/src/main/java/org/apache/struts2/components/TabbedPanel.java?view=diff&rev=565265&r1=565264&r2=565265 == --- struts/struts2/branches/STRUTS_2_0_X/core/src/main/java/org/apache/struts2/components/TabbedPanel.java (original) +++ struts/struts2/branches/STRUTS_2_0_X/core/src/main/java/org/apache/struts2/components/TabbedPanel.java Mon Aug 13 01:18:07 2007 @@ -32,6 +32,11 @@ * * The tabbedpanel widget is primarily an AJAX component, where each tab can either be local content or remote * content (refreshed each time the user selects that tab). + * If the useSelectedTabCookie attribute is set to true, the id of the selected tab is saved in a cookie on activation. + * When coming back to this view, the cookie is read and the tab will be activated again, unless an actual value for the + * selectedTab attribute is specified. + * If you want to use the cookie feature, please be sure that you provide a unique id for your tabbedpanel component, + * since this will also be the identifying name component of the stored cookie. * * * Examples @@ -67,6 +72,7 @@ protected String closeButton; protected String doLayout ; protected String templateCssPath; +protected String useSelectedTabCookie; public TabbedPanel(ValueStack stack, HttpServletRequest request, HttpServletResponse response) { super(stack, request, response); @@ -92,6 +98,9 @@ } if(templateCssPath != null) addParameter("templateCssPath", findString(templateCssPath)); +if(useSelectedTabCookie != null) { +addParameter("useSelectedTabCookie", findString(useSelectedTabCookie)); +} } public String getDefaultOpenTemplate() { @@ -131,5 +140,12 @@ @StrutsTagAttribute(description="Template css path") public void setTemplateCssPath(String templateCssPath) { this.templateCssPath = templateCssPath; +} + +@StrutsTagAttribute(required = false, defaultValue = "false", description = "If set to true, the id of the last selected " + +"tab will be stored in cookie. If the view is rendered, it will be tried to read this cookie and activate " + +"the corresponding tab on success, unless overridden by the selectedTab attribute. The cookie name is \"Struts2TabbedPanel_selectedTab_\"+id.") +public void setUseSelectedTabCookie( String useSelectedTabCookie ) { +this.useSelectedTabCookie = useSelectedTabCookie; } } Modified: struts/struts2/branches/STRUTS_2_0_X/core/src/main/java/org/apache/struts2/views/jsp/ui/TabbedPanelTag.java URL: http://svn.apache.org/viewvc/struts/struts2/branches/STRUTS_2_0_X/core/src/main/java/org/apache/struts2/views/jsp/ui/TabbedPanelTag.java?view=diff&rev=565265&r1=565264&r2=565265 == --- struts/struts2/branches/STRUTS_2_0_X/core/src/main/java/org/apache/struts2/views/jsp/ui/TabbedPanelTag.java (original) +++ struts/struts2/branches/STRUTS_2_0_X/core/src/main/java/org/apache/struts2/views/jsp/ui/TabbedPanelTag.java Mon Aug 13 01:18:07 2007 @@ -39,6 +39,7 @@ private String closeButton; private String doLayout; private String templateCssPath; +private String useSelectedTabCookie; public Component getBean(ValueStack stack, HttpServletRequest req, HttpServletResponse res) { return new TabbedPanel(stack, req, res); @@ -52,6 +53,7 @@ tabbedPanel.setDoLayout(doLayout); tabbedPanel.setLabelposition(labelPosition); tabbedPanel.setTemplateCssPath(templateCssPath); +tabbedPanel.setUseSelect
svn commit: r565267 - /struts/struts2/trunk/core/src/site/resources/tags/ajax/tabbedpanel.html
Author: rgielen Date: Mon Aug 13 01:33:44 2007 New Revision: 565267 URL: http://svn.apache.org/viewvc?view=rev&rev=565267 Log: WW-2108: Make being able to remember last selected tab using a cookie Modified: struts/struts2/trunk/core/src/site/resources/tags/ajax/tabbedpanel.html Modified: struts/struts2/trunk/core/src/site/resources/tags/ajax/tabbedpanel.html URL: http://svn.apache.org/viewvc/struts/struts2/trunk/core/src/site/resources/tags/ajax/tabbedpanel.html?view=diff&rev=565267&r1=565266&r2=565267 == --- struts/struts2/trunk/core/src/site/resources/tags/ajax/tabbedpanel.html (original) +++ struts/struts2/trunk/core/src/site/resources/tags/ajax/tabbedpanel.html Mon Aug 13 01:33:44 2007 @@ -132,6 +132,14 @@ Label expression used for rendering a element specific label + labelSeparator + false + : + true + String + String that will be appended to the labe + + labelposition false @@ -370,6 +378,14 @@ true String Icon path used for image that will have the tooltip + + + useSelectedTabCookie + false + false + true + String + If set to true, the id of the last selected tab will be stored in cookie. If the view is rendered, it will be tried to read this cookie and activate the corresponding tab on success, unless overridden by the selectedTab attribute. The cookie name is "Struts2TabbedPanel_selectedTab_"+id. value
svn commit: r565288 - /struts/struts2/trunk/plugins/dojo/src/test/java/org/apache/struts2/dojo/views/jsp/ui/TabbedPanelTagTest.java
Author: rgielen Date: Mon Aug 13 03:02:48 2007 New Revision: 565288 URL: http://svn.apache.org/viewvc?view=rev&rev=565288 Log: WW-2108: Fix for failing Bamboo build Modified: struts/struts2/trunk/plugins/dojo/src/test/java/org/apache/struts2/dojo/views/jsp/ui/TabbedPanelTagTest.java Modified: struts/struts2/trunk/plugins/dojo/src/test/java/org/apache/struts2/dojo/views/jsp/ui/TabbedPanelTagTest.java URL: http://svn.apache.org/viewvc/struts/struts2/trunk/plugins/dojo/src/test/java/org/apache/struts2/dojo/views/jsp/ui/TabbedPanelTagTest.java?view=diff&rev=565288&r1=565287&r2=565288 == --- struts/struts2/trunk/plugins/dojo/src/test/java/org/apache/struts2/dojo/views/jsp/ui/TabbedPanelTagTest.java (original) +++ struts/struts2/trunk/plugins/dojo/src/test/java/org/apache/struts2/dojo/views/jsp/ui/TabbedPanelTagTest.java Mon Aug 13 03:02:48 2007 @@ -20,8 +20,6 @@ */ package org.apache.struts2.dojo.views.jsp.ui; -import org.apache.struts2.views.jsp.AbstractUITagTest; - /** * TabbedPanelTagTest. */
Issues Opened: week of 2007-08-13
Struts2 - Monday, August 13, 2007 17 opened in last 7 days [WW-2090] should detect when there's only one error and emit no tags Matt Raible - Improvement - [] http://issues.apache.org/struts/browse/WW-2090 [WW-2095] Changing portlet mode after validation errors fails Nils-Helge Garli - Bug - [] http://issues.apache.org/struts/browse/WW-2095 [WW-2106] HTML loaded by the ajax tags is parsed for dojo widgets, this should be optional and there should be a "parseContent" attribute to control it Musachy Barroso - Improvement - [] http://issues.apache.org/struts/browse/WW-2106 [WW-2089] Blank sample application is failing James Mitchell - Bug - [] http://issues.apache.org/struts/browse/WW-2089 [WW-2102] action-tag will not call action method from a jsp page that is rendered from an "input" result Toni Lyytikäinen - Bug - [] http://issues.apache.org/struts/browse/WW-2102 [WW-2108] Make being able to remember selected tab using a cookie Rene Gielen - New Feature - [] http://issues.apache.org/struts/browse/WW-2108 [WW-2091] Incomplete Ajax Validation example on Struts website. Oguntona Remshell - Bug - [] http://issues.apache.org/struts/browse/WW-2091 [WW-2103] Invalid Javascript generated for StringLength validator Jeremy Mikola - Bug - [] http://issues.apache.org/struts/browse/WW-2103 [WW-2099] s:submit with ajax theme inside a form do not wait for return value of onclick before invoking the action santosh yadav - Bug - [] http://issues.apache.org/struts/browse/WW-2099 [WW-2093] Server validation not ok for a simple select list Leneveut Michaël - Bug - [] http://issues.apache.org/struts/browse/WW-2093 [WW-2092] UI tags can't custom html tag attributes zhouyanming - Improvement - [] http://issues.apache.org/struts/browse/WW-2092 [WW-2100] Refreshing a div from javascript using dojo fails on subsequent attempts after first refresh in IE 6.0. It works fine in firefox. santosh yadav - Bug - [] http://issues.apache.org/struts/browse/WW-2100 [WW-2087] JSCalendar Integration Derik Vercueil - New Feature - [] http://issues.apache.org/struts/browse/WW-2087 [WW-2104] Need to create StrutsRequestWrapper objects to resolve request attributes from the value stack Nils-Helge Garli - Bug - [] http://issues.apache.org/struts/browse/WW-2104 [WW-2098] datetimepicker breaks validation in Firefox Benjamin McCann - Bug - [] http://issues.apache.org/struts/browse/WW-2098 [WW-2094] Error DateTimePicker when erase input then click again the calendar Leneveut Michaël - Bug - [] http://issues.apache.org/struts/browse/WW-2094 [WW-2107] Arbitrary user-submitted OGNL possible when using JSP EL or FreeMarker Don Brown - Bug - [] http://issues.apache.org/struts/browse/WW-2107
svn commit: r565422 - in /struts/struts2/branches/STRUTS_2_0_X/core/src: main/java/org/apache/struts2/components/ main/java/org/apache/struts2/views/jsp/ site/resources/tags/ test/java/org/apache/stru
Author: jholmes Date: Mon Aug 13 10:09:16 2007 New Revision: 565422 URL: http://svn.apache.org/viewvc?view=rev&rev=565422 Log: WW-1948 s:url tag does not provide forceAddSchemeHostAndPort parameter Modified: struts/struts2/branches/STRUTS_2_0_X/core/src/main/java/org/apache/struts2/components/URL.java struts/struts2/branches/STRUTS_2_0_X/core/src/main/java/org/apache/struts2/views/jsp/URLTag.java struts/struts2/branches/STRUTS_2_0_X/core/src/site/resources/tags/url.html struts/struts2/branches/STRUTS_2_0_X/core/src/test/java/org/apache/struts2/views/jsp/URLTagTest.java Modified: struts/struts2/branches/STRUTS_2_0_X/core/src/main/java/org/apache/struts2/components/URL.java URL: http://svn.apache.org/viewvc/struts/struts2/branches/STRUTS_2_0_X/core/src/main/java/org/apache/struts2/components/URL.java?view=diff&rev=565422&r1=565421&r2=565422 == --- struts/struts2/branches/STRUTS_2_0_X/core/src/main/java/org/apache/struts2/components/URL.java (original) +++ struts/struts2/branches/STRUTS_2_0_X/core/src/main/java/org/apache/struts2/components/URL.java Mon Aug 13 10:09:16 2007 @@ -88,6 +88,7 @@ * portletMode (String) - The resulting portlet mode. * windowState (String) - The resulting portlet window state. * portletUrlType (String) - Specifies if this should be a portlet render or action URL. + * forceAddSchemeHostAndPort (Boolean) - Specifies whether to force the addition of scheme, host and port or not. * * * @@ -150,6 +151,7 @@ protected String windowState; protected String portletUrlType; protected String anchor; +protected boolean forceAddSchemeHostAndPort; protected String urlIncludeParams; protected ExtraParameterProvider extraParameterProvider; @@ -247,14 +249,14 @@ String result; if (value == null && action != null) { -if(Dispatcher.getInstance().isPortletSupportActive() && PortletActionContext.isPortletRequest()) { +if (Dispatcher.getInstance().isPortletSupportActive() && PortletActionContext.isPortletRequest()) { result = PortletUrlHelper.buildUrl(action, namespace, parameters, portletUrlType, portletMode, windowState); } else { -result = determineActionURL(action, namespace, method, req, res, parameters, scheme, includeContext, encode, false, escapeAmp); +result = determineActionURL(action, namespace, method, req, res, parameters, scheme, includeContext, encode, forceAddSchemeHostAndPort, escapeAmp); } } else { -if(Dispatcher.getInstance().isPortletSupportActive() && PortletActionContext.isPortletRequest()) { +if (Dispatcher.getInstance().isPortletSupportActive() && PortletActionContext.isPortletRequest()) { result = PortletUrlHelper.buildResourceUrl(value, parameters); } else { @@ -265,7 +267,7 @@ if (_value != null && _value.indexOf("?") > 0) { _value = _value.substring(0, _value.indexOf("?")); } -result = UrlHelper.buildUrl(_value, req, res, parameters, scheme, includeContext, encode, false, escapeAmp); +result = UrlHelper.buildUrl(_value, req, res, parameters, scheme, includeContext, encode, forceAddSchemeHostAndPort, escapeAmp); } } if ( anchor != null && anchor.length() > 0 ) { @@ -352,6 +354,11 @@ @StrutsTagAttribute(description="Specifies whether to escape ampersand (&) to (&) or not", type="Boolean", defaultValue="true") public void setEscapeAmp(boolean escapeAmp) { this.escapeAmp = escapeAmp; +} + +@StrutsTagAttribute(description="Specifies whether to force the addition of scheme, host and port or not", type="Boolean", defaultValue="false") +public void setForceAddSchemeHostAndPort(boolean forceAddSchemeHostAndPort) { +this.forceAddSchemeHostAndPort = forceAddSchemeHostAndPort; } Modified: struts/struts2/branches/STRUTS_2_0_X/core/src/main/java/org/apache/struts2/views/jsp/URLTag.java URL: http://svn.apache.org/viewvc/struts/struts2/branches/STRUTS_2_0_X/core/src/main/java/org/apache/struts2/views/jsp/URLTag.java?view=diff&rev=565422&r1=565421&r2=565422 == --- struts/struts2/branches/STRUTS_2_0_X/core/src/main/java/org/apache/struts2/views/jsp/URLTag.java (original) +++ struts/struts2/branches/STRUTS_2_0_X/core/src/main/java/org/apache/struts2/views/jsp/URLTag.java Mon Aug 13 10:09:16 2007 @@ -49,6 +49,7 @@ protected String windowState; protected String portletUrlType; protected String anchor; +protected String forceAddSchemeHostAndPort; public Component getBean(ValueStack stack, HttpServletRequest req, HttpServletResponse res) {
svn commit: r565429 - in /struts/struts2/trunk/core/src: main/java/org/apache/struts2/components/ main/java/org/apache/struts2/views/jsp/ site/resources/tags/ test/java/org/apache/struts2/views/jsp/
Author: jholmes Date: Mon Aug 13 10:15:28 2007 New Revision: 565429 URL: http://svn.apache.org/viewvc?view=rev&rev=565429 Log: WW-1948 s:url tag does not provide forceAddSchemeHostAndPort parameter Modified: struts/struts2/trunk/core/src/main/java/org/apache/struts2/components/ServletUrlRenderer.java struts/struts2/trunk/core/src/main/java/org/apache/struts2/components/URL.java struts/struts2/trunk/core/src/main/java/org/apache/struts2/views/jsp/URLTag.java struts/struts2/trunk/core/src/site/resources/tags/url.html struts/struts2/trunk/core/src/test/java/org/apache/struts2/views/jsp/URLTagTest.java Modified: struts/struts2/trunk/core/src/main/java/org/apache/struts2/components/ServletUrlRenderer.java URL: http://svn.apache.org/viewvc/struts/struts2/trunk/core/src/main/java/org/apache/struts2/components/ServletUrlRenderer.java?view=diff&rev=565429&r1=565428&r2=565429 == --- struts/struts2/trunk/core/src/main/java/org/apache/struts2/components/ServletUrlRenderer.java (original) +++ struts/struts2/trunk/core/src/main/java/org/apache/struts2/components/ServletUrlRenderer.java Mon Aug 13 10:15:28 2007 @@ -56,7 +56,7 @@ String result; if (urlComponent.value == null && urlComponent.action != null) { - result = urlComponent.determineActionURL(urlComponent.action, urlComponent.namespace, urlComponent.method, urlComponent.req, urlComponent.res, urlComponent.parameters, scheme, urlComponent.includeContext, urlComponent.encode, false, urlComponent.escapeAmp); + result = urlComponent.determineActionURL(urlComponent.action, urlComponent.namespace, urlComponent.method, urlComponent.req, urlComponent.res, urlComponent.parameters, scheme, urlComponent.includeContext, urlComponent.encode, urlComponent.forceAddSchemeHostAndPort, urlComponent.escapeAmp); } else { String _value = urlComponent.value; @@ -65,7 +65,7 @@ if (_value != null && _value.indexOf("?") > 0) { _value = _value.substring(0, _value.indexOf("?")); } - result = UrlHelper.buildUrl(_value, urlComponent.req, urlComponent.res, urlComponent.parameters, scheme, urlComponent.includeContext, urlComponent.encode, false, urlComponent.escapeAmp); + result = UrlHelper.buildUrl(_value, urlComponent.req, urlComponent.res, urlComponent.parameters, scheme, urlComponent.includeContext, urlComponent.encode, urlComponent.forceAddSchemeHostAndPort, urlComponent.escapeAmp); } if ( urlComponent.anchor != null && urlComponent.anchor.length() > 0 ) { result += '#' + urlComponent.anchor; Modified: struts/struts2/trunk/core/src/main/java/org/apache/struts2/components/URL.java URL: http://svn.apache.org/viewvc/struts/struts2/trunk/core/src/main/java/org/apache/struts2/components/URL.java?view=diff&rev=565429&r1=565428&r2=565429 == --- struts/struts2/trunk/core/src/main/java/org/apache/struts2/components/URL.java (original) +++ struts/struts2/trunk/core/src/main/java/org/apache/struts2/components/URL.java Mon Aug 13 10:15:28 2007 @@ -84,6 +84,7 @@ * portletMode (String) - The resulting portlet mode. * windowState (String) - The resulting portlet window state. * portletUrlType (String) - Specifies if this should be a portlet render or action URL. + * forceAddSchemeHostAndPort (Boolean) - Specifies whether to force the addition of scheme, host and port or not. * * * @@ -146,6 +147,7 @@ protected String windowState; protected String portletUrlType; protected String anchor; +protected boolean forceAddSchemeHostAndPort; protected String urlIncludeParams; protected ExtraParameterProvider extraParameterProvider; protected UrlRenderer urlRenderer; @@ -306,6 +308,11 @@ @StrutsTagAttribute(description="Specifies whether to escape ampersand (&) to (&) or not", type="Boolean", defaultValue="true") public void setEscapeAmp(boolean escapeAmp) { this.escapeAmp = escapeAmp; +} + +@StrutsTagAttribute(description="Specifies whether to force the addition of scheme, host and port or not", type="Boolean", defaultValue="false") +public void setForceAddSchemeHostAndPort(boolean forceAddSchemeHostAndPort) { +this.forceAddSchemeHostAndPort = forceAddSchemeHostAndPort; } Modified: struts/struts2/trunk/core/src/main/java/org/apache/struts2/views/jsp/URLTag.java URL: http://svn.apache.org/viewvc/struts/struts2/trunk/core/src/main/java/org/apache/struts2/views/jsp/URLTag.java?view=diff&rev=565429&r1=565428&r2=565429 == ---
svn commit: r565492 - in /struts/struts2/branches/STRUTS_2_0_X/core/src: main/java/org/apache/struts2/views/util/UrlHelper.java test/java/org/apache/struts2/views/util/UrlHelperTest.java
Author: jholmes Date: Mon Aug 13 13:00:08 2007 New Revision: 565492 URL: http://svn.apache.org/viewvc?view=rev&rev=565492 Log: (empty) Modified: struts/struts2/branches/STRUTS_2_0_X/core/src/main/java/org/apache/struts2/views/util/UrlHelper.java struts/struts2/branches/STRUTS_2_0_X/core/src/test/java/org/apache/struts2/views/util/UrlHelperTest.java Modified: struts/struts2/branches/STRUTS_2_0_X/core/src/main/java/org/apache/struts2/views/util/UrlHelper.java URL: http://svn.apache.org/viewvc/struts/struts2/branches/STRUTS_2_0_X/core/src/main/java/org/apache/struts2/views/util/UrlHelper.java?view=diff&rev=565492&r1=565491&r2=565492 == --- struts/struts2/branches/STRUTS_2_0_X/core/src/main/java/org/apache/struts2/views/util/UrlHelper.java (original) +++ struts/struts2/branches/STRUTS_2_0_X/core/src/main/java/org/apache/struts2/views/util/UrlHelper.java Mon Aug 13 13:00:08 2007 @@ -67,6 +67,7 @@ private static int httpsPort = DEFAULT_HTTPS_PORT; private static String customEncoding; + @Inject(StrutsConstants.STRUTS_URL_HTTP_PORT) public static void setHttpPort(String val) { httpPort = Integer.parseInt(val); @@ -109,22 +110,30 @@ link.append(request.getServerName()); if (scheme != null) { -if ((scheme.equals("http") && (httpPort != DEFAULT_HTTP_PORT)) || (scheme.equals("https") && httpsPort != DEFAULT_HTTPS_PORT)) -{ -link.append(":"); -link.append(scheme.equals("http") ? httpPort : httpsPort); +// If switching schemes, use the configured port for the particular scheme. +if (!scheme.equals(reqScheme)) { +if ((scheme.equals("http") && (httpPort != DEFAULT_HTTP_PORT)) || (scheme.equals("https") && httpsPort != DEFAULT_HTTPS_PORT)) { +link.append(":"); +link.append(scheme.equals("http") ? httpPort : httpsPort); +} + // Else use the port from the current request. +} else { +int reqPort = request.getServerPort(); + +if ((scheme.equals("http") && (reqPort != DEFAULT_HTTP_PORT)) || (scheme.equals("https") && reqPort != DEFAULT_HTTPS_PORT)) { +link.append(":"); +link.append(reqPort); +} } } } -else if ( - (scheme != null) && !scheme.equals(request.getScheme())) { +else if ((scheme != null) && !scheme.equals(request.getScheme())) { changedScheme = true; link.append(scheme); link.append("://"); link.append(request.getServerName()); -if ((scheme.equals("http") && (httpPort != DEFAULT_HTTP_PORT)) || (scheme.equals("https") && httpsPort != DEFAULT_HTTPS_PORT)) -{ +if ((scheme.equals("http") && (httpPort != DEFAULT_HTTP_PORT)) || (scheme.equals("https") && httpsPort != DEFAULT_HTTPS_PORT)) { link.append(":"); link.append(scheme.equals("http") ? httpPort : httpsPort); } Modified: struts/struts2/branches/STRUTS_2_0_X/core/src/test/java/org/apache/struts2/views/util/UrlHelperTest.java URL: http://svn.apache.org/viewvc/struts/struts2/branches/STRUTS_2_0_X/core/src/test/java/org/apache/struts2/views/util/UrlHelperTest.java?view=diff&rev=565492&r1=565491&r2=565492 == --- struts/struts2/branches/STRUTS_2_0_X/core/src/test/java/org/apache/struts2/views/util/UrlHelperTest.java (original) +++ struts/struts2/branches/STRUTS_2_0_X/core/src/test/java/org/apache/struts2/views/util/UrlHelperTest.java Mon Aug 13 13:00:08 2007 @@ -40,8 +40,6 @@ */ public class UrlHelperTest extends StrutsTestCase { - - public void testForceAddSchemeHostAndPort() throws Exception { String expectedUrl = "http://localhost/contextPath/path1/path2/myAction.action";; @@ -49,7 +47,8 @@ mockHttpServletRequest.expectAndReturn("getScheme", "http"); mockHttpServletRequest.expectAndReturn("getServerName", "localhost"); mockHttpServletRequest.expectAndReturn("getContextPath", "/contextPath"); - + mockHttpServletRequest.expectAndReturn("getServerPort", 80); + Mock mockHttpServletResponse = new Mock(HttpServletResponse.class); mockHttpServletResponse.expectAndReturn("encodeURL", expectedUrl, expectedUrl); @@ -74,14 +73,30 @@ assertEquals(expectedUrl, result); } +public void testForceAddSchemeHostAndPortWithNonStandardPort() throws Exception { +String expectedUrl = "http://localhost:9090/contextPath/path1/path2/myAction.action";; + +Mock mockHttpServletRequest = new Mock(HttpServletRequest.c
svn commit: r565512 - in /struts/struts2/trunk/plugins/dojo/src: main/java/org/apache/struts2/dojo/components/ main/java/org/apache/struts2/dojo/views/jsp/ui/ main/resources/template/ajax/ test/java/o
Author: musachy Date: Mon Aug 13 13:47:50 2007 New Revision: 565512 URL: http://svn.apache.org/viewvc?view=rev&rev=565512 Log: WW-2106 HTML loaded by the ajax tags is parsed for dojo widgets, this should be optional and there should be a "parseContent" attribute to control it Modified: struts/struts2/trunk/plugins/dojo/src/main/java/org/apache/struts2/dojo/components/AbstractRemoteBean.java struts/struts2/trunk/plugins/dojo/src/main/java/org/apache/struts2/dojo/components/RemoteBean.java struts/struts2/trunk/plugins/dojo/src/main/java/org/apache/struts2/dojo/components/Submit.java struts/struts2/trunk/plugins/dojo/src/main/java/org/apache/struts2/dojo/views/jsp/ui/AbstractRemoteTag.java struts/struts2/trunk/plugins/dojo/src/main/java/org/apache/struts2/dojo/views/jsp/ui/SubmitTag.java struts/struts2/trunk/plugins/dojo/src/main/resources/template/ajax/ajax-common.ftl struts/struts2/trunk/plugins/dojo/src/main/resources/template/ajax/bind.ftl struts/struts2/trunk/plugins/dojo/src/test/java/org/apache/struts2/dojo/views/jsp/ui/AnchorTest.java struts/struts2/trunk/plugins/dojo/src/test/java/org/apache/struts2/dojo/views/jsp/ui/BindTest.java struts/struts2/trunk/plugins/dojo/src/test/java/org/apache/struts2/dojo/views/jsp/ui/DivTest.java struts/struts2/trunk/plugins/dojo/src/test/java/org/apache/struts2/dojo/views/jsp/ui/SubmitAjaxTest.java struts/struts2/trunk/plugins/dojo/src/test/resources/org/apache/struts2/dojo/views/jsp/ui/Bind-1.txt struts/struts2/trunk/plugins/dojo/src/test/resources/org/apache/struts2/dojo/views/jsp/ui/div-1.txt struts/struts2/trunk/plugins/dojo/src/test/resources/org/apache/struts2/dojo/views/jsp/ui/href-1.txt struts/struts2/trunk/plugins/dojo/src/test/resources/org/apache/struts2/dojo/views/jsp/ui/submit-ajax-1.txt Modified: struts/struts2/trunk/plugins/dojo/src/main/java/org/apache/struts2/dojo/components/AbstractRemoteBean.java URL: http://svn.apache.org/viewvc/struts/struts2/trunk/plugins/dojo/src/main/java/org/apache/struts2/dojo/components/AbstractRemoteBean.java?view=diff&rev=565512&r1=565511&r2=565512 == --- struts/struts2/trunk/plugins/dojo/src/main/java/org/apache/struts2/dojo/components/AbstractRemoteBean.java (original) +++ struts/struts2/trunk/plugins/dojo/src/main/java/org/apache/struts2/dojo/components/AbstractRemoteBean.java Mon Aug 13 13:47:50 2007 @@ -51,6 +51,7 @@ protected String highlightDuration; protected String separateScripts; protected String transport; +protected String parseContent; public AbstractRemoteBean(ValueStack stack, HttpServletRequest request, HttpServletResponse response) { @@ -100,6 +101,10 @@ addParameter("separateScripts", findValue(separateScripts, Boolean.class)); if (transport != null) addParameter("transport", findString(transport)); +if (parseContent != null) +addParameter("parseContent", findValue(parseContent, Boolean.class)); +else +addParameter("parseContent", true); } @Override @@ -232,5 +237,10 @@ @StrutsTagAttribute(description="Transport used by Dojo to make the request", defaultValue="XMLHTTPTransport") public void setTransport(String transport) { this.transport = transport; +} + +@StrutsTagAttribute(description="Parse returned HTML for Dojo widgets", defaultValue="true", type="Boolean") +public void setParseContent(String parseContent) { +this.parseContent = parseContent; } } Modified: struts/struts2/trunk/plugins/dojo/src/main/java/org/apache/struts2/dojo/components/RemoteBean.java URL: http://svn.apache.org/viewvc/struts/struts2/trunk/plugins/dojo/src/main/java/org/apache/struts2/dojo/components/RemoteBean.java?view=diff&rev=565512&r1=565511&r2=565512 == --- struts/struts2/trunk/plugins/dojo/src/main/java/org/apache/struts2/dojo/components/RemoteBean.java (original) +++ struts/struts2/trunk/plugins/dojo/src/main/java/org/apache/struts2/dojo/components/RemoteBean.java Mon Aug 13 13:47:50 2007 @@ -66,4 +66,6 @@ void setSeparateScripts(String separateScripts); void setTransport(String transport); + +void setParseContent(String parseContent); } Modified: struts/struts2/trunk/plugins/dojo/src/main/java/org/apache/struts2/dojo/components/Submit.java URL: http://svn.apache.org/viewvc/struts/struts2/trunk/plugins/dojo/src/main/java/org/apache/struts2/dojo/components/Submit.java?view=diff&rev=565512&r1=565511&r2=565512 == --- struts/struts2/trunk/plugins/dojo/src/main/java/org/apache/struts2/dojo/components/Submit.java (original) +++ struts/struts2/trunk/plugins/dojo/src/main/java/org/apache/struts2/dojo/components/S
svn commit: r565513 - in /struts/struts2/trunk/core/src/site/resources/tags/ajax: a.html autocompleter.html datetimepicker.html div.html submit.html tree.html treenode.html
Author: musachy Date: Mon Aug 13 13:48:26 2007 New Revision: 565513 URL: http://svn.apache.org/viewvc?view=rev&rev=565513 Log: Update tags reference documentation Modified: struts/struts2/trunk/core/src/site/resources/tags/ajax/a.html struts/struts2/trunk/core/src/site/resources/tags/ajax/autocompleter.html struts/struts2/trunk/core/src/site/resources/tags/ajax/datetimepicker.html struts/struts2/trunk/core/src/site/resources/tags/ajax/div.html struts/struts2/trunk/core/src/site/resources/tags/ajax/submit.html struts/struts2/trunk/core/src/site/resources/tags/ajax/tree.html struts/struts2/trunk/core/src/site/resources/tags/ajax/treenode.html Modified: struts/struts2/trunk/core/src/site/resources/tags/ajax/a.html URL: http://svn.apache.org/viewvc/struts/struts2/trunk/core/src/site/resources/tags/ajax/a.html?view=diff&rev=565513&r1=565512&r2=565513 == --- struts/struts2/trunk/core/src/site/resources/tags/ajax/a.html (original) +++ struts/struts2/trunk/core/src/site/resources/tags/ajax/a.html Mon Aug 13 13:48:26 2007 @@ -196,6 +196,14 @@ Label expression used for rendering a element specific label + labelSeparator + false + : + true + String + String that will be appended to the labe + + labelposition false Modified: struts/struts2/trunk/core/src/site/resources/tags/ajax/autocompleter.html URL: http://svn.apache.org/viewvc/struts/struts2/trunk/core/src/site/resources/tags/ajax/autocompleter.html?view=diff&rev=565513&r1=565512&r2=565513 == --- struts/struts2/trunk/core/src/site/resources/tags/ajax/autocompleter.html (original) +++ struts/struts2/trunk/core/src/site/resources/tags/ajax/autocompleter.html Mon Aug 13 13:48:26 2007 @@ -236,6 +236,14 @@ Label expression used for rendering a element specific label + labelSeparator + false + : + true + String + String that will be appended to the labe + + labelposition false Modified: struts/struts2/trunk/core/src/site/resources/tags/ajax/datetimepicker.html URL: http://svn.apache.org/viewvc/struts/struts2/trunk/core/src/site/resources/tags/ajax/datetimepicker.html?view=diff&rev=565513&r1=565512&r2=565513 == --- struts/struts2/trunk/core/src/site/resources/tags/ajax/datetimepicker.html (original) +++ struts/struts2/trunk/core/src/site/resources/tags/ajax/datetimepicker.html Mon Aug 13 13:48:26 2007 @@ -121,7 +121,7 @@ true String - id for referencing element. For UI and form tags it will be used as HTML id attribute + HTML id attribute javascriptTooltip @@ -146,6 +146,14 @@ true String Label expression used for rendering a element specific label + + + labelSeparator + false + : + true + String + String that will be appended to the labe labelposition Modified: struts/struts2/trunk/core/src/site/resources/tags/ajax/div.html URL: http://svn.apache.org/viewvc/struts/struts2/trunk/core/src/site/resources/tags/ajax/div.html?view=diff&rev=565513&r1=565512&r2=565513
svn propchange: r565492 - svn:log
Author: jholmes Revision: 565492 Modified property: svn:log Modified: svn:log at Mon Aug 13 18:29:55 2007 -- --- svn:log (original) +++ svn:log Mon Aug 13 18:29:55 2007 @@ -0,0 +1 @@ +WW-1950 UrlHelper.buildUrl does not output port even if forceAddSchemeHostAndPort turned on (TestCase included)
svn commit: r565609 - in /struts/struts2/trunk/core/src: main/java/org/apache/struts2/views/util/UrlHelper.java test/java/org/apache/struts2/views/util/UrlHelperTest.java
Author: jholmes Date: Mon Aug 13 19:02:49 2007 New Revision: 565609 URL: http://svn.apache.org/viewvc?view=rev&rev=565609 Log: WW-1950 UrlHelper.buildUrl does not output port even if forceAddSchemeHostAndPort turned on (TestCase included) Modified: struts/struts2/trunk/core/src/main/java/org/apache/struts2/views/util/UrlHelper.java struts/struts2/trunk/core/src/test/java/org/apache/struts2/views/util/UrlHelperTest.java Modified: struts/struts2/trunk/core/src/main/java/org/apache/struts2/views/util/UrlHelper.java URL: http://svn.apache.org/viewvc/struts/struts2/trunk/core/src/main/java/org/apache/struts2/views/util/UrlHelper.java?view=diff&rev=565609&r1=565608&r2=565609 == --- struts/struts2/trunk/core/src/main/java/org/apache/struts2/views/util/UrlHelper.java (original) +++ struts/struts2/trunk/core/src/main/java/org/apache/struts2/views/util/UrlHelper.java Mon Aug 13 19:02:49 2007 @@ -108,15 +108,24 @@ link.append(request.getServerName()); if (scheme != null) { -if ((scheme.equals("http") && (httpPort != DEFAULT_HTTP_PORT)) || (scheme.equals("https") && httpsPort != DEFAULT_HTTPS_PORT)) -{ -link.append(":"); -link.append(scheme.equals("http") ? httpPort : httpsPort); +// If switching schemes, use the configured port for the particular scheme. +if (!scheme.equals(reqScheme)) { +if ((scheme.equals("http") && (httpPort != DEFAULT_HTTP_PORT)) || (scheme.equals("https") && httpsPort != DEFAULT_HTTPS_PORT)) { +link.append(":"); +link.append(scheme.equals("http") ? httpPort : httpsPort); +} +// Else use the port from the current request. +} else { +int reqPort = request.getServerPort(); + +if ((scheme.equals("http") && (reqPort != DEFAULT_HTTP_PORT)) || (scheme.equals("https") && reqPort != DEFAULT_HTTPS_PORT)) { +link.append(":"); +link.append(reqPort); +} } } } -else if ( - (scheme != null) && !scheme.equals(request.getScheme())) { +else if ((scheme != null) && !scheme.equals(request.getScheme())) { changedScheme = true; link.append(scheme); link.append("://"); Modified: struts/struts2/trunk/core/src/test/java/org/apache/struts2/views/util/UrlHelperTest.java URL: http://svn.apache.org/viewvc/struts/struts2/trunk/core/src/test/java/org/apache/struts2/views/util/UrlHelperTest.java?view=diff&rev=565609&r1=565608&r2=565609 == --- struts/struts2/trunk/core/src/test/java/org/apache/struts2/views/util/UrlHelperTest.java (original) +++ struts/struts2/trunk/core/src/test/java/org/apache/struts2/views/util/UrlHelperTest.java Mon Aug 13 19:02:49 2007 @@ -46,6 +46,7 @@ mockHttpServletRequest.expectAndReturn("getScheme", "http"); mockHttpServletRequest.expectAndReturn("getServerName", "localhost"); mockHttpServletRequest.expectAndReturn("getContextPath", "/contextPath"); +mockHttpServletRequest.expectAndReturn("getServerPort", 80); Mock mockHttpServletResponse = new Mock(HttpServletResponse.class); mockHttpServletResponse.expectAndReturn("encodeURL", expectedUrl, expectedUrl); @@ -71,6 +72,22 @@ assertEquals(expectedUrl, result); } +public void testForceAddSchemeHostAndPortWithNonStandardPort() throws Exception { +String expectedUrl = "http://localhost:9090/contextPath/path1/path2/myAction.action";; + +Mock mockHttpServletRequest = new Mock(HttpServletRequest.class); +mockHttpServletRequest.expectAndReturn("getScheme", "http"); +mockHttpServletRequest.expectAndReturn("getServerName", "localhost"); +mockHttpServletRequest.expectAndReturn("getContextPath", "/contextPath"); +mockHttpServletRequest.expectAndReturn("getServerPort", 9090); + +Mock mockHttpServletResponse = new Mock(HttpServletResponse.class); +mockHttpServletResponse.expectAndReturn("encodeURL", expectedUrl, expectedUrl); + +String result = UrlHelper.buildUrl("/path1/path2/myAction.action", (HttpServletRequest) mockHttpServletRequest.proxy(), (HttpServletResponse)mockHttpServletResponse.proxy(), null, "http", true, true, true); +assertEquals(expectedUrl, result); +mockHttpServletRequest.verify(); +} public void testBuildParametersStringWithUrlHavingSomeExistingParameters() throws Exception { String expectedUrl = "http://localhost:8080/myContext/myPage.jsp?initParam=initValue¶m1=value1¶m2=value2";;