[ 
https://issues.apache.org/jira/browse/JCLOUDS-976?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Andrew Gaul resolved JCLOUDS-976.
---------------------------------
    Resolution: Duplicate
      Assignee: Timur Alperovich

> Azureblob: listing objects with a space in the name causes URISyntaxException
> -----------------------------------------------------------------------------
>
>                 Key: JCLOUDS-976
>                 URL: https://issues.apache.org/jira/browse/JCLOUDS-976
>             Project: jclouds
>          Issue Type: Bug
>          Components: jclouds-blobstore
>    Affects Versions: 1.9.0
>            Reporter: Roman Novokhatsky
>            Assignee: Timur Alperovich
>
> When having an Azure container with blobs with a space in the name, a call to 
> {{BlobStore.list()}} throws the following exception:
> {noformat}
> 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
> {noformat}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to