Hlavní menu

Nástroje

UvodDoKomponent / SpringDM

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

Updated 22 January 2015, 15:37 by PremekBrada

UvodDoKomponent.SpringDM History

Hide minor edits - Show changes to markup

22 January 2015, 15:37 by PremekBrada -
Changed lines 9-11 from:
Pozn: Od roku 2009 je Spring DM v útlumu. Většina konceptů i konkrétní syntaxe byla převzata do tzv. Blueprint specifikace, která je součástí standardizovaného OSGi or verze 5. Jednou z implementací je Apache Aries.
to:
Pozn: Od roku 2009 je Spring DM v útlumu. Většina konceptů i konkrétní syntaxe byla převzata do tzv. Blueprint specifikace, která je součástí standardizovaného OSGi Enterprise od verze 5. Jednou z implementací je Apache Aries.
22 January 2015, 15:36 by PremekBrada -
Changed lines 7-8 from:

Navenek tedy máme starý dobrý OSGi a navíc můžeme při vývoji bundlů máme k dispozici Spring.

to:

Navenek tedy máme starý dobrý OSGi a navíc můžeme při vývoji bundlů máme k dispozici Spring. Je tedy vhodné pročíst si nejprve kapitoly o Springu a OSGi!

Changed lines 11-12 from:

Je vhodné pročíst si kapitoly o Springu a OSGi!

to:
22 January 2015, 15:35 by PremekBrada -
Changed lines 9-10 from:

Pozn: Od roku 2009 je Spring DM v útlumu. Většina konceptů i konkrétní syntaxe byla převzata do tzv. Blueprint specifikace, která je součástí standardizovaného OSGi or verze 5. Jednou z implementací je Apache Aries.

to:
Pozn: Od roku 2009 je Spring DM v útlumu. Většina konceptů i konkrétní syntaxe byla převzata do tzv. Blueprint specifikace, která je součástí standardizovaného OSGi or verze 5. Jednou z implementací je Apache Aries.
22 January 2015, 15:35 by PremekBrada -
Changed lines 3-6 from:

Spring DM

Je komponentový model spojující spring s osgi. Hlavní myšlenka je taková, že v prostředí osgi se budou spouštět bundly, využívající spring. Nebude zapotřebí activator, služby půjde registrovat a příjimat přímo ve springovém konfiguračním souboru.

to:

Spring DM (Dynamic Modules)

Je komponentový model spojující spring s OSGi. Hlavní myšlenka je taková, že v prostředí OSGi se budou spouštět bundly, využívající Spring. Nebude zapotřebí activator, služby půjde registrovat a příjimat přímo ve springovém konfiguračním souboru.

Added lines 9-10:

Pozn: Od roku 2009 je Spring DM v útlumu. Většina konceptů i konkrétní syntaxe byla převzata do tzv. Blueprint specifikace, která je součástí standardizovaného OSGi or verze 5. Jednou z implementací je Apache Aries.

22 December 2014, 15:01 by Eduard Chromik -
Changed lines 35-40 from:

- <beans xmlns="http://www.springframework.org/schema/beans"

 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
 xmlns:osgi="http://www.springframework.org/schema/osgi"
 xsi:schemaLocation="http://www.springframework.org/schema/beans
 http://www.springframework.org/schema/beans/spring-beans-2.0.xsd
 http://www.springframework.org/schema/osgi http://www.springframework.org/schema/osgi/spring-osgi-1.0.xsd"> 
to:
  <beans xmlns="http://www.springframework.org/schema/beans"
     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
     xmlns:osgi="http://www.springframework.org/schema/osgi"
     xsi:schemaLocation="http://www.springframework.org/schema/beans
     http://www.springframework.org/schema/beans/spring-beans-2.0.xsd
     http://www.springframework.org/schema/osgi
     http://www.springframework.org/schema/osgi/spring-osgi-1.0.xsd"> 
22 December 2014, 15:00 by Eduard Chromik -
Changed line 33 from:

=xml [=

to:
[@
Changed lines 42-43 from:

=]

to:

@]

05 February 2013, 14:45 by EdaChromik -
Changed lines 72-73 from:

Jednoduchá implementace HelloWorld. Výsledná implementace: Attach:HelloWorldSpringDM

to:

Jednoduchá implementace HelloWorld. Výsledná implementace: Attach:HelloWorldSpringDM a Attach:HelloWorldBlueprint.zip Δ

17 February 2010, 16:36 by Snajberk -
Changed lines 76-77 from:

Příklad ParkovisteSpringDM pak dokumentuje jen technologicky specifické problémy. Výsledná implementace: Attach:ParkovisteSpringDM \\Rozšířená implementace: Attach:ParkovisteSpringDMExtended

to:

Příklad ParkovisteSpringDM pak dokumentuje jen technologicky specifické problémy. Výsledná implementace: Attach:ParkovisteSpringDM
Rozšířená implementace: Attach:ParkovisteSpringDMExtended

