Erinevus lehekülje "Liferay kasutamine GlassFish keskkonnas Debian Lennyga" redaktsioonide vahel

Allikas: Kuutõrvaja
(Liferay portaalitarkvara kasutamine)
(Ettevalmistused)
 
(ei näidata sama kasutaja 82 vahepealset redaktsiooni)
1. rida: 1. rida:
 
===Sissejuhatus===
 
===Sissejuhatus===
  
Glassfish on Suni poolt toetatud javal põhinev rakendusplatvorm (ingl. k. application platform), millest levitatakse erinevaid versioone, muu hulgas
+
Liferay http://www.liferay.com/ on peamiselt portaalide valmistamisele orienteeritud Java rakendus, mis sobib kasutamiseks erinevatel rakendusserveritel, nt Tomcat, Resin, Jetty jt ning vastu erinevaid andmebaase, nt MySQL, PostgreSQL ja Oracle.
  
* GlassFish Application Server - Sun poolt toetatud vaba tarkvara projekt, https://glassfish.dev.java.net/
+
Käesolevas palas käsitletakse Liferay kasutamist juhtumil kui Java rakendusserveriks on GlassFish v 3 Prelude ning andmeid hoitakse PostgreSQL 8.3.7 andmebaasis. Sellise süsteemi paigalduseks on mitu võimalust, käesolevas tekstis kirjeldatakse süsteemi moodustamist iseseisvatest komponentidest.
* Sun GlassFish Enterprise Server - vaba tarkvara projektil põhinev Suni toode, http://www.sun.com/software/products/glassfish_portfolio/
 
* Glassfish+Liferay bundled - seda varianti kasutatakse käesoleval juhul, täpsemini Liferay + GlassFish v3 Prelude, http://www.liferay.com/web/guest/downloads/portal
 
 
 
Lähemalt saab erinevate versioonide ja nende kasutustingimustega tutvuda Sun kodulehel.
 
 
 
Liferay http://www.liferay.com/ on peamiselt portaalide valmistamisele orienteeritud java rakendus, mis sobib kasutamiseks erinevatel rakendusserveritel, nt Tomcat, Resin, Jetty jt ning vastu erinevaid andmebaase, nt MySQL ja Oracle.
 
 
 
Käesolevas palas käsitletakse Liferay kasutamist juhtumil kui java rakendusserveriks on GlassFish v 3 Prelude ning andmeid hoitakse PostgreSQL andmebaasis.
 
  
 
===Ettevalmistused===
 
===Ettevalmistused===
28. rida: 20. rida:
  
 
* operatsioonisüsteem - Debian GNU/Linux Lenny, 64 bit
 
* operatsioonisüsteem - Debian GNU/Linux Lenny, 64 bit
 +
* Java - JVM SE SDK v. 6
 +
* Oracle GlassFish Server (OGS)
 
* andmebaas - PostgreSQL 8.3.7
 
* andmebaas - PostgreSQL 8.3.7
* Java - JVM SE SDK v. 6
+
* Liferay - 5.2.3 .war faili kujul
* GlassFish, Liferay - kasutatud on Liferay veebikohas jagatavat komplekti (ingl. k. bundle), v. liferay-portal-glassfish-5.2.3.zip
 
 
 
====JVM====
 
 
 
Kasutatakse veebikohast http://java.sun.com/ kopeeritud Sun Java SE SDK v. 6 JVMi ja mis on paigaldatud nii nagu on kirjeldatud palas [[:Operatsioonisüsteemi Debian GNU/Linux kasutamine#Sun Java kasutamine]] ja asub kataloogis
 
 
 
  # ls -ld /usr/local/java6 -> jdk1.6.0_13
 
 
 
====PostgreSQL====
 
 
 
Liferay rakenduse jaoks vajaliku andmebaasi sisu saab moodustada Liferay veebikohas jagatava
 
  
  Download -> Additional Files -> Application Server Plugins -> Database Scripts
+
Järgnev eeldab, et operatsioonisüsteem on paigaldatud ning JVM ja GlassFish paigaldatud nii nagu on kirjeldatud tekstis [[:Oracle GlassFish Serveri kasutamine Debian Lennyga]].
  
