Hi Melan, A good find. Agreed that Location header should be properly supported. Sorry if this is a dumb question, but could you please explain a bit more what is the issue that occurs in this specific scenario you tested?
On Wed, Jun 18, 2014 at 1:31 AM, Melan Nimesh <me...@apache.org> wrote: > Hi Devs, > > I noticed the $subject while subscribing to a PHP cartridge with a joomla > repository. LB fails to rewrite location header with relative URLs with > following error[1] and redirection not happens correctly. I think it's a > valid requirement to support to location header with relative URLs, since > it is valid according to the current revision of HTTP/1.1 and most browsers > support it (even though rfc2616[2] says location header's value is supposed > to be an absolute URI ), WDYT? > > > Thanks, > Melan > > [1] > > TID: [0] [LB] [2014-06-18 00:35:15,997] INFO > {org.apache.synapse.core.axis2.TimeoutHandler} - This engine will expire > all callbacks after : 86400 seconds, irrespective of the timeout action, > after the specified or optional timeout > TID: [0] [LB] [2014-06-18 00:35:23,474] ERROR > {org.apache.stratos.load.balancer.mediators.LocationReWriter} - Could > re-write location header > java.net.MalformedURLException: no protocol: installation/index.php > at java.net.URL.<init>(URL.java:585) > at java.net.URL.<init>(URL.java:482) > at java.net.URL.<init>(URL.java:431) > at > org.apache.stratos.load.balancer.mediators.LocationReWriter.mediate(LocationReWriter.java:49) > at > org.apache.synapse.mediators.ext.ClassMediator.mediate(ClassMediator.java:78) > at > org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator.java:77) > at > org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator.java:47) > at > org.apache.synapse.mediators.filters.OutMediator.mediate(OutMediator.java:61) > at > org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator.java:77) > at > org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator.java:47) > at > org.apache.synapse.mediators.base.SequenceMediator.mediate(SequenceMediator.java:131) > at > org.apache.synapse.core.axis2.Axis2SynapseEnvironment.injectMessage(Axis2SynapseEnvironment.java:228) > at > org.apache.synapse.core.axis2.SynapseCallbackReceiver.handleMessage(SynapseCallbackReceiver.java:486) > at > org.apache.synapse.core.axis2.SynapseCallbackReceiver.receive(SynapseCallbackReceiver.java:170) > at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:180) > at > org.apache.synapse.transport.passthru.ClientWorker.run(ClientWorker.java:225) > at > org.apache.axis2.transport.base.threads.NativeWorkerPool$1.run(NativeWorkerPool.java:172) > at > java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) > at > java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) > at java.lang.Thread.run(Thread.java:744) > > [2] http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.30 > > > -- > Melan Nimesh Jayasinghage >