jclouds-notifications mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Halvdan Hoem Grelland (JIRA)" <j...@apache.org>
Subject [jira] [Created] (JCLOUDS-1015) BlobStore.putBlob throws RuntimeException with filesystem provider on localized Windows
Date Wed, 14 Oct 2015 14:44:05 GMT
Halvdan Hoem Grelland created JCLOUDS-1015:

             Summary: BlobStore.putBlob throws RuntimeException with filesystem provider on
localized Windows
                 Key: JCLOUDS-1015
                 URL: https://issues.apache.org/jira/browse/JCLOUDS-1015
             Project: jclouds
          Issue Type: Bug
          Components: jclouds-blobstore
    Affects Versions: 1.9.1
         Environment: Microsoft Windows (tested on 7 and 10), Java 7 and 8, Jetty 9 and Tomcat
            Reporter: Halvdan Hoem Grelland
            Priority: Minor

When using the filesystem provider on a localized Windows system putBlob consistenly throws
a RuntimeException. The put operation does succeed, however, meaning a viable workaround is
to catch-and-ignore.

The cause of the Exception is a UserPrincipalNotFoundException which is thrown in org.jclouds.filesystem.util.Utils
while trying to resolve the Windows 'Everyone' user group using UserPrincipalLookupService.lookupPrincipalByName.

Turns out the 'Everyone' group/user is only actually available on Windows systems set to an
English locale, whilst other locales will likely have localized names for the group (tested
on Norwegian Windows in which the Everyone group is known as "Alle").

The only ubiquitous reference to any of the built-in groups or users on a Windows system are
the SIDs. For example, 'Everyone' is known as 'S-1-1-0'. 
Unfortunately, the API exposed in java.nio.file doesn't accept SIDs for lookup, meaning there
is, as far as I can tell, no pure Java solution to resolving the UserPrincipal without knowing
the (localized) name.

This message was sent by Atlassian JIRA

View raw message