Return-Path: X-Original-To: apmail-tapestry-dev-archive@www.apache.org Delivered-To: apmail-tapestry-dev-archive@www.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id AE8E1D113 for ; Sat, 16 Mar 2013 11:50:21 +0000 (UTC) Received: (qmail 14017 invoked by uid 500); 16 Mar 2013 11:50:20 -0000 Delivered-To: apmail-tapestry-dev-archive@tapestry.apache.org Received: (qmail 13702 invoked by uid 500); 16 Mar 2013 11:50:14 -0000 Mailing-List: contact commits-help@tapestry.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@tapestry.apache.org Delivered-To: mailing list commits@tapestry.apache.org Received: (qmail 13650 invoked by uid 99); 16 Mar 2013 11:50:13 -0000 Received: from arcas.apache.org (HELO arcas.apache.org) (140.211.11.28) by apache.org (qpsmtpd/0.29) with ESMTP; Sat, 16 Mar 2013 11:50:13 +0000 Date: Sat, 16 Mar 2013 11:50:13 +0000 (UTC) From: "Thomas Hackel (JIRA)" To: commits@tapestry.apache.org Message-ID: In-Reply-To: References: Subject: [jira] [Commented] (TAP5-2080) Its not possible to use Tapestry5 behind an SSL Proxy AND internally / BaseURLSource is crap MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-JIRA-FingerPrint: 30527f35849b9dde25b450d4833f0394 [ https://issues.apache.org/jira/browse/TAP5-2080?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13604216#comment-13604216 ] Thomas Hackel commented on TAP5-2080: ------------------------------------- I provided a solution for other users which have the same usecase and the same problem. BaseURLSource is a short sighted implementation for a very limited usecase (Only SSL login for example). I am happy that this time i don't have to build my own tapestry version to get rid around some nasty bugs like in the past for Tap3/Tap4 projects. I don't care if its on your prio list on a upper position, since you don't care for votes or any other input than from yourself. So you can close this issue because other users can still find a solution to the problem using a search engine. Thanks to the helpful people on the #tapestry IRC channel! > Its not possible to use Tapestry5 behind an SSL Proxy AND internally / BaseURLSource is crap > -------------------------------------------------------------------------------------------- > > Key: TAP5-2080 > URL: https://issues.apache.org/jira/browse/TAP5-2080 > Project: Tapestry 5 > Issue Type: Bug > Affects Versions: 5.3.6 > Reporter: Thomas Hackel > > Two Scenario: > 1. User(Internet)->SSL-Proxy:443->Tomcat:8080 > 2. User(Intranet)->Tomcat:8080 > The BaseURLSourceImpl DOES NOT use the Scheme of the request, it just uses the secured flag to change the scheme. Which is not required/useful in the scenario above. > The BaseURLSource creates links like "http://foo:443/bar" instead of "https://foo/bar". > This problem was already mentioned in TAP5-167 which was "silently" closed. > Overwriting the BaseURLSource, as described in http://tapestry.apache.org/https.html is also not possible because you would need a Request object which can't be injected because it causes some "service cycle" problem. The Request object is required to physically map 443 to https, because the Tap5 Request object also lacks the Request Scheme... > {code} > public static void contributeServiceOverride( > MappedConfiguration, Object> configuration, > @Inject Request request) { > BaseURLSource source = new ProxyEnabledBaseURLSource(request); > configuration.add(BaseURLSource.class, source); > } > {code} > Causes: > {code} > java.lang.IllegalStateException: Construction of service 'ServiceOverride' has failed due to recursion: the service depends on itself in some way. Please check org.apache.tapestry5.ioc.internal.services.ServiceOverrideImpl(Map) (at ServiceOverrideImpl.java:31) via org.apache.tapestry5.ioc.services.TapestryIOCModule.bind(ServiceBinder) (at TapestryIOCModule.java:49) for references to another service that is itself dependent on service 'ServiceOverride'. > {code} -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira