Diese Präsentation wurde erfolgreich gemeldet.
Wir verwenden Ihre LinkedIn Profilangaben und Informationen zu Ihren Aktivitäten, um Anzeigen zu personalisieren und Ihnen relevantere Inhalte anzuzeigen. Sie können Ihre Anzeigeneinstellungen jederzeit ändern.

Liferay Web Services - Come importare utenti da un foglio Excel

1.920 Aufrufe

Veröffentlicht am

Nel corso di quest'articolo vedremo come sia semplice e immediato utilizzare i Web Services di Liferay per importare una lista di utenti da un foglio Excel.

Veröffentlicht in: Technologie
  • Ciao Alessandro e ben ritrovato.
    Hai ragione a dire che non funziona, purtroppo sulla versione 6.2 hanno cambiato l'URL e il log giustamente riporta il 404. Sul repository https://github.com/amusarra/ImportUsersLiferayViaWS qualche tempo addietro ho messo la fix per la 6.2.

    Prova che dovrebbe funzionare.

    Bye,
    Antonio.
       Antworten 
    Sind Sie sicher, dass Sie …  Ja  Nein
    Ihre Nachricht erscheint hier
  • Ciao Antonio,
    mi piacerebbe testare ciò che hai fatto... se solo riuscissi ad accedere all'end-point del web service.

    Sto usando Liferay 6.2 ed ho modificato il portal-ext.proprierties inserendo le righe

    axis.servlet.hosts.allowed=127.0.0.1,SERVER_IP
    axis.servlet.https.required=false

    (sto provando in locale)

    Ho provato entrambe le sintassi (http://:@127.0...) ma nulla.

    Nel log rintraccio
    WARN [http-apr-8080-exec-6][code_jsp:128] {code='404', msg='/api/secure/axis', uri=/api/secure/axis}

    Sono un neofita di Liferay e lo sto valutando come soluzione da proporre ad un cliente ma, credo che lo immagini, è impossibile farlo se anche l'importazione utenti dal vecchio portale diventa un problema.

    Stranamente ho accesso al web service REST.

    Grazie per l'attenzione a prescindere.

    Saluti
    Alessandro
       Antworten 
    Sind Sie sicher, dass Sie …  Ja  Nein
    Ihre Nachricht erscheint hier

Liferay Web Services - Come importare utenti da un foglio Excel

  1. 1. Antonio  Musarra's  Blog   Document Revision:1.0 The  ideal  solution  for  a  problem   Blog:  http://www.dontesta.it   LinkedIn:  http://it.linkedin.com/in/amusarra     Mail:  antonio.musarra@gmail.com     Liferay  Web  Services   Come  importare  utenti  da  un  foglio  Excel     Lavorando   in   contesti   d'integrazione,   capita   spesso   e   volentieri   di   dover   compiere   operazioni   d'integrazione   dati   sfruttando   tecnologie   che   ruotano   nell'intorno  dei  Servizi  Web.     L'articolo   prende   spunto   da   un   recente   caso   d'integrazione   che   vede   coinvolto  un  sistema  di  ERP1  (Enterprise  Resource  Planning)  e  il  nostro  Liferay.   L'integrazione   prevede   l'importazione   dei   "Clienti"   dall'ERP   a   Liferay,   e   su   quest'ultimo  possiamo  identificare  i  clienti  come  utenti.   Per   la   stesura   dell'articolo   ho   eliminato   di   proposito   il   primo   e   secondo   elemento   dell'integrazione,   rispettivamente,   l'ERP   e   l'ESB2  (Enterprise   Service   Bus).   L'ERP   la   sorgente   dati   e   l'ESB   "orchestratore"   dei   Servizi   Web.   L'azione   d'eliminazione   è   giustificata   dal   fatto   che   vorrei   focalizzare   l'attenzione   sui   Servizi  Web  di  Liferay,  per  cui  il  nostro  schema  di  riferimento  è  quello  mostrato   nella  figura  a  seguire.     Figura  1  Macro  processo  d’importazione  utenti  da  foglio  Excel.     Come  da  Figura  1,  la  fonte  dei  dati  è  un  foglio  Excel  da  cui  leggere  i  record   da  importare  su  Liferay  come  utenti.  Il  record  ha  una  struttura  del  tipo  indicata  a   seguire:   • Title   • Screen  Name   • Email   • First  Name   • Middle  Name                                                                                                                    Enterprise   Resource   Planning   (letteralmente   "pianificazione   delle   risorse   d'impresa",   spesso   abbreviato   in   ERP)   è   un   sistema   di   gestione,   chiamato   in   informatica   sistema   informativo,   che   integra   tutti   i   processi   di   business   rilevanti   di   2  Un   Enterprise   Service   Bus   gestione  magazzino,  contabilità  etc.)   che   fornisce   servizi   di   supporto   ad   architetture   SOA   un'azienda  (vendite,  acquisti,   (ESB)   è   un'infrastruttura   software   complesse.  Un  ESB  si  basa  su  sistemi  disparati,  interconnessi  con  tecnologie  eterogenee,  e  fornisce  in  maniera  consistente   servizi   di   orchestration,   sicurezza,   messaggistica,   routing   intelligente   e   trasformazioni,   agendo   come   una   dorsale   attraverso  la  quale  viaggiano  servizi  software  e  componenti  applicativi.   1 01/01/14   This  document  is  issued  with  license  Creative  Commons  Attribution-­‐NonCommercial-­‐ShareAlike     1    
  2. 2. Antonio  Musarra's  Blog   Document Revision:1.0 The  ideal  solution  for  a  problem   Blog:  http://www.dontesta.it   LinkedIn:  http://it.linkedin.com/in/amusarra     Mail:  antonio.musarra@gmail.com       • • • • • • • • • Last  Name   Gender   Birthday  (deve  essere  di  tipo  data)   Job  Title   Site  Name  (lista  dei  site  separati  da  virgola)   Role  Name  (lista  dei  ruoli  separati  da  virgola)   Language  (codifica  della  lingua:  esempio  it_IT,  en_EN)   Time  Zone  (codifica  del  Time  Zone:  esempio:  UTC)   AccountId  (identificativo  del  sistema  sorgente)     La   struttura   del   record   ha   tre   attributi   che   ritengo   rilevanti,   il   Site   Name,   Role   Name   e   AccountId.   Il   Site   Name   contiene   la   lista   dei   site (Liferay Inc., 2013)   (può  essere  anche  una  lista  vuota)  a  cui  il  nuovo  utente  deve  essere  associato,  il   Role   Name   contiene   la   lista   di   ruoli   (Liferay Inc., 2013)   (può   essere   anche   una   lista   vuota)   da   assegnare   al   nuovo   utente,   l'AccountId   contiene   l'identificativo   univoco  del  record  sul  sistema  che  ha  fornito  i  dati.  L'AccountId,  lato  Liferay  è  un   attributo  di  tipo  custom  (Liferay Inc., 2013)  sull'entità  utente.   I  diagrammi  come  sempre  aiutano  la  comprensione  e  i  flow  chart  fanno  al   caso  nostro.  I  diagrammi  a  seguire  mostrano  il  processo  d'importazione  nella  sua   globalità.     Figura  2  Processo  d'importazione  utenti  da  Excel  a  Liferay.   01/01/14   This  document  is  issued  with  license  Creative  Commons  Attribution-­‐NonCommercial-­‐ShareAlike       2    
  3. 3. Antonio  Musarra's  Blog   Document Revision:1.0 The  ideal  solution  for  a  problem   Blog:  http://www.dontesta.it   LinkedIn:  http://it.linkedin.com/in/amusarra     Mail:  antonio.musarra@gmail.com     Figura  3  Processo  di  lettura  e  verifica  dati  da  importare.   Figura  4  Processo  che  esegue  l'import  effettivo  su  Liferay  tramite  chiamate  ai  WS.         01/01/14   This  document  is  issued  with  license  Creative  Commons  Attribution-­‐NonCommercial-­‐ShareAlike     3    
  4. 4. Antonio  Musarra's  Blog   Document Revision:1.0 The  ideal  solution  for  a  problem   Blog:  http://www.dontesta.it   LinkedIn:  http://it.linkedin.com/in/amusarra     Mail:  antonio.musarra@gmail.com     Per  l'operazione  d'importazione  degli  utenti  da  file  Excel  a  Liferay,  faremo   uso   dell'API 3  (Application   Programming   Interface)   di   Liferay   e   in   particolar   modo   dei   servizi   SOAP4  (Simple   Object   Access   Protocol)   su   HTTP.   Per   chi   non   fosse   avvezzo   con   quest'area   di   Liferay   consiglio   di   leggere   nell'ordine   i   seguenti   documenti:   • Liferay  APIs  (Liferay Inc., 2013)   • Service  Security  Layers  (Liferay Inc., 2013)   • SOAP  Web  Services  (Liferay Inc., 2013)     Per  l'obiettivo  prefissato,  i  servizi  di  nostro  interesse  sono:   • Portal_UserService:  Servizio  utilizzato  per  inserire  il  nuovo  l'utente;   • Portal_CompanyService:  Servizio  utilizzato  per  ricavare  la  company  id;   • Portal_GroupService:  Servizio  utilizzato  per  verificare  l'esistenza  del  site;   • Portal_RoleService:  Servizio  utilizzato  per  verificare  l'esistenza  del  ruolo.     E'   possibile   vedere   tutti   gli   end-­‐point   dei   servizi   puntando   il   proprio   browser   all'indirizzo  http://[hostname|FQDN]:[port]/api/secure/axis     Figura  5  Liferay  API  utilizzate  e  dettaglio  delle  operazioni  chiamate.       Fino   a   questo   punto   abbiamo   avuto   modo   di   spiegare   (a   parole)   come   sia   possibile  portare  a  termine  con  semplicità  operazioni  d'integrazione  sfruttando  i   servizi  web  esposti  da  Liferay.  Spostando  l'attenzione  sul  pratico,  implementare   quanto  esposto  fino  a  questo  momento,  è  molto  semplice  utilizzando  i  seguenti   elementi  software:   • Apache  POI:  Utilizzato  per  leggere  la  lista  degli  utenti  da  importare  da  un   foglio  Excel  (The Apache Software Foundation, 2013);   • Liferay  Portal  Client  (v.  6.1.1):  Utilizzato  per  interagire  con  i  servizi  SOAP   esposti  da  Liferay.                                                                                                                    Con  Application  Programming  Interface  (in  acronimo  API,  in  italiano  Interfaccia  di  Programmazione  di  un'Applicazione),   in  informatica,  si  indica  ogni  insieme  di  procedure  disponibili  al  programmatore,  di  solito  raggruppate  a  formare  un  set  di   strumenti  specifici  per  l'espletamento  di  un  determinato  compito  all'interno  di  un  certo  programma.   4  In   informatica   SOAP   (inizialmente   acronimo   di   Simple   Object   Access   Protocol)   è   un   protocollo   leggero   per   lo   scambio   di   messaggi  tra  componenti  software,  tipicamente  nella  forma  di  componentistica  software.  La  parola  object  manifesta  che   l'uso  del  protocollo  dovrebbe  effettuarsi  secondo  il  paradigma  della  programmazione  orientata  agli  oggetti.   3 01/01/14   This  document  is  issued  with  license  Creative  Commons  Attribution-­‐NonCommercial-­‐ShareAlike     4    
  5. 5. Antonio  Musarra's  Blog   Document Revision:1.0 The  ideal  solution  for  a  problem   Blog:  http://www.dontesta.it   LinkedIn:  http://it.linkedin.com/in/amusarra     Mail:  antonio.musarra@gmail.com       Ogni   record   letto   dal   foglio   Excel   rappresenta   il   nuovo   utente   che   in   fase   d'importazione   sarà   mappato   su   un   oggetto   del   tipo   visibile   in   Figura   6.   Quest’   oggetto  farà  poi  parte  di  una  lista  di  oggetti  dello  stesso  tipo,  l'insieme  di  questi   oggetti  saranno  poi  inseriti  effettivamente  su  Liferay.       Figura  6  Modello  che  rappresenta  l'utente  letto  dal  file  Excel  e  che  sarà  poi  inserito  su  Liferay.     Fino   a   questo   momento   è   stata   trattata   una   soluzione   al   “problema   d’importazione”,   da   questo   punto   in   avanti   vedremo   invece   l’aspetto   pratico.   Il   progetto  d’esempio  che  implementa  la  nostra  soluzione  d’importazione  utenti  è   disponibile  in  forma  pubblica  sul  repository  (GitHub5)  ImportUsersLiferayViaWS   (Musarra, 2013).   Il   progetto   è   basato   su   Maven6  e   testato   sulla   versione   6.1   di   Liferay   Community   Edition   (che   potrebbe   comunque   funzionare   anche   sull’edizione  Enterprise).     I  task  eseguiti  dal  programma  d’importazione  sono  i  seguenti:   • Login  su  Liferay  con  utenza  di  tipo  amministrativo;   • Recupero  della  CompanyId  su  base  virtual  host;   • Lettura  del  file  Excel  e  per  ogni  riga  che  identifica  l’utente:   o Verifica   formale   di   alcuni   campi   (esempio:   Screen   Name   e   Email   non  possono  essere  vuoti);   o Verifica  dell’esistenza  del  ruolo  specificato  da  assegnare  all’utente;   o Verifica  dell’esistenza  del  site  o  gruppo  a  cui  assegnare  l’utente;   • Creazione  degli  utenti  non  scartati.                                                                                                                      GitHub  è  un  servizio  web  di  hosting  per  lo  sviluppo  di  progetti  software  (e  non  solo)  che  usa  il  sistema  di  controllo  di   versione  Git.  GitHub  offre  diversi  piani  per  repository  privati  a  pagamento  ma  anche  piani  gratuiti  molto  utilizzati  per  lo   sviluppo  di  progetti  open-­‐source.   6  In   informatica   Maven   è   un   software   usato   principalmente   per   la   gestione   di   progetti   Java   e   build   automation.   Per   funzionalità  è  similare  ad  Apache  Ant,  ma  basato  su  concetti  differenti.   5 01/01/14   This  document  is  issued  with  license  Creative  Commons  Attribution-­‐NonCommercial-­‐ShareAlike     5    
  6. 6. Antonio  Musarra's  Blog   Document Revision:1.0 The  ideal  solution  for  a  problem   Blog:  http://www.dontesta.it   LinkedIn:  http://it.linkedin.com/in/amusarra     Mail:  antonio.musarra@gmail.com     A   questo   punto   vediamo   quali   sono   i   passi   necessari   per   eseguire   con   successo  la  prima  importazione  di  test:   • Clonazione  del  repository  del  progetto;   • Build  del  progetto  via  Maven;   • Esecuzione  del  programma  d’importazione.     Dopo   la   compilazione   del   progetto   (vedi   Listato   1)   il   programma   d’importazione  sarà  reso  disponibile  all’interno  della  directory  target,  figlia  della   directory   ImportUsersLiferayViaWS.   Gli   “eseguibili”   java   generati   a   fronte   della   compilazione  sono  due:   • import-­‐users-­‐liferay-­‐via-­‐ws-­‐0.0.1-­‐SNAPSHOT.jar   • import-­‐users-­‐liferay-­‐via-­‐ws-­‐0.0.1-­‐SNAPSHOT-­‐jar-­‐with-­‐ dependencies.jar     Il  primo  jar  non  contiene  le  dipendenze  (axis,  sax,  etc…)  mentre  il  secondo   contiene  tutte  le  dipendenze  necessarie  a  runtime,  quest’ultimo  è  ovviamente  di   dimensioni  più  grandi  ma  sicuramente  più  comodo  da  utilizzare.     Il   primo   e   il   secondo   listato   mostrano   esattamente   l’esecuzione   dei   passi   visti  in  precedenza  (CBE7).     $  git  clone  git://github.com/amusarra/ImportUsersLiferayViaWS.git   $  cd  ImportUsersLiferayViaWS   $  mvn  package   Listato  1  Clonazione  del  repository  e  compilazione  del  progetto.   $  java  -­‐Dusername=admin  -­‐Dpassword=admin  -­‐jar  -­‐ DfileToImport=src/main/resources/users_for_import_liferay.xlsx  target/import-­‐users-­‐liferay-­‐via-­‐ws-­‐0.0.1-­‐ SNAPSHOT-­‐jar-­‐with-­‐dependencies.jar   Listato  2  Esecuzione  del  programma  d'importazione.   Quanto   mostrato   nel   Listato   3   evidenzia   l’avanzamento   (dei   vari   task)   del   programma  d’importazione.     2013-­‐11-­‐14  13:48:13,892  [main]  INFO  ImportUsersToLiferay  -­‐  Try  lookup  User  Service  by  End  Point:   http://admin:admin@localhost:8080/api/secure/axis/Portal_UserService...   2013-­‐11-­‐14  13:48:14,343  [main]  INFO  ImportUsersToLiferay  -­‐  Try  lookup  Company  Service  by  End  Point:   http://admin:admin@localhost:8080/api/secure/axis/Portal_CompanyService...   2013-­‐11-­‐14  13:48:14,581  [main]  INFO  ImportUsersToLiferay  -­‐  Company  ID  1   2013-­‐11-­‐14  13:48:14,582  [main]  INFO  ImportUsersToLiferay  -­‐  Get  UserID...   2013-­‐11-­‐14  13:48:14,619  [main]  INFO  ImportUsersToLiferay  -­‐  UserId  for  user  named  admin  is  10382   2013-­‐11-­‐14  13:48:15,517  [main]  INFO  ImportUsersToLiferay  -­‐  Add  user  object  UserToImport   [accountId=7477234f-­‐34f7-­‐76bf-­‐b   2013-­‐11-­‐14  13:48:15,533  [main]  WARN  ImportUsersToLiferay  -­‐  The  username  attribute  can  not  be  null  for  rowId   5   2013-­‐11-­‐14  13:48:15,534  [main]  INFO  ImportUsersToLiferay  -­‐  User  ready  for  import  to  liferay  is  4   2013-­‐11-­‐14  13:48:15,534  [main]  INFO  ImportUsersToLiferay  -­‐  Starting  import  users...   2013-­‐11-­‐14  13:48:15,557  [main]  INFO  ImportUsersToLiferay  -­‐  User  cmontagno  added  on  liferay.   2013-­‐11-­‐14  13:48:15,558  [main]  INFO  ImportUsersToLiferay  -­‐  Import  users  to  liferay  completed  successfully Listato  3  Log  che  mostra  l'attività  del  programma  d'importazione.     Il   programma   d’importazione   per   impostazione   predefinita   (senza   specificare   nessun   parametro)   tenta   di   connettersi   ai   Web   Services   della   propria   installazione   locale   di   Liferay.   I   parametri   (a   linea   di   comando)   supportati   sono   i   seguenti:                                                                                                                   7  Cloning,  Building  and  Execution   01/01/14   This  document  is  issued  with  license  Creative  Commons  Attribution-­‐NonCommercial-­‐ShareAlike     6    
  7. 7. Antonio  Musarra's  Blog   Document Revision:1.0 The  ideal  solution  for  a  problem   Blog:  http://www.dontesta.it   LinkedIn:  http://it.linkedin.com/in/amusarra     Mail:  antonio.musarra@gmail.com     • • • • • • -­‐DliferayAddressProtocol:  Imposta  il  protocollo  http  o  https  (valore   predefinito:  http);   -­‐DliferayAddressPort:  Imposta  la  porta  TCP    (valore  predefinito:  8080);   -­‐DliferayAddressFQDN:  Imposta  il  nome  host  o  FQDN  (valore   predefinito:  localhost);   -­‐Dusername:  Imposta  la  username  dell’utente  di  tipo  amministrativo   (valore  predefinito:  test);   -­‐Dpassword:  Imposta  la  password  (valore  predefinito:  test);   -­‐DfileToImport:  Imposta  il  path  completo  del  file  Excel  contenente  la   lista  degli  utenti.     I   primi   tre   parametri   di   configurazione   devono   essere   specificati   insieme,   in   caso   contrario   nessuno   dei   tre   sarà   tenuto   in   considerazione.   All’avvio   del   programma  d’importazione  è  possibile  cadere  in  alcuni  comuni  errori  “fatali”  che   fermano   l’esecuzione   del   programma.   Gli   errori   sono   mostrati   in   console   e   in   genere  sono:   • org.apache.axis.AxisFault(401)Unauthorized:  Accade  perché  le   credenziali  di  accesso  a  Liferay  non  sono  corrette;   • org.apache.axis.AxisFault(403)Forbidden:  Accade  perché  che  le   impostazioni  dei  Web  Services  di  Liferay  non  sono  corrette;   • org.apache.axis.AxisFault;  nested  exception  is:   java.net.ConnectException:  Connection  refused:  Accade  perché  le   impostazioni  di  connessione  non  sono  corrette,  per  questo  è  consigliabile   accertare  che  i  servizi  di  Liferay  siano  operativi  e  per  ultimo  che  le   macchine  (client  e  server)  siano  nelle  condizioni  di  poter  comunicare;   • No  such  file  or  directory:  Accade  perché    il  path  del  file  Excel  non  è   corretto  o  accessibile  dal  programma  d’importazione.     L’esecuzione   del   programma   d’importazione   vista   in   precedenza,   utilizza   un   file   Excel   di   esempio   presente   all’interno   del   progetto.   Utilizzando   quindi   il   file  Excel  di  esempio  per  un  vostro  test  d’importazione,  dovreste  ritrovare  sulla   vostra  istanza  di  Liferay,  quattro  nuovi  utenti.  Nelle  figure  a  seguire  è  mostrato   tramite   screenshot 8  il   risultato   dell’importazione   utilizzando   il   file   Excel   di   esempio.                                                                                                                      Il  termine  inglese  screenshot  (da  screen,  schermo,  e  shot,  scatto  fotografico),  in  italiano  schermata,  indica  ciò  che  viene   visualizzato  in  un  determinato  istante  sullo  schermo  di  un  monitor,  di  un  televisore  o  di  un  qualunque  dispositivo  video.   8 01/01/14   This  document  is  issued  with  license  Creative  Commons  Attribution-­‐NonCommercial-­‐ShareAlike     7    
  8. 8. Antonio  Musarra's  Blog   Document Revision:1.0 The  ideal  solution  for  a  problem   Blog:  http://www.dontesta.it   LinkedIn:  http://it.linkedin.com/in/amusarra     Mail:  antonio.musarra@gmail.com     Figura  7  Lista  dei  nuovi  utenti  importati.       Figura  8  Dettaglio  di  uno  degli  utenti  importati.   Figura  9  Site  associati  all’utente.   Figura  10  Ruoli  assegnati  all’utente.         Ogni  utente  importato  è  taggato  con  il  tag  “imported  users”  (vedi  Figura  11).   Applicare  un  tag  faciliterà  poi  la  ricerca  degli  stessi  (vedi  Figura  13).  In  Figura  12   è  mostrato  il  valore  applicato  al  campo  personalizzato  AccountId  proveniente  dal   foglio  Excel.   01/01/14   This  document  is  issued  with  license  Creative  Commons  Attribution-­‐NonCommercial-­‐ShareAlike     8    
  9. 9. Antonio  Musarra's  Blog   Document Revision:1.0 The  ideal  solution  for  a  problem   Blog:  http://www.dontesta.it   LinkedIn:  http://it.linkedin.com/in/amusarra     Mail:  antonio.musarra@gmail.com     Figura  11  Tag  assegnato  all’utente  importato.   Figura  12  Campo  personalizzato  importato.         Figura  13  Ricerca  utenti  importati  by  tag.     Abbiamo  avuto  modo  di  vedere  come  sia  prezioso  il  vantaggio  che  si  ottiene   con   la   possibilità   di   poter   interagire   con   ogni   funzionalità   ed   entità   del   portale   esposta   tramite   API   locali   e   remote.   Il   progetto   che   implementa   la   soluzione   discussa   nel   corso   della   prima   parte   dell’articolo   potrebbe   essere   la   base   di   partenza  per  il  vostro  progetto  d’importazione.       01/01/14   This  document  is  issued  with  license  Creative  Commons  Attribution-­‐NonCommercial-­‐ShareAlike     9    
  10. 10. Antonio  Musarra's  Blog   Document Revision:1.0 The  ideal  solution  for  a  problem   Blog:  http://www.dontesta.it   LinkedIn:  http://it.linkedin.com/in/amusarra     Mail:  antonio.musarra@gmail.com     Bibliography   Liferay  Inc.  (2013).  Creating  sites  and  managing  pages.  Tratto  da  Liferay  Portal   6.1  -­‐  User  Guide:  http://www.liferay.com/it/documentation/liferay-­‐ portal/6.1/user-­‐guide/-­‐/ai/managing-­‐pages-­‐in-­‐liferay-­‐portal     Liferay  Inc.  (2013).  Custom  Fields.  Tratto  da  Liferay  Portal  6.1  -­‐  User  Guide:   http://www.liferay.com/it/documentation/liferay-­‐portal/6.1/user-­‐guide/-­‐ /ai/lp-­‐6-­‐1-­‐ugen12-­‐custom-­‐fields-­‐0     Liferay  Inc.  (2013).  Liferay  APIs.  Tratto  da  Liferay  Portal  6.1  -­‐  Developers  Guide:   http://www.liferay.com/it/documentation/liferay-­‐portal/6.1/development/-­‐ /ai/liferay-­‐ap-­‐1     Liferay  Inc.  (2013).  Roles  and  permissions.  Tratto  da  Liferay  Portal  6.1  -­‐  User   Guide:  http://www.liferay.com/it/documentation/liferay-­‐portal/6.1/user-­‐ guide/-­‐/ai/lp-­‐6-­‐1-­‐ugen15-­‐roles-­‐and-­‐permissions-­‐0     Liferay  Inc.  (2013).  Service  Security  Layers.  Tratto  da  Liferay  Portal  6.1  -­‐   Developers  Guide:  http://www.liferay.com/it/documentation/liferay-­‐ portal/6.1/development/-­‐/ai/service-­‐security-­‐layers     Liferay  Inc.  (2013).  SOAP  Web  Services.  Tratto  da  Liferay  Portal  6.1  -­‐  Developers   Guide:  http://www.liferay.com/it/documentation/liferay-­‐ portal/6.1/development/-­‐/ai/soap-­‐web-­‐services     Musarra,  A.  (2013,  Nov.  14).  Import  users  from  excel  into  Liferay  Portal  by  Web   Services  SOAP.  Tratto  da  Antonio  Musarra's  GitHub  Repositories:   https://github.com/amusarra/ImportUsersLiferayViaWS/tree/master     The  Apache  Software  Foundation.  (2013).  Apache  POI  -­‐  the  Java  API  for  Microsoft   Documents.  Tratto  da  The  Apache  POI  Project.       01/01/14   This  document  is  issued  with  license  Creative  Commons  Attribution-­‐NonCommercial-­‐ShareAlike     10    

×