<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2polishfull.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rss 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/" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0">

<channel>
	<title>dev garden</title>
	
	<link>http://darekzon.com</link>
	<description>when technology meets nature</description>
	<lastBuildDate>Thu, 12 Nov 2009 11:43:35 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/rss+xml" href="http://feeds.feedburner.com/darekzon" /><feedburner:info uri="darekzon" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><feedburner:feedFlare href="http://add.my.yahoo.com/rss?url=http%3A%2F%2Ffeeds.feedburner.com%2Fdarekzon" src="http://us.i1.yimg.com/us.yimg.com/i/us/my/addtomyyahoo4.gif">Subscribe with My Yahoo!</feedburner:feedFlare><feedburner:feedFlare href="http://www.newsgator.com/ngs/subscriber/subext.aspx?url=http%3A%2F%2Ffeeds.feedburner.com%2Fdarekzon" src="http://www.newsgator.com/images/ngsub1.gif">Zapisz w NewsGator Online</feedburner:feedFlare><feedburner:feedFlare href="http://client.pluck.com/pluckit/prompt.aspx?GCID=C12286x053&amp;a=http%3A%2F%2Ffeeds.feedburner.com%2Fdarekzon" src="http://www.pluck.com/images/rss-pluck.gif">Zapisz w czytniku Pluck RSS</feedburner:feedFlare><feedburner:feedFlare href="http://feeds.my.aol.com/add.jsp?url=http%3A%2F%2Ffeeds.feedburner.com%2Fdarekzon" src="http://o.aolcdn.com/myfeeds/html/vis/myaol_cta1.gif">Zapisz w My AOL</feedburner:feedFlare><feedburner:feedFlare href="http://www.bloglines.com/sub/http://feeds.feedburner.com/darekzon" src="http://www.bloglines.com/images/sub_modern11.gif">Zapisz w Bloglines</feedburner:feedFlare><feedburner:feedFlare href="http://www.netvibes.com/subscribe.php?url=http%3A%2F%2Ffeeds.feedburner.com%2Fdarekzon" src="http://www.netvibes.com/img/add2netvibes.gif">Dodaj do netvibes</feedburner:feedFlare><feedburner:feedFlare href="http://fusion.google.com/add?feedurl=http%3A%2F%2Ffeeds.feedburner.com%2Fdarekzon" src="http://buttons.googlesyndication.com/fusion/add.gif">Dodaj do Google</feedburner:feedFlare><feedburner:feedFlare href="http://www.pageflakes.com/subscribe.aspx?url=http%3A%2F%2Ffeeds.feedburner.com%2Fdarekzon" src="http://www.pageflakes.com/ImageFile.ashx?instanceId=Static_4&amp;fileName=ATP_blu_91x17.gif">Subscribe with Pageflakes</feedburner:feedFlare><feedburner:feedFlare href="http://www.plusmo.com/add?url=http%3A%2F%2Ffeeds.feedburner.com%2Fdarekzon" src="http://plusmo.com/res/graphics/fbplusmo.gif">Subscribe with Plusmo</feedburner:feedFlare><feedburner:feedFlare href="http://www.thefreedictionary.com/_/hp/AddRSS.aspx?http%3A%2F%2Ffeeds.feedburner.com%2Fdarekzon" src="http://img.tfd.com/hp/addToTheFreeDictionary.gif">Subscribe with The Free Dictionary</feedburner:feedFlare><feedburner:feedFlare href="http://www.bitty.com/manual/?contenttype=rssfeed&amp;contentvalue=http%3A%2F%2Ffeeds.feedburner.com%2Fdarekzon" src="http://www.bitty.com/img/bittychicklet_91x17.gif">Subscribe with Bitty Browser</feedburner:feedFlare><feedburner:feedFlare href="http://www.newsalloy.com/?rss=http%3A%2F%2Ffeeds.feedburner.com%2Fdarekzon" src="http://www.newsalloy.com/subrss3.gif">Subscribe with NewsAlloy</feedburner:feedFlare><feedburner:feedFlare href="http://www.live.com/?add=http%3A%2F%2Ffeeds.feedburner.com%2Fdarekzon" src="http://tkfiles.storage.msn.com/x1piYkpqHC_35nIp1gLE68-wvzLZO8iXl_JMledmJQXP-XTBOLfmQv4zhj4MhcWEJh_GtoBIiAl1Mjh-ndp9k47If7hTaFno0mxW9_i3p_5qQw">Subscribe with Live.com</feedburner:feedFlare><feedburner:feedFlare href="http://mix.excite.eu/add?feedurl=http%3A%2F%2Ffeeds.feedburner.com%2Fdarekzon" src="http://image.excite.co.uk/mix/addtomix.gif">Subscribe with Excite MIX</feedburner:feedFlare><feedburner:feedFlare href="http://download.attensa.com/app/get_attensa.html?feedurl=http%3A%2F%2Ffeeds.feedburner.com%2Fdarekzon" src="http://www.attensa.com/blogs/attensa/WindowsLiveWriter/BadgeredintoBadges_10C02/attensa_feed_button5.gif">Subscribe with Attensa for Outlook</feedburner:feedFlare><feedburner:feedFlare href="http://www.webwag.com/wwgthis.php?url=http%3A%2F%2Ffeeds.feedburner.com%2Fdarekzon" src="http://www.webwag.com/images/wwgthis.gif">Subscribe with Webwag</feedburner:feedFlare><feedburner:feedFlare href="http://www.podcastready.com/oneclick_bookmark.php?url=http%3A%2F%2Ffeeds.feedburner.com%2Fdarekzon" src="http://www.podcastready.com/images/podcastready_button.gif">Subscribe with Podcast Ready</feedburner:feedFlare><feedburner:feedFlare href="http://www.flurry.com/pushRssFeed.do?r=fb&amp;url=http%3A%2F%2Ffeeds.feedburner.com%2Fdarekzon" src="http://www.flurry.com/images/flurry_rss_logo2.gif">Subscribe with Flurry</feedburner:feedFlare><feedburner:feedFlare href="http://www.wikio.com/subscribe?url=http%3A%2F%2Ffeeds.feedburner.com%2Fdarekzon" src="http://www.wikio.com/shared/img/add2wikio.gif">Subscribe with Wikio</feedburner:feedFlare><feedburner:feedFlare href="http://www.dailyrotation.com/index.php?feed=http%3A%2F%2Ffeeds.feedburner.com%2Fdarekzon" src="http://www.dailyrotation.com/rss-dr2.gif">Subscribe with Daily Rotation</feedburner:feedFlare><item>
		<title>Uaktualnij swoją szafe – zdobądź darmową koszulkę od Eclipse</title>
		<link>http://feedproxy.google.com/~r/darekzon/~3/zYPS5Dh6puk/uaktualnij-swoja-szafe-zdobadz-darmowa-koszulke-od-eclipse</link>
		<comments>http://darekzon.com/2009/07/uaktualnij-swoja-szafe-zdobadz-darmowa-koszulke-od-eclipse#comments</comments>
		<pubDate>Wed, 01 Jul 2009 20:02:33 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Różne]]></category>
		<category><![CDATA[blog]]></category>
		<category><![CDATA[eclipse]]></category>
		<category><![CDATA[galileo]]></category>
		<category><![CDATA[konkurs]]></category>

		<guid isPermaLink="false">http://darekzon.com/?p=507</guid>
		<description><![CDATA[Jak rok temu i&#160;tym razem fundacja Eclipse zaproponowała konkurs w&#160;którym do wygrania są koszulki, polo oraz kurtki od eclipse, a&#160;dla najlepszych bilet na EclipseCon 2010 lub Eclipse Summit Europe 2009.
Co trzeba zrobić?
Wystarczy napisać krótką recenzję nowej wersji Eclipse (Galileo) w&#160;której opiszemy przynajmniej 3 rzeczy które lubimy bądź nie w&#160;nowym eclipse, opublikujemy to na blogu, grupie [...]]]></description>
			<content:encoded><![CDATA[<p>Jak rok temu i&nbsp;tym razem fundacja Eclipse zaproponowała konkurs w&nbsp;którym do wygrania są koszulki, polo oraz kurtki od eclipse, a&nbsp;dla najlepszych bilet na <a title="EclipseCon" href="http://www.eclipsecon.org/" target="_blank">EclipseCon 2010</a> lub <a title="Eclipse Summit Europe 2009" href="http://www.eclipsecon.org/summiteurope2009/" target="_blank">Eclipse Summit Europe 2009</a>.</p>
<h4>Co trzeba zrobić?</h4>
<p>Wystarczy napisać krótką recenzję nowej wersji Eclipse (Galileo) w&nbsp;której opiszemy przynajmniej 3 rzeczy które lubimy bądź nie w&nbsp;nowym eclipse, opublikujemy to na blogu, grupie dyskusyjnej lub jakimś portalu, o&nbsp;czym poinformujemy ludzi z&nbsp;eclipse.</p>
<p>Więcej info na stronie <a title="Eclipse Blogathon" href="http://www.eclipse.org/galileo/blogathon/guidelines.php" target="_blank">Blogathon-u</a>.</p>
<img src="http://feeds.feedburner.com/~r/darekzon/~4/zYPS5Dh6puk" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://darekzon.com/2009/07/uaktualnij-swoja-szafe-zdobadz-darmowa-koszulke-od-eclipse/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		<feedburner:origLink>http://darekzon.com/2009/07/uaktualnij-swoja-szafe-zdobadz-darmowa-koszulke-od-eclipse</feedburner:origLink></item>
		<item>
		<title>Eclipse Galileo nowości i różnice</title>
		<link>http://feedproxy.google.com/~r/darekzon/~3/YCQQgF9knVQ/eclipse-galileo-nowosci-i-roznice</link>
		<comments>http://darekzon.com/2009/07/eclipse-galileo-nowosci-i-roznice#comments</comments>
		<pubDate>Wed, 01 Jul 2009 19:49:47 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[IDE]]></category>
		<category><![CDATA[Java]]></category>
		<category><![CDATA[eclipse galileo]]></category>
		<category><![CDATA[mobilne]]></category>
		<category><![CDATA[pulsar]]></category>
		<category><![CDATA[rcp]]></category>

		<guid isPermaLink="false">http://darekzon.com/?p=487</guid>
		<description><![CDATA[Od kilku dni dostępna jest nowa wersja Eclipse Galileo, powoli opadają emocje więc warto sprawdzić co zmieniło się w&#160;nowej wersji, a&#160;jest o&#160;czym pisać bo pomimo niewielkiego skoku na liczniku numeru wersji sam eclipse odmienił się znacznie. Choć na pierwszy rzut oka różnic nie zauważycie.
Jak widać zmian w&#160;oknie głównym nie ma żadnych, i&#160;słusznie jak dla mnie [...]]]></description>
			<content:encoded><![CDATA[<p>Od kilku dni dostępna jest nowa wersja Eclipse Galileo, powoli opadają emocje więc warto sprawdzić co zmieniło się w&nbsp;nowej wersji, a&nbsp;jest o&nbsp;czym pisać bo pomimo niewielkiego skoku na liczniku numeru wersji sam eclipse odmienił się znacznie. Choć na pierwszy rzut oka różnic nie zauważycie.</p>
<div id="attachment_489" class="wp-caption aligncenter" style="width: 310px"><a href="http://darekzon.com/wp-content/uploads/2009/06/eclipse_main.png" rel="lightbox[487]"><img class="size-medium wp-image-489" title="Eclipse okna glowne" src="http://darekzon.com/wp-content/uploads/2009/06/eclipse_main-300x158.png" alt="Eclipse Ganymede po prawej, po lewej nowa wersja Galileo" width="300" height="158" /></a><p class="wp-caption-text">Eclipse Ganymede po prawej, po lewej nowa wersja Galileo</p></div>
<p>Jak widać zmian w&nbsp;oknie głównym nie ma żadnych, i&nbsp;słusznie jak dla mnie jest niemal idealne. Jednak mile zaskoczeni zostali użytkownicy MacOS (w  tym ja) otóż nowy Eclipse wykorzystuje również <em>Cocoa</em> do wyświetlania okien, na pewno poprawi to warunki estetyczne aplikacji. Dodatkowo dzięki <em>Customize Perspective</em> mamy możliwość ustawić jakie ikony chcemy widzieć w&nbsp;toolbarze oraz jakie pozycje w&nbsp;menu mają być dostępne, dzięki temu dokładnie dostosujemy IDE do naszych możliwości.<span id="more-487"></span></p>
<p><strong>Aktualizuj, instaluj, rozszerzaj &#8211; nowe P2</strong></p>
<p>W poprzedniej wersji Eclipse-a zaprezentowano nowy manager aktualizacji, była to dla mnie wielka zmiana bo w&nbsp;porównaniu do klasycznej jego wersji zapewniał większą wygodę, choć po dłuższym użytkowaniu widać było, jego niedoróbki. Jak powiedział Szymon Brandys na Eclipse Demo Camp w&nbsp;Krakowie, ekipa odpowiedzialna za P2 została przyciśnięta aby usunąć niedogodności i&nbsp;błędy w&nbsp;poprzedniej wersji. Spisali się całkiem nieźle. P2 w&nbsp;nowym wydaniu wygląda jak zupełnie nowy produkt.</p>
<div id="attachment_492" class="wp-caption aligncenter" style="width: 310px"><a href="http://darekzon.com/wp-content/uploads/2009/06/eclipse_p2.png" rel="lightbox[487]"><img class="size-medium wp-image-492" title="Eclipse P2" src="http://darekzon.com/wp-content/uploads/2009/06/eclipse_p2-300x166.png" alt="Porównanie managerów pluginów. Po prawej Ganymede po lewej Galileo" width="300" height="166" /></a><p class="wp-caption-text">Porównanie managerów pluginów. Po prawej Ganymede po lewej Galileo</p></div>
<p>Wreszcie usunięto denerwujący mnie problem z&nbsp;wiązany z&nbsp;tym, iż manager plugin-ów podczas uruchamiania łączył się z&nbsp;repozytoriami celem pobrania najświeższej listy pluginów, przez co zanim pojawiło się okno nieraz mijało sporo czasu. Kolejną ciekawostką jest historia instalacji. Dzięki niej możemy sprawdzić jakie pakiety instalowaliśmy jakiego dnia, a&nbsp;sam proces instalacji został znacznie uproszczony.</p>
<h4>Kolejne zmiany w&nbsp;debugerze.</h4>
<p>W eclipse Ganymede udostępniono okruchy (breadcrumbs) pozwalające łatwo poruszać się po kodzie. Jednak podczas debugowania nie było możliwości włączenia tej funkcjonalności (przynajmniej ja jej nie widziałem). Od teraz również w&nbsp;trybie debug można korzystać z&nbsp;okruchów.</p>
<h4>Masa dodatkowych opcji</h4>
<p>Przeglądając menu, można dojśc do wniosku, że programiści projektu eclipse dodali masę funkcjonalności, wystarczy spojrzeć na menu &#8220;Navigate&#8221;:</p>
<div id="attachment_504" class="wp-caption aligncenter" style="width: 298px"><a href="http://darekzon.com/wp-content/uploads/2009/07/gany_gali_menu.png" rel="lightbox[487]"><img class="size-medium wp-image-504" title="Menu Navigate" src="http://darekzon.com/wp-content/uploads/2009/07/gany_gali_menu-288x300.png" alt="Po lewej Ganymede po prawej Galileo" width="288" height="300" /></a><p class="wp-caption-text">Po lewej Ganymede po prawej Galileo</p></div>
<h4>Bo przyszłość tkwi w&nbsp;mobilności</h4>
<p>A Galileo Ci w&nbsp;niej pomoże, a&nbsp;chodzi dokładniej o&nbsp;projekt <a title="Eclipse Pulsar - ide dla urządzeń mobilnych" href="http://www.eclipse.org/pulsar/" target="_blank">Pulsar</a>, czyli Eclipse dla urządzeń mobilnych. Niestety o&nbsp;nim dużo nie napiszę, a&nbsp;to z&nbsp;racji, że MacOs nie lubi za bardzo javy w&nbsp;wydaniu me.</p>
<h4>Jest tego jeszcze więcej:</h4>
<p>O wiele więcej, o&nbsp;czym możecie poczytać na stronach <a title="Eclipse Galileo - nowości" href="http://help.eclipse.org/galileo/topic/org.eclipse.platform.doc.user/whatsNew/platform_whatsnew.html" target="_blank">dokumentacji</a>.</p>
<h4>W którą stronę idzie Eclipse</h4>
<p>Sam projekt eclipse na pewno w&nbsp;dobrą. Programiści pracują zarazem nad stabilnością jak i&nbsp;szybkością aplikacji, co bardzo się chwali. Mamy masę dodatkowych opcji, niektóre potrzebne, inne mniej. Cieszy również bardzo duża ilość projektów wykorzystujących tą platformę choć zaczyna się robić tłocznie na stronie projektu eclipse.</p>
<p>Jeśli chodzi o&nbsp;wady IDE to jest to na pewno mniejsza wygoda użytkowania (ocena subiektywna) jeśli porównać go choćby z&nbsp;<a title="IntelliJ Idea" href="http://www.jetbrains.com/idea/index.html" target="_blank">IntelliJ Idea</a> (przy projektowaniu aplikacji EE), nie mówiąc już o&nbsp;projektowaniu interfejsów graficznych (zobacz <a title="NetBeans IDE" href="http://www.netbeans.org/" target="_blank">NetBeans</a>).</p>
<p><strong>Do czego ja wykorzystuję eclipse?</strong> Jak na razie wykorzystuję projekt Eclipse for PHP podczas projektowania oraz wdrażania aplikacji webowych, wkrótce prawdopodobnie zacznę bawić się z&nbsp;Eclipse RCP.</p>
<img src="http://feeds.feedburner.com/~r/darekzon/~4/YCQQgF9knVQ" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://darekzon.com/2009/07/eclipse-galileo-nowosci-i-roznice/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		<feedburner:origLink>http://darekzon.com/2009/07/eclipse-galileo-nowosci-i-roznice</feedburner:origLink></item>
		<item>
		<title>Eclipse Demo Camp w Krakowie</title>
		<link>http://feedproxy.google.com/~r/darekzon/~3/mN4Hf-Kxqmk/eclipse-demo-camp-w-krakowie</link>
		<comments>http://darekzon.com/2009/06/eclipse-demo-camp-w-krakowie#comments</comments>
		<pubDate>Fri, 26 Jun 2009 16:48:45 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Inne javove]]></category>
		<category><![CDATA[Konferencje]]></category>
		<category><![CDATA[demo camp]]></category>
		<category><![CDATA[eclipse]]></category>
		<category><![CDATA[kraków]]></category>

		<guid isPermaLink="false">http://darekzon.com/?p=485</guid>
		<description><![CDATA[Już jutro w&#160;godzinach 11-15 odbędzie się w&#160;Krakowie Eclipse Demo Camp na którym prezentowana będzie najnowsza wersja o&#160;kodowej nazwie Galileo. Spotkanie odbędzie się w&#160; klubie Baraka znajdującym się na skrzyżowaniu ulicy Warszauera i&#160;ulicy Estery. Więcej informacji na stronie spotkania.
]]></description>
			<content:encoded><![CDATA[<p>Już jutro w&nbsp;godzinach 11-15 odbędzie się w&nbsp;Krakowie Eclipse Demo Camp na którym prezentowana będzie najnowsza wersja o&nbsp;kodowej nazwie Galileo. Spotkanie odbędzie się w&nbsp; klubie Baraka znajdującym się na skrzyżowaniu ulicy Warszauera i&nbsp;ulicy Estery. Więcej informacji na <a title="Eclipse Demo Camp 2009" href="http://wiki.eclipse.org/Eclipse_DemoCamps_Galileo_2009/Krakow" target="_blank">stronie spotkania</a>.</p>
<img src="http://feeds.feedburner.com/~r/darekzon/~4/mN4Hf-Kxqmk" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://darekzon.com/2009/06/eclipse-demo-camp-w-krakowie/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://darekzon.com/2009/06/eclipse-demo-camp-w-krakowie</feedburner:origLink></item>
		<item>
		<title>Eclipse Galileo dostępny</title>
		<link>http://feedproxy.google.com/~r/darekzon/~3/4gvUvYJr1Uk/eclipse-galileo-dostepny</link>
		<comments>http://darekzon.com/2009/06/eclipse-galileo-dostepny#comments</comments>
		<pubDate>Wed, 24 Jun 2009 11:15:17 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[IDE]]></category>
		<category><![CDATA[Java]]></category>
		<category><![CDATA[eclipse galileo]]></category>
		<category><![CDATA[eclipse ide]]></category>

		<guid isPermaLink="false">http://darekzon.com/?p=481</guid>
		<description><![CDATA[Dzisiejszego dnia udostępniony został Eclipse Galileo. W&#160;chwili obecnej jest to tzw. EarlyAccess więc dostęp ograniczony jest do pobrania przez sieć bittorrent (zarejestrowani użytkownicy mają dostęp do bezpośredniej metody pobierania).
Zapraszam do ściągania i&#160;opisywania zmian względem poprzedniej wersji Ganymede.
]]></description>
			<content:encoded><![CDATA[<p>Dzisiejszego dnia udostępniony został <a title="Eclipse Galileo" href="http://www.eclipse.org/galileo/" target="_blank">Eclipse Galileo</a>. W&nbsp;chwili obecnej jest to tzw. <strong>EarlyAccess </strong>więc dostęp ograniczony jest do pobrania przez sieć bittorrent (zarejestrowani użytkownicy mają dostęp do bezpośredniej metody pobierania).</p>
<p>Zapraszam do <a title="Eclipse - download" href="http://www.eclipse.org/downloads/" target="_blank">ściągania</a> i&nbsp;opisywania zmian względem poprzedniej wersji <a title="Eclipse Ganymede" href="http://www.eclipse.org/ganymede/" target="_blank">Ganymede</a>.</p>
<img src="http://feeds.feedburner.com/~r/darekzon/~4/4gvUvYJr1Uk" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://darekzon.com/2009/06/eclipse-galileo-dostepny/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://darekzon.com/2009/06/eclipse-galileo-dostepny</feedburner:origLink></item>
		<item>
		<title>Wygodniejsze tworzenie aplikacji z JavaRebel</title>
		<link>http://feedproxy.google.com/~r/darekzon/~3/PhJRp6eCjCg/wygodniejsze-tworzenie-aplikacji-z-javarebel</link>
		<comments>http://darekzon.com/2009/06/wygodniejsze-tworzenie-aplikacji-z-javarebel#comments</comments>
		<pubDate>Tue, 09 Jun 2009 18:26:04 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[IDE]]></category>
		<category><![CDATA[J2EE]]></category>
		<category><![CDATA[Java]]></category>
		<category><![CDATA[deploy]]></category>
		<category><![CDATA[java rebel]]></category>
		<category><![CDATA[javaee]]></category>

		<guid isPermaLink="false">http://darekzon.com/?p=456</guid>
		<description><![CDATA[Jedną z&#160;bardziej denerwujacych rzeczy w&#160;pisaniu aplikacji Javovych (aplikacji webowych) jest ciągłe redeployowanie aplikacji celem sprawdzenia czy naniesione poprawki lub nowe funkcje działają poprawnie.
W językach skryptowych takich jak PHP, Ruby czy też świeży Grails dzieje się to w&#160;pełni automatycznie, zmienię część kodu, przechodzę do przeglądarki odświeżam i&#160;cieszę się, że działa (bądź nie).
I w&#160;tym miejscu z&#160;pomocą przychodzi [...]]]></description>
			<content:encoded><![CDATA[<p>Jedną z&nbsp;bardziej denerwujacych rzeczy w&nbsp;pisaniu aplikacji Javovych (aplikacji webowych) jest ciągłe redeployowanie aplikacji celem sprawdzenia czy naniesione poprawki lub nowe funkcje działają poprawnie.</p>
<p>W językach skryptowych takich jak PHP, Ruby czy też świeży Grails dzieje się to w&nbsp;pełni automatycznie, zmienię część kodu, przechodzę do przeglądarki odświeżam i&nbsp;cieszę się, że działa (bądź nie).<span id="more-456"></span></p>
<p>I w&nbsp;tym miejscu z&nbsp;pomocą przychodzi nam narzędzie <a title="JavaRebel" href="http://www.zeroturnaround.com/javarebel/" target="_blank">JavaRebel</a> (darmowy dla aplikacji open source) firmy <a title="ZeroTurnaround" href="http://www.zeroturnaround.com" target="_blank">ZeroTurnAround</a>.  JavaRebel to agent podpinany bezpośrednio do maszyny wirtualnej który czuwa nad naszymi plikami i&nbsp;gdy zostaną zmienione (ponownie skompilowane) ładuje je na naszym serwerze. Dzięki temu nie musimy przechodzić żmudnego procesu tworzenia pakietu war i&nbsp;jego deployowania (u mnie ponad 10s), zmiany widoczne są niemal od razu.  Po zainstalowaniu odpowiedniej wtyczki możemy bezproblemowo pracować z&nbsp;naszym springowym projektem (<a title="Google Guice" href="http://code.google.com/p/google-guice/" target="_blank">Guice</a>, <a title="Struts" href="http://struts.apache.org/" target="_blank">Struts</a>, <a title="Wicket" href="http://wicket.apache.org/" target="_blank">Wicket </a>i inne również <a title="JavaRebel - pluginy" href="http://www.zeroturnaround.com/javarebel/plugins/" target="_blank">dostępne</a>) a&nbsp;JavaRebel będzie automatycznie wgrywać beany przez nas utworzone (czyta automatycznie wszystkie pliki konfiguracyjne).</p>
<p>Jednak, nie wszystko złoto co się świeci, faktycznie JavaRebel przyśpieszył moją pracę nad projektem i&nbsp;polepszył mój stan psychiczny, nadal jednak brakuje mi czegoś co będzie automatycznie aktualizować pliki JSP. Co prawda ta sama firma wydała również JSPViewer który rozwiązuje ten problem, jednak jego specyfika nie pozwala na użycie go w&nbsp;Springowym projekcie, gdzie wszystkie zapytania są mapowane na wirtualne adresy.</p>
<p>Jeśli ktoś wie, jak rozwiązać ten problem, będę wdzięczny.</p>
<img src="http://feeds.feedburner.com/~r/darekzon/~4/PhJRp6eCjCg" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://darekzon.com/2009/06/wygodniejsze-tworzenie-aplikacji-z-javarebel/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		<feedburner:origLink>http://darekzon.com/2009/06/wygodniejsze-tworzenie-aplikacji-z-javarebel</feedburner:origLink></item>
		<item>
		<title>Zend_Tool_Project – początki Rapid</title>
		<link>http://feedproxy.google.com/~r/darekzon/~3/rrOMmWyOIJk/zend_tool_project-poczatki-rapid</link>
		<comments>http://darekzon.com/2009/06/zend_tool_project-poczatki-rapid#comments</comments>
		<pubDate>Tue, 09 Jun 2009 18:11:09 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[Zend Framework]]></category>
		<category><![CDATA[zend tool]]></category>
		<category><![CDATA[zf]]></category>

		<guid isPermaLink="false">http://darekzon.com/?p=254</guid>
		<description><![CDATA[Zend_Tool to narzędzie które wspomóc ma tworzenie szkieletu aplikacji a&#160;w zamyśle programistów tego komponentu być może wspomoże tworzenie całej aplikacji.  Jest to odpowiednik aplikacji Bakery znanej z&#160;CakePHP, Railsów czy też javovych Grailsów.
Brzmi genialnie, w&#160;rzeczywistości jeszcze wiele temu projektowi potrzeba żeby stać się prawdziwym konkurentem dla choćby Bakery. W&#160;tej chwili możliwe jest jedynie stworzenie szkieletu projektu, [...]]]></description>
			<content:encoded><![CDATA[<p><a title="Zend Tool Project" href="http://framework.zend.com/manual/en/zend.tool.project.create-a-project.html" target="_blank">Zend_Tool</a> to narzędzie które wspomóc ma tworzenie szkieletu aplikacji a&nbsp;w zamyśle programistów tego komponentu być może wspomoże tworzenie całej aplikacji.  Jest to odpowiednik aplikacji Bakery znanej z&nbsp;CakePHP, Railsów czy też javovych Grailsów.</p>
<p>Brzmi genialnie, w&nbsp;rzeczywistości jeszcze wiele temu projektowi potrzeba żeby stać się prawdziwym konkurentem dla choćby Bakery. W&nbsp;tej chwili możliwe jest jedynie stworzenie szkieletu projektu, dodanie kontrolerów, akcji i&nbsp;widoków, całą resztę przejmuje programista.</p>
<p>Warto jednak dodać, że jest to świetny start do zbudowania własnej aplikacji, gdyż szkielet wygenerowany przez Zend_Tool oparty jest o&nbsp;nowość w&nbsp;bibliotece czyli Zend_Application (o którym napiszę w&nbsp;przyszłości)</p>
<p>Aplikacja jest prosta w&nbsp;użyciu, wystarczy wpisać <strong>zf.sh (zf.bat dla windows-a)</strong> by naszym oczom ukazała się mała pomoc ze spisem komend jakie aplikacja może wykonać (nie jest ich wiele).</p>
<p><span id="more-254"></span></p>
<h3>Jak zainstalować?</h3>
<p>Teoretycznie instalacja jest trywialna, jednak jak się okazuje nie do końca. Aby projekt Zend_Tool działał u&nbsp;nas poprawnie musimy mieć oczywiście zainstalowane środowisko PHP tak aby system widział wywołanie komendy &#8220;<em><strong>php</strong></em>&#8220;. Następnie pobieramy paczkę ze strony ZendFramework (zawierającą całe ZF) i&nbsp;rozpakowujemy w&nbsp;dowolne miejsce.</p>
<p>Po rozpakowaniu zauważymy, że folder z&nbsp;rozpakowanymi plikami znajduje się folder <strong>bin</strong>. Aby wszystko działało dobrze należy ustawić ścieżkę systemową własnie na ten folder. I&nbsp;to wystarczy, warto jeszcze ustawić w&nbsp;pliku php.ini <strong>include_path</strong> na folder z&nbsp;bibliotekami ZendFramework.</p>
<p>Miłej zabawy</p>
<img src="http://feeds.feedburner.com/~r/darekzon/~4/rrOMmWyOIJk" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://darekzon.com/2009/06/zend_tool_project-poczatki-rapid/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://darekzon.com/2009/06/zend_tool_project-poczatki-rapid</feedburner:origLink></item>
		<item>
		<title>Spring framework – formularz i polskie litery (utf-8)</title>
		<link>http://feedproxy.google.com/~r/darekzon/~3/SPHTgSTut18/spring-framework-formularz-i-polskie-litery-utf-8</link>
		<comments>http://darekzon.com/2009/06/spring-framework-formularz-i-polskie-litery-utf-8#comments</comments>
		<pubDate>Sat, 06 Jun 2009 21:16:18 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[J2EE]]></category>
		<category><![CDATA[Java]]></category>
		<category><![CDATA[formularze]]></category>
		<category><![CDATA[javaee]]></category>
		<category><![CDATA[kodowanie]]></category>
		<category><![CDATA[utf-8]]></category>

		<guid isPermaLink="false">http://darekzon.com/?p=359</guid>
		<description><![CDATA[Przed chwilą zdarzył mi się dziwny przypadek, wykorzystując zbudowany formularz dodawałem dane do bazy, jednak dane nie zawierały polskich znaków, zamiast nich były łagodnie mówiąc &#8220;krzaczki&#8221;, poprawiłem szybko krzaczki w&#160;bazie i&#160;zaczęły się poprawnie wyświetlać na stronie, problem więc nie był w&#160;samej bazie a&#160;w formularzu. Nastała chwila konsternacji gdyż sam spring został skonfigurowany pod utf-8 (ustawione [...]]]></description>
			<content:encoded><![CDATA[<p>Przed chwilą zdarzył mi się dziwny przypadek, wykorzystując zbudowany formularz dodawałem dane do bazy, jednak dane nie zawierały polskich znaków, zamiast nich były łagodnie mówiąc &#8220;krzaczki&#8221;, poprawiłem szybko krzaczki w&nbsp;bazie i&nbsp;zaczęły się poprawnie wyświetlać na stronie, problem więc nie był w&nbsp;samej bazie a&nbsp;w formularzu. Nastała chwila konsternacji gdyż sam spring został skonfigurowany pod utf-8 (ustawione kodowanie znaków) a&nbsp;dane przesyłane do bazy były w&nbsp;kodowaniu ANSI.</p>
<p>Po przeszukaniu internetu okazało się, że nie jestem sam, i&nbsp;aby wszystko zaczęło działać wystarczy ustawić filtr w&nbsp;pliku <strong>web.xml</strong>.</p>

<div class="wp_syntax"><div class="code"><pre class="xml" style="font-family:monospace;"><span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;filter<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/filter<span style="color: #000000; font-weight: bold;">&gt;</span></span><span style="color: #000000; font-weight: bold;">&lt;filter</span> -name<span style="color: #000000; font-weight: bold;">&gt;</span></span>charsetFilter<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/filter<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;filter</span> -class<span style="color: #000000; font-weight: bold;">&gt;</span></span>org.springframework.web.filter.CharacterEncodingFi lter<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/filter<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;init</span> -param<span style="color: #000000; font-weight: bold;">&gt;</span></span>
<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;param</span> -name<span style="color: #000000; font-weight: bold;">&gt;</span></span>encoding<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/param<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;param</span> -value<span style="color: #000000; font-weight: bold;">&gt;</span></span>UTF-8<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/param<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/init<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
&nbsp;
&nbsp;
<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;filter</span> -mapping<span style="color: #000000; font-weight: bold;">&gt;</span></span>
<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/filter<span style="color: #000000; font-weight: bold;">&gt;</span></span><span style="color: #000000; font-weight: bold;">&lt;filter</span> -name<span style="color: #000000; font-weight: bold;">&gt;</span></span>charsetFilter<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/filter<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;url</span> -pattern<span style="color: #000000; font-weight: bold;">&gt;</span></span>/*<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/url<span style="color: #000000; font-weight: bold;">&gt;</span></span></span></pre></div></div>

<p>I wszystko działa poprawnie.</p>
<p>Rozwiązanie znalezione na: <a title="Spring Framework" href="http://forum.springsource.org/archive/index.php/t-10431.html" target="_blank">http://forum.springsource.org</a></p>
<img src="http://feeds.feedburner.com/~r/darekzon/~4/SPHTgSTut18" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://darekzon.com/2009/06/spring-framework-formularz-i-polskie-litery-utf-8/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://darekzon.com/2009/06/spring-framework-formularz-i-polskie-litery-utf-8</feedburner:origLink></item>
		<item>
		<title>Springframework @ContextConfiguration – podpinamy kontekst do testów</title>
		<link>http://feedproxy.google.com/~r/darekzon/~3/RkwKLo4NgKM/springframework-contextconfiguration-podpinamy-kontekst-do-testow</link>
		<comments>http://darekzon.com/2009/06/springframework-contextconfiguration-podpinamy-kontekst-do-testow#comments</comments>
		<pubDate>Wed, 03 Jun 2009 22:50:18 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[J2EE]]></category>
		<category><![CDATA[Java]]></category>
		<category><![CDATA[błędy]]></category>
		<category><![CDATA[javaee]]></category>
		<category><![CDATA[junit]]></category>
		<category><![CDATA[spring]]></category>
		<category><![CDATA[springframework]]></category>
		<category><![CDATA[tdd]]></category>
		<category><![CDATA[testowanie]]></category>
		<category><![CDATA[wyjątki]]></category>

		<guid isPermaLink="false">http://darekzon.com/?p=262</guid>
		<description><![CDATA[Jak ważne jest testowanie wie każdy programista, testy jednostkowe można pisać po stworzeniu aplikacji, lub co zalecane w&#160;trakcie jej tworzenia. Samo pisanie testów nie jest męczącym zajęciem o&#160;ile tworzymy niewielki projekt z&#160;odseparowanymi od siebie klasami. Problem zaczyna wzrastać do rangi misji niemożliwej gdy jedna klasa połączona jest z&#160;innymi klasami nie zawsze jawnie zadeklarowanymi jak to [...]]]></description>
			<content:encoded><![CDATA[<p>Jak ważne jest testowanie wie każdy programista, testy jednostkowe można pisać po stworzeniu aplikacji, lub co zalecane w&nbsp;trakcie jej tworzenia. Samo pisanie testów nie jest męczącym zajęciem o&nbsp;ile tworzymy niewielki projekt z&nbsp;odseparowanymi od siebie klasami. Problem zaczyna wzrastać do rangi misji niemożliwej gdy jedna klasa połączona jest z&nbsp;innymi klasami nie zawsze jawnie zadeklarowanymi jak to ma miejsce w&nbsp;aplikacjach opartych o&nbsp;Springframework.</p>
<p>W takim momencie z&nbsp;pomocą przychodzi nam adnotacja @ContextConfiguration zawarta w&nbsp;pakiecie org.springframework.test. Dzięki niej możemy bezpośrednio do naszej klasy testu jednostkowego podpiąć skonfigurowany wcześniej kontekst aplikacji zawierający zadeklarowany beany.</p>
<p><span id="more-262"></span></p>
<p>Aby zadeklarować załadowanie kontekstu wystarczy dodać adnotację i&nbsp;wskazać plik z&nbsp;kontekstem, prosta klasa która ma taką konfigurację wygląda tak:</p>

<div class="wp_syntax"><div class="code"><pre class="java" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">import</span> <span style="color: #006699;">org.springframework.test.context.ContextConfiguration</span><span style="color: #339933;">;</span>
<span style="color: #000000; font-weight: bold;">import</span> <span style="color: #006699;">org.springframework.test.context.junit4.AbstractJUnit4SpringContextTests</span><span style="color: #339933;">;</span>
<span style="color: #000000; font-weight: bold;">import</span> <span style="color: #006699;">org.springframework.test.context.junit4.SpringJUnit4ClassRunner</span><span style="color: #339933;">;</span>
&nbsp;
@RunWith<span style="color: #009900;">&#40;</span>SpringJUnit4ClassRunner.<span style="color: #000000; font-weight: bold;">class</span><span style="color: #009900;">&#41;</span>
@ContextConfiguration<span style="color: #009900;">&#40;</span>locations <span style="color: #339933;">=</span> <span style="color: #0000ff;">&quot;/WEB-INF/applicationContext.xml&quot;</span><span style="color: #009900;">&#41;</span>
<span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000000; font-weight: bold;">class</span> CategoryControllerTest <span style="color: #000000; font-weight: bold;">extends</span> AbstractJUnit4SpringContextTests<span style="color: #009900;">&#123;</span>
&nbsp;
<span style="color: #009900;">&#125;</span></pre></div></div>

<p>Super, ale jak to działa? Okazuje się, że jak zwykle nie wszystko działa tak jak napisano. Gdy ja próbowałem podłączyć taki kontekst cały czas jvm wyrzucał mi błąd:</p>

<div class="wp_syntax"><div class="code"><pre class="java" style="font-family:monospace;">java.<span style="color: #006633;">lang</span>.<span style="color: #003399;">IllegalStateException</span><span style="color: #339933;">:</span> Failed to load ApplicationContext
at org.<span style="color: #006633;">springframework</span>.<span style="color: #006633;">test</span>.<span style="color: #006633;">context</span>.<span style="color: #006633;">TestContext</span>.<span style="color: #006633;">getApplicationContext</span><span style="color: #009900;">&#40;</span>TestContext.<span style="color: #006633;">java</span><span style="color: #339933;">:</span><span style="color: #cc66cc;">255</span><span style="color: #009900;">&#41;</span>
at org.<span style="color: #006633;">springframework</span>.<span style="color: #006633;">test</span>.<span style="color: #006633;">context</span>.<span style="color: #006633;">support</span>.<span style="color: #006633;">DependencyInjectionTestExecutionListener</span>.<span style="color: #006633;">injectDependencies</span><span style="color: #009900;">&#40;</span>DependencyInjectionTestExecutionListener.<span style="color: #006633;">java</span><span style="color: #339933;">:</span><span style="color: #cc66cc;">109</span><span style="color: #009900;">&#41;</span>
at org.<span style="color: #006633;">springframework</span>.<span style="color: #006633;">test</span>.<span style="color: #006633;">context</span>.<span style="color: #006633;">support</span>.<span style="color: #006633;">DependencyInjectionTestExecutionListener</span>.<span style="color: #006633;">prepareTestInstance</span><span style="color: #009900;">&#40;</span>DependencyInjectionTestExecutionListener.<span style="color: #006633;">java</span><span style="color: #339933;">:</span><span style="color: #cc66cc;">75</span><span style="color: #009900;">&#41;</span>
at org.<span style="color: #006633;">springframework</span>.<span style="color: #006633;">test</span>.<span style="color: #006633;">context</span>.<span style="color: #006633;">TestContextManager</span>.<span style="color: #006633;">prepareTestInstance</span><span style="color: #009900;">&#40;</span>TestContextManager.<span style="color: #006633;">java</span><span style="color: #339933;">:</span><span style="color: #cc66cc;">267</span><span style="color: #009900;">&#41;</span>
at org.<span style="color: #006633;">springframework</span>.<span style="color: #006633;">test</span>.<span style="color: #006633;">context</span>.<span style="color: #006633;">junit4</span>.<span style="color: #006633;">SpringJUnit4ClassRunner</span>.<span style="color: #006633;">createTest</span><span style="color: #009900;">&#40;</span>SpringJUnit4ClassRunner.<span style="color: #006633;">java</span><span style="color: #339933;">:</span><span style="color: #cc66cc;">155</span><span style="color: #009900;">&#41;</span>
at org.<span style="color: #006633;">springframework</span>.<span style="color: #006633;">test</span>.<span style="color: #006633;">context</span>.<span style="color: #006633;">junit4</span>.<span style="color: #006633;">SpringJUnit4ClassRunner</span>$1.<span style="color: #006633;">runReflectiveCall</span><span style="color: #009900;">&#40;</span>SpringJUnit4ClassRunner.<span style="color: #006633;">java</span><span style="color: #339933;">:</span><span style="color: #cc66cc;">263</span><span style="color: #009900;">&#41;</span>
at org.<span style="color: #006633;">junit</span>.<span style="color: #006633;">internal</span>.<span style="color: #006633;">runners</span>.<span style="color: #006633;">model</span>.<span style="color: #006633;">ReflectiveCallable</span>.<span style="color: #006633;">run</span><span style="color: #009900;">&#40;</span>ReflectiveCallable.<span style="color: #006633;">java</span><span style="color: #339933;">:</span><span style="color: #cc66cc;">15</span><span style="color: #009900;">&#41;</span>
at org.<span style="color: #006633;">springframework</span>.<span style="color: #006633;">test</span>.<span style="color: #006633;">context</span>.<span style="color: #006633;">junit4</span>.<span style="color: #006633;">SpringJUnit4ClassRunner</span>.<span style="color: #006633;">methodBlock</span><span style="color: #009900;">&#40;</span>SpringJUnit4ClassRunner.<span style="color: #006633;">java</span><span style="color: #339933;">:</span><span style="color: #cc66cc;">265</span><span style="color: #009900;">&#41;</span>
at org.<span style="color: #006633;">springframework</span>.<span style="color: #006633;">test</span>.<span style="color: #006633;">context</span>.<span style="color: #006633;">junit4</span>.<span style="color: #006633;">SpringJUnit4ClassRunner</span>.<span style="color: #006633;">runChild</span><span style="color: #009900;">&#40;</span>SpringJUnit4ClassRunner.<span style="color: #006633;">java</span><span style="color: #339933;">:</span><span style="color: #cc66cc;">210</span><span style="color: #009900;">&#41;</span>
at org.<span style="color: #006633;">junit</span>.<span style="color: #006633;">runners</span>.<span style="color: #006633;">BlockJUnit4ClassRunner</span>.<span style="color: #006633;">runChild</span><span style="color: #009900;">&#40;</span>BlockJUnit4ClassRunner.<span style="color: #006633;">java</span><span style="color: #339933;">:</span><span style="color: #cc66cc;">46</span><span style="color: #009900;">&#41;</span>
at org.<span style="color: #006633;">junit</span>.<span style="color: #006633;">runners</span>.<span style="color: #006633;">ParentRunner</span>.<span style="color: #006633;">runChildren</span><span style="color: #009900;">&#40;</span>ParentRunner.<span style="color: #006633;">java</span><span style="color: #339933;">:</span><span style="color: #cc66cc;">180</span><span style="color: #009900;">&#41;</span>
at org.<span style="color: #006633;">junit</span>.<span style="color: #006633;">runners</span>.<span style="color: #006633;">ParentRunner</span>.<span style="color: #006633;">access</span>$000<span style="color: #009900;">&#40;</span>ParentRunner.<span style="color: #006633;">java</span><span style="color: #339933;">:</span><span style="color: #cc66cc;">41</span><span style="color: #009900;">&#41;</span>
at org.<span style="color: #006633;">junit</span>.<span style="color: #006633;">runners</span>.<span style="color: #006633;">ParentRunner</span>$1.<span style="color: #006633;">evaluate</span><span style="color: #009900;">&#40;</span>ParentRunner.<span style="color: #006633;">java</span><span style="color: #339933;">:</span><span style="color: #cc66cc;">173</span><span style="color: #009900;">&#41;</span>
at org.<span style="color: #006633;">junit</span>.<span style="color: #006633;">internal</span>.<span style="color: #006633;">runners</span>.<span style="color: #006633;">statements</span>.<span style="color: #006633;">RunBefores</span>.<span style="color: #006633;">evaluate</span><span style="color: #009900;">&#40;</span>RunBefores.<span style="color: #006633;">java</span><span style="color: #339933;">:</span><span style="color: #cc66cc;">28</span><span style="color: #009900;">&#41;</span>
at org.<span style="color: #006633;">junit</span>.<span style="color: #006633;">internal</span>.<span style="color: #006633;">runners</span>.<span style="color: #006633;">statements</span>.<span style="color: #006633;">RunAfters</span>.<span style="color: #006633;">evaluate</span><span style="color: #009900;">&#40;</span>RunAfters.<span style="color: #006633;">java</span><span style="color: #339933;">:</span><span style="color: #cc66cc;">31</span><span style="color: #009900;">&#41;</span>
at org.<span style="color: #006633;">junit</span>.<span style="color: #006633;">runners</span>.<span style="color: #006633;">ParentRunner</span>.<span style="color: #006633;">run</span><span style="color: #009900;">&#40;</span>ParentRunner.<span style="color: #006633;">java</span><span style="color: #339933;">:</span><span style="color: #cc66cc;">220</span><span style="color: #009900;">&#41;</span>
at org.<span style="color: #006633;">springframework</span>.<span style="color: #006633;">test</span>.<span style="color: #006633;">context</span>.<span style="color: #006633;">junit4</span>.<span style="color: #006633;">SpringJUnit4ClassRunner</span>.<span style="color: #006633;">run</span><span style="color: #009900;">&#40;</span>SpringJUnit4ClassRunner.<span style="color: #006633;">java</span><span style="color: #339933;">:</span><span style="color: #cc66cc;">191</span><span style="color: #009900;">&#41;</span>
at com.<span style="color: #006633;">intellij</span>.<span style="color: #006633;">rt</span>.<span style="color: #006633;">junit4</span>.<span style="color: #006633;">Junit4TestMethodAdapter</span>.<span style="color: #006633;">run</span><span style="color: #009900;">&#40;</span>Junit4TestMethodAdapter.<span style="color: #006633;">java</span><span style="color: #339933;">:</span><span style="color: #cc66cc;">62</span><span style="color: #009900;">&#41;</span>
at com.<span style="color: #006633;">intellij</span>.<span style="color: #006633;">rt</span>.<span style="color: #006633;">execution</span>.<span style="color: #006633;">junit</span>.<span style="color: #006633;">JUnitStarter</span>.<span style="color: #006633;">main</span><span style="color: #009900;">&#40;</span>JUnitStarter.<span style="color: #006633;">java</span><span style="color: #339933;">:</span><span style="color: #cc66cc;">40</span><span style="color: #009900;">&#41;</span>
Caused by<span style="color: #339933;">:</span> org.<span style="color: #006633;">springframework</span>.<span style="color: #006633;">beans</span>.<span style="color: #006633;">factory</span>.<span style="color: #006633;">BeanDefinitionStoreException</span><span style="color: #339933;">:</span> <span style="color: #003399;">IOException</span> parsing XML document from <span style="color: #000000; font-weight: bold;">class</span> path resource <span style="color: #009900;">&#91;</span>web<span style="color: #339933;">-</span>servlet.<span style="color: #006633;">xml</span><span style="color: #009900;">&#93;</span><span style="color: #339933;">;</span> nested exception is java.<span style="color: #006633;">io</span>.<span style="color: #003399;">FileNotFoundException</span><span style="color: #339933;">:</span> <span style="color: #000000; font-weight: bold;">class</span> path resource <span style="color: #009900;">&#91;</span>web<span style="color: #339933;">-</span>servlet.<span style="color: #006633;">xml</span><span style="color: #009900;">&#93;</span> cannot be opened because it does not exist
at org.<span style="color: #006633;">springframework</span>.<span style="color: #006633;">beans</span>.<span style="color: #006633;">factory</span>.<span style="color: #006633;">xml</span>.<span style="color: #006633;">XmlBeanDefinitionReader</span>.<span style="color: #006633;">loadBeanDefinitions</span><span style="color: #009900;">&#40;</span>XmlBeanDefinitionReader.<span style="color: #006633;">java</span><span style="color: #339933;">:</span><span style="color: #cc66cc;">349</span><span style="color: #009900;">&#41;</span>
at org.<span style="color: #006633;">springframework</span>.<span style="color: #006633;">beans</span>.<span style="color: #006633;">factory</span>.<span style="color: #006633;">xml</span>.<span style="color: #006633;">XmlBeanDefinitionReader</span>.<span style="color: #006633;">loadBeanDefinitions</span><span style="color: #009900;">&#40;</span>XmlBeanDefinitionReader.<span style="color: #006633;">java</span><span style="color: #339933;">:</span><span style="color: #cc66cc;">310</span><span style="color: #009900;">&#41;</span>
at org.<span style="color: #006633;">springframework</span>.<span style="color: #006633;">beans</span>.<span style="color: #006633;">factory</span>.<span style="color: #006633;">support</span>.<span style="color: #006633;">AbstractBeanDefinitionReader</span>.<span style="color: #006633;">loadBeanDefinitions</span><span style="color: #009900;">&#40;</span>AbstractBeanDefinitionReader.<span style="color: #006633;">java</span><span style="color: #339933;">:</span><span style="color: #cc66cc;">143</span><span style="color: #009900;">&#41;</span>
at org.<span style="color: #006633;">springframework</span>.<span style="color: #006633;">beans</span>.<span style="color: #006633;">factory</span>.<span style="color: #006633;">support</span>.<span style="color: #006633;">AbstractBeanDefinitionReader</span>.<span style="color: #006633;">loadBeanDefinitions</span><span style="color: #009900;">&#40;</span>AbstractBeanDefinitionReader.<span style="color: #006633;">java</span><span style="color: #339933;">:</span><span style="color: #cc66cc;">178</span><span style="color: #009900;">&#41;</span>
at org.<span style="color: #006633;">springframework</span>.<span style="color: #006633;">beans</span>.<span style="color: #006633;">factory</span>.<span style="color: #006633;">support</span>.<span style="color: #006633;">AbstractBeanDefinitionReader</span>.<span style="color: #006633;">loadBeanDefinitions</span><span style="color: #009900;">&#40;</span>AbstractBeanDefinitionReader.<span style="color: #006633;">java</span><span style="color: #339933;">:</span><span style="color: #cc66cc;">149</span><span style="color: #009900;">&#41;</span>
at org.<span style="color: #006633;">springframework</span>.<span style="color: #006633;">beans</span>.<span style="color: #006633;">factory</span>.<span style="color: #006633;">support</span>.<span style="color: #006633;">AbstractBeanDefinitionReader</span>.<span style="color: #006633;">loadBeanDefinitions</span><span style="color: #009900;">&#40;</span>AbstractBeanDefinitionReader.<span style="color: #006633;">java</span><span style="color: #339933;">:</span><span style="color: #cc66cc;">212</span><span style="color: #009900;">&#41;</span>
at org.<span style="color: #006633;">springframework</span>.<span style="color: #006633;">test</span>.<span style="color: #006633;">context</span>.<span style="color: #006633;">support</span>.<span style="color: #006633;">AbstractGenericContextLoader</span>.<span style="color: #006633;">loadContext</span><span style="color: #009900;">&#40;</span>AbstractGenericContextLoader.<span style="color: #006633;">java</span><span style="color: #339933;">:</span><span style="color: #cc66cc;">81</span><span style="color: #009900;">&#41;</span>
at org.<span style="color: #006633;">springframework</span>.<span style="color: #006633;">test</span>.<span style="color: #006633;">context</span>.<span style="color: #006633;">support</span>.<span style="color: #006633;">AbstractGenericContextLoader</span>.<span style="color: #006633;">loadContext</span><span style="color: #009900;">&#40;</span>AbstractGenericContextLoader.<span style="color: #006633;">java</span><span style="color: #339933;">:</span><span style="color: #cc66cc;">1</span><span style="color: #009900;">&#41;</span>
at org.<span style="color: #006633;">springframework</span>.<span style="color: #006633;">test</span>.<span style="color: #006633;">context</span>.<span style="color: #006633;">TestContext</span>.<span style="color: #006633;">loadApplicationContext</span><span style="color: #009900;">&#40;</span>TestContext.<span style="color: #006633;">java</span><span style="color: #339933;">:</span><span style="color: #cc66cc;">226</span><span style="color: #009900;">&#41;</span>
at org.<span style="color: #006633;">springframework</span>.<span style="color: #006633;">test</span>.<span style="color: #006633;">context</span>.<span style="color: #006633;">TestContext</span>.<span style="color: #006633;">getApplicationContext</span><span style="color: #009900;">&#40;</span>TestContext.<span style="color: #006633;">java</span><span style="color: #339933;">:</span><span style="color: #cc66cc;">251</span><span style="color: #009900;">&#41;</span>
... <span style="color: #cc66cc;">23</span> more
Caused by<span style="color: #339933;">:</span> java.<span style="color: #006633;">io</span>.<span style="color: #003399;">FileNotFoundException</span><span style="color: #339933;">:</span> <span style="color: #000000; font-weight: bold;">class</span> path resource <span style="color: #009900;">&#91;</span>web<span style="color: #339933;">-</span>servlet.<span style="color: #006633;">xml</span><span style="color: #009900;">&#93;</span> cannot be opened because it does not exist
at org.<span style="color: #006633;">springframework</span>.<span style="color: #006633;">core</span>.<span style="color: #006633;">io</span>.<span style="color: #006633;">ClassPathResource</span>.<span style="color: #006633;">getInputStream</span><span style="color: #009900;">&#40;</span>ClassPathResource.<span style="color: #006633;">java</span><span style="color: #339933;">:</span><span style="color: #cc66cc;">142</span><span style="color: #009900;">&#41;</span>
at org.<span style="color: #006633;">springframework</span>.<span style="color: #006633;">beans</span>.<span style="color: #006633;">factory</span>.<span style="color: #006633;">xml</span>.<span style="color: #006633;">XmlBeanDefinitionReader</span>.<span style="color: #006633;">loadBeanDefinitions</span><span style="color: #009900;">&#40;</span>XmlBeanDefinitionReader.<span style="color: #006633;">java</span><span style="color: #339933;">:</span><span style="color: #cc66cc;">336</span><span style="color: #009900;">&#41;</span>
... <span style="color: #cc66cc;">32</span> more</pre></div></div>

<p>Nie trzeba Sherlocka aby od razu dojść do wniosku, że aplikacja nie znajduje naszego pliku kontekstu. Przeszukanie google dało kilka rozwiązań ale okazały się błędne, na szczęście rozwiązanie jest proste, zamiast podawać ścieżkę do pliku, wystarczy wskazać aby kontekst został załadowany z&nbsp;konkretnego pliku w&nbsp;dowolnej ścieżce.<br />
Wygląda to następująco:</p>

<div class="wp_syntax"><div class="code"><pre class="java" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">import</span> <span style="color: #006699;">org.springframework.test.context.ContextConfiguration</span><span style="color: #339933;">;</span>
<span style="color: #000000; font-weight: bold;">import</span> <span style="color: #006699;">org.springframework.test.context.junit4.AbstractJUnit4SpringContextTests</span><span style="color: #339933;">;</span>
<span style="color: #000000; font-weight: bold;">import</span> <span style="color: #006699;">org.springframework.test.context.junit4.SpringJUnit4ClassRunner</span><span style="color: #339933;">;</span>
&nbsp;
@RunWith<span style="color: #009900;">&#40;</span>SpringJUnit4ClassRunner.<span style="color: #000000; font-weight: bold;">class</span><span style="color: #009900;">&#41;</span>
@ContextConfiguration<span style="color: #009900;">&#40;</span>locations <span style="color: #339933;">=</span> <span style="color: #009900;">&#123;</span><span style="color: #0000ff;">&quot;classpath:**/applicationContext.xml&quot;</span><span style="color: #009900;">&#125;</span><span style="color: #009900;">&#41;</span>
<span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000000; font-weight: bold;">class</span> CategoryControllerTest <span style="color: #000000; font-weight: bold;">extends</span> AbstractJUnit4SpringContextTests<span style="color: #009900;">&#123;</span>
&nbsp;
<span style="color: #009900;">&#125;</span></pre></div></div>

<p>Po takiej definicji nasz kontekst będzie ładowany poprawnie.</p>
<p><strong>Update:</strong></p>
<p>Jeśli jednak i&nbsp;to nie zadziała, możecie skopiować odpowiednie pliki kontekstów do folderu z&nbsp;testami (lub folder nad) i&nbsp;zmienić adnotację na:</p>

<div class="wp_syntax"><div class="code"><pre class="java" style="font-family:monospace;">@ContextConfiguration<span style="color: #009900;">&#40;</span>locations <span style="color: #339933;">=</span> <span style="color: #009900;">&#123;</span><span style="color: #0000ff;">&quot;../test-context.xml&quot;</span><span style="color: #009900;">&#125;</span><span style="color: #009900;">&#41;</span></pre></div></div>

<img src="http://feeds.feedburner.com/~r/darekzon/~4/RkwKLo4NgKM" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://darekzon.com/2009/06/springframework-contextconfiguration-podpinamy-kontekst-do-testow/feed</wfw:commentRss>
		<slash:comments>3</slash:comments>
		<feedburner:origLink>http://darekzon.com/2009/06/springframework-contextconfiguration-podpinamy-kontekst-do-testow</feedburner:origLink></item>
		<item>
		<title>@GeneratedValue oraz @SequenceGenerator – czyli sekwencje w hibernate</title>
		<link>http://feedproxy.google.com/~r/darekzon/~3/XIXFVl42r2Q/generatedvalue-oraz-sequencegenerator-czyli-sekwencje-w-hibernate</link>
		<comments>http://darekzon.com/2009/06/generatedvalue-oraz-sequencegenerator-czyli-sekwencje-w-hibernate#comments</comments>
		<pubDate>Wed, 03 Jun 2009 19:52:58 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[J2EE]]></category>
		<category><![CDATA[Java]]></category>
		<category><![CDATA[entitybean]]></category>
		<category><![CDATA[generatedvalue]]></category>
		<category><![CDATA[hibernate]]></category>
		<category><![CDATA[javaee]]></category>
		<category><![CDATA[sequence]]></category>
		<category><![CDATA[sequencegenerator]]></category>

		<guid isPermaLink="false">http://blog.darekzon.com/?p=229</guid>
		<description><![CDATA[Tworzenie mojego projektu* rozpocząłem od zdefiniowania bazy danych, tabel w&#160;bazie oraz odpowiednich relacji między tabelami, na koniec dodałem sekwencje. Wszystko wygląda pięknie, i&#160;tak w&#160;teorii działa.
Jak każdy programista jestem leniwy, zamiast tworzyć mapowania w&#160;moim IDE o&#160;wiele lepiej wygenerować je wprost z&#160;bazy. W&#160;IntelliJ robi się łatwo o&#160;ile znajdziemy odpowiednią opcję o czym pisałem jakiś czas temu.  Niestety [...]]]></description>
			<content:encoded><![CDATA[<p>Tworzenie mojego projektu* rozpocząłem od zdefiniowania bazy danych, tabel w&nbsp;bazie oraz odpowiednich relacji między tabelami, na koniec dodałem sekwencje. Wszystko wygląda pięknie, i&nbsp;tak w&nbsp;teorii działa.</p>
<p>Jak każdy programista jestem leniwy, zamiast tworzyć mapowania w&nbsp;moim IDE o&nbsp;wiele lepiej wygenerować je wprost z&nbsp;bazy. W&nbsp;<a title="Jetbrains - Intellij Idea" href="http://wiki.laboratoriumsztuki.pl/index.php5?title=Coding_Styles_PHP&amp;action=edit" target="_blank">IntelliJ</a> robi się łatwo o&nbsp;ile znajdziemy odpowiednią opcję <a title="Generowanie schematu bazy do entity beans-ów" href="http://darekzon.com/2009/04/intelij-idea-importowanie-schematu-bazy-do-entity-beans.html">o czym pisałem</a> jakiś czas temu.  Niestety szybko przekonałem się, że nie jest to idealne odwzorowanie moich tabel. Nie wiedzieć czemu IntelliJ zapomniał zaimportować sekwencje zadeklarowane w&nbsp;bazie, co skutkowało wystąpieniem szeregu błędów podczas prób zapisania danych w&nbsp;bazie, w&nbsp;szczególności wyróżnia się jeden:</p>
<pre><span style="color: #800000;font-family: mceinline;">org.springframework.web.util.NestedServletException: Request processing failed;
  nested exception is org.springframework.orm.hibernate3.HibernateSystemException:
    ids for this class must be manually assigned before calling save():
       com.darekzon.coffeine.domain.Category;
  nested exception is org.hibernate.id.IdentifierGenerationException:
    ids for this class must be manually assigned before calling save():
       com.darekzon.coffeine.domain.Category</span></pre>
<p><span id="more-229"></span></p>
<p>Aby problemy przestały występować wystarczy z&nbsp;palca podpiąć sekwencje do konkretnego pola, robimy to przez zastosowanie adnotacji @<strong>GeneratedValue </strong>przy polu którego wartości mają być generowane przez sekwencje.</p>
<p>Kod wygląda następująco:</p>

<div class="wp_syntax"><div class="code"><pre class="java" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">import</span> <span style="color: #006699;">javax.persistence.*</span><span style="color: #339933;">;</span>
<span style="color: #000000; font-weight: bold;">import</span> <span style="color: #006699;">java.io.Serializable</span><span style="color: #339933;">;</span>
&nbsp;
@<span style="color: #003399;">Entity</span>
@Table<span style="color: #009900;">&#40;</span>schema <span style="color: #339933;">=</span> <span style="color: #0000ff;">&quot;public&quot;</span>, name <span style="color: #339933;">=</span> <span style="color: #0000ff;">&quot;category&quot;</span><span style="color: #009900;">&#41;</span>
<span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000000; font-weight: bold;">class</span> Category <span style="color: #000000; font-weight: bold;">implements</span> <span style="color: #003399;">Serializable</span> <span style="color: #009900;">&#123;</span>
&nbsp;
<span style="color: #000000; font-weight: bold;">private</span> <span style="color: #003399;">Long</span> id<span style="color: #339933;">;</span>
&nbsp;
@Id
@Column<span style="color: #009900;">&#40;</span>name <span style="color: #339933;">=</span> <span style="color: #0000ff;">&quot;id&quot;</span>, nullable <span style="color: #339933;">=</span> <span style="color: #000066; font-weight: bold;">false</span>, length <span style="color: #339933;">=</span> <span style="color: #cc66cc;">19</span><span style="color: #009900;">&#41;</span>
@SequenceGenerator<span style="color: #009900;">&#40;</span>name <span style="color: #339933;">=</span> <span style="color: #0000ff;">&quot;category_seq&quot;</span>, sequenceName <span style="color: #339933;">=</span> <span style="color: #0000ff;">&quot;category_id_seq&quot;</span><span style="color: #009900;">&#41;</span>
@GeneratedValue<span style="color: #009900;">&#40;</span>strategy <span style="color: #339933;">=</span> GenerationType.<span style="color: #006633;">SEQUENCE</span>, generator <span style="color: #339933;">=</span> <span style="color: #0000ff;">&quot;category_seq&quot;</span><span style="color: #009900;">&#41;</span>
<span style="color: #000000; font-weight: bold;">public</span> <span style="color: #003399;">Long</span> getId<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
<span style="color: #000000; font-weight: bold;">return</span> id<span style="color: #339933;">;</span>
<span style="color: #009900;">&#125;</span>
&nbsp;
<span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000066; font-weight: bold;">void</span> setId<span style="color: #009900;">&#40;</span><span style="color: #003399;">Long</span> id<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
<span style="color: #000000; font-weight: bold;">this</span>.<span style="color: #006633;">id</span> <span style="color: #339933;">=</span> id<span style="color: #339933;">;</span>
<span style="color: #009900;">&#125;</span>
&nbsp;
<span style="color: #000000; font-weight: bold;">private</span> <span style="color: #003399;">String</span> name<span style="color: #339933;">;</span>
&nbsp;
@Basic
@Column<span style="color: #009900;">&#40;</span>name <span style="color: #339933;">=</span> <span style="color: #0000ff;">&quot;name&quot;</span>, nullable <span style="color: #339933;">=</span> <span style="color: #000066; font-weight: bold;">false</span>, length <span style="color: #339933;">=</span> <span style="color: #cc66cc;">30</span><span style="color: #009900;">&#41;</span>
<span style="color: #000000; font-weight: bold;">public</span> <span style="color: #003399;">String</span> getName<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
<span style="color: #000000; font-weight: bold;">return</span> name<span style="color: #339933;">;</span>
<span style="color: #009900;">&#125;</span>
&nbsp;
<span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000066; font-weight: bold;">void</span> setName<span style="color: #009900;">&#40;</span><span style="color: #003399;">String</span> name<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
<span style="color: #000000; font-weight: bold;">this</span>.<span style="color: #006633;">name</span> <span style="color: #339933;">=</span> name<span style="color: #339933;">;</span>
<span style="color: #009900;">&#125;</span>
&nbsp;
<span style="color: #009900;">&#125;</span></pre></div></div>

<p>Pierwsze co robimy aby dodać generator to wskazanie która sekwencja generuje dane dla naszego pola, czyli adnotacja <strong>@SequenceGenerator</strong>,  podajemy dla niej dwie wartości, pierwsza to nazwa sekwencji jaka obowiązywać będzie w&nbsp;zakresie naszej klasy, natomiast druga to nazwa sekwencji w&nbsp;bazie.</p>
<p>Po skonfigurowaniu sekwencji mówimy hibernate-owi, że nasze -pole będzie otrzymywać automatycznie wartość korzystając z&nbsp;<strong>@GeneratedValue</strong>. Dla adnotacji <strong>@GeneratedValue </strong>musimy podać strategię tworzenia nowych wartości (z racji, że jest to sekwencja wybieramy <strong>SEQUENCE</strong>)  i&nbsp;oczywiście generator który te wartości będzie wskazywał, jako generator podajemy nazwę którą wcześniej wpisaliśmy w&nbsp;<strong>@SequenceGenerator</strong>.</p>
<p>Po tym zabiegu wszystko powinno działać jak trzeba.</p>
<p>Swoją drogą muszę się przestawić na tworzenie Entity Beanów a&nbsp;potem eksportowanie to do bazy danych, na pewno przyśpieszy to tworzenie projektu a&nbsp;przy okazji nie będę musiał tworzyć bazy danych (co uważam za zajęcie mało interesujące).</p>
<pre><span style="color: #888888;">* samo tworzenie, nie wliczyłem w&nbsp;to zbieranie wymagań i&nbsp;wstępne projekty i&nbsp;inne bzdurki <img src='http://darekzon.com/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </span></pre>
<img src="http://feeds.feedburner.com/~r/darekzon/~4/XIXFVl42r2Q" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://darekzon.com/2009/06/generatedvalue-oraz-sequencegenerator-czyli-sekwencje-w-hibernate/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://darekzon.com/2009/06/generatedvalue-oraz-sequencegenerator-czyli-sekwencje-w-hibernate</feedburner:origLink></item>
		<item>
		<title>Maven i Spring 3.0.0 M3</title>
		<link>http://feedproxy.google.com/~r/darekzon/~3/vA9umgfwEVA/maven-i-spring-300-m3</link>
		<comments>http://darekzon.com/2009/05/maven-i-spring-300-m3#comments</comments>
		<pubDate>Wed, 27 May 2009 11:54:02 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[J2EE]]></category>
		<category><![CDATA[Java]]></category>
		<category><![CDATA[maven]]></category>
		<category><![CDATA[repozytorium]]></category>
		<category><![CDATA[spring]]></category>
		<category><![CDATA[spring 3.0.0]]></category>

		<guid isPermaLink="false">http://blog.darekzon.com/?p=223</guid>
		<description><![CDATA[Tworząc mój projekt stanąłem przed problemem którego nie potrafiłem rozwiązać, było to w&#160;miarę łatwe parsowanie przyjaznych linków celem wydobycia z&#160;nich parametrów. Spring 2.5.6 z&#160;którego korzystałem nie miał takiej możliwości (nie znalazłem rozwiązania), więc postanowiłem migrować projekt do najnowsze wersji tego frameworka a&#160;mianowicie do wersji 3.0.0 M3.
Z racji, że korzystam z&#160;mavena uznałem, że wystarczy zmienić wersje [...]]]></description>
			<content:encoded><![CDATA[<p>Tworząc mój projekt stanąłem przed problemem którego nie potrafiłem rozwiązać, było to w&nbsp;miarę łatwe parsowanie przyjaznych linków celem wydobycia z&nbsp;nich parametrów. Spring 2.5.6 z&nbsp;którego korzystałem nie miał takiej możliwości (nie znalazłem rozwiązania), więc postanowiłem migrować projekt do najnowsze wersji tego frameworka a&nbsp;mianowicie do wersji <a title="Spring 3.0.0 M3" href="http://blog.springsource.com/2009/05/06/spring-framework-30-m3-released/" target="_blank">3.0.0 M3.</a></p>
<p>Z racji, że korzystam z&nbsp;<a title="Maven" href="http://maven.apache.org/" target="_blank">mavena</a> uznałem, że wystarczy zmienić wersje bibliotek w&nbsp;pliku POM.xml i&nbsp;wszystko ładnie będzie działać, niestety repozytoria które miałem skonfigurowane nie posiadały w&nbsp;swoich zasobach najnowszej wersji Spring-a.</p>
<p>Po szybkim przejrzeniu strony <a title="Spring Source" href="http://www.springsource.org/" target="_blank">springframework.org</a> szybko pobrałem konfigurację repozytorium Springa w&nbsp;którym przechowywane były najnowsze wersje bibliotek, niestety, po skonfigurowaniu tego repozytorium nie można było go zaktualizować (pobrać listy zawartości). Przeszukałem internet i&nbsp;nie znalazłem nic na ten temat, wpadłem natomiast na ciekawą aplikację jaką jest <a title="Nexus" href="http://nexus.sonatype.org/" target="_blank">Nexus</a>. Aplikacja pomaga nam utworzyć własne repozytorium, wymagając jedynie systemu operacyjnego z&nbsp;rodziny *Unix i&nbsp;maszyny wirtualnej javy, udostępniany jest też plik *.war, więc wszyscy użytkownicy, tomcata również znajdą coś dla siebie.</p>
<p>Tak więc utworzyłem na swoim serwerze vps repozytorium zawierające najnowszą wersję Springa, dodałem konfigurację do pliku POM.xml i&nbsp;wszystko działa, no prawie wszystko. Moje IDE nie widzi nowych wersji podczas wpisywania zależności, ale pobiera je poprawnie.</p>
<p>Dla wszystkich chętnych poniżej wstawiam konfigurację pliku POM.xml z&nbsp;moim repozytorium.</p>

<div class="wp_syntax"><div class="code"><pre class="xml" style="font-family:monospace;"> <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;repositories<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
        <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;repository<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
            <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;id<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>repo.a<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/id<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
            <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;url<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>http://mvn.darekzon.com/nexus/content/groups/public<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/url<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
        <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/repository<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
    <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/repositories<span style="color: #000000; font-weight: bold;">&gt;</span></span></span></pre></div></div>

<img src="http://feeds.feedburner.com/~r/darekzon/~4/vA9umgfwEVA" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://darekzon.com/2009/05/maven-i-spring-300-m3/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		<feedburner:origLink>http://darekzon.com/2009/05/maven-i-spring-300-m3</feedburner:origLink></item>
	</channel>
</rss>
