Нет соединения с PostgreSQL при работе через TOMCAT

Столкнулся с проблемой выдачи информации из БД постгрес при запуске приложения через ТОМКАТ.

Запуск через консоль SERVICE_BOOK.getAllBooksDto( ) (должен давать всю инфо из БД) формирует инфу и выдает результат поиска всего что должен.(т.е все работает).

При переводе этого процесса на том кат, проверочный объект cтраницавыводит, а далее вызов SERVICE_BOOK.getAllBooksDto( ) кидает ошибку

java.lang.IndexOutOfBoundsException: Index 0 out of bounds for length 0.

Как я понял не находит проперти и путь к БД, поэтому в созданный список ничего не передается.
Подскажите как установить коннект с БД.

основной код:

@WebServlet("/book")

public class App  extends HttpServlet {

private static final ServiceBook SERVICE_BOOK = new ServiceBookImpl();

protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws IOException, ServletException {

        resp.setStatus(200);
        resp.setContentType("text/html");
        PrintWriter out = resp.getWriter();
        //проверка вывода
        BookDto bookDto = new BookDto();
        bookDto.setAuthor("kon");
        bookDto.setTitle("kon");
        out.write("<div>"+bookDto+"</div>");
        //вызов нужного сервиса
        try {
            out.write("<h1>Book</h1>");
            List<BookDto> bookDtos = new ArrayList<>();
            bookDtos.addAll(SERVICE_BOOK.getAllBooksDto());
            if (!bookDtos.isEmpty()) {
                for (BookDto bDto : bookDtos) {
                    out.write("<div>"+bDto+"</div>");
                }
            }
        } catch (Exception e) {
            out.write("<div>"+e+"</div>");
        }
    }

коннект:

public class DbConfiguratorBooks {

    private static Connection connection;
    private static final Logger loger = LogManager.getLogger("connect db");

    public static void initDbConnectionBooks() throws SQLException, ClassNotFoundException {  // метод подключения к базе данных
        String host = getUrl().get(0);
        String user = getUrl().get(1);
        String pass = getUrl().get(2);
        String url = getUrl().get(3);
        String local = getUrl().get(4);
        loger.info("data on connect db --> " + local);
        Class.forName("org.postgresql.Driver");
        connection = DriverManager.getConnection(local);
    }
    public static Connection getConnectionBooks() throws SQLException {
        if (connection == null) {
            try {
            initDbConnectionBooks();
            } catch (SQLException | ClassNotFoundException e) {
                throw new RuntimeException(e);
            }
        }
        return connection;
    }
    public static List<String> getUrl() {
        Properties properties = new Properties();
        List<String> inter = new ArrayList<String>();
        String local = "";
        String host = "";
        String user = "";
        String pass = "";
        String url = "";
        try {
            FileInputStream fis = new FileInputStream("src/main/resources/config.properties");
            properties.load(fis);
            host = properties.getProperty("db.host.remove.books.url");
            inter.add(host);
            user = properties.getProperty("db.host.remove.books.user");
            inter.add(user);
            pass = properties.getProperty("db.host.remove.books.password");
            inter.add(pass);
            url = properties.getProperty("db.host.remove.books.fullurl");
            inter.add(url);
            local = properties.getProperty("db.host.local.books");
            inter.add(local);
        } catch (IOException e) {
            loger.error("not connect with BD", e);
        }
        return inter;
    }
}

Ответы (0 шт):