<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>The Code-House Blog &#187; Open Source</title>
	<atom:link href="http://blog.code-house.org/category/open-source/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.code-house.org</link>
	<description>Blog niewielkiej firmy z branży IT.</description>
	<lastBuildDate>Fri, 11 Jun 2010 15:43:19 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.4</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Praktyki studenckie w Code-House</title>
		<link>http://blog.code-house.org/2010/04/praktyki-studenckie-w-code-house/</link>
		<comments>http://blog.code-house.org/2010/04/praktyki-studenckie-w-code-house/#comments</comments>
		<pubDate>Tue, 13 Apr 2010 11:35:52 +0000</pubDate>
		<dc:creator>Łukasz Dywicki</dc:creator>
				<category><![CDATA[Code-House]]></category>
		<category><![CDATA[Java]]></category>
		<category><![CDATA[Open Source]]></category>
		<category><![CDATA[Software]]></category>

		<guid isPermaLink="false">http://blog.code-house.org/?p=273</guid>
		<description><![CDATA[Jakiś czas temu Jacek Laskowski wspominał o praktykach studenckich w IBM.

Celem praktyk w IBM jest zapoznanie się z produktami korporacji, praktyki w Code-House mają nieco inny wymiar &#8211; przede wszystkim technologiczny. Część z dziedzin, w których obracamy się obecnie przy okazji ServiceMixa jest nieco futurystyczna (OSGi R 4.2, dOSGi), część za to bardzo praktyczna np. [...]]]></description>
			<content:encoded><![CDATA[<p>Jakiś czas temu <a href="http://jaceklaskowski.pl/">Jacek Laskowski</a> wspominał o <a href="http://jlaskowski.blogspot.com/2010/03/praktyki-studenckie-w-ibm-ta-edycja.html">praktykach studenckich w IBM</a>.<br />
<!-- more --><br />
Celem praktyk w IBM jest zapoznanie się z produktami korporacji, praktyki w Code-House mają nieco inny wymiar &#8211; przede wszystkim technologiczny. Część z dziedzin, w których obracamy się obecnie przy okazji ServiceMixa jest nieco futurystyczna (OSGi R 4.2, dOSGi), część za to bardzo praktyczna np. szerokie użycie Mavena oraz Spring Framework czy JAX-WS/JAX-RS. <strong>Cały kod, który powstanie w wyniku praktyk będzie opublikowany na licencji Apache 2.0 i udostępniony publicznie</strong>.</p>
<p>Pula tematów dla praktykantów obejmuje następujące projekty fundacji Apache:</p>
<ul>
<li>Apache ServiceMix 4</li>
<li>Apache Ode</li>
<li>Apache ActiveMQ</li>
<li>Apache Camel</li>
<li>Apache Karaf</li>
</ul>
<h2>Organizacja praktyk</h2>
<p>Praktyki <strong>są bezpłatne</strong> (niestety), odbywają się w trybie zdalnym i trwają do 3 miesięcy &#8211; termin rozpoczęcia praktyk jest uzgadniany ze studentem. Nie ma konieczności przebywania w naszym biurze &#8211; cały proces naboru aplikacji odbywa się przy pomocy Internetu i dopiero ostatni etap &#8211; rozmowa kwalifikacyjna &#8211; wymaga spotkania. Na co dzień konsultacje będziemy odbywać przy pomocy komunikatorów &#8211; Skype, GTalk, w skrajnym wypadku Gadu-Gadu. ;-) Co dwa tygodnie podsumowujemy minioną &#8220;iterację&#8221; oraz planujemy następną.<br />
Po wprowadzeniu do narzędzi i projektów studenci będą wypływać na głębokie wody &#8211; czyli samodzielną realizację zadań.</p>
<p>Do zarządzania, koordynacji zadań oraz dokumentacji i weryfikacji kodu wykorzystujemy narzędzia Atlassian:</p>
<ul>
<li>JIRA</li>
<li>Green Hopper</li>
<li>Confluence</li>
<li>Bamboo</li>
<li>Fisheye</li>
</ul>
<h2>Jak aplikować?</h2>
<p>Jedyną wymaganą cechą jest znajomość języka Java &#8211; która zostanie zweryfikowana testem. Jeśli dysponujesz tą cechą i jesteś miłośnikiem technologii zapraszamy do wysyłania aplikacji pod adres rekrutacja@code-house.org z tematem Praktyki 2010. Nabór aplikacji na najbliższą edycję praktyk prowadzimy do 20 kwietnia. W zależności od rezultatów będą organizowane kolejne.<br />
Nieco więcej informacji znajdziecie na stronie <a href="http://code-house.org/o-firmie/praktyki/2010">Praktyki Studenckie 2010</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.code-house.org/2010/04/praktyki-studenckie-w-code-house/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Wprowadzenie do Apache ServiceMix 4 cz. 1</title>
		<link>http://blog.code-house.org/2010/03/introduction-to-apache-servicemix4-part-1/</link>
		<comments>http://blog.code-house.org/2010/03/introduction-to-apache-servicemix4-part-1/#comments</comments>
		<pubDate>Mon, 22 Mar 2010 11:19:50 +0000</pubDate>
		<dc:creator>Łukasz Dywicki</dc:creator>
				<category><![CDATA[Camel]]></category>
		<category><![CDATA[Consulting]]></category>
		<category><![CDATA[FUSE Source]]></category>
		<category><![CDATA[Java]]></category>
		<category><![CDATA[Open Source]]></category>
		<category><![CDATA[ServiceMix]]></category>

		<guid isPermaLink="false">http://blog.code-house.org/?p=179</guid>
		<description><![CDATA[Dnia 23 lutego w ramach Warszawa JUG miałem przyjemność wraz z Tomkiem Nurkiewiczem prezentować narzędzia integracyjne z otwartym kodem źródłowym. Tomek przedstawił Mule ESB, podczas gdy ja zająłem się Apache ServiceMix i Apache Camel. Ze względu na objętość przykładu ten wpis będzie jedynie wprowadzeniem do konsoli.

Niestety podczas prezentacji nie udało mi się uruchomić przykładu na [...]]]></description>
			<content:encoded><![CDATA[<p>Dnia 23 lutego w ramach Warszawa JUG miałem przyjemność wraz z <a href="http://nurkiewicz.blogspot.com/">Tomkiem Nurkiewiczem</a> prezentować narzędzia integracyjne z otwartym kodem źródłowym. Tomek przedstawił Mule ESB, podczas gdy ja zająłem się Apache ServiceMix i Apache Camel. Ze względu na objętość przykładu ten wpis będzie jedynie wprowadzeniem do konsoli.<br />
<!-- more --><br />
Niestety podczas prezentacji nie udało mi się uruchomić przykładu na &#8220;szynie&#8221; &#8211; ponieważ uniemożliwiły to zależności do bibliotek których nie miałem zapisanych lokalnie. Drugim mym przeciwnikiem był czas &#8211; nie było wielu chętnych by słuchać po 2h tłumaczeń dlaczego się nie udało :-) Na problem z zależnościami stworzyłem rozwiązanie i zgłosiłem je do Karaf-a (<a href="https://issues.apache.org/jira/browse/FELIX-2141">FELIX 2141</a>). W przyszłej wersji &#8211; 1.6 &#8211; wszyscy będą mogli skorzystać z polecenia <tt>features:info -t</tt> które wyświetli całe drzewko zależności potrzebnych do zainstalowania nowych funkcjonalności.</p>
<h3>Przygotowanie środowiska</h3>
<p>Do uruchomienia przykładów potrzebować będziemy dwóch paczek &#8211; pierwsza to <a href="http://servicemix.apache.org">Apache ServiceMix</a>, druga to <a href="http://maven.apache.org">Apache Maven</a>. Ze swojej strony polecam pobranie <a href="http://fusesource.com/downloads/">FUSE ESB 4.2</a>, produktu który jest oparty o ServiceMix. Zgodnie z moimi zapowiedziami od tej wersji FUSE Source wprowadza pełne wsparcie produkcyjne dla ServiceMix 4. Jeśli nie masz zainstalowanego Mavena i nigdy tego nie robiłeś zajrzyj na wiki <a href="http://inside.code-house.org/confluence/">Code-House</a>: <a href="http://inside.code-house.org/confluence/display/MVN/Wprowadzenie+do+Maven+2">Wprowadzenie do Maven 2</a></p>
<p>Po pobraniu odpowiedniej wersji należy ją rozpakować do wybranego folderu. Szynę uruchamiamy skryptem servicemix.bat. Jeśli wszystko przebiegło poprawnie naszym oczom powinien ukazać się obrazek jak poniżej:</p>
<pre class="listing">
<span class="command">E:\tools\progress\fuse-esb\4.2.0-b\bin>servicemix.bat</span>
 ____                  _          __  __ _
/ ___|  ___ _ ____   _(_) ___ ___|  \/  (_)_  __
\___ \ / _ \ '__\ \ / / |/ __/ _ \ |\/| | \ \/ /
 ___) |  __/ |   \ V /| | (_|  __/ |  | | |>  <
|____/ \___|_|    \_/ |_|\___\___|_|  |_|_/_/\_\

  Apache ServiceMix (4.2.0-fuse-01-00)

Hit '<tab>' for a list of available commands
and '[cmd] --help' for help on a specific command.
karaf@root&gt;
</pre>
<p>Od tej chwili mamy do dyspozycji konsolę administracyjną. Aby zwiększyć jej użyteczność wykonujemy następujące polecenia:</p>
<pre class="listing">
karaf@root&gt; <span class="command">osgi:install wrap:mvn:http://download.java.net/maven/2!net.java.dev.jna/jna/3.1.0</span>
Bundle ID: 134
</pre>
<p>Spowoduje to pobranie z repozytorium Mavena (http://download.java.net/maven/2) biblioteki JNA w wersji 3.1.0. Nie musimy oczywiście określać za każdym razem adresu repozytoriów, ale o tym nieco później. Prefix wrap: spowoduje wygenerowanie manifestu OSGi na podstawie zawartości pobranej biblioteki. Jest on konieczny ponieważ JNA nie dostarcza potrzebnych danych do uruchomienia w środowisku OSGi.</p>
<pre class="listing">
karaf@root&gt; <span class="command">osgi:install mvn:http://jansi.fusesource.org/repo/release!org.fusesource.jansi/jansi/1.2</span>
Bundle ID: 135
</pre>
<p>Druga biblioteka wykorzystuje JNA i umożliwia kolorowanie tekstu w konsoli windowsowej zgodnie z ANSI, czyli tak jak w standardowych terminalach Unix-a. Po zainstalowaniu tych dwóch rzeczy pora zaprząc je do pracy. Poniżej filtrujemy listę zainstalowanych rzeczy po słowie Console.</p>
<pre class="listing">
karaf@root&gt; <span class="command">list|grep Console</span>
[  10] [Active     ] [Created     ] [       ] [   30] Apache Felix Karaf :: Shell Console (1.4.0.fuse-01-00)
karaf@root&gt; <span class="command">refresh 10</span>
</pre>
<p>Numer 10 oznacza id paczki OSGi, tekst Active to stan paczki a tekst Created informuje o stanie kontekstu blueprint, czwarty bloczek to stan kontekstu Springa, numer 30 to start level paczki a w ostatnim nawiasie mamy wersję. Sporo informacji jak na jedną linijkę, nieprawdaż? Blueprint to standaryzowanie tego czym jest Spring i Spring DM, także można korzystać zamiennie bądź z jednego bądź z drugiego rozwiązania. Ciekawe porównanie funkcjonalności obu rozwiązań &#8211; Spring DM oraz Blueprint opublikował kilka dni temu Guillaume Nodet na swoim blogu we wpisie <a href="http://gnodet.blogspot.com/2010/03/spring-dm-aries-blueprint-and-custom.html">Spring-DM, Aries Blueprint and custom namespaces</a>. Apache Camel od wersji 2.3 będzie wspierał Blueprint (<a href="https://issues.apache.org/activemq/browse/CAMEL-2022">CAMEL-2022</a>).</p>
<pre class="listing">
<span class="startup">
 ____                  _          __  __ _
/ ___|  ___ _ ____   _(_) ___ ___|  \/  (_)_  __
\___ \ / _ \ '__\ \ / / |/ __/ _ \ |\/| | \ \/ /
 ___) |  __/ |   \ V /| | (_|  __/ |  | | |>  <
|____/ \___|_|    \_/ |_|\___\___|_|  |_|_/_/\_\
</span><span class="bold">
  Apache ServiceMix</span> (4.2.0-fuse-01-00)

Hit '<span class="bold">&lt;tab&gt;</span>' for a list of available commands
and '<span class="bold">[cmd] --help</span>' for help on a specific command.
<span class="bold">karaf</span>@root&gt;
</pre>
<p>Teraz wykonanie poleceń z filtrem <strong>grep</strong> spowoduje podświetlenie szukanej frazy:</p>
<pre class="listing">
<span class="bold">karaf</span>@root&gt; <span class="command">list |grep Console</span>
[  10] [Active     ] [Created     ] [       ] [   30] Apache Felix Karaf :: Shell <span class="grep">Console</span> (1.4.0.fuse-01-00)
</pre>
<p>Takie małe udogodnienie przy przeglądaniu dłuższych rezultatów jest nieocenione.</p>
<h3>Podstawowe polecenia konsoli</h3>
<p>Polecenia w Apache Karaf są podzielone na kilka grup, które ułatwiają zarządzanie. Pierwszą grupą jest OSGi.</p>
<h4>Polecenia OSGi</h4>
<table class="listing">
<tr>
<th>Polecenie</th>
<th>Przeznaczenie</th>
</tr>
<tr>
<td>list</td>
<td>Wyświetlenie listy zainstalowanych paczek</td>
</tr>
<tr>
<td>ls [bundle id]</td>
<td>Wyświetlenie usług eksportowanych przez paczkę.</td>
</tr>
</tr>
<tr>
<td>ls -u [bundle id]</td>
<td>Wyświetlenie usług używanych przez paczkę.</td>
</tr>
<tr>
<td>headers [bundle id]</td>
<td>Wyświetlenie manifestu paczki.</td>
</tr>
<tr>
<td>start [bundle id]</td>
<td>Uruchomienie paczki o danym ID.</td>
</tr>
<tr>
<td>stop [bundle id]</td>
<td>Zatrzymanie paczki o danym ID.</td>
</tr>
<tr>
<td>restart [bundle id]</td>
<td>Zatrzymanie i wystartowanie paczki o danym ID.</td>
</tr>
<tr>
<td>update [bundle id]</td>
<td>Aktualizacja paczki.</td>
</tr>
<tr>
<td>refresh [bundle id]</td>
<td>Odświeżenie importów paczki a także przeładowanie kontekstu Spring-DM.</td>
</tr>
<tr>
<td>install [url]</td>
<td>Zainstalowanie nowej paczki.</td>
</tr>
<tr>
<td>uninstall [bundle id]</td>
<td>Odinstalowanie paczki.</td>
</tr>
<tr>
<td>shutdown</td>
<td>Zatrzymanie kontenera.</td>
</tr>
<tr>
<td>bundle-level [bundle id] [startLevel]</td>
<td rowspan="2">Ustawienie start levelu dla paczki.</td>
</tr>
<tr>
<td>start-level</td>
</tr>
</table>
<p>Kiedy znamy już listę poleceń nie pozostaje nic innego jak je wypróbować. :-) Checkout <a href="http://svn.code-house.org/wjug/">przykładowego kodu</a> z SVN pozwoli wykonać nam kilka ćwiczeń. Po wykonaniu polecenia <strong>mvn clean install</strong> w repozytorium Mavena są JARy które, naturalnie, chcemy zainstalować. Rezultat jaki powinniśmy zobaczyć w konsoli to:</p>
<pre class="listing">
[INFO] ------------------------------------------------------------------------
[INFO] Reactor Summary:
[INFO] ------------------------------------------------------------------------
[INFO] Money transfer ServiceMix example ..................... SUCCESS [2.028s]
[INFO] Money transfer :: API ................................. SUCCESS [3.182s]
[INFO] Money transfer :: POI bundle .......................... SUCCESS [7.504s]
[INFO] Money transfer :: Internal ............................ SUCCESS [0.093s]
[INFO] Money transfer :: Internal :: CSV ..................... SUCCESS [4.399s]
[INFO] Money transfer :: Internal :: XLS ..................... SUCCESS [2.823s]
[INFO] Money transfer :: Internal :: Mail .................... SUCCESS [2.309s]
[INFO] Money transfer :: Internal :: Splitter ................ SUCCESS [0.936s]
[INFO] Money transfer :: Internal :: Routes .................. SUCCESS [1:21.241s]
[INFO] Money transfer :: External ............................ SUCCESS [0.016s]
[INFO] Money transfer :: External :: Customer ................ SUCCESS [3.182s]
[INFO] Money transfer :: External :: Bank .................... SUCCESS [2.059s]
[INFO] Money transfer :: External :: Validator ............... SUCCESS [2.918s]
[INFO] Money transfer :: Features ............................ SUCCESS [0.171s]
[INFO] ------------------------------------------------------------------------
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESSFUL
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 1 minute 54 seconds
[INFO] Finished at: Mon Mar 22 10:47:27 CET 2010
[INFO] Final Memory: 127M/341M
[INFO] ------------------------------------------------------------------------
</pre>
<p>Może teraz kilka słów o modułach które są widoczne w Mavenie.</p>
<table class="listing">
<tr>
<th width="28%">Moduł</th>
<th width="32%">Ścieżka<br />Maven ID</th>
<th>Przeznaczenie</th>
</tr>
<tr>
<td>Money transfer :: API</td>
<td>api<br />org.code-house.samples/api</td>
<td>API systemów zewnętrznych oraz POJO wykorzystywane do komunikacji.</td>
</tr>
<tr>
<td>Money transfer :: POI bundle</td>
<td>poi<br />org.code-house.samples/poi</td>
<td>Bundle zawierający bibliotekę Apache POI oraz wszystkie jej zależności z Manifestem OSGi pozwalającym na jej uruchomienie na szynie.</td>
</tr>
<tr>
<td>Money transfer :: Internal :: CSV</td>
<td>internal/csv<br />org.code-house.samples.internal/csv</td>
<td>Paczka zawierająca implementację procesora przetwarzającego pliki CSV na POJO MoneyTransfer.</td>
</tr>
<tr>
<td>Money transfer :: Internal :: XLS</td>
<td>internal/xls<br />org.code-house.samples.internal/xls</td>
<td>Paczka zawierająca implementację procesora przetwarzającego pliki XLS na POJO MoneyTransfer.</td>
</tr>
<tr>
<td>Money transfer :: Internal :: Mail</td>
<td>internal/mail<br />org.code-house.samples.internal/mail</td>
<td>Paczka z kodem dzielącym przychodzący mail z załącznikami na pojedyncze wiadomości które można przetworzyć jako XLS bądź CSV.</td>
</tr>
<tr>
<td>Money transfer :: Internal :: Splitter</td>
<td>internal/splitter<br />org.code-house.samples.internal/splitter</td>
<td>Paczka z kodem odpowiedzialnym za rozdzielanie listy obiektów MoneyTransfer na listę wiadomości.</td>
</tr>
<tr>
<td><strong>Money transfer :: Internal :: Routes</strong></td>
<td>internal/routes<br />org.code-house.samples.internal/routes</td>
<td><strong>Główna paczka z definicjami routingu</strong></td>
</tr>
<tr>
<td>Money transfer :: External :: Customer</td>
<td>external/customer<br />org.code-house.samples.external/customer</td>
<td>Implementacja WebService odpowiedzialnego za pobieranie danych klienta na podstawie numeru rachunku bankowego.</td>
</tr>
<tr>
<td>Money transfer :: External :: Bank</td>
<td>external/bank<br />org.code-house.samples.external/bank</td>
<td>Implementacja usługi zwracającej informację o nazwie banku na podstawie numeru rachunku.</td>
</tr>
<tr>
<td>Money transfer :: External :: Validator</td>
<td>external/validator<br />org.code-house.samples.external/validator</td>
<td>Usługa weryfikująca czy MoneyTransfer jest poprawny.</td>
</tr>
<tr>
<td>Money transfer :: Features</td>
<td>features<br />org.code-house.samples/features</td>
<td>Moduł zawierający opcjonalny deskryptor do uruchomienia modułów.</td>
</tr>
</table>
<p>Jak widać dwa główne obszary projektu są skupione w katalogach internal oraz external. Ten pierwszy zawiera implementacje ściśle związaną z usługami natomiast drugi to &#8220;zatyczki&#8221; emulujące działanie systemów zewnętrznych. Drobna nota &#8211; kolumna Maven ID nie zawiera informacji o wersji &#8211; w każdym module jest to <strong>1.0.0.SNAPSHOT</strong>.</p>
<p>Aby zainstalować któryś bundle przechodzimy do konsoli ServiceMix&#8217;a i wykonujemy takie polecenia:</p>
<pre class="listing">
<span class="bold">karaf</span>@root&gt; <span class="command">install -s mvn:org.code-house.samples/api/1.0.0.SNAPSHOT</span>
Bundle ID: 210
<span class="bold">karaf</span>@root&gt; <span class="command">features:install camel-jetty</span>
<span class="bold">karaf</span>@root&gt; <span class="command">install -s mvn:org.code-house.samples.external/customer/1.0.0.SNAPSHOT</span>
Bundle ID: 211
</pre>
<p>Po wykonaniu tych poleceń powinien być uruchomiony Web Service którego WSDL znajduje się pod adresem http://localhost:9001/CustomerWs?wsdl. Przełącznik <strong>-s</strong> w przypadku polecenia install powoduje że po zainstalowaniu bundle zostanie wystartowany. Polecenie <strong>features-install camel-jetty</strong> jest potrzebne nie ze względu na to że kolejna paczka korzysta z Camela, dzięki jego wykonaniu zostanie zainstalowane Jetty, z którego korzysta CXF.</p>
<p>Kolejne paczki instalujemy analogicznie:</p>
<pre class="listing">
<span class="bold">karaf</span>@root&gt; <span class="command">features:install camel-activemq</span>
<span class="bold">karaf</span>@root&gt; <span class="command">install -s mvn:org.code-house.samples.external/validator/1.0.0.SNAPSHOT</span>
Bundle ID: 215
<span class="bold">karaf</span>@root&gt; <span class="command">install -s mvn:org.code-house.samples.external/bank/1.0.0.SNAPSHOT</span>
Bundle ID: 217
</pre>
<p>Rozszerzenie <a href="http://camel.apache.org/activemq.html">camel-activemq</a> jest rozszerzeniem modułu <a href="http://camel.apache.org/jms.html">camel-jms</a> które pozwala na nieco wydajniejszą pracę z <a href="http://activemq.apache.org">ActiveMQ</a>.</p>
<h4>Integracja ServiceMix z repozytoriami Mavena</h4>
<p>Maven jako narzędzie do budowania korzysta z określonego schematu składowania bibliotek które następnie są automatycznie pobierane. Karaf, który jak wspomniałem podczas prezentacji, wyłonił się z projektu ServiceMix Kernel korzysta z biblioteki <a href="http://wiki.ops4j.org/display/paxurl/Documentation">Pax URL</a>. Dzięki temu z marszu mamy dostęp do standardowych repozytoriów Mavena, co jednak gdy mamy swoje repozytorium, które zawiera tylko nasze artefakty?<br />
Otwieramy plik etc/org.ops4j.pax.url.mvn.cfg i dodajemy w nim co trzeba. Moja standardowa konfiguracja wygląda następująco:</p>
<pre class="brush: plain;">
org.ops4j.pax.url.mvn.settings=E:/tools/maven-2.2.1/conf/settings.xml
org.ops4j.pax.url.mvn.localRepository=E:/repository
org.ops4j.pax.url.mvn.defaultRepositories=file:${karaf.home}/${karaf.default.repository}@snapshots
org.ops4j.pax.url.mvn.repositories= \
    http://repo1.maven.org/maven2, \
    http://repo.fusesource.com/maven2, \
    http://repo.fusesource.com/maven2-snapshot@snapshots@noreleases, \
    http://repository.apache.org/content/groups/snapshots-group@snapshots@noreleases, \
    http://repository.ops4j.org/maven2, \
    http://svn.apache.org/repos/asf/servicemix/m2-repo, \
    http://repository.springsource.com/maven/bundles/release, \
    http://repository.springsource.com/maven/bundles/external, \
    http://repository.code-house.org/content/groups/release, \
    http://repository.code-house.org/content/groups/snapshot@snapshots@noreleases, \
    http://jansi.fusesource.org/repo/release
</pre>
<p>Dzięki temu PAX w pierwszej kolejności będzie skanował katalog E:/repository zamiast standardowego ~/.m2/repository. Jeśli któreś z repozytoriów wymaga autoryzacji adres powinien wyglądać następująco:</p>
<pre class="brush: plain;">http://user:pass@jansi.fusesource.org/repo/release</pre>
<h3>Podsumowanie</h3>
<p>Mam nadzieję że wpis ten przybliży chociaż w niewielkim stopniu ServiceMix 4 oraz Karafa. W przyszłym wpisie, którego daty publikacji nie sposób przewidzieć zostaną dokładniej omówione polecenia z grupy <strong>features</strong>. Póki co życzę miłej zabawy z konsolą. :-) W razie pytań, niejasności i problemów &#8211; proszę o komentarze.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.code-house.org/2010/03/introduction-to-apache-servicemix4-part-1/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Spring 3.0 RC3 + Maven</title>
		<link>http://blog.code-house.org/2009/12/spring-3-0-rc3-maven/</link>
		<comments>http://blog.code-house.org/2009/12/spring-3-0-rc3-maven/#comments</comments>
		<pubDate>Tue, 01 Dec 2009 18:25:34 +0000</pubDate>
		<dc:creator>Łukasz Dywicki</dc:creator>
				<category><![CDATA[Java]]></category>
		<category><![CDATA[Open Source]]></category>
		<category><![CDATA[Spring Source]]></category>

		<guid isPermaLink="false">http://blog.code-house.org/?p=162</guid>
		<description><![CDATA[Właśnie wyłapałem na Twitterze, że Spring 3.0 RC3 został wydany.
Dla tych, którzy chcieli by pobrać nową wersję do swojego projektu opartego o Mavena drobna informacja &#8211; repozytorium z tymi artefaktami znajduje się pod adresem http://maven.springframework.org/milestone. Miejmy nadzieję, że będzie to repozytorium które się nie zmieni po 3 miesiącach na inne.
W razie problemów &#8211; można zawsze [...]]]></description>
			<content:encoded><![CDATA[<p>Właśnie wyłapałem na Twitterze, że <a href="http://www.springsource.com/download?project=Spring%20Framework">Spring 3.0 RC3</a> został wydany.</p>
<p>Dla tych, którzy chcieli by pobrać nową wersję do swojego projektu opartego o Mavena drobna informacja &#8211; repozytorium z tymi artefaktami znajduje się pod adresem <a href="http://maven.springframework.org/milestone">http://maven.springframework.org/milestone</a>. Miejmy nadzieję, że będzie to repozytorium które się nie zmieni po 3 miesiącach na inne.</p>
<p>W razie problemów &#8211; można zawsze skorzystać z repozytorium utrzymywanego na <a href="http://repository.code-house.org/content/repositories/com.springsource.repository.bundles.milestone/">serwerze Code-House</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.code-house.org/2009/12/spring-3-0-rc3-maven/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>ServiceMix IDE integration</title>
		<link>http://blog.code-house.org/2009/07/servicemix-ide-integration/</link>
		<comments>http://blog.code-house.org/2009/07/servicemix-ide-integration/#comments</comments>
		<pubDate>Tue, 07 Jul 2009 06:00:20 +0000</pubDate>
		<dc:creator>Łukasz Dywicki</dc:creator>
				<category><![CDATA[FUSE Source]]></category>
		<category><![CDATA[Open Source]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[Eclipse]]></category>
		<category><![CDATA[maven]]></category>
		<category><![CDATA[ServiceMix IDE]]></category>

		<guid isPermaLink="false">http://blog.code-house.org/?p=88</guid>
		<description><![CDATA[Jakiś czas temu zapraszaliśmy na tym blogu zainteresowanych na Warszawski Eclipse DemoCamp Galileo 2009. Jest nam niezmiernie miło ogłosić, że temat poruszany na tym spotkaniu przez Code-House Software został kontynuowany. Wsparcie dla Apache ServiceMix w oparciu o Spring IDE zainteresowało społeczność jak i organizacje skupione wokół projektu, między innymi FUSE Source. Nie będzie to oczywiście [...]]]></description>
			<content:encoded><![CDATA[<p>Jakiś czas temu <a href="http://blog.code-house.org/2009/05/warszawski-eclipse-democamp-galileo-2009/">zapraszaliśmy na tym blogu</a> zainteresowanych na Warszawski Eclipse DemoCamp Galileo 2009. Jest nam niezmiernie miło ogłosić, że temat poruszany na tym spotkaniu przez Code-House Software został kontynuowany. Wsparcie dla <a href="http://servicemix.apache.org/">Apache ServiceMix</a> w oparciu o <a href="http://springide.org">Spring IDE</a> zainteresowało społeczność jak i organizacje skupione wokół projektu, między innymi <a href="http://fusesource.com/">FUSE Source</a>. Nie będzie to oczywiście alternatywa dla narzędzi oferowanych przez tą firmę a raczej dopełnienie funkcjonalności, których w tej chwili trudno szukać.<br />
<!-- more --><br />
Strona projektu znajduje się na razie na <a href="http://projects.code-house.org/wiki/sm-ide">wiki</a> bug trackera Code-House i jest na nim kilka informacji odnośnie celów projektu i nawet parę zadań. :-) Na pytanie kiedy pojawi się działająca wersja ciężko nam odpowiedzieć ponieważ w obecnej chwili siły przerobowe naszej firmy oprócz zaangażowania w kontrakt muszą podołać przygotowaniu akcji marketingowej w prasie oraz internecie. Miejmy nadzieję, że przed końcem wakacji pojawi się działająca wersja. Oczywiście nie jest to jedyny sposób w jaki Code-House wspiera społeczność projektu Apache ServiceMix, w planach mamy wspomaganie paru komponentów które wzbogacą funkcjonalność magistrali.</p>
<p>Obecnie projekt ma przygotowaną infrastrukturę w oparciu o <a href="http://maven.apache.org">Apache Maven 2</a> tak by całość mogła być budowana automatycznie. Sporym problemem z tworzeniem rozszerzeń do <a href="http://eclipse.org">Eclipse IDE</a> jest właśnie ciągła integracja. Zazwyczja cały proces jest realizowany przy pomocy generowanych plików zgodnych z <a href="http://ant.apache.org">Apache Ant</a>. Niestety by je uruchomić trzeba i tak mieć lokalną instalację Eclipse. Po kilku dniach wysiłków udało się jednak znaleźć rozwiązanie a lokalną instalację wykorzystywać tylko w przypadku konieczności. Zainteresowanych zapraszam do repozytorium ze <a href="http://svn.code-house.org/servicemix-ide/">źródłami projektu</a>. </p>
<p>Ogólnie rzecz biorąc budowanie wtyczek, update site (czy repozytoriów p2), bez użycia Eclipse jest zadaniem trudnym. Mimo tego, że <a href="http://eclipsesource.com/blogs/2009/06/10/p2-publisher-part-ii/">P2 Publisher</a> wygląda na niezależny od samego Eclipse nie można go uruchomić poza OSGi/Equinox. Próbowaliśmy obejść ten problem dodając własne implementacje części interfejsów jednak ilość zależności w kodzie jest bardzo duża i po pół dnia walki niestety trzeba było zrezygnować by nie zabrnąć w ślepą uliczkę. Podobnie ma się kwestia z taskami ant, które są równie oporne w działaniu. Alternatywą był projekt <a href="http://www.eclipse.org/buckminster/">Buckminster</a> i adaptery do Mavena. Budowanie jednak również musiało by wówczas być takie jak zwykle w świecie Eclipse &#8211; przez Ant.</p>
<p>Rozwiązaniem okazało się połączenie <a href="http://maven.apache.org/plugins/maven-eclipse-plugin/to-maven-mojo.html">maven-eclipse-plugin:to-maven</a> oraz <a href="http://felix.apache.org/site/apache-felix-maven-bundle-plugin-bnd.html">maven-bundle-plugin</a> z projektu <a href="http://felix.apache.org/">Apache Felix</a>. Pierwszy zapewnił wyeksportowanie platformy Eclipse do naszego <a href="http://repository.code-house.org/">repozytorim Mavena</a> podczas gdy drugi generuje odpowiednie manifesty zgodne z OSGi. Update site jest już końcową fazą budowania. Z użyciem <a href="http://maven.apache.org/plugins/maven-assembly-plugin/">maven-assembly-plugin</a> tworzymy strukturę właściwą Eclipse. Opcjonalnym elementem, który wymaga instalacji Eclipse na komputerze jest stworzenie repozytorium P2 uruchamianym przez <a href="http://mojo.codehaus.org/exec-maven-plugin/exec-mojo.html">maven-exec-plugin:exec</a>. Pracy było dużo ale mamy nadzieję że zaprocentuje ona w przyszłości przyśpieszając development i wprowadzanie zmian do projektu. Po więcej informacji o postępach w pracach zapraszam ponownie na blog do kategorii ServiceMix IDE.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.code-house.org/2009/07/servicemix-ide-integration/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Materiały z Eclipse DemoCamp</title>
		<link>http://blog.code-house.org/2009/06/materialy-z-eclipse-democamp/</link>
		<comments>http://blog.code-house.org/2009/06/materialy-z-eclipse-democamp/#comments</comments>
		<pubDate>Wed, 03 Jun 2009 15:45:25 +0000</pubDate>
		<dc:creator>Łukasz Dywicki</dc:creator>
				<category><![CDATA[Eclipse]]></category>
		<category><![CDATA[Open Source]]></category>
		<category><![CDATA[Software]]></category>

		<guid isPermaLink="false">http://blog.code-house.org/?p=64</guid>
		<description><![CDATA[Zgodnie z obietnicą z poprzedniego postu zamieszczam materiały z prezentacji którą wczoraj przeprowadziłem w ramach Warszawskiego Eclipse DemoCamp Galileo 2009.
 Celem prezentacji było dodanie obsługi nowej (niestandardowej) przestrzeni nazw w Spring IDE. Jako dobry przykład rozbudowanej przestrzeni nazw wybrałem konfigurację komponentu servicemix-file. Jako że nie udało mi się przed prezentacją zmusić Apache XBean do pracy [...]]]></description>
			<content:encoded><![CDATA[<p>Zgodnie z obietnicą z <a href="http://blog.code-house.org/2009/05/warszawski-eclipse-democamp-galileo-2009/">poprzedniego</a> postu zamieszczam materiały z prezentacji którą wczoraj przeprowadziłem w ramach <a href="http://groups.google.com/group/warszawa-jug/web/eclipse-democamp-2009">Warszawskiego Eclipse DemoCamp Galileo 2009</a>.</p>
<p><a href="http://blog.code-house.org/wp-content/uploads/ide2.png"><img src="http://blog.code-house.org/wp-content/uploads/ide2-300x179.png" alt="Spring IDE" title="Spring IDE" width="300" height="179" class="alignright size-medium wp-image-66" /></a> Celem prezentacji było dodanie obsługi nowej (niestandardowej) przestrzeni nazw w Spring IDE. Jako dobry przykład rozbudowanej przestrzeni nazw wybrałem konfigurację komponentu <a href="http://servicemix.apache.org/SM/servicemix-file.html">servicemix-file</a>. Jako że nie udało mi się przed prezentacją zmusić <a href="http://geronimo.apache.org/xbean/">Apache XBean</a> do pracy wewnątrz Eclipse musiałem stworzyć własny namespace handler. Dopiero wczoraj, późno w nocy stworzyłem <a href="https://issues.apache.org/jira/browse/XBEAN-132">patch</a> który umożliwia podpięcie normalnego handlera. Jakkolwiek przykład dla spójności pozostał ze starym kodem.</p>
<p>Zapraszam do pobierania <a href="http://code-house.org/downloads/software/prezentacje/Spring IDE.ppsx">slajdów</a> z prezentacji oraz kodu <a href="http://code-house.org/downloads/software/przyklady/Spring IDE.zip">kodu źródłowego</a> projektu.</p>
<p>Niestety nie udało mi się omówić wszystkich aspektów które chciałem, zatem możecie spodziewać się publikacji na temat rozszerzania Spring IDE. :-).</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.code-house.org/2009/06/materialy-z-eclipse-democamp/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Warszawski Eclipse DemoCamp Galileo 2009</title>
		<link>http://blog.code-house.org/2009/05/warszawski-eclipse-democamp-galileo-2009/</link>
		<comments>http://blog.code-house.org/2009/05/warszawski-eclipse-democamp-galileo-2009/#comments</comments>
		<pubDate>Sat, 30 May 2009 12:01:26 +0000</pubDate>
		<dc:creator>Łukasz Dywicki</dc:creator>
				<category><![CDATA[Eclipse]]></category>
		<category><![CDATA[Open Source]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[Spring Source]]></category>

		<guid isPermaLink="false">http://blog.code-house.org/?p=58</guid>
		<description><![CDATA[W dniu 2 czerwca 2009 odbędzie się Warszawski Eclipse DemoCamp Galileo 2009, nasza firma wspiera to wydarzenie merytorycznie oraz finansowo. Głównym sponsorem jest fundacja Eclipse.
Działanie to doskonale wpisuje się w profil naszej firmy, której celem jest współpraca ze społecznością oraz promowanie rozwiązań Open Source &#8211; Spring IDE &#8211; o którym będzie mowa to projekt z [...]]]></description>
			<content:encoded><![CDATA[<p>W dniu 2 czerwca 2009 odbędzie się <a href="http://groups.google.com/group/warszawa-jug/web/eclipse-democamp-2009">Warszawski Eclipse DemoCamp Galileo 2009</a>, nasza firma wspiera to wydarzenie merytorycznie oraz finansowo. Głównym sponsorem jest <a href="http://www.eclipse.org/">fundacja Eclipse</a>.<br />
Działanie to doskonale wpisuje się w profil naszej firmy, której celem jest współpraca ze społecznością oraz promowanie rozwiązań Open Source &#8211; Spring IDE &#8211; o którym będzie mowa to projekt z otwartym kodem źródłowym rozwijanym w dużej mierze przez <a href="http://springsource.com">SpringSource</a>.</p>
<p>Tematy które będą prezentowane:</p>
<ul>
<li><b>18:00-18:15 Spring IDE, czyli o wsparciu dla Springa wewnątrz IDE</b>. <em>Łukasz Dywicki</em></li>
<li>18:20-18:35 Wyślij swoją myszę na urlop, czyli o skrótach i szablonach w Eclipse. <em>Wojciech Erbetowski</em></li>
<li>18:40-18:55 Wtyczka do Eclipse w 5 &#8230; no może 15 minut. <em>Mateusz Zięba</em></li>
<li>19:00-19:15 Rozszerzanie JDT dzięki Equinox Aspects i AJDT weaving service. <em>Michał &#8220;migi&#8221; Grzejszczak</em></li>
<li>19:20-19:35 Z Eclipsem w chmurach w 15 minut, czyli jak użyć GoogleApp Engine wraz z pluginem do Eclipse, aby uruchomić aplikację w 15 minut. <em>Łukasz Lenart</em></li>
<li>19:40-19:55 Oracle JRockit Mission Control, czyli demonstracja profilowania i diagnostyki aplikacji Java przy użyciu Eclipse. <em>Waldemar Kot</em></li>
</ul>
<p>Pierwsza pogrubiona prezentacja to nasza :-). Co kryje się w podtytule <em>wsparcie dla Springa wewnątrz IDE</em>? Głownie obszary związane z edycja kontekstu zapisanego w XML, co dokładnie? Tego dowiecie się już na prezentacji. Materiały jak i przykłady zostaną opublikowane na tym blogu po wtorku. Raz jeszcze serdecznie zapraszam na świętowanie nowego wydania. :)</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.code-house.org/2009/05/warszawski-eclipse-democamp-galileo-2009/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Szukasz Eclipse? Jest na Code-House!</title>
		<link>http://blog.code-house.org/2009/05/szukasz-eclipse-jest-code-house/</link>
		<comments>http://blog.code-house.org/2009/05/szukasz-eclipse-jest-code-house/#comments</comments>
		<pubDate>Thu, 14 May 2009 19:39:57 +0000</pubDate>
		<dc:creator>Łukasz Dywicki</dc:creator>
				<category><![CDATA[Code-House]]></category>
		<category><![CDATA[Eclipse]]></category>
		<category><![CDATA[Open Source]]></category>

		<guid isPermaLink="false">http://blog.code-house.org/?p=35</guid>
		<description><![CDATA[Z ogromną przyjemnością pragniemy poinformować, że od 2 dni z naszego serwera można pobrać wszystkie projekty rozwijane w ramach fundacji Eclipse. Dołączyliśmy tym samym do grona 2 innych polskich mirrorów.
Od strony technicznej mirror jest uruchomiony na lighthttpd, oddzielnym IP oraz dedykowanym dysku USB 600 GB. Serwer stoi na łączu 100 mbps, stąd osiągane transfery powinny [...]]]></description>
			<content:encoded><![CDATA[<p>Z ogromną przyjemnością pragniemy poinformować, że od 2 dni z naszego serwera można pobrać wszystkie projekty rozwijane w ramach fundacji <a href="http://eclipse.org">Eclipse</a>. Dołączyliśmy tym samym do grona 2 innych polskich mirrorów.</p>
<p><a href="http://blog.code-house.org/wp-content/uploads/eclipse-mirror1.png"><img src="http://blog.code-house.org/wp-content/uploads/eclipse-mirror1.png" alt="Pobieramy z Code-House" title="Pobieramy z Code-House" width="487" height="177" class="alignleft size-full wp-image-40" /></a>Od strony technicznej mirror jest uruchomiony na <a href="http://www.lighttpd.net/">lighthttpd</a>, oddzielnym IP oraz dedykowanym dysku USB 600 GB. Serwer stoi na łączu 100 mbps, stąd osiągane transfery powinny być zadowalające i użytkownicy szerokopasmowych łączy nie powinni odczuwać żadnego spowolnienia. Na naszym firmowym łączu &#8211; 10 mbps &#8211; udało się osiągnąć ponad 1M/s, czyli tyle ile fabryka dała! :-)</p>
<p>Ruch który generuje mirror to około 20MB/s, czyli od samego początku zaczął być używany w miarę intensywnie. Synchronizacja przy transferze 12 MB/s trwa nieco ponad godzinę. Rozmiar wszystkich plików to niecałe 260 GB, najwięcej miejsca zajmuje:</p>
<ul>
<li><a href="http://www.eclipse.org/projects/listofprojects.php#technology">Technology</a>, 51 GB</li>
<li><a href="http://www.eclipse.org/projects/listofprojects.php#tools">Eclipse tools</a>, 32 GB (AJDT, PDT itp)</li>
<li><a href="http://www.eclipse.org/projects/listofprojects.php#birt">BIRT</a>, 32 GB</li>
<li><a href="http://www.eclipse.org/platform/">Platform</a>, 28 GB</li>
<li><a href="http://www.eclipse.org/projects/listofprojects.php#tptp">TPTP</a>, 27 GB</li>
<li><a href="http://www.eclipse.org/projects/listofprojects.php#webtools">Web tools</a>, 16 GB</li>
</ul>
<p><a href="http://blog.code-house.org/wp-content/uploads/download-code-house.png"><img src="http://blog.code-house.org/wp-content/uploads/download-code-house-300x121.png" alt="Download manager" title="Download manager" width="300" height="121" class="alignright size-medium wp-image-36" /></a><br />
Przyznacie, że WebTools które wydaje się dosyć duże jest nisko w rankingu a TPTP, które używa się sporadycznie jest objętościowo niewiele mniejsze od platformy. Nie dziwi natomiast wysoka pozycja BIRT i Tools.</p>
<p>Mamy nadzieję że nowa usługa przyda się użytkownikom Eclipse, zapraszamy do korzystania. Pobranie Eclipse z Code-House to tylko kilka minut :).</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.code-house.org/2009/05/szukasz-eclipse-jest-code-house/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>SpringSource kupuje Hyperic</title>
		<link>http://blog.code-house.org/2009/05/springsource-kupuje-hyperic/</link>
		<comments>http://blog.code-house.org/2009/05/springsource-kupuje-hyperic/#comments</comments>
		<pubDate>Wed, 06 May 2009 06:55:24 +0000</pubDate>
		<dc:creator>Łukasz Dywicki</dc:creator>
				<category><![CDATA[Hyperic]]></category>
		<category><![CDATA[Open Source]]></category>
		<category><![CDATA[Spring Source]]></category>

		<guid isPermaLink="false">http://blog.code-house.org/?p=24</guid>
		<description><![CDATA[Branża IT ostatnimi czasy jest targana coraz to nowymi wiadomościami o łączeniu się firm. Początkowe spekulacje o tym, że IBM chcę przejąć Javę zakończyły się tym, że Oracle kupiło Sun Microsystems. Wywołało to nie lada falę w społeczności z pytaniami co dalej z Javą i bazą MySQL? Dwa dni temu, dokładnie 4 maja 2009 SpringSource przejęło Hyperic. O ile pierwsza nazwa jest zapewne znana większości z Was o tyle druga może być niejasna. ]]></description>
			<content:encoded><![CDATA[<p>Branża IT ostatnimi czasy jest targana coraz to nowymi wiadomościami o łączeniu się firm. Początkowe spekulacje o tym, że <a href="http://ibm.com">IBM</a> chcę przejąć Javę zakończyły się tym, że <a href="http://oracle.com">Oracle</a> kupiło <a href="http://sun.com">Sun Microsystems</a>. Wywołało to nie lada falę w społeczności z pytaniami co dalej z Javą i bazą <a href="http://mysql.com">MySQL</a>?</p>
<p>Nie będziemy jednak roztrząsać strategii takiego giganta jak Oracle, ponieważ jest już świeższy news. :) Dwa dni temu, dokładnie 4 maja 2009 <a href="http://springsource.com/">SpringSource</a> przejęło <a href="http://hyperic.com">Hyperic</a>. O ile pierwsza nazwa jest zapewne znana większości z Was o tyle druga może być niejasna. </p>
<p>Hyperic jest producentem oprogramowania do monitoringu IT, jego czołowym produktem jest Hyperic HQ w wersji <a href="http://www.hyperic.com/products/enterprise-systems-monitoring.html">Enterprise</a> oraz <a href="http://www.hyperic.com/products/open-source-systems-monitoring.html">Open Source</a>. HQ jest również przygotowane do tego by je <a href="http://support.hyperic.com/display/DOC/Plugin+Development+Center">rozszerzać</a>. W oparciu o nie <a href="http://fusesource.com">FUSE Source</a> dostarcza <a href="http://fusesource.com/products/fuse-hq/">FUSE HQ</a> a samo SpringSource narzędzie nazwane <a href="http://www.springsource.com/products/ams">Application Management Suite</a> (w skrócie AMS). O popularności samego HQ może świadczyć fakt, że jego darmowa wersja jest uruchomiona w liczbie 5 000 instancji.</p>
<p>Na czym jest zbudowane Hyperic HQ? Otóż w HQ jest wydzielony agent oraz serwer. Agent to niewielki program uruchomiony na monitorowanej maszynie który wykrywa usługi. Serwer do którego się łączy agent agreguje przesłane dane i w oparciu o nie może wysyłać powiadomienia o wyczerpującym się miejscu na dysku, zbyt dużym obciążeniu bazy danych. Serwer jest oparty o JBoss AS (wyobrażacie sobie klaster monitoringu). Kod aplikacji to typowe J2EE z Hibernate, Quartzem i innymi dobrze znanymi rozwiązaniami pod spodem.</p>
<p>Co przemawiało za tym zakupem? SpringSource już przy przejmowaniu <a href="http://g2one.com/">G2One</a> mówił o zainteresowaniu czymś związanym z wirtualizacją i hardware &#8211; Hyperic w tym wypadku jest bardzo dobrym zakupem dzięki któremu firma stojąca za Springiem będzie mogło zaoferować wsparcie od najwcześniejszych faz projektu po wdrożenie go na dziesiątki serwerów. Nikt nie spekulował o tym że celem może być Hyperic, i jest to miła niespodzianka. Pytanie czy do wykupu ma się przygotowywać <a href="http://gridgain.com">GridGain</a> i <a href="http://www.terracotta.org/">Terracota</a>? Na odpowiedź w Code-House czekamy z wypiekami na twarzy. :) Rod Johnson na oficjalnym blogu podkreśla że ten zakup będzie procentował łatwością monitorowania aplikacji opartych o Springa i serwerów które produkuje SpringSource. Nie pomija on również faktu że obie firmy rozwijały się w podobny sposób, z tym że w nieco innych obszarach.</p>
<p>Z perspektywy Code-House zakup ten jest powodem do radości ponieważ zarówno z pierwszą jak i drugą firmą prowadziliśmy rozmowy o możliwości współpracy. Połączenie tych dwóch kompanii z pewnością uprości przystępowanie do programów partnerskich i miejmy nadzieję obniży koszty. SpringSource realizuje jasną wizję, co bardzo się nam podoba.</p>
<p>Więcej w sieci:</p>
<ul>
<li><a href="http://www.hyperic.com/springsource/">Oficjalna informacja na stronie Hyperic.</a></li>
<li><a href="http://www.hyperic.com/blog/springsource/">Wpis na blogu Hyperic.</a></li>
<li><a href="http://blog.springsource.com/2009/05/04/hyperic/">Wypowiedź Roda Johnson ze SpringSource.</a></li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://blog.code-house.org/2009/05/springsource-kupuje-hyperic/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
