Изменить базу данных в Liferay с потерей каких-либо данных

На сегодняшний день я разрабатываю улучшения портала liferay с базой данных hsql по умолчанию. Я реализовал множество функций и создал несколько сайтов и шаблонов сайтов с разными ролями и пользователями.

1) Теперь я хочу изменить базу данных с базы данных hsql на PostgreSQL. Как теперь изменить базу данных с потерей каких-либо данных (сайтов, пользователей, ролей и шаблонов сайтов)?

2) У меня есть веб-приложение, в котором развернут другой экземпляр Tomcat. Теперь я хочу выполнить транзакцию базы данных liferay из сервлета. транзакции означают необходимость получения сведений о пользователе на основе emailId или ScreenName?

Может ли кто-нибудь подтвердить, как я могу выполнить вышеуказанные задачи, и я буду очень благодарен, если кто-нибудь предложит несколько полезных tutorials.procedure, чтобы сделать то же самое.


person Vinod    schedule 24.04.2015    source источник


Ответы (2)


1.) Вы можете перенести свои данные через панель управления. Перейдите в раздел «Администрирование сервера», там есть вкладка «Миграция данных». Вы предоставляете учетные данные новой базы данных и нажимаете «Отправить». Это все. 2.) Я не понимаю ваш 2-й вопрос, если честно.

person Gevatterjan    schedule 24.04.2015
comment
Могу ли я написать sql-запросы из моего сервлета, чтобы получить значения из таблицы USER_ и какой-либо другой таблицы? - person Vinod; 24.04.2015
comment
Да, но я бы не призывал вас к этому. Лучшим подходом было бы использование веб-сервисов, которые предоставляет Liferay. - person Gevatterjan; 24.04.2015
comment
Вы имеете в виду, что веб-сервисы означают строителей сервисов? - person Vinod; 27.04.2015

Чтобы изменить вашу базу данных с hsql на PostgreSQL, лучше всего изменить файл portal-ext.properties вашего портала с помощью:

#
# PostgreSQL Config
#
jdbc.default.driverClassName=org.postgresql.Driver
jdbc.default.url=jdbc:postgresql://localhost:5432/***databasename***
jdbc.default.username=
jdbc.default.password=

или в вашем /tomcat/conf/context.xml вы можете определить что-то вроде этого:

 <Resource auth="Container" driverClassName="org.postgresql.Driver" maxActive="20" name="jdbc/LiferayPool" password="" type="javax.sql.DataSource" url="jdbc:postgresql://localhost:5432/**database name**" username=""/>

Что касается вашего второго вопроса, я думаю, что вы можете использовать веб-сервисы Liferay. Вы можете увидеть их в относительном URL вашего портала:

/апи/jsonws

person atrujillofalcon    schedule 28.04.2015