Переменная окружения DHIS2_HOME: null (TrayApp.java [main])

Я получаю ошибку Environment variable DHIS2_HOME: null (TrayApp.java [main]) при попытке запустить dhis2-live.exe с Postgres соединение на моем компьютере с Windows Vista.

Тем не менее, то же приложение работает нормально, если используется база данных H2, но по требованию мне нужно работать с Postgres,

Вот файл журнала.

* INFO  23:48:27,232 Environment variable DHIS2_HOME: null (TrayApp.java [main])
* INFO  23:48:27,700 Initialising DHIS 2 Live... (TrayApp.java [main])
* INFO  23:48:28,574 Loading DHIS 2 on port: 8082 (WebAppServer.java [main])
* INFO  23:48:28,745 Setting DHIS 2 web app context to: /D:/dhis-live/webapps/dhis (WebAppServer.java [main])
* INFO  23:48:28,745 Lifecycle: server starting (TrayApp.java [Thread-2])
* INFO  23:48:55,001 System property dhis2.home points to /D:/dhis-live/conf (DefaultLocationManager.java [Thread-2])
* INFO  23:49:00,290 Hibernate configuration loaded, using dialect: org.hibernate.dialect.PostgreSQLDialect (DefaultHibernateConfigurationProvider.java [Thread-2])
* INFO  23:50:32,286 Found the following message senders: [org.hisp.dhis.message.EmailMessageSender@c0023f, org.hisp.dhis.sms.SmsMessageSender@b027dd] (DefaultMessageService.java [Thread-2])
* INFO  23:51:25,998 Lifecycle: server started (TrayApp.java [Thread-2])

hibernate.properties

#hibernate.dialect = org.hibernate.dialect.H2Dialect
#hibernate.connection.driver_class = org.h2.Driver
#hibernate.connection.url = jdbc:h2:./database/dhis2;AUTO_SERVER=TRUE;DB_CLOSE_ON_EXIT=FALSE
#hibernate.connection.username = sa
#hibernate.connection.password =

hibernate.dialect = org.hibernate.dialect.PostgreSQLDialect
hibernate.connection.driver_class = org.postgresql.Driver
hibernate.connection.url = jdbc:postgresql:dhis2
hibernate.connection.username = dhis
hibernate.connection.password = dhis

hibernate.hbm2ddl.auto = update

2 ответа

Решение

Ответ @Ranjitsinh может быть полезен для некоторых будущих читателей, но для меня проблема была решена путем создания новой БД и использования пользователя по умолчанию postgres с privileges установите, как показано ниже на снимке экрана.

Ранее я убрал публику User/Group привилегия от БД.

На самом деле, файл TrayApp.java будет использоваться для чтения исходной конфигурации с использованием местоположения, которое мы указали в переменной DHIS2_HOME.

Пожалуйста, выполните следующие действия:

  1. Создайте одну системную переменную DHIS2_HOME со значением вашего местоположения, например D:\dhis2
  2. Создайте файл hibernate.properties в этом месте со следующей конфигурацией

    hibernate.dialect = org.hibernate.dialect.PostgreSQLDialect
    hibernate.connection.driver_class = org.postgresql.Driver
    hibernate.connection.url = jdbc:postgresql:dhis2
    hibernate.connection.username = dhis
    hibernate.connection.password = dhis
    hibernate.hbm2ddl.auto = update

Теперь нажмите на dhis2-live.exe, чтобы запустить приложение dhis2 с помощью posgresql.

Надеюсь, это поможет вам.!!

Другие вопросы по тегам