info  fabercon.fi | +358 400 533 978 or +358 44 204 2029

Tag: portlet

Sivusiirtymien toteutus SPA-portletissa

Kuten jQueryn osalta oli laita, niin yksinkertaisin SPA-arkkitehtuurin ratkaisu Angularin kanssakin on kirjoittaa kaikkien vaihtoehtoisten moduleiden määritys sivulle peräkkäin ja hallita sitten Javascript-koodissa, mitä tai mitä osiot haluaa näyttää. Tämä on tehokas ja yksinkertainen keino, eikä mitään Angularin $routea tarvita. Mutta ongelmana on se, että jokainen käyttäjä voi lukea selaimesta

Lue lisää

Angularin MVC-mallin arkkitehtuuri portletissa

Angularin käyttö portletissa ei poikkea Angularin käytöstä ”tavallisilla” web-sivuilla. Seppien esittämässä ratkaisussa ei käytetä muita kuin Angularin peruskirjastoa ja Angularin router-kirjastoa. Angular on MVC-framwork-kirjasto, ei komponenttikirjasto. Angular-pohjaisia komponenttikirjastoja on toteutettu useita, mutta tässä esimerkkiportletissa käytimme puhdasta HTML:aa kirjastokomponenttien sijasta. Angular (tai tarkemmin AngularJS) mainitaan usein MVC-arkkitehtuurimallin esimerkkinä. Pikemminkin malli on

Lue lisää

Angular SPA-portlet, avaussivun Javascript

Angular-SPA-portletin avaavan JSP-sivun Javascriptilla on tärkeä rooli, sillä siinä alustetaan globaalit Javascript-muuttujat. Mahdollisimman suuren osan Javascript-koodista pitäisi olla täysin yleiskäyttöistä. Tämä tarkoittaa lyhyitä ns. utility-metodeja, joilla ei ole sivuvaikutuksia. Näitä tiedostoja kannattaa kerätä yrityksessä ikäänkuin koodauksen pääomaksi. Koetellun yleiskäyttöisen koodin suhteellisen osuuden kasvu sovelluksen koodissa nostaa väistämättä sovelluksen laatua. Jo

Lue lisää

SPA-portletin JSP-avaussivun rakenne

Angular-kirjaston mukaanotto portlettiin on vastaava, kuin muillakin Javascript-kirjastoilla. Se määritellään liferay-portlet.xml sivulla. Google suosittelee Angularin käyttöönottoa websivun osoitteesta, esimerkiksi: <header-portlet-javascript>http://ajax.googleapis.com/ajax/libs/angularjs/1.4.4/angular.min.js</header-portlet-javascript> Javascript-kirjastot on yksinkertaisinta ottaa mukaan nimenomaan ”headerissa”, jolloin käytettöalue on koko sivu. Liferay-portlet.xml sivun sisältö on tavanomainen. Ajaxable-tagin arvoksi pitää laittaa true. Sovelluskohtaisia Javascript-tiedostoja kertyy useita JSP-portlettia kohden, koska Javascript-koodi

Lue lisää

SPA-portletin palvelurajapinnat ja data

Liferayn portaaliohjelmiston mukana asennetaan Liferayn tietokanta, jota käytetään portlettien Java-koodissa Liferayn API-rajapinnan kautta. Nämä rajapintakutsut sisältävät jo transaktion hallinnan (begin transaction ja commit/rollback). Mistä portletissa sitten haetaan käyttöliittymässä esitettävää dataa? Tässä on varteenotettava menetelmä, jossa on kaksi datalähdettä: 1. Käytetään Liferayn tietokantaa Liferay APIn kautta, joka on tehty tähän tarkoitukseen.

Lue lisää

SPA-portletin palvelinpään toteutus

SPA-portletin palvelinpuolen Java-koodi on yksinkertainen. Mitään MVC-mallin mukaista portlettia (esim. tavanomainen MVCPortlet) ei tarvita, koska MVC-arkkitehtuurimallin kontrolleri on clientilla, eli Javascript-koodi on kontrolleri. SPA-portlettiluokka on MVC-portlettiluokkaa merkittävästi yksinkertaisempi kahdessa mielessä: 1. Portletti huolehtii vain ensimmäisen JSP-sivun avaamisesta. Clientin Javascript-koodi huolehtii sivuvaihtoista. 2. Sovelluslogiikkaa ei ole enää action-metodeissa. Action-metodeja ei tarvita

Lue lisää

jQuery-SPA-portletin toteutuksen avainkohdat

SPA-portletti on toteutettavissa käyttäen pelkästään jQuery-kirjastoa, tässä käydään läpi ydinkohdat. Sivujen dynaamiseen esittämiseen on ainakin kaksi käyttökelpoista, vaihtoehtoista tapaa: 1. Ladataan sivun kaikki sisältövaihtoehdot kerralla, sivua alunperin ladattessa: Vaihtoehtoinen sisältö sijoitetaan peräkkäisten div-elementtien sisällöksi. Toiminnan aikana hallitaan, mikä div-elementti sisältöineen näytetään, tai voidaan näyttää useitakin div-lohkoja kerralla. Latautumisvaiheessa voidaan säädellä

Lue lisää

SPA-portletin ominaisuuksia

SPA-sovellus tarkoittaa, että samaan selainikkunaan ladataan uusi sisältö lataamatta koko websivua uudestaan. Sivun lataus on laajempi operaatio kuin Ajax-toiminto, jossa kyse on vain datan hakemisesta palvelimelta ja sijoittamisesta sivulle sitä uudelleenlataamatta. Termi SPA (”Single Page Application”) tulee siis yhdestä kehyksestä, jossa näytetään useita sivuja. SPA sivujen lataamiseen ja Ajax tietojen

Lue lisää

Portlettien arkkitehtuuri

Samalla portletilla voi olla useita JSP-sivuja, joita ladataan tarpeen mukaan samaan portlettikehykseen. Vaikka tämä vaatii palvelimella sivun lataamisen, päivitys kohdistuu vain kyseiseen kehykseen. Sivunvaihto on kuitenkin raskas toiminto verkkoliikenteen kannalta ja on raskas toimenpide myös toteuttaa. Kun portletsivua ladataan ensimmäisen kerran, portaalialusta kutsuu portletin sisäänrakennettuja metodeja palvelimella järjestyksessä: render ->

Lue lisää

Portlettien näyttötekniikat

Portletti on Javan termi, se on servletista edelleen kehitetty luokka, joka mahdollistaa usean portletin sijoittamisen samalle websivulle. Yksi servletti vastaa puolestaan aina yhtä websivua. Portlettien rakenne ja käyttö muistuttaa siis Javan servlettien vastaavia, mutta portletit ovat astetta monimutkaisempia. JSP-näyttösivu käännetään aina ajettaessa ensin servlettikoodiksi, josta se edelleen käännetään Javan VM:n

Lue lisää
Scroll to Top