public String findSalt(final String username) {
        String salt = null;
        final String query = Conca.t(
                "select salt ",
                "from user ",
                "where lower(username) = ?"
        );
        
        final List<Object> values = new ArrayList<Object>();
        final List<Class<?>> types = new ArrayList<Class<?>>();

        values.add(StringUtils.lowerCase(username));
        types.add(String.class);
        
        try {
            ResultSet rs = execute(query, values, types);
            if (rs.next()) {
                salt = rs.getString("salt");
            }
        } catch (Exception e) {
            log4jLogger.error(Conca.t("error occurred while attempting to find salt for username [", username, "]"), e);
        }
        
        return salt;
    }