nt liferay-portal-sql-5.2.3.zip, abil. Konkreetselt sobib nt sellest .zip arhiivist kasutada skripti
+
====PostgreSQL andmebaasi Liferay skeemi ettevalmistamine====
 
 
  liferay-portal-sql-5.2.3/create/create-postgresql.sql
 
  
 
Kui Liferay rakendusele peab andmebaasis vastama üks olemasoleva baasi skeem, nt portaal.liferay, siis tuleb sooritada selline järgnevus
 
Kui Liferay rakendusele peab andmebaasis vastama üks olemasoleva baasi skeem, nt portaal.liferay, siis tuleb sooritada selline järgnevus
68. rida: 49. rida:
 
     AUTHORIZATION liferay;
 
     AUTHORIZATION liferay;
  
* käivitada skript kasutajana liferay
+
Liferay andmed imporditakse andmebaasi automaatselt installeri töö käigus.
 +
 
 +
====GlassFish rakendusserverisse PostgreSQL baasile vastava pooli moodustamine====
 +
 
 +
Esmalt tuleb rakendusserveris kirjeldada pool, avades GlassFish haldusliideses
 +
 
 +
  Resources -> JDBC -> Connection Pools -> New
 +
 
 +
ning näidata ära
 +
 
 +
  Name: LiferayPool
 +
  Resource Type: javax.sql.ConnectionPoolDataSource
 +
  Database Vendor: PostgreSQL
 +
 
 +
valida Next ning kirjeldada ülejäänud pooli omadused sh baasi ligipääs ning ühenduse draiveri versioon
 +
 
 +
  DatabaseName=portaal
 +
  Password=parool
 +
  PortNumber=5432
 +
  ServerName=localhost
 +
  User=liferay
 +
  JDBC30DataSource=true
 +
 
 +
Ning seejärel seostada pool JNDI nimega valides
 +
 
 +
Resources -> JDBC -> JDBC Resources
 +
 
 +
ning näidata
 +
 
 +
  JNDI Name: jdbc/LiferayPool
 +
  Pool Name: LiferayPool
 +
  Status: Enabled
 +
 
 +
Pooli töökorrasoleku kontrollimiseks on GlassFishi haldusliideses nupp Ping.
 +
 
 +
===Liferay paigaldamine olemasolevasse Glassfish v3 Prelude rakendusserverisse===
 +
 
 +
Vajaliku tarkvara saab kopeerida aadressilt http://www.liferay.com/
 +
 
 +
* liferay .war arhiiv - liferay-portal-5.2.3.war
 +
 
 +
  Download -> Liferay Portal -> Additional Files -> WARs -> Liferay Portal 5.2.3 WAR
 +
 
 +
* portal dependencies .zip arhiiv- liferay-portal-dependencies-5.2.3.zip
  
   $ psql -h localhost -U liferay portaal < create-postgresql.sql
+
   Download -> Liferay Portal -> Additional Files -> Additional Files
  
===GlassFish+Liferay tarkvara paigaldamine===
+
* dokumentatsioon - liferay-administration-guide.pdf
  
Kopeerida sobiv komplekt Glassfish+Liferay tarkvara Liferay http://www.liferay.com/ veebikohast
+
  Documentation -> Liferay 5.2 -> Portal Administrator's Guide
  
  Download -> Liferay Portal -> Latest Liferay Portal Bundles -> Bundled with Glassfish 3
+
Paigaldamist kirjeldab Portal Administrator's Guide'is lk 31, 'GlassFish 3.x' (mis on lünklik), tegevused koosnevad, alustades mitte-töötavast GlassFishi java protsessist.
  
nt failinimi liferay-portal-glassfish-5.2.3.zip
+
* GlassFish domeeni seadistamine
  
Kasutamiseks on sobiv moodustada süsteemi vastav kasutaja:grupp, nt glassfish:glassfish
+
Nt domain1 puhul seadistusfailis domains/domain1/config/domain.xml peab Liferay seisukohalt olema seadistatud
  
   # groupadd glassfish
+
   <jvm-options>-Xmx1024m</jvm-options>
   # useradd -g glassfish -m -d /home/glassfish glassfish
+
   <jvm-options>-XX:MaxPermSize=256m</jvm-options>
  
moodustada kataloog rakendusserveri jaoks, nt /usr/local/glassfish
+
* Kustutada domeeni docroot kataloogist index.html fail
  
   # mkdir /usr/local/glassfish
