Как создать построитель сервисов для проекта плагина 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.

Он не показывает какой-либо проект плагина.
Тогда как добавить построитель сервисов?


person Madhavi Talla    schedule 17.06.2015    source источник
comment
Пожалуйста, посмотрите здесь: dev.liferay.com/develop/ tutorials/-/knowledge_base/6-2/maven Это официальная документация по разработке Liferay Maven. Я думаю, что вам не следует идти по новому пути Liferay Service, а следует использовать путь maven. Честно говоря, я не очень разбираюсь в процессе сборки Maven, но я думаю, что в официальной документации должны быть подсказки.   -  person Gevatterjan    schedule 17.06.2015


Ответы (2)


Откровенно говоря, комбинация Liferay-Maven не так полностью поддерживается Liferay IDE в eclipse. Изначально Liferay IDE была создана только для поддержки ANT, но с тех пор, как была введена поддержка maven, многие вещи отсутствуют.

Эта проблема, которую вы подняли, одинакова и для следующих вариантов.

  1. Портлет JSF
  2. Макет
  3. Тема
  4. Конструктор сервисов

Это не проблема для следующих вариантов

  1. Крюк
  2. Портлет
  3. Портлет Ваадин

Таким образом, лучший способ — создать новый построитель сервисов с помощью архетипов maven, поддерживаемых для конкретной версии Liferay. Например, com.liferay.maven.archetypes:liferay-servicebuilder-archetype:6.2.1 для версии liferay 6.2.1 GA2.

person Neeraj Gautam    schedule 17.06.2015

Если вы хотите добавить приложение 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;
  }

}
person UnP    schedule 17.06.2015
comment
На самом деле, я новичок в liferay, и мне нужен только сервис-билдер. в чем разница между проектом плагина liferay и LIFERAY-VAADIN? - person Madhavi Talla; 18.06.2015
comment
Проект плагина Liferay означает, что вы создаете новый проект плагина liferay. Это можно сделать, запустив Eclipse с установленной Liferay IDE. Просто настройте Liferay SDK и сервер и перейдите в меню «Файл»> «Создать»> «Проект плагина Liferay». LIFERAY-VAADIN означает, что вы хотите создать приложение vaadin поверх CMS liferay. - person UnP; 18.06.2015