[
Date Prev][
Date Next][
Thread Prev][
Thread Next][
Date Index][
Thread Index]
[
List Home]
[p2-dev] Invalid redirect location
|
I found a problem in the Apache HttpClient that affects P2 in a bad way.
I'm not sure how to deal with it though. Perhaps the ECF team can give
some advice.
The problem occurs when trying to read the update site found at
http://eclipse-cs.sourceforge.net/update/site.xml. This is an old style
update site. Eventually, the UpdateSite.parseFeature attempts to
download a feature jar. The server returns a redirect URL and that URL,
when normalized, contains a space. The
HttpMethodDirector.processRedirectResponse then makes an attempt to
create an URI directly from that response without converting the space
to a %20. The result is the exception below.
Is there any way to get around this problem?
Regards,
Thomas Hallgren
org.apache.commons.httpclient.InvalidRedirectLocationException: Invalid
redirect location:
http://sunet.dl.sourceforge.net/project/eclipse-cs/Update
Site/v.5.0.0final/net.sf.eclipsecs.migration_5.0.0.200906281855-final-feature.jar
at
org.apache.commons.httpclient.HttpMethodDirector.processRedirectResponse(HttpMethodDirector.java:619)
at
org.apache.commons.httpclient.HttpMethodDirector.executeMethod(HttpMethodDirector.java:179)
at
org.apache.commons.httpclient.HttpClient.executeMethod(HttpClient.java:397)
at
org.apache.commons.httpclient.HttpClient.executeMethod(HttpClient.java:346)
at
org.eclipse.ecf.provider.filetransfer.httpclient.HttpClientRetrieveFileTransfer.performConnect(HttpClientRetrieveFileTransfer.java:992)
at
org.eclipse.ecf.provider.filetransfer.httpclient.HttpClientRetrieveFileTransfer.openStreams(HttpClientRetrieveFileTransfer.java:584)
at
org.eclipse.ecf.provider.filetransfer.retrieve.AbstractRetrieveFileTransfer.sendRetrieveRequest(AbstractRetrieveFileTransfer.java:808)
at
org.eclipse.ecf.provider.filetransfer.retrieve.AbstractRetrieveFileTransfer.sendRetrieveRequest(AbstractRetrieveFileTransfer.java:506)
at
org.eclipse.ecf.provider.filetransfer.retrieve.MultiProtocolRetrieveAdapter.sendRetrieveRequest(MultiProtocolRetrieveAdapter.java:98)
at
org.eclipse.equinox.internal.p2.repository.FileReader.sendRetrieveRequest(FileReader.java:317)
at
org.eclipse.equinox.internal.p2.repository.FileReader.readInto(FileReader.java:263)
at
org.eclipse.equinox.internal.p2.repository.RepositoryTransport.download(RepositoryTransport.java:70)
at
org.eclipse.equinox.internal.p2.repository.RepositoryTransport.download(RepositoryTransport.java:121)
at
org.eclipse.equinox.internal.p2.updatesite.UpdateSite.parseFeature(UpdateSite.java:249)
at
org.eclipse.equinox.internal.p2.updatesite.UpdateSite.loadFeaturesFromSite(UpdateSite.java:535)
at
org.eclipse.equinox.internal.p2.updatesite.UpdateSite.loadFeatures(UpdateSite.java:441)
at
org.eclipse.equinox.internal.p2.updatesite.RemoteFeaturesAction.perform(RemoteFeaturesAction.java:40)
at
org.eclipse.equinox.internal.p2.updatesite.RemoteUpdateSiteAction.perform(RemoteUpdateSiteAction.java:48)
at
org.eclipse.equinox.p2.publisher.Publisher.publish(Publisher.java:172)
at
org.eclipse.equinox.internal.p2.updatesite.metadata.UpdateSiteMetadataRepositoryFactory.generateMetadata(UpdateSiteMetadataRepositoryFactory.java:125)
at
org.eclipse.equinox.internal.p2.updatesite.metadata.UpdateSiteMetadataRepositoryFactory.initializeRepository(UpdateSiteMetadataRepositoryFactory.java:110)
at
org.eclipse.equinox.internal.p2.updatesite.metadata.UpdateSiteMetadataRepositoryFactory.load(UpdateSiteMetadataRepositoryFactory.java:74)
at
org.eclipse.equinox.internal.p2.metadata.repository.MetadataRepositoryManager.factoryLoad(MetadataRepositoryManager.java:54)
at
org.eclipse.equinox.internal.p2.repository.helpers.AbstractRepositoryManager.loadRepository(AbstractRepositoryManager.java:669)
at
org.eclipse.equinox.internal.p2.repository.helpers.AbstractRepositoryManager.loadRepository(AbstractRepositoryManager.java:617)
at
org.eclipse.equinox.internal.p2.metadata.repository.MetadataRepositoryManager.loadRepository(MetadataRepositoryManager.java:92)
at
org.eclipse.equinox.internal.p2.metadata.repository.MetadataRepositoryManager.loadRepository(MetadataRepositoryManager.java:88)