Author: jkuhnert
Date: Sat May 12 17:42:49 2007
New Revision: 537535
URL: http://svn.apache.org/viewvc?view=rev&rev=537535
Log:
Applied patches from TAPESTRY-1449 to support handling default https port.
Modified:
tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/engine/EngineServiceLink.java
tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/services/impl/AbsoluteURLBuilderImpl.java
Modified:
tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/engine/EngineServiceLink.java
URL:
http://svn.apache.org/viewvc/tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/engine/EngineServiceLink.java?view=diff&rev=537535&r1=537534&r2=537535
==============================================================================
---
tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/engine/EngineServiceLink.java
(original)
+++
tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/engine/EngineServiceLink.java
Sat May 12 17:42:49 2007
@@ -14,9 +14,6 @@
package org.apache.tapestry.engine;
-import java.io.UnsupportedEncodingException;
-import java.util.Map;
-
import org.apache.commons.codec.net.URLCodec;
import org.apache.hivemind.ApplicationRuntimeException;
import org.apache.hivemind.util.Defense;
@@ -25,6 +22,9 @@
import org.apache.tapestry.util.QueryParameterMap;
import org.apache.tapestry.web.WebRequest;
+import java.io.UnsupportedEncodingException;
+import java.util.Map;
+
/**
* A EngineServiceLink represents a possible action within the client web
browser; either clicking a
* link or submitting a form, which is constructed primarily from the servlet
path, with some
@@ -39,6 +39,8 @@
public class EngineServiceLink implements ILink
{
private static final int DEFAULT_HTTP_PORT = 80;
+
+ private static final int DEFAULT_HTTPS_PORT = 443;
private final String _servletPath;
@@ -167,7 +169,7 @@
buffer.append(server == null ? _request.getServerName() : server);
- if (!(nscheme.equals("http") && nport == DEFAULT_HTTP_PORT))
+ if (!(nscheme.equals("http") && nport == DEFAULT_HTTP_PORT) &&
!(nscheme.equals("https") && nport == DEFAULT_HTTPS_PORT))
{
buffer.append(':');
buffer.append(nport);
@@ -196,6 +198,7 @@
// TODO: This is somewhat questionable right now, was added in to
support TAPESTRY-802
if (_cycle != null && _stateful) {
+
result = _cycle.encodeURL(result);
}
Modified:
tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/services/impl/AbsoluteURLBuilderImpl.java
URL:
http://svn.apache.org/viewvc/tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/services/impl/AbsoluteURLBuilderImpl.java?view=diff&rev=537535&r1=537534&r2=537535
==============================================================================
---
tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/services/impl/AbsoluteURLBuilderImpl.java
(original)
+++
tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/services/impl/AbsoluteURLBuilderImpl.java
Sat May 12 17:42:49 2007
@@ -71,10 +71,11 @@
// Keep things simple ... port 80 is accepted as the
// standard port for http so it can be ommitted.
+ //
// Some of the Tomcat code indicates that port 443 is the default
- // for https, and that needs to be researched.
+ // for https.. And it is.
- if (scheme.equals("http") && port == 80)
+ if ((scheme.equals("http") && port == 80) || (scheme.equals("https")
&& port == 443))
port = 0;
return constructURL(URI, scheme, server, port);