Как создать сервис-конструктор для проекта плагина LifeRay с Maven
У меня уже есть проект Liferay Plugin. и Maven установить также окончен. это дает
------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ---------------------------------------------------------------------
[INFO] Total time: 1:29.773s
[INFO] Finished at: Wed Jun 17 15:46:10 IST 2015
[INFO] Final Memory: 34M/151M
[INFO] -----------------------------.
Но не удалось добавить сервис-строитель.
Когда я пытаюсь добавить сервис-строитель
new->Liferay сервисный строитель.
Это не показывает какой-либо плагин проекта.
Тогда как добавить сервис-компоновщик?
2 ответа
Откровенно говоря, комбинация Liferay-Maven не полностью поддерживается Liferay IDE в затмении. Изначально Liferay IDE создавалась только для поддержки ANT, но с тех пор, как была введена поддержка maven, многие вещи отсутствуют.
Эта проблема, которую вы подняли, одинакова и для следующих вариантов.
- Портлет JSF
- раскладка
- тема
- Сервисный строитель
Это не проблема для следующих опций
- крюк
- портлетов
- Ваадин Портлет
Таким образом, лучший способ - создать новый построитель сервисов с помощью архетипов maven, поддерживаемых для конкретной версии liferay. Например, com.liferay.maven.archetypes:liferay-servicebuilder-archetype:6.2.1 для liferay 6.2.1 версия GA2.
Если вы хотите добавить приложение vaadin в существующий портлет liferay, то создайте новый проект LIFERAY-VAADIN и там вы можете использовать "Вы можете продолжать использовать ServiceBuilder, как всегда, и извлекать данные из своих служб, используя XXXXXServiceUtil (или XXXXXLocalServiceUtil)". Вы также можете проверить здесь и здесь.
Например, вот один класс DatabaseUtil от vaadin.
import java.awt.List;
import java.util.ArrayList;
import com.vaadin.data.util.HierarchicalContainer;
public class DatabaseUtil {
public static HierarchicalContainer fillTree_db() {
HierarchicalContainer container = new HierarchicalContainer();
ArrayList < ArrayList < String >> treeNodes = new ArrayList < ArrayList < String >> ();
try {
List < TREEVIEW > nodes = TREEVIEWLocalServiceUtil.getAllNodes();
for (TREEVIEW node: nodes) {
String nodename = node.getNodename();
ArrayList < String > row = new ArrayList < String > ();
row.add(String.valueOf(node.getNodeid()));
row.add(node.getNodename());
row.add(String.valueOf(node.getRootid()));
container.addItem(nodename);
treeNodes.add(row);
}
for (int i = 0; i < treeNodes.size(); i++) {
int root = 0;
root = Integer.parseInt(treeNodes.get(i).get(2));
if (root != 0)
container.setParent(treeNodes.get(i).get(1),
treeNodes.get(root - 1).get(1));
}
} catch (Exception e) {
System.err.println("Exception: " + e.getMessage());
} finally {}
return container;
}
}