Hlavní menu

Nástroje

WebKiv / ArchitekturaModulu

View (print) - Edit page | Recent changes - Page history

Updated 26 July 2010, 17:36 by PremekBrada

WebKiv.ArchitekturaModulu History

Hide minor edits - Show changes to markup

26 July 2010, 17:36 by PremekBrada -
Changed lines 11-12 from:
  • Podrobnější popis v PDF dokumentu.
to:
  • Podrobnější popis v oficiální technické zprávě -- důležité!
20 January 2010, 15:12 by PremekBrada -
Changed lines 8-9 from:

K dispozici je vysvětlení architektury ve screencastu (DivX? 80MB) a podrobnější popis architektury v PDF dokumentu.

to:

Základní dokumentace

20 January 2010, 15:11 by PremekBrada -
Changed lines 8-9 from:

K dispozici je vysvětlení architektury ve screencastu (DivX? 80MB) a podrobnější popis architektury v PDF dokumentu.

to:

K dispozici je vysvětlení architektury ve screencastu (DivX? 80MB) a podrobnější popis architektury v PDF dokumentu.

04 November 2009, 19:02 by PremekBrada -
Changed lines 22-23 from:

Používá se WebKivDb? knihovna (viz ArchitekturaDaoVrstvy), tedy v Mediatorech a FormHandlerech? se volají její DAO třídy z balíku cz.zcu.kiv.db.dao.* a používají doménové třídy z cz.zcu.kiv.db.model balíku.

to:

Používá se WebKivDb? knihovna (viz ArchitekturaDaoVrstvy), tedy v Mediatorech a FormHandlerech? se volají její DAO třídy z balíku cz.zcu.kiv.db.dao.* a používají doménové třídy z cz.zcu.kiv.db.model balíku. Ty víceméně 1:1 reprezentují entity které definuje DatovyModel.

03 April 2009, 17:14 by PremekBrada -
Changed lines 16-17 from:

Je představována "Mediátory" tj třídami, které hrají cca roli servletů. Rozhrani IMediator? definuje hlavne handle(...) metody, ktere maji byt analogii doGet() servletu; normalne v modulu je vhodne oddedit od AbstractMediator? a predefinovat jen ty metody, ktere jsou potreba -- normalne staci handle(req,resp) a data pro JSTL posilat pres request.setAttribute.

to:

Je představována "Mediátory" (podle GoF pattern) tj třídami, které hrají cca roli servletů. Rozhrani IMediator? definuje hlavne handle(...) metody, ktere maji byt analogii doGet() servletu; normalne v modulu je vhodne oddedit od AbstractMediator? a predefinovat jen ty metody, ktere jsou potreba -- normalne staci handle(req,resp) a data pro JSTL posilat pres request.setAttribute.

16 March 2009, 13:54 by PremekBrada -
Changed lines 8-9 from:

K dispozici je vysvětlení architektury ve screencastu, a podrobnější popis architektury je v PDF dokumentu.

to:

K dispozici je vysvětlení architektury ve screencastu (DivX? 80MB) a podrobnější popis architektury v PDF dokumentu.

16 March 2009, 13:53 by PremekBrada -
Changed lines 8-9 from:

Podrobnější popis je v PDF dokumentu.

to:

K dispozici je vysvětlení architektury ve screencastu, a podrobnější popis architektury je v PDF dokumentu.

16 March 2009, 13:52 by PremekBrada -
Changed lines 24-27 from:

Knihovna je postavena na Spring JDBC vrstvě, kterou používá pro vytváření dotazů a zpracování result setů.

to:

Knihovna je postavena na Spring JDBC vrstvě, kterou používá pro vytváření dotazů a zpracování result setů.


Zpět na RedSys

16 March 2009, 13:51 by PremekBrada -
Added lines 1-24:

Idea a motivace: v OpenCms nejde dost snadno integrovat servlety tak, aby byly součástí modulu, byly snadno nalezitelné a konfigurovatelné. Proto se pro zpracování formulářů použijí „cílové“ JSP stránky, které na začátku volají třídu zpracovávající požadavek – tzv. Mediator.

Zatímco v servletové aplikaci je postup zpracování

kontejner → servlet → request dispatcher . forward → JSP

v našich modulech je to

opencms → JSP → (scriptlet) mediator .handle → (návrat do) JSP

Podrobnější popis je v PDF dokumentu.

View vrstva

JSP soubory – má tedy odkazovat na impl třídy a obsahovat minimalistický scriptlet. V JSP se používá JSTL.

Aplikační vrstva

Je představována "Mediátory" tj třídami, které hrají cca roli servletů. Rozhrani IMediator? definuje hlavne handle(...) metody, ktere maji byt analogii doGet() servletu; normalne v modulu je vhodne oddedit od AbstractMediator? a predefinovat jen ty metody, ktere jsou potreba -- normalne staci handle(req,resp) a data pro JSTL posilat pres request.setAttribute.

Trida ModuleBeanFactory? je tovarna na vraceni instanci, ktera uvnitr vola Springovou bean factory; ta je pak konfigurovana pres XML v module-beans.cfg ulozeny v korenovem adresari Java namespace modulu (napr. tedy .../cz/zcu/kiv/osoby/module-beans.cfg). Konfiguracni soubor je standardni Spring bean dependency definition soubor, ale tim ze je umisten v adresari modulu se da s modulem instalovat a není treba pri jeho zmene restartovat Tomcat. Jeho obsah je minimalne takovy, ze každý mediator který má být dostupný v JSP musí být deklarován; využití Spring DI deklarací je nepovinné.

Datová vrstva

Používá se WebKivDb? knihovna (viz ArchitekturaDaoVrstvy), tedy v Mediatorech a FormHandlerech? se volají její DAO třídy z balíku cz.zcu.kiv.db.dao.* a používají doménové třídy z cz.zcu.kiv.db.model balíku.

Knihovna je postavena na Spring JDBC vrstvě, kterou používá pro vytváření dotazů a zpracování result setů.