+
   $ rm domains/domain1/docroot/index.html
  # chown glassfish:glassfish /usr/local/glassfish
 
  
ning selle kasutaja all tarkvara lahti pakkida
+
* Pakkida Additional failid GlassFishi kataloogi lib
  
 
   $ cd /tmp
 
   $ cd /tmp
   $ unzip liferay-portal-glassfish-5.2.3.zip
+
   $ unzip liferay-portal-dependencies-5.2.3.zip
   $ mv liferay-portal-5.2.3/* /usr/local/glassfish
+
   $ mv liferay-portal-dependencies-5.2.3/* /usr/local/glassfish/glassfish/lib
 +
 
 +
* Lisada kataloogi lib PostgreSQLi Java JDBC teek, kopeerida sobiv nt aadressilt
 +
 
 +
  $ cd /usr/local/glassfish/glassfish/lib
 +
  $ wget http://jdbc.postgresql.org/download/postgresql-8.3-605.jdbc4.jar
 +
 
 +
* Lisada .war arhiivi WEB-INF/classes/portal-ext.properties fail näitama PostgreSQL andmebaasile
 +
 
 +
  $ mkdir /tmp/liferay-war
 +
  $ cd /tmp/liferay-war
 +
  $ cat WEB-INF/classes/portal-ext.properties
 +
  jdbc.default.jndi.name=jdbc/LiferayPool
 +
  $ rm /tmp/liferay-portal-5.2.3.war
 +
  $ zip -r /tmp/liferay-portal-5.2.3.war .
  
===Serveri käivitamine===
+
Seejärel käivitada GlassFish.
  
Käivitamiseks tuleb öelda
+
* Rakenduse war arhiivi paigaldamine nt halduskonsooli kaudu
  
   $ export JAVA_HOME=/usr/local/java6
+
   Applications -> Web Applications -> Deploy
  $ sh asadmin start-domain
 
  
ja seiskamiseks
+
Tehes sellised valikud
  
  $ sh asadmin stop-domain -u admin --passwordfile /home/glassfish/asadmin.password
+
[[Pilt:Glassfish-6.gif]]
  Waiting for the domain to stop ..................................................
 
  Command stop-domain executed successfully.
 
  
Fail /home/glassfish/asadmin.password on 0600 loabittidega ning seal sisaldub
+
Rakendusele vastavad failid kopeeritakse kataloogi
  
   $ cat /home/glassfish/asadmin.password
+
   domains/domain1/applications/liferay-portal-5.2.3
  AS_ADMIN_PASSWORD=parool
 
  
===GlassFish haldusliides===
+
Deploymise lõpus öeldakse logisse domain/domain1/logs/server.log
  
Haldusliides asub pordil 4848, vaikimisi on nn anonymous kasutajal privilegeeritud ligipääs
+
  [#|2009-09-29T11:21:38.147+0300|INFO|sun-glassfish|null|_ThreadID=17;_ThreadName=Thread-3;| Loading file:\
 +
    /usr/local/glassfish/glassfish/domains/domain1/applications/liferay-portal-5.2.3/WEB-INF/classes/portal-ext.properties|#]
 +
 
 +
  [#|2009-09-29T11:21:52.676+0300|INFO|sun-glassfish|null|_ThreadID=17;_ThreadName=Thread-3;|11:21:52,670 INFO \
 +
    [DialectDetector:64] Determining dialect for PostgreSQL 8
 +
 
 +
  [#|2009-09-29T11:21:52.811+0300|INFO|sun-glassfish|null|_ThreadID=17;_ThreadName=Thread-3;|11:21:52,809 INFO \
 +
    [DialectDetector:97] Using dialect org.hibernate.dialect.PostgreSQLDialect
 +
 
 +
  ...
 +
  [#|2009-09-28T09:24:01.533+0300|INFO|sun-glassfish|javax.enterprise.system.core| \
 +
    _ThreadID=18;_ThreadName=Thread-3;|Deployment of liferay-portal-5.2.3 done is 107609 ms|#]
  
[[Pilt:Glassfish-1.gif]]
+
kus saab tähele panna
  
Tõenäoliselt on üks esimesi tegevusi lisada admin kasutaja ja eemaldada anonymous kasutajalt haldamise privileegid
+
* installer kasutab lisatud portal-ext.properties faili
 +
* installer moodustab PostgreSQL andmebaasi sisu
 +
 
 +
===Liferay portaalitarkvara kasutamine===
  
  Configuration -> Security -> Realms -> admin-realm -> Manage Users
+
Liferay portaalitarkvara on iseenesest GlassFish keskkonnas töötav infrastruktuur, mis muu seas võimaldab paljusid arendajate poolt ettevalmistatud komponente integreerida portaaliks. Reeglina esinevad need komponendid portlettide kujul.
  
===Liferay veebiliides===
+
Liferay teenus ja haldusliides asuvad samas veebikohas aadressil http://...:8080/, seda kas veebikoht käitub enam haldusliidese või teenusena sõltub, milliste privileegidega kasutajana ollakse või kas üldse ollakse sisse loginud. Vaikimisi on administraatori privileegidega rakenduse kasutaja test@liferay.com parooliga test. Peale tarkvara paigaldamist on väga oluline turvakaalutlustel see parool ära muuta.
  
Vaikimisi asub Liferay veebiliides pordil 8080, samas liideses on nii teenus kui ka portaali haldus
+
====Liferay haldamine====
  
[[Pilt:Glassfish-2.gif]]
+
Liferay keskkonna haldus toimub administraatori ligipääsuga kasutajana sisse logides ja valides
  
Vaikimisi on kasutaja Brunol administraatori privileegid.
+
[[Pilt:Liferay-2.gif]]
  
===Liferay ühendamine PostgreSQL andmebaasiga===
+
====Portlettide kasutamine====
  
Kui ettevalmistused on tehtud ning GlassFish+Liferay üldiselt töötavad, siis on sobiv aeg ühendada Liferay käima Derby asemel vastu PostgreSQL andmebaasi.
+
Administraatori ligipääsuga sisseloginud kasutaja saab paigaldada portlet kujul rakendusi, nt on välja valitud RSS portlet, paigaldamiseks tuleks see hiire abil paigutada veebilehel sobivasse asukohta
  
====PostgreSQL baasile vastava pooli moodustamine GlassFishis====
+
[[Pilt:Liferay-1.gif]]
  
Esmalt tuleb rakendusserveris kirjeldada pool, avades GlassFish haldusliideses
+
====Lisade paigaldamine====
  
  Resources -> JDBC -> Connection Pools -> New
+
Liferay funktsionaalsust saab laiendada ametlikust ja nn kogukonna hoidlast tarkvara lisamisega.
  
ning näidata ära
+
Tundub, et edukaks lisade paigaldamiseks on tarvis xercesImpl.jar teek kopeerida teisse kataloogi
  
   Name: LiferayPool
+
   $ cp domains/domain1/applications/liferay-portal-5.2.3/WEB-INF/lib/xercesImpl.jar lib
  Resource Type: javax.sql.ConnectionPoolDataSource
 
  Database Vendor: PostgreSQL
 
  
valida Next ning kirjeldada ülejäänud pooli omadused sh baasi ligipääs ning ühenduse draiveri versioon
+
===ajp protokolli toe lisamine===
  
  DatabaseName=liferay
+
Vaikimisi olemasoleva 8080 pordil kuulava http listeneri 'http-listener-1' ümbertegemine ajp listeneriks toimub öeldes
  Password=parool
 
  PortNumber=5432
 
  ServerName=localhost
 
  User=liferay
 
  JDBC30DataSource=true
 
  
Ning seejärel seostada pool JNDI nimega valides
+
  $ sh bin/asadmin set --port 4848 --host localhost \
 +
    server-config.http-service.http-listener.http-listener-1.property.jkEnabled=true                                               
 +
 
 +
  Command set executed successfully.
  
Resources -> JDBC -> JDBC Resources
+
ning seejärel muudatuse kehtestamiseks teha domeenile stop ja start.
  
ning näidata
+
Tagasipöördumiseks tundub, et aitab kasutada kõnealuse domeeni seadistuste .bak faili
  
   JNDI Name: jdbc/LiferayPool
+
   domains/domain1/config/domain.xml.bak
  Pool Name: LiferayPool
 
  Status: Enabled
 
  
====Liferay rakenduse lülitamine kasutama PostgeSQL andmebaasi====
+
Konkreetselt lisab vaikimisi 8080/http pordile ajp võime selline muudatus
  
Liferay rakenduse kasutamiseks koos PostgreSQL andmebaasiga on iseenesest kaks võimalust
+
enne
  
* otse PG JDBC draiveri abil
+
  <http-listener port="8080" id="http-listener-1" address="0.0.0.0" \
* GlassFishi pooli abil
+
    default-virtual-server="server" server-name=""/>
  
Otse kasutamise tuleb moodustada fail portal-ext.properties sisuga
+
pärast set käsu ütlemist.
  
   $ cat domains/domain1/applications/liferay-portal/WEB-INF/classes/portal-ext.properties
+
   <http-listener port="8080" id="http-listener-1" address="0.0.0.0" \
  jdbc.default.driverClassName=org.postgresql.Driver
+
    default-virtual-server="server" server-name="">
  jdbc.default.url=jdbc:postgresql://localhost:5432/liferay
+
      <property name="jkEnabled" value="true" />
  jdbc.default.username=liferay
+
   </http-listener>
   jdbc.default.password=parool
 
  
Pooli kaudu kasutamiseks peab see fail sisaldama
+
Selleks, et https:// veebikohas oleksid html teksti sees nt vormide from action'd https:// sobib kasutada portal-ext.properties failis
  
   $ cat domains/domain1/applications/liferay-portal/WEB-INF/classes/portal-ext.properties
+
   $ cat domains/domain1/applications/liferay-portal-5.2.3/WEB-INF/classes/portal-ext.properties
 
   jdbc.default.jndi.name=jdbc/LiferayPool
 
   jdbc.default.jndi.name=jdbc/LiferayPool
 +
  web.server.http.port=80
 +
  web.server.https.port=443
 +
  web.server.protocol=https
 +
 +
Selleks, et üle ajp GlassFishi rakenduse küpsiste domeeninime ja küpsise turvalisust kontrollida sobib kasutada nt failis
 +
 +
  /usr/local/glassfish/glassfish/domains/domain1/applications/liferay-portal-5.2.3/WEB-INF/sun-web.xml
  
Selleks, et veenduda, et rakendus tõepoolest kasutab SQL baasi sobib nt kuulata rakenduse kasutamisel pealt liiklust 5432/tcp pordil.
+
sektsiooni
  
===ajp protokolli toe lisamine===
+
  <sun-web-app>
 +
    <context-root>/</context-root>
 +
    <class-loader delegate="true" />
 +
    <session-config>
 +
      <cookie-properties>
 +
        <property name="cookieSecure" value="true" />
 +
        <property name="cookieDomain" value=".loomaaed.tartu.ee" />
 +
      </cookie-properties>
 +
    </session-config>
 +
  </sun-web-app>
 +
 
 +
===Märkused===
  
TODO
+
* Liferay veebikohas jagatakse ahvatlevat GlassFish v3 Prelude + Liferay bundle komplekti, mida on hea mugav paigaldada, aga 2009 aasta sügisel ei tööta ajp abil Apache järele ühendamine; lisaks ei saa seal rakendada GlassFishi nö sisemiste vahenditega uuendusi
 +
* Pool on andmebaasiga ühenduseks eelistatud valik, võimalik on ka otse kasutada PG draiverit
 +
Otse kasutamise tuleb moodustada fail portal-ext.properties sisuga
  
===Liferay portaalitarkvara kasutamine===
+
  $ cat domains/domain1/applications/liferay-portal/WEB-INF/classes/portal-ext.properties
 +
  jdbc.default.driverClassName=org.postgresql.Driver
 +
  jdbc.default.url=jdbc:postgresql://localhost:5432/liferay
 +
  jdbc.default.username=liferay
 +
  jdbc.default.password=parool
 +
* Liferay andmebaasi saab sisse lugeda eraldi jagatava skripti abil, mida jagatakse Additional Files all, liferay-portal-sql-5.2.3.zip failist liferay-portal-sql-5.2.3/create/create-postgresql.sql skripti sisselugemisel
  
TODO
+
  $ psql -h localhost -U liferay portaal < create-postgresql.sql
  
 
===Kasulikud lisamaterjalid===
 
===Kasulikud lisamaterjalid===
  
 +
* [[:Glassfish v3 Prelude kasutamine Debian Lennyga]]
 +
* [[:Lähtetekstist kompileeritud PostgreSQL kasutamine Debianiga]]
 +
* [[:FreeBSD Glassfish]]
 
* http://www.sun.com/software/products/glassfish_portfolio/
 
* http://www.sun.com/software/products/glassfish_portfolio/
 
* https://glassfish.dev.java.net/
 
* https://glassfish.dev.java.net/
* [[:FreeBSD Glassfish]]
 
* [[:Lähtetekstist kompileeritud PostgreSQL kasutamine Debianiga]]
 

Viimane redaktsioon: 1. september 2010, kell 09:57

Sissejuhatus

Liferay http://www.liferay.com/ on peamiselt portaalide valmistamisele orienteeritud Java rakendus, mis sobib kasutamiseks erinevatel rakendusserveritel, nt Tomcat, Resin, Jetty jt ning vastu erinevaid andmebaase, nt MySQL, PostgreSQL ja Oracle.

Käesolevas palas käsitletakse Liferay kasutamist juhtumil kui Java rakendusserveriks on GlassFish v 3 Prelude ning andmeid hoitakse PostgreSQL 8.3.7 andmebaasis. Sellise süsteemi paigalduseks on mitu võimalust, käesolevas tekstis kirjeldatakse süsteemi moodustamist iseseisvatest komponentidest.

Ettevalmistused

Abstraktsel tasemel võib süsteemi skeemi kujutada selliselt

                    . ---  Liferay
                . /           |
              '            GlassFish
              |               |
       PostgreSQL            JVM
              |               |
           Debian GNU/Linux Lenny

kus kasutatud tarkvara versioonid on

  • operatsioonisüsteem - Debian GNU/Linux Lenny, 64 bit
  • Java - JVM SE SDK v. 6
  • Oracle GlassFish Server (OGS)
  • andmebaas - PostgreSQL 8.3.7
  • Liferay - 5.2.3 .war faili kujul

Järgnev eeldab, et operatsioonisüsteem on paigaldatud ning JVM ja GlassFish paigaldatud nii nagu on kirjeldatud tekstis Oracle GlassFish Serveri kasutamine Debian Lennyga.

PostgreSQL andmebaasi Liferay skeemi ettevalmistamine

Kui Liferay rakendusele peab andmebaasis vastama üks olemasoleva baasi skeem, nt portaal.liferay, siis tuleb sooritada selline järgnevus

  • eemaldada skriptist create-postgresql.sql esimesed read
 drop database lportal;
 create database lportal encoding = 'UNICODE';
 \c lportal;
  • tekitada baasi kasutaja liferay
 CREATE ROLE liferay LOGIN
   ENCRYPTED PASSWORD 'md5ea4e1323460699b3f70e734f69fhrud'
   NOSUPERUSER NOINHERIT CREATEDB NOCREATEROLE;
 ALTER ROLE liferay SET search_path=liferay;
  • tekitada skeem liferay
 CREATE SCHEMA liferay
   AUTHORIZATION liferay;

Liferay andmed imporditakse andmebaasi automaatselt installeri töö käigus.

GlassFish rakendusserverisse PostgreSQL baasile vastava pooli moodustamine

Esmalt tuleb rakendusserveris kirjeldada pool, avades GlassFish haldusliideses

 Resources -> JDBC -> Connection Pools -> New

ning näidata ära

 Name: LiferayPool
 Resource Type: javax.sql.ConnectionPoolDataSource
 Database Vendor: PostgreSQL

valida Next ning kirjeldada ülejäänud pooli omadused sh baasi ligipääs ning ühenduse draiveri versioon

 DatabaseName=portaal
 Password=parool
 PortNumber=5432
 ServerName=localhost
 User=liferay
 JDBC30DataSource=true

Ning seejärel seostada pool JNDI nimega valides

Resources -> JDBC -> JDBC Resources

ning näidata

 JNDI Name: jdbc/LiferayPool
 Pool Name: LiferayPool
 Status: Enabled

Pooli töökorrasoleku kontrollimiseks on GlassFishi haldusliideses nupp Ping.

Liferay paigaldamine olemasolevasse Glassfish v3 Prelude rakendusserverisse

Vajaliku tarkvara saab kopeerida aadressilt http://www.liferay.com/

  • liferay .war arhiiv - liferay-portal-5.2.3.war
 Download -> Liferay Portal -> Additional Files -> WARs -> Liferay Portal 5.2.3 WAR
  • portal dependencies .zip arhiiv- liferay-portal-dependencies-5.2.3.zip
 Download -> Liferay Portal -> Additional Files -> Additional Files
  • dokumentatsioon - liferay-administration-guide.pdf
 Documentation -> Liferay 5.2 -> Portal Administrator's Guide

Paigaldamist kirjeldab Portal Administrator's Guide'is lk 31, 'GlassFish 3.x' (mis on lünklik), tegevused koosnevad, alustades mitte-töötavast GlassFishi java protsessist.

  • GlassFish domeeni seadistamine

Nt domain1 puhul seadistusfailis domains/domain1/config/domain.xml peab Liferay seisukohalt olema seadistatud

 <jvm-options>-Xmx1024m</jvm-options>
 <jvm-options>-XX:MaxPermSize=256m</jvm-options>
  • Kustutada domeeni docroot kataloogist index.html fail
 $ rm domains/domain1/docroot/index.html
  • Pakkida Additional failid GlassFishi kataloogi lib
 $ cd /tmp
 $ unzip liferay-portal-dependencies-5.2.3.zip
 $ mv liferay-portal-dependencies-5.2.3/* /usr/local/glassfish/glassfish/lib
  • Lisada kataloogi lib PostgreSQLi Java JDBC teek, kopeerida sobiv nt aadressilt
 $ cd /usr/local/glassfish/glassfish/lib
 $ wget http://jdbc.postgresql.org/download/postgresql-8.3-605.jdbc4.jar
  • Lisada .war arhiivi WEB-INF/classes/portal-ext.properties fail näitama PostgreSQL andmebaasile
 $ mkdir /tmp/liferay-war
 $ cd /tmp/liferay-war
 $ cat WEB-INF/classes/portal-ext.properties
 jdbc.default.jndi.name=jdbc/LiferayPool
 $ rm /tmp/liferay-portal-5.2.3.war
 $ zip -r /tmp/liferay-portal-5.2.3.war .

Seejärel käivitada GlassFish.

  • Rakenduse war arhiivi paigaldamine nt halduskonsooli kaudu
 Applications -> Web Applications -> Deploy

Tehes sellised valikud

Glassfish-6.gif

Rakendusele vastavad failid kopeeritakse kataloogi

 domains/domain1/applications/liferay-portal-5.2.3

Deploymise lõpus öeldakse logisse domain/domain1/logs/server.log

 [#|2009-09-29T11:21:38.147+0300|INFO|sun-glassfish|null|_ThreadID=17;_ThreadName=Thread-3;| Loading file:\
   /usr/local/glassfish/glassfish/domains/domain1/applications/liferay-portal-5.2.3/WEB-INF/classes/portal-ext.properties|#]
 
 [#|2009-09-29T11:21:52.676+0300|INFO|sun-glassfish|null|_ThreadID=17;_ThreadName=Thread-3;|11:21:52,670 INFO \
   [DialectDetector:64] Determining dialect for PostgreSQL 8
 
 [#|2009-09-29T11:21:52.811+0300|INFO|sun-glassfish|null|_ThreadID=17;_ThreadName=Thread-3;|11:21:52,809 INFO \
   [DialectDetector:97] Using dialect org.hibernate.dialect.PostgreSQLDialect
 
 ...
 [#|2009-09-28T09:24:01.533+0300|INFO|sun-glassfish|javax.enterprise.system.core| \
   _ThreadID=18;_ThreadName=Thread-3;|Deployment of liferay-portal-5.2.3 done is 107609 ms|#]

kus saab tähele panna

  • installer kasutab lisatud portal-ext.properties faili
  • installer moodustab PostgreSQL andmebaasi sisu

Liferay portaalitarkvara kasutamine

Liferay portaalitarkvara on iseenesest GlassFish keskkonnas töötav infrastruktuur, mis muu seas võimaldab paljusid arendajate poolt ettevalmistatud komponente integreerida portaaliks. Reeglina esinevad need komponendid portlettide kujul.

Liferay teenus ja haldusliides asuvad samas veebikohas aadressil http://...:8080/, seda kas veebikoht käitub enam haldusliidese või teenusena sõltub, milliste privileegidega kasutajana ollakse või kas üldse ollakse sisse loginud. Vaikimisi on administraatori privileegidega rakenduse kasutaja test@liferay.com parooliga test. Peale tarkvara paigaldamist on väga oluline turvakaalutlustel see parool ära muuta.

Liferay haldamine

Liferay keskkonna haldus toimub administraatori ligipääsuga kasutajana sisse logides ja valides

Liferay-2.gif

Portlettide kasutamine

Administraatori ligipääsuga sisseloginud kasutaja saab paigaldada portlet kujul rakendusi, nt on välja valitud RSS portlet, paigaldamiseks tuleks see hiire abil paigutada veebilehel sobivasse asukohta

Liferay-1.gif

Lisade paigaldamine

Liferay funktsionaalsust saab laiendada ametlikust ja nn kogukonna hoidlast tarkvara lisamisega.

Tundub, et edukaks lisade paigaldamiseks on tarvis xercesImpl.jar teek kopeerida teisse kataloogi

 $ cp domains/domain1/applications/liferay-portal-5.2.3/WEB-INF/lib/xercesImpl.jar lib

ajp protokolli toe lisamine

Vaikimisi olemasoleva 8080 pordil kuulava http listeneri 'http-listener-1' ümbertegemine ajp listeneriks toimub öeldes

 $ sh bin/asadmin set --port 4848 --host localhost \
   server-config.http-service.http-listener.http-listener-1.property.jkEnabled=true                                                 
 
 Command set executed successfully.

ning seejärel muudatuse kehtestamiseks teha domeenile stop ja start.

Tagasipöördumiseks tundub, et aitab kasutada kõnealuse domeeni seadistuste .bak faili

 domains/domain1/config/domain.xml.bak

Konkreetselt lisab vaikimisi 8080/http pordile ajp võime selline muudatus

enne

 <http-listener port="8080" id="http-listener-1" address="0.0.0.0" \
   default-virtual-server="server" server-name=""/>

pärast set käsu ütlemist.

 <http-listener port="8080" id="http-listener-1" address="0.0.0.0" \
   default-virtual-server="server" server-name="">
     <property name="jkEnabled" value="true" />
 </http-listener>

Selleks, et https:// veebikohas oleksid html teksti sees nt vormide from action'd https:// sobib kasutada portal-ext.properties failis

 $ cat domains/domain1/applications/liferay-portal-5.2.3/WEB-INF/classes/portal-ext.properties
 jdbc.default.jndi.name=jdbc/LiferayPool
 web.server.http.port=80
 web.server.https.port=443
 web.server.protocol=https

Selleks, et üle ajp GlassFishi rakenduse küpsiste domeeninime ja küpsise turvalisust kontrollida sobib kasutada nt failis

  /usr/local/glassfish/glassfish/domains/domain1/applications/liferay-portal-5.2.3/WEB-INF/sun-web.xml

sektsiooni

 <sun-web-app>
   <context-root>/</context-root>
   <class-loader delegate="true" />
   <session-config>
     <cookie-properties>
       <property name="cookieSecure" value="true" />
       <property name="cookieDomain" value=".loomaaed.tartu.ee" />
     </cookie-properties>
   </session-config>
 </sun-web-app>

Märkused

  • Liferay veebikohas jagatakse ahvatlevat GlassFish v3 Prelude + Liferay bundle komplekti, mida on hea mugav paigaldada, aga 2009 aasta sügisel ei tööta ajp abil Apache järele ühendamine; lisaks ei saa seal rakendada GlassFishi nö sisemiste vahenditega uuendusi
  • Pool on andmebaasiga ühenduseks eelistatud valik, võimalik on ka otse kasutada PG draiverit

Otse kasutamise tuleb moodustada fail portal-ext.properties sisuga

 $ cat domains/domain1/applications/liferay-portal/WEB-INF/classes/portal-ext.properties
 jdbc.default.driverClassName=org.postgresql.Driver
 jdbc.default.url=jdbc:postgresql://localhost:5432/liferay
 jdbc.default.username=liferay
 jdbc.default.password=parool
  • Liferay andmebaasi saab sisse lugeda eraldi jagatava skripti abil, mida jagatakse Additional Files all, liferay-portal-sql-5.2.3.zip failist liferay-portal-sql-5.2.3/create/create-postgresql.sql skripti sisselugemisel
 $ psql -h localhost -U liferay portaal < create-postgresql.sql

Kasulikud lisamaterjalid