From bd7389b6ff29fea4f59508fbcc1e9277223b2365 Mon Sep 17 00:00:00 2001 From: Luke Taylor Date: Wed, 9 Feb 2011 23:25:16 +0000 Subject: [PATCH] SEC-1652: Only use URI for ldif path if file isn't found. --- .../security/ldap/server/ApacheDSContainer.java | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/ldap/src/main/java/org/springframework/security/ldap/server/ApacheDSContainer.java b/ldap/src/main/java/org/springframework/security/ldap/server/ApacheDSContainer.java index 49501de246..c9a1209581 100644 --- a/ldap/src/main/java/org/springframework/security/ldap/server/ApacheDSContainer.java +++ b/ldap/src/main/java/org/springframework/security/ldap/server/ApacheDSContainer.java @@ -1,6 +1,7 @@ package org.springframework.security.ldap.server; import java.io.File; +import java.io.IOException; import java.net.URI; import java.util.ArrayList; import java.util.List; @@ -232,7 +233,13 @@ public class ApacheDSContainer implements InitializingBean, DisposableBean, Life //DirContext dirContext = contextSource.getReadWriteContext(); if(ldifs != null && ldifs.length > 0) { - String ldifFile = ldifs[0].getURI().toString(); + String ldifFile; + + try { + ldifFile = ldifs[0].getFile().getAbsolutePath(); + } catch (IOException e) { + ldifFile = ldifs[0].getURI().toString(); + } logger.info("Loading LDIF file: " + ldifFile); LdifFileLoader loader = new LdifFileLoader(service.getAdminSession(), ldifFile); loader.execute();