QPID-8426: [Broker-J] Fix loading of resources with a path containing spaces
diff --git a/broker-core/src/test/java/org/apache/qpid/server/test/KerberosUtilities.java b/broker-core/src/test/java/org/apache/qpid/server/test/KerberosUtilities.java
index e04b1b9..8bfd077 100644
--- a/broker-core/src/test/java/org/apache/qpid/server/test/KerberosUtilities.java
+++ b/broker-core/src/test/java/org/apache/qpid/server/test/KerberosUtilities.java
@@ -24,6 +24,7 @@
 
 import java.io.File;
 import java.io.IOException;
+import java.io.InputStream;
 import java.net.URL;
 import java.nio.file.Files;
 import java.nio.file.Path;
@@ -45,6 +46,7 @@
 import javax.security.auth.login.LoginContext;
 import javax.security.auth.login.LoginException;
 
+import com.google.common.io.ByteStreams;
 import org.ietf.jgss.GSSContext;
 import org.ietf.jgss.GSSCredential;
 import org.ietf.jgss.GSSException;
@@ -54,8 +56,6 @@
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
-import org.apache.qpid.server.util.FileUtils;
-
 public class KerberosUtilities
 {
     private static final Logger LOGGER = LoggerFactory.getLogger(KerberosUtilities.class);
@@ -227,7 +227,15 @@
         {
             throw new IllegalArgumentException(String.format("Unknown resource '%s'", resourceName));
         }
-        final String config = new String(FileUtils.readFileAsBytes(resource.getFile()), UTF_8);
+        final String config;
+        try(InputStream is = resource.openStream())
+        {
+            config = new String(ByteStreams.toByteArray(is), UTF_8);
+        }
+        catch (IOException e)
+        {
+            throw new IOException(String.format("Failed to load resource '%s'", resource.toExternalForm()), e);
+        }
         String newConfig = config.replace("AMQP/localhost", "AMQP/" + hostName);
         if (IBM_LOGIN_MODULE_CLASS.equals(KERBEROS_LOGIN_MODULE_CLASS))
         {