17 February 2010, 16:36 by Snajberk -
Changed lines 76-77 from:

Příklad ParkovisteSpringDM pak dokumentuje jen technologicky specifické problémy. Výsledná implementace: Attach:ParkovisteSpringDM

to:

Příklad ParkovisteSpringDM pak dokumentuje jen technologicky specifické problémy. Výsledná implementace: Attach:ParkovisteSpringDM \\Rozšířená implementace: Attach:ParkovisteSpringDMExtended

05 January 2010, 14:49 by Snajberk -
Added lines 9-10:

Je vhodné pročíst si kapitoly o Springu a OSGi!

05 January 2010, 14:45 by Snajberk -
Changed lines 43-48 from:

<code><osgi:bundle>: <code><osgi:service>: slouží k zaregistrování služby <code><osgi:reference>: slouží k získání služby <code><osgi:list>: slouží k získání N služeb (nastavuje se kardinalita) <code><osgi:set>: slouží k získání N služeb (nastavuje se kardinalita)

to:
  • <osgi:bundle>:
  • <osgi:service>: slouží k zaregistrování služby
  • <osgi:reference>: slouží k získání služby
  • <osgi:list>: slouží k získání N služeb (nastavuje se kardinalita)
  • <osgi:set>: slouží k získání N služeb (nastavuje se kardinalita)
05 January 2010, 14:43 by Snajberk -
Changed lines 49-50 from:
to:
05 January 2010, 14:42 by Snajberk -
Changed lines 33-38 from:

- <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:osgi="http://www.springframework.org/schema/osgi" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd http://www.springframework.org/schema/osgi http://www.springframework.org/schema/osgi/spring-osgi-1.0.xsd">

to:

- <beans xmlns="http://www.springframework.org/schema/beans"

 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
 xmlns:osgi="http://www.springframework.org/schema/osgi"
 xsi:schemaLocation="http://www.springframework.org/schema/beans
 http://www.springframework.org/schema/beans/spring-beans-2.0.xsd
 http://www.springframework.org/schema/osgi http://www.springframework.org/schema/osgi/spring-osgi-1.0.xsd"> 
05 January 2010, 14:40 by Snajberk -
Changed lines 20-21 from:

Abychom mohli spouštět Spring DM bundly, musíme nejprve spustit skupinu bundlu, které nám to umožní. Ten nejdůležitější z nich je extender org.springframework.bundle.osgi.extender, který konfigurační soubor Spring DM bundlů rozparsuje a zpracuje.

to:

Jako první věc, vedoucí ke změně OSGi bundlu na Spring DM bundle je přidání Spring konfiguračního souboru. Tento soubor musí být v předem daném adresáři (viz. obrázek níže). Může jich být i více, projdou se postupně všechny.

Abychom mohli spouštět Spring DM bundly, musíme nejprve spustit skupinu bundlů, které nám to umožní. Ten nejdůležitější z nich je extender org.springframework.bundle.osgi.extender, který konfigurační soubor Spring DM bundlů rozparsuje a zpracuje.

Changed lines 29-30 from:

Novinkou je nový namespace, který lze použít

to:

Novinkou je nový namespace, který lze použít a který přidává podporu OSGi. Hlavička Spring DM konfiguračního souboru pak bude vypadat takto:

Added lines 37-45:

Novinkou v tomto namespacu jsou: <code><osgi:bundle>: <code><osgi:service>: slouží k zaregistrování služby <code><osgi:reference>: slouží k získání služby <code><osgi:list>: slouží k získání N služeb (nastavuje se kardinalita) <code><osgi:set>: slouží k získání N služeb (nastavuje se kardinalita)

Attach:springdm-namespace.png Δ

05 January 2010, 14:26 by Snajberk -
Changed lines 5-6 from:

TODO: doplnit

to:

Deprecated: Function call_user_method() is deprecated in /home/system/www/apache/wiki.kiv.zcu.cz/cookbook/beautifier/php/Beautifier/Core.php on line 564

Deprecated: Function call_user_method() is deprecated in /home/system/www/apache/wiki.kiv.zcu.cz/cookbook/beautifier/php/Beautifier/Core.php on line 564

Je komponentový model spojující spring s osgi. Hlavní myšlenka je taková, že v prostředí osgi se budou spouštět bundly, využívající spring. Nebude zapotřebí activator, služby půjde registrovat a příjimat přímo ve springovém konfiguračním souboru.

Navenek tedy máme starý dobrý OSGi a navíc můžeme při vývoji bundlů máme k dispozici Spring.

Spring DM Framework

Co je v takovém případě framework, může být na první pohled složitější, ale pokud se na Spring DM díváme jako rozšíření k OSGi, pak je vše o dost jednodušší.

Základem budiž libovolný OSGi framework.
K němu přidáme rozšíření - distribuované jako několik OSGi bundlů, které se spustí jako první a připraví tak půdu pro naše Spring DM bundly.

Vzniká nám Spring DM framework.

Jak to funguje

