Hlavní menu

Nástroje

UvodDoKomponent / MessagePrinterSpringDM

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

Updated 16 December 2009, 14:52 by Snajberk

UvodDoKomponent.MessagePrinterSpringDM History

Hide minor edits - Show changes to output

16 December 2009, 14:52 by Snajberk -
Added lines 1-38:
!! Message Printer ve Spring DM

Implementace ve Spring DM vychází z [[MessagePrinterOsgi]]. Odstranili jsme ale Activatory a přidali jsme Springové konfigurační soubory.

Springové konfigurační soubory musíme vytvořit s dvěmi XSD namespacy - beans a osgi.

!!! Serverový konfigurační soubor

Abychom mohli v OSGi zaregistrovat službu pomocí Spring DM, musíme udělat dva kroky:

1) Vytvořit si beanu, kterou chceme registrovat (tedy vlastně instanci třídy)

2) Pomocí tagu @@<osgi:service>@@ beanu zaregistrovat jako službu, kde:
* @@id@@ je víceméně na nic :)
* @@ref@@ je reference na registrovanou beanu
* @@interface@@ je rozhranní, pod kterým bude služba registrována

=java122 [=
<bean id="MsgGenService" class="cz.zcu.kiv.cosi.msgtalk.server.MsgGenImpl"></bean>

<osgi:service id="MsgGenServiceOsgi" ref="MsgGenService"
interface="cz.zcu.kiv.cosi.msgtalk.IMsgGen" />
=]

!!! Klientský konfigurační soubor

Protože chceme získat službu, která je zaregistrovaná na rozhranní @@cz.zcu.kiv.cosi.msgtalk.IMsgGen@@ použijeme notaci @@<osgi:reference>@@.

Pak už jen vytvoříme jednoduchou beanu se startovací a ukončovací metodou a předáme jí získanou službu pomocí property injection.

=java122 [=
<osgi:reference id="MsgGenService" interface="cz.zcu.kiv.cosi.msgtalk.IMsgGen" />

<bean name="MsgClient" class="cz.zcu.kiv.cosi.msgtalk.client.MsgClient"
init-method="start" destroy-method="stop" >
<property name="myMsgGen" ref="MsgGenService" />
</bean>
=]