2015-06-17 5 views
0

Я уже создал проект Liferay Plugin. а также установить maven. даетКак создать сервис-строитель для проекта плагина liferay с 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 service builder.

Он не показывает никакого проекта плагина.
Затем, как добавить сервис-конструктор?

+0

Пожалуйста, посмотрите здесь: https://dev.liferay.com/develop/tutorials/-/knowledge_base/6-2/maven То есть официальная документация по разработке Liferay Maven. Я думаю, вы не должны идти по новому -> Liferay Service, но используйте путь maven. Честно говоря, я не вхожу в процесс сборки Maven, но я думаю, что в официальной документации должны быть намеки. – Gevatterjan

ответ

0

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

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

  1. JSF Portlet
  2. Layout
  3. Тема
  4. Service Builder

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

  1. Крючок
  2. портлетов
  3. Vaadin портлетов

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

0

Если вы хотите добавить приложение vaadin к существующему портфолио liferay, то создайте новый проект LIFERAY-VAADIN, и вы можете использовать «Вы можете продолжать использовать ServiceBuilder, как и всегда, и извлекать данные из своих сервисов с помощью XXXXXServiceUtil (или XXXXXLocalServiceUtil) «. Вы также можете проверить here и here.

Например, здесь 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; 
    } 

} 
+0

На самом деле, я новичок в liferay, и мне нужен только сервис-строитель. что такое различие между проектом плагина liferay и LIFERAY-VAADIN? –

+0

** Проект Liferay plugin ** означает, что если вы создаете новый проект плагина liferay. Вы можете сделать это, запустив Eclipse с установленной Liferay IDE. Просто установите Liferay SDK и Server и перейдите в меню File> New> Liferay Plugin Project ** LIFERAY-VAADIN ** означает, что вы хотите создать vaadin applicaiton на вершине CMS для liferay. – AppKeto