Details
-
Bug
-
Status: Resolved
-
Major
-
Resolution: Duplicate
-
1.9.0
-
None
-
None
Description
When having an Azure container with blobs with a space in the name, a call to BlobStore.list() throws the following exception:
Exception in thread "pool-1-thread-1" java.lang.IllegalArgumentException: Illegal character in path at index 61: https://xxxxx.blob.core.windows.net/container-name/01 - Artist - Song .mp3 at java.net.URI.create(URI.java:852) at org.jclouds.http.Uris$UriBuilder.<init>(Uris.java:218) at org.jclouds.http.Uris$UriBuilder.<init>(Uris.java:99) at org.jclouds.http.Uris.uriBuilder(Uris.java:78) at org.jclouds.azureblob.xml.ContainerNameEnumerationResultsHandler.endElement(ContainerNameEnumerationResultsHandler.java:153) at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.endElement(AbstractSAXParser.java:609) at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanEndElement(XMLDocumentFragmentScannerImpl.java:1782) at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:2973) at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:606) at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:510) at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:848) at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:777) at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:141) at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1213) at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:649) at org.jclouds.http.functions.ParseSax.doParse(ParseSax.java:140) at org.jclouds.http.functions.ParseSax.parse(ParseSax.java:129) at org.jclouds.http.functions.ParseSax.apply(ParseSax.java:83) at org.jclouds.http.functions.ParseSax.apply(ParseSax.java:51) at org.jclouds.rest.internal.InvokeHttpMethod.invoke(InvokeHttpMethod.java:90) at org.jclouds.rest.internal.InvokeHttpMethod.apply(InvokeHttpMethod.java:73) at org.jclouds.rest.internal.InvokeHttpMethod.apply(InvokeHttpMethod.java:44) at org.jclouds.rest.internal.DelegatesToInvocationFunction.handle(DelegatesToInvocationFunction.java:156) at org.jclouds.rest.internal.DelegatesToInvocationFunction.invoke(DelegatesToInvocationFunction.java:123) at com.sun.proxy.$Proxy66.listBlobs(Unknown Source) at org.jclouds.azureblob.blobstore.AzureBlobStore.list(AzureBlobStore.java:147) at org.jclouds.blobstore.internal.BaseBlobStore.list(BaseBlobStore.java:81) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:483) at com.google.inject.internal.DelegatingInvocationHandler.invoke(DelegatingInvocationHandler.java:37) at com.sun.proxy.$Proxy50.list(Unknown Source) <..> at java.lang.Thread.run(Thread.java:745) Caused by: java.net.URISyntaxException: Illegal character in path at index 61: https://xxxxx.blob.core.windows.net/container-name/01 - Artist - Song .mp3 at java.net.URI$Parser.fail(URI.java:2848) at java.net.URI$Parser.checkChars(URI.java:3021) at java.net.URI$Parser.parseHierarchical(URI.java:3105) at java.net.URI$Parser.parse(URI.java:3053) at java.net.URI.<init>(URI.java:588) at java.net.URI.create(URI.java:850) ... 39 more
Attachments
Issue Links
- is duplicated by
-
JCLOUDS-217 URL encoding/decoding issues
- Resolved