Abychom mohli spouštět Spring DM bundly, musíme nejprve spustit skupinu bundlu, které nám to umožní. Ten nejdůležitější z nich je extender org.springframework.bundle.osgi.extender, který konfigurační soubor Spring DM bundlů rozparsuje a zpracuje.

Spring DM namespace

Novinkou je nový namespace, který lze použít

<?xml version="1.0" encoding="UTF-8" ?>
- <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:osgi="http://www.springframework.org/schema/osgi" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd http://www.springframework.org/schema/osgi http://www.springframework.org/schema/osgi/spring-osgi-1.0.xsd">
</beans>

Shrnutí

Dívámeli se na Spring DM tak, jak bylo výše nastíněno, máme jasno v pojmech komponentový model a framework.

Protože je OSGi základ tohoto modelu, tak jsou pojmy jako komponenta a komponentové rozhranní stejné jako u OSGi.

Jediné, co se změnilo je zjednodušená práce se službami a Springové možnosti při vývoji bundlů.

22 December 2009, 13:37 by Snajberk -
Changed lines 3-4 from:

Spring DM

to:

Spring DM

TODO: doplnit

Praktická část

Changed lines 13-15 from:

Místo activatorů jsou přítomny Springové xml soubory, které je velice dobře nahrazují.

to:

Místo activatorů jsou zde Springové xml soubory.

17 December 2009, 16:15 by Snajberk -
17 December 2009, 16:03 by Snajberk -
Added lines 1-2:
16 December 2009, 14:40 by Snajberk -
Changed lines 1-2 from:

== Spring DM ==

to:

Spring DM

16 December 2009, 11:06 by Snajberk -
Changed lines 12-13 from:

Jednoduchá implementace HelloWorld? HelloWorldSpringDM. Výsledná implementace: Attach:HelloWorldSpringDM

to:

Jednoduchá implementace HelloWorld. Výsledná implementace: Attach:HelloWorldSpringDM

16 December 2009, 11:06 by Snajberk -
Changed lines 12-13 from:

Jednoduchá implementace HelloWorld? HelloWorldSpringDM. Výsledná implementace: Attach:HelloSpringDM Δ

to:

Jednoduchá implementace HelloWorld? HelloWorldSpringDM. Výsledná implementace: Attach:HelloWorldSpringDM

16 December 2009, 11:05 by Snajberk -
Changed lines 3-4 from:

V těchto návodech pracuji s [http://www.springsource.com/products/sts SpringSource? Tool Suite], které je trochu odlišné od Eclipsu. Většina věcí je však stejná.

to:

V těchto návodech pracuji s SpringSource Tool Suite, které je trochu odlišné od Eclipsu. Většina věcí je však stejná.

Changed lines 10-16 from:

Tutoriál SpringDM na vytvoření nového projektu.

Jednoduchá implementace HelloWorld? HelloWorldSpringDM. Výsledná implementace: Soubor:HelloSpringDM.zip?

Příklad MessagePrinterSpringDM pak dokumentuje jen technologicky specifické problémy. Výsledná implementace: Soubor:MessagePrinterSpringDM.zip?

Příklad ParkovisteSpringDM pak dokumentuje jen technologicky specifické problémy. Výsledná implementace: Soubor:ParkovisteSpringDM.zip?

to:

TutoriálSpringDM na vytvoření nového projektu.

Jednoduchá implementace HelloWorld? HelloWorldSpringDM. Výsledná implementace: Attach:HelloSpringDM Δ

Příklad MessagePrinterSpringDM pak dokumentuje jen technologicky specifické problémy. Výsledná implementace: Attach:MessagePrinterSpringDM

Příklad ParkovisteSpringDM pak dokumentuje jen technologicky specifické problémy. Výsledná implementace: Attach:ParkovisteSpringDM

16 December 2009, 11:05 by Snajberk -
Added lines 1-16:

== Spring DM ==

V těchto návodech pracuji s [http://www.springsource.com/products/sts SpringSource? Tool Suite], které je trochu odlišné od Eclipsu. Většina věcí je však stejná.

Spring DM není plnohodnotný framework, ale jde o rozšíření OSGi. Spring DM má to nejlepší ze Springu i z OSGi. Při implementaci příkladů jsem vlastně vzal kompletní funkční část z OSGi - ale bez Activatorů. To je vlastně téměř jediný rozdíl v kódu oproti Osgi.

Místo activatorů jsou přítomny Springové xml soubory, které je velice dobře nahrazují.

Tutoriál SpringDM na vytvoření nového projektu.

Jednoduchá implementace HelloWorld? HelloWorldSpringDM. Výsledná implementace: Soubor:HelloSpringDM.zip?

Příklad MessagePrinterSpringDM pak dokumentuje jen technologicky specifické problémy. Výsledná implementace: Soubor:MessagePrinterSpringDM.zip?

Příklad ParkovisteSpringDM pak dokumentuje jen technologicky specifické problémy. Výsledná implementace: Soubor:ParkovisteSpringDM.zip?