<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/atom10polishfull.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><feed xmlns="http://www.w3.org/2005/Atom" xmlns:openSearch="http://a9.com/-/spec/opensearch/1.1/" xmlns:georss="http://www.georss.org/georss" xmlns:gd="http://schemas.google.com/g/2005" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" gd:etag="W/&quot;CkEDQn44fip7ImA9WxBVF0o.&quot;"><id>tag:blogger.com,1999:blog-732565809886974735</id><updated>2010-02-21T17:44:33.036+01:00</updated><title>Java i pochodne</title><subtitle type="html">90% kodu zajmuje 90% czasu, pozostałe 10% kolejne 90% czasu ;]</subtitle><link rel="http://schemas.google.com/g/2005#feed" type="application/atom+xml" href="http://blog.gruchala.eu/feeds/posts/default" /><link rel="alternate" type="text/html" href="http://blog.gruchala.eu/" /><link rel="hub" href="http://pubsubhubbub.appspot.com/" /><link rel="next" type="application/atom+xml" href="http://www.blogger.com/feeds/732565809886974735/posts/default?start-index=26&amp;max-results=25&amp;redirect=false&amp;v=2" /><author><name>Leszek Gruchała</name><uri>http://www.blogger.com/profile/00088047976523414378</uri><email>leszek@gruchala.eu</email></author><generator version="7.00" uri="http://www.blogger.com">Blogger</generator><openSearch:totalResults>101</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/atom+xml" href="http://feeds.feedburner.com/LeszekGruchala" /><feedburner:info uri="leszekgruchala" /><feedburner:feedFlare href="http://add.my.yahoo.com/rss?url=http%3A%2F%2Ffeeds.feedburner.com%2FLeszekGruchala" 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.pageflakes.com/subscribe.aspx?url=http%3A%2F%2Ffeeds.feedburner.com%2FLeszekGruchala" 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.newsgator.com/ngs/subscriber/subext.aspx?url=http%3A%2F%2Ffeeds.feedburner.com%2FLeszekGruchala" 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%2FLeszekGruchala" 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%2FLeszekGruchala" 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/LeszekGruchala" 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%2FLeszekGruchala" 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%2FLeszekGruchala" src="http://buttons.googlesyndication.com/fusion/add.gif">Dodaj do Google</feedburner:feedFlare><entry gd:etag="W/&quot;DUcHQXs4fCp7ImA9WxBVEEw.&quot;"><id>tag:blogger.com,1999:blog-732565809886974735.post-7533157489574795248</id><published>2010-02-12T22:51:00.005+01:00</published><updated>2010-02-13T00:23:50.534+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-02-13T00:23:50.534+01:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="życie" /><title>Jeśli Twój produkt jest świetny, nie musi być dobry</title><content type="html">&lt;div&gt;&lt;b&gt;Ważne by faktycznie powstał!&lt;/b&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;Temat tego postu zaczerpnąłem z wpisu Paul'a Buchheit'a  &lt;a href="http://paulbuchheit.blogspot.com/2010/02/if-your-product-is-great-it-doesnt-need.html"&gt;If your product is Great, it doesn't need to be Good&lt;/a&gt;. &lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;Naszła mnie przy tym pewna refleksja.....&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;Wielu z nas prędzej czy później staje przed wizją (lub chce stanąć) stworzenia czegoś swojego. Czegoś co pozwoli na dłuższy rozwój siebie jak i aplikacji, pozwoli zarobić i poczuć się dumnym ;-). Im więcej się o tym myśli, tym bardziej zagłębiamy się w szczegóły. Zastanawiamy się jakież to &lt;i&gt;sexy capabilities&lt;/i&gt; mogą się pojawić, mogą sprawić, że nasza aplikacja pokona wszystkie inne podobne (ciężko teraz wymyślić coś od zera...) funkcjonalnością, łatwością użycia.&lt;span class="Apple-style-span" style="white-space: pre;"&gt; &lt;/span&gt;Zbieramy nasze myśli, zapisujemy je, nie chcąc stracić wymyślonych pod prysznicem koncepcji. Wyobrażamy sobie sukces jaki możemy osiągnąć. I to dobrze, bo motywuje do dalszej pracy i nie pozwala spocząć na laurach.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;Jak wielu z Was ma za sobą takie uczucie? Jak wielu z Was chciało rozpocząć lub rozpoczęło coś co miało naprawdę duże szanse być tym czymś o czym się mówi, ale z jakichś (prozaicznych?) powodów się nie powiodło? Ileż to trzeba motywacji i samozaparcia, aby znaleźć czas i żmudnie, konsekwentnie dążyć do celu. Ileż to wsparcia ze strony naszych najbliższych potrzebujmy, aby znaleźć siły nad pracą po pracy (do pewnego stopnia jest to przyjemność, ale jak długo?), nad własnymi wyrzeczeniami, a w szczególności nad mobilizacją samego siebie, gdy poczucie winy z powodu jeszcze mniejszej ilości czasu spędzonego bezpośrednio z rodziną się zwiększa. I jeszcze te słowa &lt;i&gt;Wiesz kochanie, że to dla Twojego, mojego, naszego dobra&lt;/i&gt;.... Może się wydawać, że teraz koloryzuję, ale gdy już zaangażujecie się w coś pełnym sobą to wierzycie, że będzie to warte swojej ceny i dacie z siebie wszystko. A to wymaga poświęceń.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt; Sam teraz stoję przed wizją stworzenia czegoś w moim przekonaniu interesującego. Ale czy mam rację? Czy mój wybór jest sensowny i czy okaże się warty swojej pracy, włożonego wysiłku? Nic innego jak tylko spróbować i żałować (ewentualnie!) po fakcie. Życzcie mi powodzenia. Ja Wam życzę :-)&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/732565809886974735-7533157489574795248?l=blog.gruchala.eu' alt='' /&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/LeszekGruchala?a=YYtKm7WlBpA:j3eHxDaTxVg:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/LeszekGruchala?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/LeszekGruchala?a=YYtKm7WlBpA:j3eHxDaTxVg:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/LeszekGruchala?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/LeszekGruchala?a=YYtKm7WlBpA:j3eHxDaTxVg:dnMXMwOfBR0"&gt;&lt;img src="http://feeds.feedburner.com/~ff/LeszekGruchala?d=dnMXMwOfBR0" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/LeszekGruchala?a=YYtKm7WlBpA:j3eHxDaTxVg:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/LeszekGruchala?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/LeszekGruchala/~4/YYtKm7WlBpA" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.gruchala.eu/feeds/7533157489574795248/comments/default" title="Komentarze do posta" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=732565809886974735&amp;postID=7533157489574795248" title="Komentarze (6)" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/732565809886974735/posts/default/7533157489574795248?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/732565809886974735/posts/default/7533157489574795248?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/LeszekGruchala/~3/YYtKm7WlBpA/jesli-twoj-produkt-jest-swietny-nie.html" title="Jeśli Twój produkt jest świetny, nie musi być dobry" /><author><name>Leszek Gruchała</name><uri>http://www.blogger.com/profile/00088047976523414378</uri><email>leszek@gruchala.eu</email><gd:extendedProperty name="OpenSocialUserId" value="03908813717881848807" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">6</thr:total><feedburner:origLink>http://blog.gruchala.eu/2010/02/jesli-twoj-produkt-jest-swietny-nie.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DE4GSXc7cCp7ImA9WxJbF0w.&quot;"><id>tag:blogger.com,1999:blog-732565809886974735.post-2708368095687041431</id><published>2009-07-27T19:31:00.005+02:00</published><updated>2009-07-27T19:48:48.908+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-07-27T19:48:48.908+02:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="wzorce" /><category scheme="http://www.blogger.com/atom/ns#" term="GWT" /><title>Najlepsze praktyki projektowania stron w Google Web Toolkit</title><content type="html">&lt;div style="text-align: center;"&gt;&lt;br /&gt;&lt;object width="445" height="364"&gt;&lt;param name="movie" value="http://www.youtube-nocookie.com/v/PDuhR18-EdM&amp;amp;hl=en&amp;amp;fs=1&amp;amp;color1=0xe1600f&amp;amp;color2=0xfebd01&amp;amp;border=1"&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;embed src="http://www.youtube-nocookie.com/v/PDuhR18-EdM&amp;amp;hl=en&amp;amp;fs=1&amp;amp;color1=0xe1600f&amp;amp;color2=0xfebd01&amp;amp;border=1" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="445" height="364"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;Ostatnio chciałem poduczyć się odnośnie wzorca Model-View-Presenter, który jest coraz bardziej popularny i częściej brany pod uwagę nić MVC. Polecam powyższą prezentację z tegorocznej konferencji Google IO. Jest ich nawet &lt;a href="http://code.google.com/intl/pl-PL/events/io/sessions.html#gwt"&gt;więcej&lt;/a&gt;, gdy tylko czas pozwoli postaram się ich zgłębić więcej. Muszę się w końcu wziąć do roboty i poprawić tę magisterkę zrobioną w rekordowo krótkim czasie, żeby nie było wstyd upublicznić na &lt;a href="http://kenai.com/projects/addressbook"&gt;kenai.com&lt;/a&gt; :-)&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Poniżej krótkie wnioski:&lt;/div&gt;&lt;div&gt;&lt;ul&gt;&lt;li&gt;przy deklaracji pól, list czy definiowaniu parametrów używaj implementacji w wywołaniach RPC oraz w kodzie klienckim - nie interfejsów. Aplikacja będzie szybsza a kodu JS mniej,&lt;/li&gt;&lt;li&gt;korzystaj z &lt;a href="http://en.wikipedia.org/wiki/Command_pattern"&gt;command pattern&lt;/a&gt; w wywołaniach RPC,&lt;/li&gt;&lt;li&gt;zwróć uwagę na tzw. &lt;i&gt;event bus&lt;/i&gt;, czyli miejsce gdzie będzie operował na zdarzeniach. Pozwoli to na lepszą organizację cache'owania asynchronicznych wywołań, testowanie (klasa &lt;a href="http://code.google.com/p/google-web-toolkit/issues/detail?id=2988"&gt;GWTMockUtilities&lt;/a&gt;, czy &lt;a href="http://www.jmock.org/gwt.html"&gt;jMock dla GWT&lt;/a&gt;)centralizację obsługi błędów oraz łatwiejszą i lepszą separację kodu niż MVC,&lt;/li&gt;&lt;li&gt;korzystaj z Google GIN po stronie klienta - mniejsza ilość powtarzalnego kodu w EntryPoint'ach,&lt;/li&gt;&lt;li&gt;na wczesnym etapie zajmij się obsługą historii.&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/732565809886974735-2708368095687041431?l=blog.gruchala.eu' alt='' /&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/LeszekGruchala?a=1WyoLyss3pE:LBWlHv-dZ7g:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/LeszekGruchala?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/LeszekGruchala?a=1WyoLyss3pE:LBWlHv-dZ7g:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/LeszekGruchala?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/LeszekGruchala?a=1WyoLyss3pE:LBWlHv-dZ7g:dnMXMwOfBR0"&gt;&lt;img src="http://feeds.feedburner.com/~ff/LeszekGruchala?d=dnMXMwOfBR0" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/LeszekGruchala?a=1WyoLyss3pE:LBWlHv-dZ7g:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/LeszekGruchala?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/LeszekGruchala/~4/1WyoLyss3pE" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.gruchala.eu/feeds/2708368095687041431/comments/default" title="Komentarze do posta" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=732565809886974735&amp;postID=2708368095687041431" title="Komentarze (0)" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/732565809886974735/posts/default/2708368095687041431?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/732565809886974735/posts/default/2708368095687041431?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/LeszekGruchala/~3/1WyoLyss3pE/najlepsze-praktyki-projektowania-stron.html" title="Najlepsze praktyki projektowania stron w Google Web Toolkit" /><author><name>Leszek Gruchała</name><uri>http://www.blogger.com/profile/00088047976523414378</uri><email>leszek@gruchala.eu</email><gd:extendedProperty name="OpenSocialUserId" value="03908813717881848807" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://blog.gruchala.eu/2009/07/najlepsze-praktyki-projektowania-stron.html</feedburner:origLink></entry><entry gd:etag="W/&quot;D08HQHo8eCp7ImA9WxJbEk0.&quot;"><id>tag:blogger.com,1999:blog-732565809886974735.post-1520044944991466369</id><published>2009-07-21T21:03:00.008+02:00</published><updated>2009-07-21T21:50:31.470+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-07-21T21:50:31.470+02:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Szczecin-JUG" /><category scheme="http://www.blogger.com/atom/ns#" term="IntelliJ" /><category scheme="http://www.blogger.com/atom/ns#" term="kenai" /><title>Status oraz JetBrains Seeder Program</title><content type="html">Witam Was serdecznie po dłuższym czasie. Były różne tego powodu (jestem w końcu magistrem!), ale nie ma co opowiadać. Trzeba wziąć się do roboty.&lt;br /&gt;&lt;br /&gt;Szczecin JUG nie od dzisiaj ma problemy z generowaniem spotkań, a ja jak zawsze mam nadzieję, że choć w ćwierci będziemy tak spotkaniowo aktywni jak inne JUGi. Mimo to, nikt nie odbierze nam zawzięcia w podróżowaniu po Polsce po konferencjach. Może nie zawsze stałą ekipą, ale jednak ;-)&lt;br /&gt;&lt;br /&gt;Posiadamy własny serwer na którym umieszczona jest strona &lt;a href="http://www.java4people.com/"&gt;java4people.com&lt;/a&gt;, jak również Confulence 2.9 z większością wrzuconych informacji (niestety brak dotychczas czasu na dokończenie tego), obecnie staram się uzyskać wersję 3 i mam w planie doprowadzenie tego do porządku.&lt;br /&gt;&lt;br /&gt;Grupa doczekała się także konta na &lt;span style="font-weight: bold;"&gt;kenai.com&lt;/span&gt; - &lt;a href="http://kenai.com/projects/szczecinjug"&gt;http://kenai.com/projects/szczecinjug&lt;/a&gt;&lt;br /&gt;Mamy tam JIRA'e, jeszcze nie wybrane repozytorium kodu. Ale co najważniejsze jest sposobność do zmajstrowania czegoś razem.&lt;br /&gt;&lt;br /&gt;Odnośnie &lt;a href="http://www.jetbrains.net/confluence/display/JBSDR/JetBrains+Seeder+Program"&gt;JetBrains Seeder Program&lt;/a&gt;. W zasadzie krótko. Zostałem jego członkiem. Jeśli Ty, Twoja firma, babcia lub dziadek chcieliby popróbować trial'a &lt;span style="font-weight: bold;"&gt;przez 60 dni&lt;/span&gt;, wal śmiało. Jeśli na dodatek chcieliby kupić i na te wszystkie licencje &lt;span style="font-weight: bold;"&gt;otrzymać 10% zniżki&lt;/span&gt;, wal śmiało.&lt;br /&gt;&lt;br /&gt;leszek(małpa/na)gruchala.eu&lt;br /&gt;&lt;br /&gt;And that's all folks! Na razie...&lt;br /&gt;&lt;br /&gt;PS. Dałem sobie szansę z &lt;a href="http://twitter.com/leszekgruchala"&gt;Twitterem&lt;/a&gt; (w 90% rzeczy zwiazane z IT po angielsku) oraz &lt;a href="http://facebook.com/leszekgruchala"&gt;Facebookiem&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/732565809886974735-1520044944991466369?l=blog.gruchala.eu' alt='' /&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/LeszekGruchala?a=m2-KckOrPMU:KQl3eTd2mWI:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/LeszekGruchala?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/LeszekGruchala?a=m2-KckOrPMU:KQl3eTd2mWI:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/LeszekGruchala?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/LeszekGruchala?a=m2-KckOrPMU:KQl3eTd2mWI:dnMXMwOfBR0"&gt;&lt;img src="http://feeds.feedburner.com/~ff/LeszekGruchala?d=dnMXMwOfBR0" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/LeszekGruchala?a=m2-KckOrPMU:KQl3eTd2mWI:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/LeszekGruchala?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/LeszekGruchala/~4/m2-KckOrPMU" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.gruchala.eu/feeds/1520044944991466369/comments/default" title="Komentarze do posta" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=732565809886974735&amp;postID=1520044944991466369" title="Komentarze (2)" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/732565809886974735/posts/default/1520044944991466369?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/732565809886974735/posts/default/1520044944991466369?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/LeszekGruchala/~3/m2-KckOrPMU/status-oraz-jetbrains-seeder-program.html" title="Status oraz JetBrains Seeder Program" /><author><name>Leszek Gruchała</name><uri>http://www.blogger.com/profile/00088047976523414378</uri><email>leszek@gruchala.eu</email><gd:extendedProperty name="OpenSocialUserId" value="03908813717881848807" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">2</thr:total><feedburner:origLink>http://blog.gruchala.eu/2009/07/status-oraz-jetbrains-seeder-program.html</feedburner:origLink></entry><entry gd:etag="W/&quot;D0MHQXozfSp7ImA9WxJbEk0.&quot;"><id>tag:blogger.com,1999:blog-732565809886974735.post-8041591505695612678</id><published>2009-03-03T20:11:00.010+01:00</published><updated>2009-07-21T21:43:50.485+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-07-21T21:43:50.485+02:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Szczecin-JUG" /><title>7 spotkanie Szczecin JUG - EJB 3.0 od podstaw</title><content type="html">&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://szczecin-jug.googlegroups.com/web/logoJUG_T_175x197.png?gda=tjeBZ0YAAADCExPGswPjP0adUhYTjte49UFQ4jc49ZQdLSEfnLg92GG1qiJ7UbTIup-M2XPURDTfjLnpvG8rQ4n9fDBbOLSE2Ym5KslnHVwDnCgLGFRRjw"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 175px; height: 197px;" src="http://szczecin-jug.googlegroups.com/web/logoJUG_T_175x197.png?gda=tjeBZ0YAAADCExPGswPjP0adUhYTjte49UFQ4jc49ZQdLSEfnLg92GG1qiJ7UbTIup-M2XPURDTfjLnpvG8rQ4n9fDBbOLSE2Ym5KslnHVwDnCgLGFRRjw" alt="" border="0" /&gt;&lt;/a&gt;Zapraszam na następne spotkanie, które tak jak ostatnio odbędzie się na Zachodniopomorskim Wydziale Technologicznym w sali 128. 12 marca br., godz. 18:00.&lt;br /&gt;&lt;p&gt;Tematem będzie Enterprise JavaBeans 3.0 od podstaw.&lt;/p&gt;&lt;p&gt;Prelegent: Leszek Gruchała&lt;/p&gt;Plan:&lt;br /&gt;&lt;p&gt;1) Enterprise... co nam to daje?&lt;br /&gt;2) Stateless, Stateful..., czyli co to jest EJB.&lt;br /&gt;3) Omówienie przykładowej aplikacji.&lt;/p&gt;Z pewnością wielu z Was słyszało o tym frameworku, ale nie wszyscy używali ;-) Postaram się przedstawić ten temat, tak aby osoby które nie miały z nim nic wspólnego wyszły ze spotkania ze świadomością poznania nowej technologii. Aby dużo łatwiej było im rozpocząć pracę z EJB. Mam nadzieję, że także osoby doświadczone znajdą coś dla siebie ;-)&lt;br /&gt;&lt;br /&gt;O mnie... Javą zajmuję się zawodowo od prawie roku. W tym czasie głównie zajmowałem się GWT, ale wiele czasu spędziłem na poznawaniu także innych części Javy.&lt;br /&gt;&lt;br /&gt;Do wygrania jak zwykle licencja na jeden z wymienionych produktów&lt;br /&gt;firmy &lt;a href="http://www.jetbrains.com/?java_Szczecin"&gt;JetBrains&lt;/a&gt;:&lt;br /&gt;a. IntelliJ IDEA Personal License&lt;br /&gt;b. ReSharper Personal License&lt;br /&gt;c. TeamCity Build Agent&lt;br /&gt;d. Ruby Mine&lt;br /&gt;oraz licencja na agenta maszyny wirtualnej &lt;a href="http://www.zeroturnaround.com/javarebel/"&gt;JavaRebel&lt;/a&gt;.&lt;br /&gt;&lt;p&gt;PS. Moje pierwsze wystąpienie ;-)&lt;/p&gt;Zapraszam w imieniu grupy i swoim.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Spotkanie przeniesione na kwiecień. Z różnych przyczyn nie dam rady zrobić tej prezentacji w tym miesiącu. Przepraszam zainteresowanych.&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/732565809886974735-8041591505695612678?l=blog.gruchala.eu' alt='' /&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/LeszekGruchala?a=n4TmkmY8SrY:iBudO__ZCLk:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/LeszekGruchala?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/LeszekGruchala?a=n4TmkmY8SrY:iBudO__ZCLk:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/LeszekGruchala?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/LeszekGruchala?a=n4TmkmY8SrY:iBudO__ZCLk:dnMXMwOfBR0"&gt;&lt;img src="http://feeds.feedburner.com/~ff/LeszekGruchala?d=dnMXMwOfBR0" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/LeszekGruchala?a=n4TmkmY8SrY:iBudO__ZCLk:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/LeszekGruchala?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/LeszekGruchala/~4/n4TmkmY8SrY" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.gruchala.eu/feeds/8041591505695612678/comments/default" title="Komentarze do posta" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=732565809886974735&amp;postID=8041591505695612678" title="Komentarze (2)" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/732565809886974735/posts/default/8041591505695612678?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/732565809886974735/posts/default/8041591505695612678?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/LeszekGruchala/~3/n4TmkmY8SrY/7-spotkanie-szczecin-jug-ejb-30-od.html" title="7 spotkanie Szczecin JUG - EJB 3.0 od podstaw" /><author><name>Leszek Gruchała</name><uri>http://www.blogger.com/profile/00088047976523414378</uri><email>leszek@gruchala.eu</email><gd:extendedProperty name="OpenSocialUserId" value="03908813717881848807" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">2</thr:total><feedburner:origLink>http://blog.gruchala.eu/2009/03/7-spotkanie-szczecin-jug-ejb-30-od.html</feedburner:origLink></entry><entry gd:etag="W/&quot;A08ERH48eSp7ImA9WxVWFUQ.&quot;"><id>tag:blogger.com,1999:blog-732565809886974735.post-4709667011796873063</id><published>2009-02-25T22:47:00.005+01:00</published><updated>2009-02-25T23:10:05.071+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-02-25T23:10:05.071+01:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Szczecin-JUG" /><category scheme="http://www.blogger.com/atom/ns#" term="konferencje" /><title>Rejestracja na java4people 2009 rozpoczęta!</title><content type="html">&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_63iqep0nnFY/SaW-urW0oYI/AAAAAAAAAgM/jecvpUODwTQ/s1600-h/java4people_280x135.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 280px; height: 135px;" src="http://2.bp.blogspot.com/_63iqep0nnFY/SaW-urW0oYI/AAAAAAAAAgM/jecvpUODwTQ/s400/java4people_280x135.jpg" alt="" id="BLOGGER_PHOTO_ID_5306857445047705986" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;p&gt;&lt;br /&gt;Druga edycja java4people zbliża się wielkimi krokami! Już 4 kwietnia (sobota) odbędzie się największa w północno-zachodniej Polsce konferencja dotycząca języka Java. Swoją drogą to chyba techniczna również ;-)&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;Jak zwykle wszelkie informacje, jak i rejestracja dostępne są na stronie &lt;a href="http://www.java4people.com/"&gt;www.java4people.com&lt;/a&gt;. Mimo światowego kryzysu, dzięki hojnym sponsorom, możliwe stało się zorganizowanie lepszej jakościowo i organizacyjnie imprezy. Mam nadzieję, że będziecie bardzo zadowoleni. Dodam tylko, że zostaną poruszone tematy: EJB3, Spring Webflow, Groovy&amp;amp;Grails, Comet i Bayeux. Po więcej info zapraszam na stronę konferencji.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;W tym roku konferencja odbędzie się na &lt;a href="http://www.wneiz.pl/"&gt;Wydziale Nauk Ekonomicznych i Zarządzania US&lt;/a&gt; w Sali Studiów Doktoranckich (miękkie siedzenia :-)).&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;Jak zwykle nie obejdzie się bez koszulek i nagród. Aż Wam zazdroszczę!&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/732565809886974735-4709667011796873063?l=blog.gruchala.eu' alt='' /&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/LeszekGruchala?a=oGZxtvUjoTw:yBORUBpkv68:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/LeszekGruchala?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/LeszekGruchala?a=oGZxtvUjoTw:yBORUBpkv68:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/LeszekGruchala?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/LeszekGruchala?a=oGZxtvUjoTw:yBORUBpkv68:dnMXMwOfBR0"&gt;&lt;img src="http://feeds.feedburner.com/~ff/LeszekGruchala?d=dnMXMwOfBR0" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/LeszekGruchala?a=oGZxtvUjoTw:yBORUBpkv68:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/LeszekGruchala?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/LeszekGruchala/~4/oGZxtvUjoTw" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.gruchala.eu/feeds/4709667011796873063/comments/default" title="Komentarze do posta" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=732565809886974735&amp;postID=4709667011796873063" title="Komentarze (3)" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/732565809886974735/posts/default/4709667011796873063?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/732565809886974735/posts/default/4709667011796873063?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/LeszekGruchala/~3/oGZxtvUjoTw/rejestracja-na-java4people-2009.html" title="Rejestracja na java4people 2009 rozpoczęta!" /><author><name>Leszek Gruchała</name><uri>http://www.blogger.com/profile/00088047976523414378</uri><email>leszek@gruchala.eu</email><gd:extendedProperty name="OpenSocialUserId" value="03908813717881848807" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://2.bp.blogspot.com/_63iqep0nnFY/SaW-urW0oYI/AAAAAAAAAgM/jecvpUODwTQ/s72-c/java4people_280x135.jpg" height="72" width="72" /><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">3</thr:total><feedburner:origLink>http://blog.gruchala.eu/2009/02/rejestracja-na-java4people-2009.html</feedburner:origLink></entry><entry gd:etag="W/&quot;A0INRnc_cSp7ImA9WxVXGUk.&quot;"><id>tag:blogger.com,1999:blog-732565809886974735.post-3036293092365667151</id><published>2009-01-25T21:37:00.005+01:00</published><updated>2009-02-18T10:33:17.949+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-02-18T10:33:17.949+01:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Mac" /><title>UnsatisfiedLinkError na Mac OS X</title><content type="html">Na Mac OS X od czasu do czasu nie działa coś zwiazanego z Javą 6. W zasadzie to nie mam pojęcia dlaczego Apple zajmuje się implementacją Javy, a nie Sun jak na pozostałaych systemach. Jakiś czas temu chciałem uruchomić aplikację korzystającą z zewnętrzenej biblioteki. Aplikacja ta umożliwia komunikację z urządzeniami przez port RS232. Mimo różnych kombinacji ciągle program nie widział wymaganej biblioteki:&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;java.lang.UnsatisfiedLinkError: /System/Library/Frameworks/JavaVM.framework/Versions/1.6.0/Libraries/librxtxSerial.jnilib:  thrown while loading gnu.io.RXTXCommDriver&lt;br /&gt;Exception in thread "AWT-EventQueue-0" java.lang.UnsatisfiedLinkError: /System/Library/Frameworks/JavaVM.framework/Versions/1.6.0/Libraries/librxtxSerial.jnilib:&lt;br /&gt;at java.lang.ClassLoader$NativeLibrary.load(Native Method)&lt;br /&gt;at java.lang.ClassLoader.loadLibrary0(ClassLoader.java:1822)&lt;br /&gt;at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1723)&lt;br /&gt;at java.lang.Runtime.loadLibrary0(Runtime.java:822)&lt;br /&gt;at java.lang.System.loadLibrary(System.java:993)&lt;br /&gt;at gnu.io.CommPortIdentifier.&lt;clinit&gt;(CommPortIdentifier.java:83)&lt;br /&gt;at eu.gruchala.rs232.ListAvailablePorts.&lt;init&gt;(ListAvailablePorts.java:23)&lt;br /&gt;at eu.gruchala.rs232.MainFrame$1.run(MainFrame.java:77)&lt;br /&gt;at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:209)&lt;br /&gt;at java.awt.EventQueue.dispatchEvent(EventQueue.java:461)&lt;br /&gt;at java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchThread.java:269)&lt;br /&gt;at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:190)&lt;br /&gt;at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:184)&lt;br /&gt;at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:176)&lt;br /&gt;at java.awt.EventDispatchThread.run(EventDispatchThread.java:110)&lt;/init&gt;&lt;/clinit&gt;&lt;/blockquote&gt;&lt;clinit&gt;&lt;init&gt;&lt;br /&gt;Okazało się, że problem leży w Javie 6 i Javie 5 64-bitowej. &lt;strike&gt;Nie wiem dlaczego, ale te wersje choćby nie wiem co, nie widzą zależnych bibliotek niejawowych.&lt;/strike&gt; Aby program zadziałał, wystarczy przełączyć system na uruchomianie aplikacji z Javą 5 32-bity lub podłączyć bibliotekę skompilowaną na 64-bity. Powinna nazywać się libXXX.jnilib gdzie XXX to nazwa jaką ładujemy w kodzie programu np.:&lt;br /&gt;&lt;blockquote&gt;System.loadLibrary("XXX");&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/init&gt;&lt;/clinit&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_63iqep0nnFY/SXzO-ZogvPI/AAAAAAAAAfM/Gx0bilMgb9c/s1600-h/screen-capture.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 251px;" src="http://4.bp.blogspot.com/_63iqep0nnFY/SXzO-ZogvPI/AAAAAAAAAfM/Gx0bilMgb9c/s400/screen-capture.png" alt="" id="BLOGGER_PHOTO_ID_5295334833308876018" border="0" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/732565809886974735-3036293092365667151?l=blog.gruchala.eu' alt='' /&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/LeszekGruchala?a=BmueH9femmw:xh-xF9_fTb8:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/LeszekGruchala?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/LeszekGruchala?a=BmueH9femmw:xh-xF9_fTb8:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/LeszekGruchala?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/LeszekGruchala?a=BmueH9femmw:xh-xF9_fTb8:dnMXMwOfBR0"&gt;&lt;img src="http://feeds.feedburner.com/~ff/LeszekGruchala?d=dnMXMwOfBR0" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/LeszekGruchala?a=BmueH9femmw:xh-xF9_fTb8:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/LeszekGruchala?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/LeszekGruchala/~4/BmueH9femmw" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.gruchala.eu/feeds/3036293092365667151/comments/default" title="Komentarze do posta" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=732565809886974735&amp;postID=3036293092365667151" title="Komentarze (0)" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/732565809886974735/posts/default/3036293092365667151?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/732565809886974735/posts/default/3036293092365667151?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/LeszekGruchala/~3/BmueH9femmw/unsatisfiedlinkerror-na-mac-os-x.html" title="UnsatisfiedLinkError na Mac OS X" /><author><name>Leszek Gruchała</name><uri>http://www.blogger.com/profile/00088047976523414378</uri><email>leszek@gruchala.eu</email><gd:extendedProperty name="OpenSocialUserId" value="03908813717881848807" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://4.bp.blogspot.com/_63iqep0nnFY/SXzO-ZogvPI/AAAAAAAAAfM/Gx0bilMgb9c/s72-c/screen-capture.png" height="72" width="72" /><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://blog.gruchala.eu/2009/01/unsatisfiedlinkerror-na-mac-os-x.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CUMDRX04cCp7ImA9WxVWGE8.&quot;"><id>tag:blogger.com,1999:blog-732565809886974735.post-8345375501115809193</id><published>2009-01-17T15:11:00.007+01:00</published><updated>2009-02-28T13:17:54.338+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-02-28T13:17:54.338+01:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="EJB" /><title>Enterprise JavaBeans 3.0: stanowe ziarna sesyjne</title><content type="html">&lt;span style="font-weight: bold;"&gt;Stateful Session Beans (@Stateful)&lt;/span&gt; są bardzo podobne do ziaren bezstanowych. Różnią się w zasadzie cyklem życia. Kontener dba o to, aby ziarno stanowe nie zgubiło nigdzie stanu, który przechowuje oraz aby każde kolejne wywołanie metody biznesowej danego bean'a nie zostało wywołane przez klienta, który nie jest związany z tym ziarnem. Dlatego odwrotnie do Stateless session beans, ziarna stanowe są powiązane tylko i wyłącznie z jednym klientem.&lt;br /&gt;&lt;br /&gt;Cykl życia jest trochę bogatszy od ziaren bezstanowych. Zawiera to co one oraz dwa dodatkowe stany:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;span style="font-weight: bold;"&gt;@PrePassivate&lt;/span&gt; - wywołane przed dezaktywacją bean'a,&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-weight: bold;"&gt;@PostActivate&lt;/span&gt; - wywołane po aktywacji.&lt;/li&gt;&lt;/ul&gt;Ale czym jest ta "pasywacja"? Nie zawsze jest tak, że ziarno stanowe jest potrzebne, ale nadal przecież musi przechowywać swój stan. W momencie gdy tak się dzieje, kontener dezaktywuje je, przenosi z pamięci aktywnej do tymczasowej (zapisuje na dysku) wykorzystując serializację (dlatego też ziarna stanowe i powiązane z nimi obiekty muszą implementować &lt;span style="font-weight: bold;"&gt;java.io.Serializable&lt;/span&gt;). Proces ten jest nazwany &lt;span style="font-weight: bold;"&gt;passivation&lt;/span&gt;. Po polsku może to być pasywacja lub wymyślona na moje potrzeby dezaktywacja. Gdy ziarno będzie znowu potrzebne, kontener je aktywuje i wywoła również to co jest w metodzie z adnotacją &lt;span style="font-style: italic;"&gt;@PostActivate&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;W związku z tym zapisywaniem, należy pamiętać o poprawnym wykorzystywaniu tych adnotacji aby kontener zapisywał tymczasowo jak najmniejsze ilości danych. W zasadzie to się tyczy całych ziaren stanowych. Należy z nich korzystać tylko w razie konieczności starając się minimalizować ich obciążenie.&lt;br /&gt;&lt;br /&gt;Ziarno kończy swój żywot, gdy już nie jest potrzebne poprzez wywołanie metody oznaczonej &lt;span style="font-weight: bold;"&gt;@Remove&lt;/span&gt; lub time out. Można w niej np. "znullować" (język polski jest super) zmienne stanowe.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/732565809886974735-8345375501115809193?l=blog.gruchala.eu' alt='' /&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/LeszekGruchala?a=D7ljQFuuU5E:Mve6DqpNsJs:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/LeszekGruchala?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/LeszekGruchala?a=D7ljQFuuU5E:Mve6DqpNsJs:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/LeszekGruchala?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/LeszekGruchala?a=D7ljQFuuU5E:Mve6DqpNsJs:dnMXMwOfBR0"&gt;&lt;img src="http://feeds.feedburner.com/~ff/LeszekGruchala?d=dnMXMwOfBR0" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/LeszekGruchala?a=D7ljQFuuU5E:Mve6DqpNsJs:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/LeszekGruchala?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/LeszekGruchala/~4/D7ljQFuuU5E" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.gruchala.eu/feeds/8345375501115809193/comments/default" title="Komentarze do posta" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=732565809886974735&amp;postID=8345375501115809193" title="Komentarze (5)" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/732565809886974735/posts/default/8345375501115809193?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/732565809886974735/posts/default/8345375501115809193?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/LeszekGruchala/~3/D7ljQFuuU5E/enterprise-javabeans-30-stanowe-ziarna.html" title="Enterprise JavaBeans 3.0: stanowe ziarna sesyjne" /><author><name>Leszek Gruchała</name><uri>http://www.blogger.com/profile/00088047976523414378</uri><email>leszek@gruchala.eu</email><gd:extendedProperty name="OpenSocialUserId" value="03908813717881848807" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">5</thr:total><feedburner:origLink>http://blog.gruchala.eu/2009/01/enterprise-javabeans-30-stanowe-ziarna.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CUcMSHo9fyp7ImA9WxVWGE8.&quot;"><id>tag:blogger.com,1999:blog-732565809886974735.post-2108235506187322222</id><published>2009-01-15T21:14:00.006+01:00</published><updated>2009-02-28T13:11:29.467+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-02-28T13:11:29.467+01:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="EJB" /><title>Enterprise JavaBeans 3.0: bezstanowe ziarna sesyjne</title><content type="html">No to teraz już wszystko będzie proste ;-) W komentarzu do poprzedniego posta napisałem, że ziarna nazywane są sesyjne ze względu na nazwanie tak czasu wywołania/trwania metody biznesowej. Innym określeniem tego procesu jest konwersacja.  &lt;span style="font-weight: bold;"&gt;Stateless Session Beans&lt;/span&gt; &lt;span style="font-weight: bold;"&gt;(@Stateless)&lt;/span&gt; nie przechowują żadnego stanu, dlatego wywołanie danej metody może zakończyć cykl życia bezstanowego ziarna (tak na chama to w stanowych też, ale nie są one po to, żeby być tak na chwilę ;-)). Generalnie rzecz biorąc każde ziarno kiedyś powstaje i kiedyś kończy swój żywot. Albo poprzez time out serwera albo wywołanie metody z adnotacją @Remove (ale to cecha ziaren stanowych).&lt;br /&gt;&lt;br /&gt;Stateless session beans są bardzo "wydajne". Załóżmy, że mamy 1000 klientów naszej aplikacji. Mimo tak dużej ilości klientów korzystających z naszego ziarna kontener nie będzie tworzył tak dużej ilości instancji. Dlatego, że:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;mało prawdopodobne żeby wszyscy naraz korzystali z tego samego&lt;/li&gt;&lt;li&gt;ziarenka odwalą swoją robotę i czekają aż będą mogły znowu pomóc, czyli istniejące instancje są przetrzymywane w puli i używane na nowo w razie potrzeby. Jest to &lt;span style="font-style: italic;"&gt;pooling&lt;/span&gt;.&lt;/li&gt;&lt;/ul&gt;Występują tutaj dwa cykle życia:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;span style="font-weight: bold;"&gt;@PostConstruct&lt;/span&gt; - metoda tak adnotowana zostanie wywoałana po stworzeniu instancji bean'a oraz wstrzyknięciu zależności,&lt;/li&gt;&lt;li&gt;&lt;span style="font-weight: bold;"&gt;@PreDestroy&lt;/span&gt; - wywoływany tuż przed zniszczeniem instancji ziarna.&lt;/li&gt;&lt;/ul&gt;Oprócz wcześniej wspomnianych adnotacji interfejsu biznesowego @Local i @Remote, bezstanowe ziarna posiadają jeszcze jeden dodatkowy - &lt;span style="font-weight: bold;"&gt;@WebService&lt;/span&gt;. Żadne inne ziarno nie może posiadać tak oznaczonego interfejsu z dość prostej przyczyny. Bezstanowe ziarna nie przetrzymują stanu, który musiałby być jakoś przesłany przez HTTP.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/732565809886974735-2108235506187322222?l=blog.gruchala.eu' alt='' /&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/LeszekGruchala?a=_Qamk-ld57M:NYpR-UHIE-c:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/LeszekGruchala?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/LeszekGruchala?a=_Qamk-ld57M:NYpR-UHIE-c:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/LeszekGruchala?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/LeszekGruchala?a=_Qamk-ld57M:NYpR-UHIE-c:dnMXMwOfBR0"&gt;&lt;img src="http://feeds.feedburner.com/~ff/LeszekGruchala?d=dnMXMwOfBR0" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/LeszekGruchala?a=_Qamk-ld57M:NYpR-UHIE-c:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/LeszekGruchala?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/LeszekGruchala/~4/_Qamk-ld57M" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.gruchala.eu/feeds/2108235506187322222/comments/default" title="Komentarze do posta" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=732565809886974735&amp;postID=2108235506187322222" title="Komentarze (0)" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/732565809886974735/posts/default/2108235506187322222?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/732565809886974735/posts/default/2108235506187322222?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/LeszekGruchala/~3/_Qamk-ld57M/enterprise-javabeans-30-bezstanowe.html" title="Enterprise JavaBeans 3.0: bezstanowe ziarna sesyjne" /><author><name>Leszek Gruchała</name><uri>http://www.blogger.com/profile/00088047976523414378</uri><email>leszek@gruchala.eu</email><gd:extendedProperty name="OpenSocialUserId" value="03908813717881848807" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://blog.gruchala.eu/2009/01/enterprise-javabeans-30-bezstanowe.html</feedburner:origLink></entry><entry gd:etag="W/&quot;C0cAQ3o9eCp7ImA9WxVSE0s.&quot;"><id>tag:blogger.com,1999:blog-732565809886974735.post-361280215786049288</id><published>2009-01-07T21:20:00.012+01:00</published><updated>2009-01-07T21:44:02.460+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-01-07T21:44:02.460+01:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Szczecin-JUG" /><title>6 spotkanie Szczecin JUG - Błażej Ksycki - GlassFish</title><content type="html">&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_63iqep0nnFY/SWURiNF8ktI/AAAAAAAAAe0/-82PywzMUb4/s1600-h/090104_jugSpotkanie_10_formatA3.jpg"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 283px; height: 400px;" src="http://4.bp.blogspot.com/_63iqep0nnFY/SWURiNF8ktI/AAAAAAAAAe0/-82PywzMUb4/s400/090104_jugSpotkanie_10_formatA3.jpg" alt="" id="BLOGGER_PHOTO_ID_5288652616744342226" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;p&gt;Zapraszam na kolejne spotkanie. Tym razem o serwerze aplikacyjnym &lt;span class="nfakPe"&gt;GlassFish&lt;/span&gt; opowie Błażej Ksycki.&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;br /&gt;&lt;a href="http://ksycki.pl/"&gt;Błażej Ksycki&lt;/a&gt; jest absolwentem Wydziału Informatyki Politechniki Szczecińskiej. W ciągu jego kariery zawodowej miał styczność z wieloma różnymi technologiami, od programowania gier w telefonach z Symbianem, po webowe aplikacje klasy enterprise. Z samą Javą zawodowo ma styczność od kilku lat.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;Temat: "Dlaczego nie GlassFish?"&lt;/p&gt;&lt;p&gt;&lt;span&gt;1) Czym są serwery aplikacji i jaka jest ich rola&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span&gt;2) Wady i zalety GlassFish'a&lt;/span&gt;&lt;/p&gt;&lt;p&gt;3) GlassFish FAQ&lt;/p&gt;&lt;p&gt;4) Porównanie z innymi serwerami aplikacji&lt;/p&gt;&lt;p&gt;5) Instalacja na Windowsie i Linuksie&lt;br /&gt;&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;br /&gt;Do wygrania jak zwykle licencja na jeden z wymienionych produktów&lt;br /&gt;firmy JetBrains:&lt;br /&gt;a. IntelliJ IDEA Personal License&lt;br /&gt;b. ReSharper Personal License&lt;br /&gt;c. TeamCity Build Agent&lt;br /&gt;d. Ruby Mine&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;Miejsce: WI ZUT (PS), sala 128&lt;br /&gt;Godz. 18:00&lt;br /&gt;Data: 15.01.2009&lt;br /&gt;Rejestracja: &lt;a href="http://www.jugevents.org/jugevents/event/show.html?id=12239" target="_blank"&gt;JUGEVENTS&lt;/a&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;Zapraszam w imieniu swoim i Błażeja.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/732565809886974735-361280215786049288?l=blog.gruchala.eu' alt='' /&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/LeszekGruchala?a=MlFz2TA0Uu8:YFtcAuukOdk:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/LeszekGruchala?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/LeszekGruchala?a=MlFz2TA0Uu8:YFtcAuukOdk:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/LeszekGruchala?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/LeszekGruchala?a=MlFz2TA0Uu8:YFtcAuukOdk:dnMXMwOfBR0"&gt;&lt;img src="http://feeds.feedburner.com/~ff/LeszekGruchala?d=dnMXMwOfBR0" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/LeszekGruchala?a=MlFz2TA0Uu8:YFtcAuukOdk:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/LeszekGruchala?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/LeszekGruchala/~4/MlFz2TA0Uu8" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.gruchala.eu/feeds/361280215786049288/comments/default" title="Komentarze do posta" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=732565809886974735&amp;postID=361280215786049288" title="Komentarze (0)" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/732565809886974735/posts/default/361280215786049288?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/732565809886974735/posts/default/361280215786049288?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/LeszekGruchala/~3/MlFz2TA0Uu8/6-spotkanie-szczecin-jug-baej-ksycki.html" title="6 spotkanie Szczecin JUG - Błażej Ksycki - GlassFish" /><author><name>Leszek Gruchała</name><uri>http://www.blogger.com/profile/00088047976523414378</uri><email>leszek@gruchala.eu</email><gd:extendedProperty name="OpenSocialUserId" value="03908813717881848807" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://4.bp.blogspot.com/_63iqep0nnFY/SWURiNF8ktI/AAAAAAAAAe0/-82PywzMUb4/s72-c/090104_jugSpotkanie_10_formatA3.jpg" height="72" width="72" /><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://blog.gruchala.eu/2009/01/6-spotkanie-szczecin-jug-baej-ksycki.html</feedburner:origLink></entry><entry gd:etag="W/&quot;C04MRXs7fyp7ImA9WxVSEUQ.&quot;"><id>tag:blogger.com,1999:blog-732565809886974735.post-8106858956852112659</id><published>2009-01-05T20:57:00.010+01:00</published><updated>2009-01-05T22:46:24.507+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-01-05T22:46:24.507+01:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="EJB" /><title>Enterprise JavaBeans 3.0: Ziarna sesyjne</title><content type="html">&lt;div&gt;Mała dygresja. Naukę EJB 3.0 rozpocząłem od przeczytania Simplified API dostępnego na stronie http://java.sun.com/products/ejb/docs.html. Przyznam, mimo że rzeczy fajne, to spać mi się chciało nie raz. Teraz przerzuciłem się na &lt;a href="http://www.manning.com/panda/"&gt;EJB in Action&lt;/a&gt; wydawnictwa Manning. Czyta się dużo przyjemniej, wszystko jest fajnie objaśnione. To co będziecie mogli znaleźć u mnie to w dużej mierze sedno informacji zawartych w tej książce jak i innych znalezionych na sieci, czy zdobytych własnym doświadczeniem. Na tę chwilę - naprawdę warto kupić tę książkę. Recenzję napiszę po przeczytaniu całości.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Aby dobrze zrozumieć czym są stanowe i bezstanowe ziarenka, warto nauczyć się czym w ogóle są &lt;span class="Apple-style-span" style="font-style: italic;"&gt;session beans&lt;/span&gt; i co nam oferują...&lt;/div&gt;&lt;div&gt;&lt;ul&gt;&lt;li&gt;&lt;span style="font-weight: bold;"&gt;klienci&lt;/span&gt; -  wywołać wspomniane ziarna może aplikacja desktopowa w Swingu, aplikacja webowa (np. JSP, JSF, servlet), czy nawet aplikacja .Net'owa korzystając z Web Service'u.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-weight: bold;"&gt;współbieżność i bezpieczeństwo wątków&lt;/span&gt; - tworząc aplikacje serwerowe liczymy się z tym, że będą one pracowały nawet dla tysięcy użytkowników. Ale my przecież mamy wiele komponentów, ziarna stanowe, bezstanowe, interceptory. Kontener automagicznie zadba o to, aby tylko i wyłącznie jeden wątek miał dostęp do danego beana. W przypadku gdy wystąpią dwa jednoczesne wywołania kontener rzuci wyjątek &lt;span style="font-style: italic;"&gt;javax.ejb.ConcurrentAccessException&lt;/span&gt; (co może się zmieni w Java EE 6 bo nie wszystkim podobają się te ograniczenia).&lt;/li&gt;&lt;li&gt;&lt;span style="font-weight: bold;"&gt;zdalne wywoływanie&lt;/span&gt; - ziarna sesyjne mogą być wywoływane zdalnie w dwojaki sposób, poprzez RMI (Remote Method Invocation) lub web service'y. Co ważne, nie trzeba przy tym nic konfigurować oprócz 1 (słownie: jednej ;-)) linii adnotacji.&lt;/li&gt;&lt;li&gt;&lt;span style="font-weight: bold;"&gt;transakcje i bezpieczeństwo&lt;/span&gt; - czyli Java Persistence API (do omówienia innym razem) i (dzięki oficjalnemu standardowi) wszystkie bajery dostępne wraz z Java EE.&lt;/li&gt;&lt;li&gt;&lt;span style="font-weight: bold;"&gt;programowanie aspektowe i "usługi czasowe"&lt;/span&gt; - interceptory pozwalają na wywoływanie określonych zadań w momencie wywołania beanów, czy konkretnej metody danego ziarna. Jednocześnie nie łączą się bezpośrednio z nimi co pozwala na redukcję powtarzającego się kodu. Możliwe jest także wiązanie ziaren ze schedulerami (jak to będzie po polsku?).&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;Każde ziarno sesyjne składa się z dwóch nierozłącznych rzeczy:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;span style="font-weight: bold;"&gt;interfejs biznesowy&lt;/span&gt; - musi być przynajmniej jeden, może być lokalny lub zdalny, klienci nie mogą odwoływać się do konkretnych implementacji. Swoją drogą wartą tę regułę zastosować do każdego aspektu programowania. Pozwala to na modyfikację implementacji bez obawy, że wyrządzimy komuś krzywdę choćby brakiem wstecznej kompatybilności.&lt;/li&gt;&lt;li&gt;&lt;span style="font-weight: bold;"&gt;implementacja&lt;/span&gt; - konkretny &lt;span style="font-weight: bold;"&gt;Plain Old Java Object&lt;/span&gt; (POJO), czyli zwykła klasa Java z dodanymi adnotacjami. Adnotacje EJB nie nie mają znaczenia dla JVM, są one istotne dopiero w momencie uruchomiania EJB w/na kontenerze.&lt;span style="font-weight: bold;"&gt; &lt;/span&gt;Bean nigdy nie może być klasą abstrakcyjną.&lt;span style="font-weight: bold;"&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;Parę zasad:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Ziarno musi posiadać bezparametrowy publiczny konstruktor. Zadeklarowany jawnie lub nie.&lt;/li&gt;&lt;li&gt;Ziarno może rozszerzać inne ziarna, ale co z adnotacjami? Są ignorowane oprócz adnotacji dotyczących cyklu życia, wstrzykiwania zależności czy zasobów.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Metody biznesowe nie mogą zaczynać się od &lt;span style="font-weight: bold;"&gt;ejb&lt;/span&gt;. Muszą być &lt;span style="font-weight: bold;"&gt;publiczne&lt;/span&gt;, a nie mogą być &lt;span style="font-style: italic;"&gt;finalne i statyczne&lt;/span&gt;. Metody oznaczone jako zdalne czyli @Remote - ich argumenty i zwracany typ musi implementować &lt;span style="font-style: italic;"&gt;java.io.Serializable&lt;/span&gt; (ponieważ obiekty przesyłane zamieniane są w strumienie bajtów, dlatego warto uważać, aby nie były to duże obiekty).&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;Interfejs biznesowy to po prostu &lt;span style="font-weight: bold;"&gt;Plain Old Java Interface&lt;/span&gt; (POJI) z dołożoną adnotacją. Dane ziarno może posiadać wiele interfejsów, ale chociaż jeden musi być interfejsem biznesowym.&lt;br /&gt;&lt;br /&gt;&lt;div&gt;PS. Czy uważacie, że spolszczanie nazw komponentów EJB ma sens?&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/732565809886974735-8106858956852112659?l=blog.gruchala.eu' alt='' /&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/LeszekGruchala?a=DmqP0V80B9I:tduq1DLIurI:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/LeszekGruchala?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/LeszekGruchala?a=DmqP0V80B9I:tduq1DLIurI:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/LeszekGruchala?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/LeszekGruchala?a=DmqP0V80B9I:tduq1DLIurI:dnMXMwOfBR0"&gt;&lt;img src="http://feeds.feedburner.com/~ff/LeszekGruchala?d=dnMXMwOfBR0" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/LeszekGruchala?a=DmqP0V80B9I:tduq1DLIurI:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/LeszekGruchala?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/LeszekGruchala/~4/DmqP0V80B9I" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.gruchala.eu/feeds/8106858956852112659/comments/default" title="Komentarze do posta" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=732565809886974735&amp;postID=8106858956852112659" title="Komentarze (3)" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/732565809886974735/posts/default/8106858956852112659?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/732565809886974735/posts/default/8106858956852112659?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/LeszekGruchala/~3/DmqP0V80B9I/enterprise-javabeans-30-ziarna-sesyjne.html" title="Enterprise JavaBeans 3.0: Ziarna sesyjne" /><author><name>Leszek Gruchała</name><uri>http://www.blogger.com/profile/00088047976523414378</uri><email>leszek@gruchala.eu</email><gd:extendedProperty name="OpenSocialUserId" value="03908813717881848807" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">3</thr:total><feedburner:origLink>http://blog.gruchala.eu/2009/01/enterprise-javabeans-30-ziarna-sesyjne.html</feedburner:origLink></entry><entry gd:etag="W/&quot;C0ICRX4zeCp7ImA9WxVSEUs.&quot;"><id>tag:blogger.com,1999:blog-732565809886974735.post-7802990084894701807</id><published>2009-01-03T18:15:00.007+01:00</published><updated>2009-01-05T14:19:24.080+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-01-05T14:19:24.080+01:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="EJB" /><title>Enterprise JavaBeans 3.0: Wprowadzenie</title><content type="html">Po co nam biznesowe ziarna javowe? Ano po to by było nam lżej. Każdy z nas prędzej czy później zmierzy się z aplikacją, która będzie musiała działać dla wielu użytkowników/zapytań itd., być dobrze zabezpieczona, obsługiwać różnego rodzaju błędy, wyjątki, sytuacje, przypadki, być łatwa w utrzymaniu, rozwoju itd. itp. Można by tak wymieniać i wymieniać. Z pomocą przychodzi nam właśnie EJB. Jest to standard, rozwijany przez społeczność Javy, który ma na celu pomóc developować aplikacje m.in. działające na serwerach aplikacji: Tomcat, GlassFish, JBoss itd., i zapewnić nam "łatwy" rozwój tej aplikacji, jej przenośność pomiędzy różnymi serwerami oraz zapobiec wymyślaniu kolejnego koła. Kołem tym jest zapewnienie bezpieczeństwa, transakcyjności, skalowalności, obsługi błędów... Tak, jest to kolejny framework, ale wart uwagi ze względu na oficjalny standard oraz możliwość interakcji z innymi framework'ami np. Springiem.&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Na Enterprise JavaBeans 3.0 składają się:&lt;/div&gt;&lt;div&gt;&lt;ul&gt;&lt;li&gt;Session beans - ziarna sesyjne&lt;/li&gt;&lt;li&gt;Message-driven beans - ziarna sterowane komunikatami&lt;/li&gt;&lt;li&gt;Interceptors - interceptory dla ziaren sesyjnych&lt;/li&gt;&lt;/ul&gt;&lt;div&gt;i tak trochę osobno:&lt;/div&gt;&lt;div&gt;&lt;ul&gt;&lt;li&gt;Entities - encje&lt;/li&gt;&lt;/ul&gt;&lt;div&gt;Od wersji EJB 3.0 encje nie są już komponentami biznesowymi. Zostały wydzielone do Java Persistence API (JPA) i można ich używać także w aplikacjach desktopowych np. do komunikacji z lokalną bazą danych.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Głównym komponentem EJB jest klasa komponentu biznesowego. Aby klasa mogła nim być musi spełnić parę warunków:&lt;/div&gt;&lt;div&gt;&lt;ul&gt;&lt;li&gt;musi być określony typ ziarna - w pliku XML (deskryptorze wdrożenia) lub (i to jest super ;-) ) klasa musi zostać zadnotowana jako utrzymująca stan &lt;span class="Apple-style-span" style="font-style: italic;"&gt;@Stateful&lt;/span&gt; lub bezstanowa &lt;span class="Apple-style-span" style="font-style: italic;"&gt;@Stateless&lt;/span&gt;.&lt;/li&gt;&lt;li&gt;musi posiadać interfejs biznesowy oznaczony jako lokalny &lt;span class="Apple-style-span" style="font-style: italic;"&gt;@Local&lt;/span&gt; (domyślnie) lub zdalny &lt;span class="Apple-style-span" style="font-style: italic;"&gt;@Remote&lt;/span&gt;. Jeśli klasa implementuje jeden interfejs nie musimy podawać żadnej adnotacji czy definiować tego w pliku xml. Jeśli jest ich więcej, każdy musi być oznaczony jako interfejs biznesowy, oczywiście interfejs nie może być jednocześnie zdalny i lokalny. Następujące interfejsy są wykluczone z określania czy dany interfejs jest biznesowy: &lt;span class="Apple-style-span" style="font-style: italic;"&gt;java.io.Serializable&lt;/span&gt; oraz &lt;span class="Apple-style-span" style="font-style: italic;"&gt;java.io.Externalizable&lt;/span&gt;.&lt;/li&gt;&lt;li&gt;interfejs biznesowy nie może rozszerzać &lt;span class="Apple-style-span" style="font-style: italic;"&gt;javax.ejb.EJBObject&lt;/span&gt; i &lt;span class="Apple-style-span" style="font-style: italic;"&gt;javax.ejb.EJBLocalObject&lt;/span&gt;.&lt;/li&gt;&lt;/ul&gt;&lt;div&gt;Oczywiście interfejsy mogą rzucać wyjątki, ale nie powinien to być &lt;span class="Apple-style-span" style="font-style: italic;"&gt;java.rmi.RemoteException&lt;/span&gt;, ponieważ ten wyjątek już jest opakowany przez &lt;span class="Apple-style-span" style="font-style: italic;"&gt;EJBException&lt;/span&gt;, a zajmie się tym kontener, czyli serwer aplikacji.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Kolejną bardzo ważną i fajną rzeczą jest &lt;span class="Apple-style-span" style="font-style: italic;"&gt;Dependency Injection&lt;/span&gt;, czyli wstrzykiwanie zależności. W EJB 2.1 programiści byli zmuszeniu korzystać z JNDI (Java Naming and Directory Interface), jest to usługa, która pozwala przeszukiwać klasy, zasoby itp. Musieli oni przy tym pisać dużo zbędnego kodu i właśnie w ziarnach sesyjnych odwoływać się do konkretnych ziaren, zasobów. W EJB 3.0 kierunek został odwrócony. Wystarczy, że podacie nad danym interfejsem adnotację &lt;span class="Apple-style-span" style="font-style: italic;"&gt;@EJB&lt;/span&gt;, a to kontener zajmie się znalezieniem odpowiedniej implementacji i wstrzyknie ją w beana. Podobnie jest z innymi zasobami, ale tam używana jest adnotacja &lt;span class="Apple-style-span" style="font-style: italic;"&gt;@Resource&lt;/span&gt;.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;W każdym przypadku zamiast adnotacji, można użyć konfiguracji w pliku xml. Jeśli obawiacie się, że to nie jest takie super, bo zapytacie: Co jeśli wprowadzę w adnotacjach konfigurację projektu, po czym przeniosę ją na inny serwer aplikacyjny z innymi ustawieniami? Można wtedy użyć deployment descriptor'a, czyli pliku ejb-jar.xml i tam zminić konfigurację :-)&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Skoro tyle razy pojawił się wyraz &lt;span class="Apple-style-span" style="font-style: italic;"&gt;biznesowy&lt;/span&gt; to musi to być fajne i na czasie ;-)&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/732565809886974735-7802990084894701807?l=blog.gruchala.eu' alt='' /&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/LeszekGruchala?a=gHn9TfMpqlc:qoExUfM5FnQ:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/LeszekGruchala?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/LeszekGruchala?a=gHn9TfMpqlc:qoExUfM5FnQ:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/LeszekGruchala?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/LeszekGruchala?a=gHn9TfMpqlc:qoExUfM5FnQ:dnMXMwOfBR0"&gt;&lt;img src="http://feeds.feedburner.com/~ff/LeszekGruchala?d=dnMXMwOfBR0" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/LeszekGruchala?a=gHn9TfMpqlc:qoExUfM5FnQ:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/LeszekGruchala?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/LeszekGruchala/~4/gHn9TfMpqlc" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.gruchala.eu/feeds/7802990084894701807/comments/default" title="Komentarze do posta" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=732565809886974735&amp;postID=7802990084894701807" title="Komentarze (2)" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/732565809886974735/posts/default/7802990084894701807?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/732565809886974735/posts/default/7802990084894701807?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/LeszekGruchala/~3/gHn9TfMpqlc/enterprise-javabeans-30-wprowadzenie.html" title="Enterprise JavaBeans 3.0: Wprowadzenie" /><author><name>Leszek Gruchała</name><uri>http://www.blogger.com/profile/00088047976523414378</uri><email>leszek@gruchala.eu</email><gd:extendedProperty name="OpenSocialUserId" value="03908813717881848807" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">2</thr:total><feedburner:origLink>http://blog.gruchala.eu/2009/01/enterprise-javabeans-30-wprowadzenie.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DEMBRXc5fip7ImA9WxRbE00.&quot;"><id>tag:blogger.com,1999:blog-732565809886974735.post-4170291590331724644</id><published>2008-12-03T08:56:00.006+01:00</published><updated>2008-12-03T13:14:14.926+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2008-12-03T13:14:14.926+01:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Szczecin-JUG" /><category scheme="http://www.blogger.com/atom/ns#" term="Wydarzenia" /><title>5 spotkanie Szczecin JUG - Spring Framework</title><content type="html">&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_63iqep0nnFY/STY745VRcjI/AAAAAAAAAes/XUAKGYAvuQA/s1600-h/081130_jugSpotkanie_09+copy.jpg"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 154px; height: 200px;" src="http://1.bp.blogspot.com/_63iqep0nnFY/STY745VRcjI/AAAAAAAAAes/XUAKGYAvuQA/s200/081130_jugSpotkanie_09+copy.jpg" alt="" id="BLOGGER_PHOTO_ID_5275469862159872562" border="0" /&gt;&lt;/a&gt;Zapraszam na kolejne spotkanie Szczecin JUG. Będziemy mieli okazję po raz kolejny posłuchać &lt;span style="font-weight: bold;"&gt;Macieja Majewskiego&lt;/span&gt; z firmy BLStream, który opowie o tym jak tworzyć aplikacje korporacyjne z użyciem Spring Framework. &lt;p&gt;Maciej jest studentem Wydziału Informatyki Politechniki Szczecińskiej. W pracy z powodzeniem buduje aplikacje webowe wykorzystując do tego właśnie Spring Framework. O zaletach tego rozwiązania przekonał się&lt;br /&gt;osobiście wiele razy budując projekty o dużym stopniu złożoności i z przyjemnością podzieli się swoimi doświadczeniami na spotkaniu szczecińskiego JUG-a.&lt;/p&gt; &lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;Plan prezentacji:&lt;/p&gt;&lt;p&gt;1. Kontener Dependency Injection jako podstawa frameworku&lt;/p&gt;&lt;p&gt;2. Jak w kilku prostych krokach udostępnić za pomocą Spring MVC treść światu&lt;/p&gt;&lt;p&gt;3. W czym drzemie prawdziwa moc - integracja z innymi frameworkami&lt;/p&gt; &lt;p&gt;Do wygrania nie jak zwykle licencja na jeden z wymienionych produktów firmy JetBrains:&lt;/p&gt;&lt;p&gt;a. IntelliJ IDEA Personal License&lt;/p&gt;&lt;p&gt;b. ReSharper Personal License&lt;/p&gt;&lt;p&gt;c. TeamCity Build Agent&lt;/p&gt;&lt;p&gt;d. Ruby Mine&lt;/p&gt; &lt;p&gt;oraz książka &lt;a href="http://www.amazon.com/Core-Servlets-Javaserver-Pages-Technologies/dp/0131482602/ref=sr_1_4?ie=UTF8&amp;amp;s=books&amp;amp;qid=1228290377&amp;amp;sr=1-4"&gt;Core Servlets and Javaserver Pages: Advanced Technologies, Vol. 2.&lt;/a&gt;&lt;/p&gt; &lt;p&gt;Miejsce: &lt;span style="font-weight: bold;"&gt;Wydział Informatyki Politechniki Szczecińskiej, sala 128&lt;/span&gt;&lt;/p&gt;&lt;p&gt;Czas:&lt;span style="font-weight: bold;"&gt; 16 grudnia 2008&lt;/span&gt;&lt;/p&gt;&lt;p&gt;Godz. &lt;span style="font-weight: bold;"&gt;18:00&lt;/span&gt;&lt;/p&gt;&lt;p&gt;Prosimy o &lt;a style="font-weight: bold;" href="http://www.jugevents.org/jugevents/event/show.html?id=12023"&gt;rejestrację&lt;/a&gt;.&lt;/p&gt; &lt;p&gt;Zapraszam w imieniu swoim i Macieja.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/732565809886974735-4170291590331724644?l=blog.gruchala.eu' alt='' /&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/LeszekGruchala?a=u9JRCFYcpqw:wPS0wayKDwU:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/LeszekGruchala?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/LeszekGruchala?a=u9JRCFYcpqw:wPS0wayKDwU:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/LeszekGruchala?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/LeszekGruchala?a=u9JRCFYcpqw:wPS0wayKDwU:dnMXMwOfBR0"&gt;&lt;img src="http://feeds.feedburner.com/~ff/LeszekGruchala?d=dnMXMwOfBR0" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/LeszekGruchala?a=u9JRCFYcpqw:wPS0wayKDwU:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/LeszekGruchala?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/LeszekGruchala/~4/u9JRCFYcpqw" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.gruchala.eu/feeds/4170291590331724644/comments/default" title="Komentarze do posta" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=732565809886974735&amp;postID=4170291590331724644" title="Komentarze (0)" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/732565809886974735/posts/default/4170291590331724644?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/732565809886974735/posts/default/4170291590331724644?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/LeszekGruchala/~3/u9JRCFYcpqw/5-spotkanie-szczecin-jug-spring.html" title="5 spotkanie Szczecin JUG - Spring Framework" /><author><name>Leszek Gruchała</name><uri>http://www.blogger.com/profile/00088047976523414378</uri><email>leszek@gruchala.eu</email><gd:extendedProperty name="OpenSocialUserId" value="03908813717881848807" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://1.bp.blogspot.com/_63iqep0nnFY/STY745VRcjI/AAAAAAAAAes/XUAKGYAvuQA/s72-c/081130_jugSpotkanie_09+copy.jpg" height="72" width="72" /><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://blog.gruchala.eu/2008/12/5-spotkanie-szczecin-jug-spring.html</feedburner:origLink></entry><entry gd:etag="W/&quot;D0MNQn4-cCp7ImA9WxRUEUw.&quot;"><id>tag:blogger.com,1999:blog-732565809886974735.post-2777702832900651491</id><published>2008-11-19T18:07:00.003+01:00</published><updated>2008-11-19T18:24:53.058+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2008-11-19T18:24:53.058+01:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="NetBeans" /><title>NetBeans 6.5 dostępny... I to po polsku!</title><content type="html">&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://www.netbeans.org/images/v6/nb-logo-frontpage2.gif"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 204px; height: 35px;" src="http://www.netbeans.org/images/v6/nb-logo-frontpage2.gif" alt="" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;Od dzisiaj dostępna jest wersja &lt;a href="http://bits.netbeans.org/netbeans/6.5/community/latest/ml/"&gt;6.5 NetBeans IDE&lt;/a&gt;. Także w języku polskim! Udało się ukończyć tłumaczenie platformy, dlatego też od dzisiaj gdy będziecie budować swoje Rich Client Applications oparte o NetBeans Platfrom nie będziecie musieli zajmować się tłumaczeniem ;-)&lt;br /&gt;Niestety ze względu na małą liczbę osób zaangażowanych w tłumaczenia udało się przetłumaczyć tylko małą cześć samego NetBeans'a, ale mam nadzieję, że dla osób początkujących to trochę okaże się bardzo przydatne. Listę osób, dzięki którym mamy polskie IDE do Javy znajdziecie na &lt;a href="http://wiki.netbeans.org/PolishTranslation"&gt;głównej stronie projektu tłumaczeń&lt;/a&gt;.&lt;br /&gt;Ja ze swojej strony chciałbym głównie podziękować za pracę i współpracę (kolejność alfabetyczna):&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Magda Gołdyn&lt;/li&gt;&lt;li&gt;Marcin Gołdyn&lt;/li&gt;&lt;li&gt;Radek Holewa&lt;/li&gt;&lt;li&gt;Jacek Laskowski&lt;/li&gt;&lt;li&gt;Paweł Machowski&lt;/li&gt;&lt;li&gt;Michał Trzcinka&lt;/li&gt;&lt;/ul&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/732565809886974735-2777702832900651491?l=blog.gruchala.eu' alt='' /&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/LeszekGruchala?a=HLELg4KTxYo:X-QWTAkByjQ:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/LeszekGruchala?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/LeszekGruchala?a=HLELg4KTxYo:X-QWTAkByjQ:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/LeszekGruchala?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/LeszekGruchala?a=HLELg4KTxYo:X-QWTAkByjQ:dnMXMwOfBR0"&gt;&lt;img src="http://feeds.feedburner.com/~ff/LeszekGruchala?d=dnMXMwOfBR0" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/LeszekGruchala?a=HLELg4KTxYo:X-QWTAkByjQ:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/LeszekGruchala?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/LeszekGruchala/~4/HLELg4KTxYo" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.gruchala.eu/feeds/2777702832900651491/comments/default" title="Komentarze do posta" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=732565809886974735&amp;postID=2777702832900651491" title="Komentarze (2)" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/732565809886974735/posts/default/2777702832900651491?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/732565809886974735/posts/default/2777702832900651491?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/LeszekGruchala/~3/HLELg4KTxYo/netbeans-65-dostpny-i-to-po-polsku.html" title="NetBeans 6.5 dostępny... I to po polsku!" /><author><name>Leszek Gruchała</name><uri>http://www.blogger.com/profile/00088047976523414378</uri><email>leszek@gruchala.eu</email><gd:extendedProperty name="OpenSocialUserId" value="03908813717881848807" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">2</thr:total><feedburner:origLink>http://blog.gruchala.eu/2008/11/netbeans-65-dostpny-i-to-po-polsku.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CkcFQXg6eCp7ImA9WxRWEUw.&quot;"><id>tag:blogger.com,1999:blog-732565809886974735.post-507323240439139473</id><published>2008-10-26T20:01:00.010+01:00</published><updated>2008-10-27T13:20:10.610+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2008-10-27T13:20:10.610+01:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Wydarzenia" /><category scheme="http://www.blogger.com/atom/ns#" term="NetBeans" /><title>Wrażenia z NetBeans Day w Poznaniu</title><content type="html">Byłem, zobaczyłem, wygrałem :-) Ale po kolei. Impreza rozpoczęła się zgodnie z czasem. Jako pierwszy wystąpił Geertjan Wielenga z czeskiego oddziału Sun'a zajmującego się NetBeans. Geerjan jest osobą odpowiedzialną za całą masę tutoriali i prezentacji do nauki NB. Jeżeli czytałeś cokolwiek z tego, to na 99% coś co on napisał. Jego prezentacja była dość ogólna i pokazująca jak łatwo można zrobić bardzo trywialną aplikację z użyciem NetBeans Platform oraz dlaczego powinniśmy przyjąć tę platformę jako rozwiązanie dla naszych aplikacji desktopowych. Generalnie fajnie, że występował jako pierwszy. Był to dobry początek...&lt;div&gt;..., który został troszkę zachwiany przez Adama Kędziorę. Kolega Adam z pewnością posiada dużą wiedzę o tym co mówił, ale często skakał z jednego wątku do innego oraz przeszkadzała mi duża ilość błędów ortograficznych :/ Dzięki temu będę wiedział na co zwrócić uwagę przy swoich przyszłych prezentacjach i Adam z pewnością też. Szacun za wystąpienie. To nie jest wcale takie proste.&lt;/div&gt;&lt;div&gt;Potem wystąpił Adam Dudczak, opowiedział o VisualVM i teraz wiem jakie posiada możliwości to narzędzie i będę wiedział kiedy przyda się z niego skorzystać. Zobaczyliśmy także, że można dorzucić jakieś swoje &lt;span class="Apple-style-span" style="font-style: italic;"&gt;ficzery&lt;/span&gt; do tej aplikacji. Było git. Do ideału brakowało tylko więcej życia w wypowiedzi, ale Adam był pewnie zmęczony organizacją konferencji.&lt;/div&gt;&lt;div&gt;Przyszła kolej na Karola Herzlaka, który także pracuje w oddziale NetBeansa w Pradze. Karol zajmuje się na co dzień rozwijaniem NB dla Javy Micro Edition. Pokazał jak wygląda tworzenie takich aplikacji, co oferuje NB i czego możemy się spodziewać w przyszłości. Także było bardzo fajnie, mimo że aplikacje mobilne nie są w kręgu moich zainteresowań.&lt;/div&gt;&lt;div&gt;Następny był Toni Epple. Toni jest, jak to się ładnie mówi, freelancer'em. I to w obrębie całej UE. Opowiedział kiedy i dlaczego decydujemy się na skorzystanie z gotowych platform, jakie są etapy przejścia oraz na podstawie własnych doświadczeń opowiedział jak wygląda portowanie aplikacji na NB Platfrom. Było super!&lt;/div&gt;&lt;div&gt;Jako ostatni wystąpił Adam Bien. Byłem i jestem pod wrażeniem. Normalnie promieniowało doświadczeniem i wiedzą. Podoba mi się, że ludzie z taką wiedzą mają swój styl prowadzenia prezentacji. Zawsze powiedzą coś śmiesznego, dużo przekażą od siebie. Jedyny mały minusik za to, że nie zawsze nadążałem patrzeć i rozumieć co on kodował czy pokazywał. Za szybki był, choć w ten sposób pokazał że NB (wg. mnie) przerósł Eclipse'a! Przydało by się pójść jeszcze posłuchać o "zaćmieniu" dla lepszego porównania. Będzie to już 22 listopada w Warszawie. Jakby nie było Adam pokazał jaką dobraną parę stanowi NetBeans oraz Glassfish w wersjach 2 i 3. Po tej prezentacji myślę, że naprawdę warto opuścić tandem Eclipse + Tomcat co mam zamiar uczynić.&lt;/div&gt;&lt;div&gt;Na 116 zarejestrowanych osób było ok. 30. Nie rozumiem tego. Z reguły przychodzi około 70% osób zarejestrowanych. Tutaj się to nie sprawdziło. Niech żałują. Bardzo dużo się dowiedziałem i z chęcią pojawię się na kolejnej tego typu konferencji.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;A! Udało mi się wygrać książkę "Rich Client Programming", której współautorem jest właśnie Geertjan. Nawet dostałem ją wraz z dedykacją od niego i to po polsku! Książka trafiła w moje aktualne potrzeby, dlatego zacznę ją wchłaniać na dniach ;-)&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/732565809886974735-507323240439139473?l=blog.gruchala.eu' alt='' /&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/LeszekGruchala?a=Zii1IeNq3Is:FJdjm1qYSyk:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/LeszekGruchala?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/LeszekGruchala?a=Zii1IeNq3Is:FJdjm1qYSyk:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/LeszekGruchala?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/LeszekGruchala?a=Zii1IeNq3Is:FJdjm1qYSyk:dnMXMwOfBR0"&gt;&lt;img src="http://feeds.feedburner.com/~ff/LeszekGruchala?d=dnMXMwOfBR0" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/LeszekGruchala?a=Zii1IeNq3Is:FJdjm1qYSyk:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/LeszekGruchala?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/LeszekGruchala/~4/Zii1IeNq3Is" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.gruchala.eu/feeds/507323240439139473/comments/default" title="Komentarze do posta" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=732565809886974735&amp;postID=507323240439139473" title="Komentarze (2)" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/732565809886974735/posts/default/507323240439139473?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/732565809886974735/posts/default/507323240439139473?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/LeszekGruchala/~3/Zii1IeNq3Is/wraenia-z-netbeans-day-w-poznaniu.html" title="Wrażenia z NetBeans Day w Poznaniu" /><author><name>Leszek Gruchała</name><uri>http://www.blogger.com/profile/00088047976523414378</uri><email>leszek@gruchala.eu</email><gd:extendedProperty name="OpenSocialUserId" value="03908813717881848807" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">2</thr:total><feedburner:origLink>http://blog.gruchala.eu/2008/10/wraenia-z-netbeans-day-w-poznaniu.html</feedburner:origLink></entry><entry gd:etag="W/&quot;A0INSHszeyp7ImA9WxRWEU0.&quot;"><id>tag:blogger.com,1999:blog-732565809886974735.post-7814221533441407715</id><published>2008-10-20T20:38:00.008+02:00</published><updated>2008-10-27T13:13:19.583+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2008-10-27T13:13:19.583+01:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="konferencje" /><category scheme="http://www.blogger.com/atom/ns#" term="IntelliJ" /><category scheme="http://www.blogger.com/atom/ns#" term="eclipse" /><category scheme="http://www.blogger.com/atom/ns#" term="Wydarzenia" /><category scheme="http://www.blogger.com/atom/ns#" term="NetBeans" /><title>NetBeansDay w Poznaniu, trochę o IntelliJ dla Eclipse'owców i Java 6 u10</title><content type="html">&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://netbeansday.org.pl/wp-content/themes/Refreshed/images/logo.png"&gt;&lt;img style="float:left; margin:0 10px 10px 0;cursor:pointer; cursor:hand;width: 200px;" src="http://netbeansday.org.pl/wp-content/themes/Refreshed/images/logo.png" border="0" alt="" /&gt;&lt;/a&gt;&lt;br /&gt;No więc, (dwója bęc... jak mawiała moja polonistka z ogólniaka ;-)) już w najbliższą sobotę odbędzie się NetBeans Day w Poznaniu. W końcu nic nie koliduje mi z dniem, w którym odbywa się fajna konferencja i pełen nadzieji na zdobywanie nowej wiedzy i możności poznania (nawet miasto pasuje) ludzi z sieci w &lt;span class="Apple-style-span" style="font-style: italic;"&gt;realu&lt;/span&gt; wybieram się właśnie tam. Posłuchać będzie można o NetBeans Platform, problemach i wyzwaniach przy programowaniu w oparciu o tę technologię, VisualVM, "komórkowej" wersji NetBeans'a i serwerze Glassfish. Szczegóły udostępnia zamieszczona &lt;a href="http://netbeansday.org.pl/?page_id=154"&gt;agenda&lt;/a&gt;. Wymagana jest &lt;a href="http://netbeansday.org.pl/?page_id=3"&gt;rejestracja&lt;/a&gt;, a konferencja jest oczywiście darmowa, dzięki wielkiemu zaangażowaniu &lt;a href="http://www.jug.poznan.pl/"&gt;poznańskiego JUGa&lt;/a&gt;.&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;A teraz coś o IntelliJ IDEA i Eclipse. Mam wrażenie, że jakieś złe fale działają w Eclipsie. Jakieś zło... Od pewnego czasu jeśli nie działa Svn to szlag trafia mi ustawienia projektu. Ja mu jedno, a on drugie. Ja go włączam, a on mi NullPointerException i nie pokaże projektów. Ja go aktualizuje, a on "Haha! A nie dam się zaktualizować. Nie pobiore aktualizacji bo nie ma ich na serwerze!". Tylko, że on mi sam pokazuje, żeby się zaktualizować bo ma właśnie te aktualizacje! Sic! Coraz więcej czasu spędzam na naprawianiu Eclipse'a i Maven'a w nim. Szlag mnie trafi...&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Muszę spróbować przejść na IntelliJ. A oto garść informacji:&lt;/div&gt;&lt;div&gt;&lt;ul&gt;&lt;li&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;project&lt;/span&gt; = workspace&lt;/li&gt;&lt;li&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;module&lt;/span&gt; = projektowi&lt;/li&gt;&lt;li&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;module JDK&lt;/span&gt; = specyficznemu dla projektu JRE&lt;/li&gt;&lt;li&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;global library&lt;/span&gt; = bibliotece użytkownika&lt;/li&gt;&lt;li&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;path variable&lt;/span&gt; = zmienna classpath&lt;/li&gt;&lt;li&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;module dependency&lt;/span&gt; = zależności od projektu&lt;/li&gt;&lt;li&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;module library&lt;/span&gt; = zwykłej biblioteka&lt;/li&gt;&lt;/ul&gt;&lt;div&gt;A &lt;a href="http://www.jetbrains.com/idea/webhelp2/intellilang.html"&gt;tu sporo info&lt;/a&gt; jak przesiąść się na IntelliJ.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Także po wielu bojach pojawiła się aktualizacja &lt;a href="http://java.sun.com/javase/downloads/index.jsp"&gt;Javy 6 do (pod)wersji 10&lt;/a&gt;. W niej sporo zmian, a z głównych nowy Look&amp;amp;Feel, zmodyfikowane JRE, możliwość przenoszenia appletów prosto na pulpit i pewnie wiele, wiele innych.&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/732565809886974735-7814221533441407715?l=blog.gruchala.eu' alt='' /&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/LeszekGruchala?a=FO9MCINemsY:Tesm0GygpiU:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/LeszekGruchala?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/LeszekGruchala?a=FO9MCINemsY:Tesm0GygpiU:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/LeszekGruchala?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/LeszekGruchala?a=FO9MCINemsY:Tesm0GygpiU:dnMXMwOfBR0"&gt;&lt;img src="http://feeds.feedburner.com/~ff/LeszekGruchala?d=dnMXMwOfBR0" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/LeszekGruchala?a=FO9MCINemsY:Tesm0GygpiU:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/LeszekGruchala?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/LeszekGruchala/~4/FO9MCINemsY" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.gruchala.eu/feeds/7814221533441407715/comments/default" title="Komentarze do posta" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=732565809886974735&amp;postID=7814221533441407715" title="Komentarze (0)" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/732565809886974735/posts/default/7814221533441407715?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/732565809886974735/posts/default/7814221533441407715?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/LeszekGruchala/~3/FO9MCINemsY/netbeansday-w-poznaniu-i-troch-o.html" title="NetBeansDay w Poznaniu, trochę o IntelliJ dla Eclipse'owców i Java 6 u10" /><author><name>Leszek Gruchała</name><uri>http://www.blogger.com/profile/00088047976523414378</uri><email>leszek@gruchala.eu</email><gd:extendedProperty name="OpenSocialUserId" value="03908813717881848807" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://blog.gruchala.eu/2008/10/netbeansday-w-poznaniu-i-troch-o.html</feedburner:origLink></entry><entry gd:etag="W/&quot;C0QMQnw5eip7ImA9WxJSEUQ.&quot;"><id>tag:blogger.com,1999:blog-732565809886974735.post-5330415902560109746</id><published>2008-09-19T22:26:00.008+02:00</published><updated>2009-05-01T17:23:03.222+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-05-01T17:23:03.222+02:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="eclipse" /><title>Problemy z Subversive w Eclipse Ganymede</title><content type="html">&lt;span&gt;&lt;span&gt;Eh, jedyne 2 godziny zmarnowane na uruchamianiu SVN w Eclipse. Żenada, ale do rzeczy.&lt;br /&gt;Mianowicie nie mogłem po zainstalowaniu Subversive i konektorów wybrać żadnego w preferencjach.&lt;br /&gt;&lt;p&gt;&lt;br /&gt;Błąd:&lt;br /&gt;&lt;/p&gt;&lt;blockquote&gt;SVN: '0x00400006: Validate Repository Location' operation finished with error: Selected SVN connector library is not available or cannot be loaded.&lt;br /&gt;If you selected native JavaHL connector, please check if binaries are available or install and select pure Java Subversion connector from the plug-in connectors update site.&lt;br /&gt;If connectors already installed then you can change the selected one at: Window-&gt;Preferences-&gt;Team-&gt;SVN-&gt;SVN Client.&lt;br /&gt;Selected SVN connector library is not available or cannot be loaded.&lt;br /&gt;If you selected native JavaHL connector, please check if binaries are available or install and select pure Java Subversion connector from the plug-in connectors update site.&lt;br /&gt;If connectors already installed then you can change the selected one at: Window-&gt;Preferences-&gt;Team-&gt;SVN-&gt;SVN Client.&lt;/blockquote&gt;&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;Rozwiązanie:&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;1) W aktualizacjach Ganymede -&gt; Collaboration Tools i SVN Team Provider (Incubation) jest stara wersja pluginu. Tej nie instalujemy.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;2) Zamiast tego... odnajdujemy http://download.eclipse.org/technology/subversive/0.7/update-site/ i tam zaznaczamy i instalujemy &lt;span style="font-weight: bold;"&gt;SVN Team Provider Plugin (Incubation)&lt;/span&gt; &lt;strike&gt;oraz restartujemy Eclipse'a&lt;/strike&gt;.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;3) &lt;strike&gt;Po uruchomieniu&lt;/strike&gt; przechodzimy do aktualizacji, dodajemy stronę&lt;br /&gt;http://www.polarion.org/projects/subversive/download/eclipse/2.0/update-site/&lt;br /&gt;i wybieramy &lt;span style="font-weight: bold;"&gt;Subversive SVN Connectors&lt;/span&gt; oraz któryś z konektorów np. &lt;span style="font-weight: bold;"&gt;SVNkit 1.1.7&lt;/span&gt;.&lt;br /&gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;br /&gt;Restart no i bangla.&lt;br /&gt;&lt;/p&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/732565809886974735-5330415902560109746?l=blog.gruchala.eu' alt='' /&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/LeszekGruchala?a=rsLpIwJU6EA:LIunPHl3T1Q:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/LeszekGruchala?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/LeszekGruchala?a=rsLpIwJU6EA:LIunPHl3T1Q:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/LeszekGruchala?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/LeszekGruchala?a=rsLpIwJU6EA:LIunPHl3T1Q:dnMXMwOfBR0"&gt;&lt;img src="http://feeds.feedburner.com/~ff/LeszekGruchala?d=dnMXMwOfBR0" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/LeszekGruchala?a=rsLpIwJU6EA:LIunPHl3T1Q:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/LeszekGruchala?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/LeszekGruchala/~4/rsLpIwJU6EA" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.gruchala.eu/feeds/5330415902560109746/comments/default" title="Komentarze do posta" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=732565809886974735&amp;postID=5330415902560109746" title="Komentarze (10)" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/732565809886974735/posts/default/5330415902560109746?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/732565809886974735/posts/default/5330415902560109746?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/LeszekGruchala/~3/rsLpIwJU6EA/problemy-z-subversive-w-eclipse.html" title="Problemy z Subversive w Eclipse Ganymede" /><author><name>Leszek Gruchała</name><uri>http://www.blogger.com/profile/00088047976523414378</uri><email>leszek@gruchala.eu</email><gd:extendedProperty name="OpenSocialUserId" value="03908813717881848807" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">10</thr:total><feedburner:origLink>http://blog.gruchala.eu/2008/09/problemy-z-subversive-w-eclipse.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DUYFQnY7eSp7ImA9WxRTEE0.&quot;"><id>tag:blogger.com,1999:blog-732565809886974735.post-3949093869614499395</id><published>2008-08-21T08:40:00.012+02:00</published><updated>2008-08-29T12:51:53.801+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2008-08-29T12:51:53.801+02:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Szczecin-JUG" /><category scheme="http://www.blogger.com/atom/ns#" term="Wydarzenia" /><title>4 spotkanie Szczecin JUG - Sun SPOTs</title><content type="html">&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://szczecin-jug.googlegroups.com/web/logoJUG_T_175x197.png?gda=tjeBZ0YAAADCExPGswPjP0adUhYTjte49UFQ4jc49ZQdLSEfnLg92GG1qiJ7UbTIup-M2XPURDTfjLnpvG8rQ4n9fDBbOLSE2Ym5KslnHVwDnCgLGFRRjw"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 102px; height: 115px;" src="http://szczecin-jug.googlegroups.com/web/logoJUG_T_175x197.png?gda=tjeBZ0YAAADCExPGswPjP0adUhYTjte49UFQ4jc49ZQdLSEfnLg92GG1qiJ7UbTIup-M2XPURDTfjLnpvG8rQ4n9fDBbOLSE2Ym5KslnHVwDnCgLGFRRjw" alt="" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;p&gt;Serdecznie zapraszam na najbliższe spotkanie szczecińskiego JUGa!&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;Będziemy mieli przyjemność posłuchać &lt;a href="http://paulszulc.blogspot.com/"&gt;Pawła Szulca&lt;/a&gt;, Sun Campus Ambassadora, założyciela i lidera &lt;a href="https://pwrjug.dev.java.net/start.htm"&gt;JUGa przy Politechnice Wrocławskiej&lt;/a&gt;, bloggera i oczywiście programisty Java.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;Paweł opowie o &lt;a href="http://www.sunspotworld.com/"&gt;Sun SPOT&lt;/a&gt;'ach, czyli urządzeniach wykorzystujących Small Programmable Object Technology.&lt;/p&gt;&lt;br /&gt;Prezentacja zapowiada się bardzo ciekawie, a usłyszymy na niej m.in.:&lt;br /&gt;&lt;ul&gt;&lt;br /&gt;&lt;li&gt;czym jest Wireless Sensor Network,&lt;/li&gt;&lt;br /&gt;&lt;li&gt;jakie są zastosowania WSN,&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Sun SPOT jako urządzenia do budowania WSN i nie tylko,&lt;/li&gt;&lt;br /&gt;&lt;li&gt;programowanie urządzeń w Javie,&lt;/li&gt;&lt;br /&gt;&lt;li&gt;wyposażenie urządzeń: żyroskop, czujniki światła, temperatur, wyjścia do układów scalonych,&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Squawk Java VM,&lt;/li&gt;&lt;br /&gt;&lt;li&gt;maszyna wirtualna na urządzeniu, bez systemu operacyjnego.&lt;/li&gt;&lt;br /&gt;&lt;/ul&gt;&lt;br /&gt;&lt;p&gt;&lt;br /&gt;Na prelekcji pokazane zostaną urządzenia oraz przykładowe programy jakie do nich zastosowano.&lt;/p&gt;&lt;p&gt;&lt;br /&gt;Wśród uczestników zostanie rozlosowana licencja &lt;a href="http://www.jetbrains.com/idea/"&gt;Intellij IDEA Personal&lt;/a&gt;.&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;p style="text-align: left;"&gt;&lt;span style="font-size:130%;"&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;p&gt;Czas: &lt;b&gt;30 sierpnia 2008, godz. 18:00&lt;/b&gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;Temat: &lt;b&gt;SUNSPOT - Small Programmable Object T&lt;/b&gt;&lt;b&gt;echnology&lt;/b&gt;&lt;/p&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:130%;"&gt;&lt;span style="font-size:85%;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;Prowadzący: &lt;span style="font-size:130%;"&gt;&lt;span style="font-size:85%;"&gt;&lt;b&gt;Paweł Szulc [Pwr JUG (Wrocław)]&lt;/b&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;Miejsce:&lt;b&gt; firma &lt;a href="http://ncdc.pl/"&gt;NCDC&lt;/a&gt;, &lt;a href="http://maps.google.com/maps?f=q&amp;amp;hl=en&amp;amp;geocode=&amp;amp;q=Szczecin,+Poland,+storrady+1&amp;amp;sll=37.0625,-95.677068&amp;amp;sspn=34.122306,79.101563&amp;amp;ie=UTF8&amp;amp;ll=53.432293,14.568622&amp;amp;spn=0.006264,0.019312&amp;amp;t=h&amp;amp;z=16&amp;amp;iwloc=addr"&gt;Storrady 1&lt;/a&gt;, piętro 3&lt;br /&gt;&lt;/b&gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;Rejestracja: &lt;a href="http://jugevents.jugpadova.it/jugevents/event/show.html?id=7715"&gt;JUGEVENTS&lt;/a&gt;&lt;/p&gt;&lt;span style="font-size:130%;"&gt;&lt;span style="font-size:85%;"&gt;&lt;a href="http://jugevents.jugpadova.it/jugevents/event/show.html?id=7715" rel="nofollow"&gt;&lt;/a&gt;&lt;/span&gt;&lt;/span&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/732565809886974735-3949093869614499395?l=blog.gruchala.eu' alt='' /&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/LeszekGruchala?a=9sn7fQaEvJA:tOHFvyamZt0:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/LeszekGruchala?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/LeszekGruchala?a=9sn7fQaEvJA:tOHFvyamZt0:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/LeszekGruchala?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/LeszekGruchala?a=9sn7fQaEvJA:tOHFvyamZt0:dnMXMwOfBR0"&gt;&lt;img src="http://feeds.feedburner.com/~ff/LeszekGruchala?d=dnMXMwOfBR0" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/LeszekGruchala?a=9sn7fQaEvJA:tOHFvyamZt0:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/LeszekGruchala?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/LeszekGruchala/~4/9sn7fQaEvJA" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.gruchala.eu/feeds/3949093869614499395/comments/default" title="Komentarze do posta" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=732565809886974735&amp;postID=3949093869614499395" title="Komentarze (0)" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/732565809886974735/posts/default/3949093869614499395?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/732565809886974735/posts/default/3949093869614499395?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/LeszekGruchala/~3/9sn7fQaEvJA/4-spotkanie-szczecin-jug.html" title="4 spotkanie Szczecin JUG - Sun SPOTs" /><author><name>Leszek Gruchała</name><uri>http://www.blogger.com/profile/00088047976523414378</uri><email>leszek@gruchala.eu</email><gd:extendedProperty name="OpenSocialUserId" value="03908813717881848807" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://blog.gruchala.eu/2008/08/4-spotkanie-szczecin-jug.html</feedburner:origLink></entry><entry gd:etag="W/&quot;A0YFSXk6eyp7ImA9WxdbF00.&quot;"><id>tag:blogger.com,1999:blog-732565809886974735.post-4716506079342874176</id><published>2008-08-13T23:18:00.000+02:00</published><updated>2008-08-14T12:18:38.713+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2008-08-14T12:18:38.713+02:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Java" /><title>Java Killers...</title><content type="html">&lt;p&gt;&lt;br /&gt;Po pierwsze gratulacje dla &lt;a title="Kazik Pogoda" target="_blank" href="http://blog.xemantic.com/" id="v5l9"&gt;Kazika Pogody&lt;/a&gt; za współzwyciężenie w &lt;a title="Eclipse Ganymede Around the World Contest" target="_blank" href="http://www.eclipse.org/org/press-release/20080812_aroundtheworldwinners.php" id="we71"&gt;Eclipse Ganymede Around the World Contest&lt;/a&gt;, a dokładniej za popełnienie &lt;a title="posta o tym IDE" target="_blank" href="http://blog.xemantic.com/2008/06/eclipse-ganymede-rejoicing-in-virility.html" id="s.bl"&gt;posta o tym IDE&lt;/a&gt;! Najpierw &lt;a href="http://jlaskowski.blogspot.com/2008/05/netbeans-blogging-contest-winner.html"&gt;Jacek&lt;/a&gt;, teraz Kazik... Coś jest dobrego w &lt;i id="vhzq"&gt;polish developers&lt;/i&gt; :-)&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;Po drugie zapraszam do przejrzenia poniższego kodu. Natrafiłem na tego typu problem podczas czytania książki do SCJP 6. Dla mnie to było coś nowego....&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;br /&gt;Nadpisywanie a przeciążanie metod ;-)&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;Jaki będzie wynik poniższego kodu?&lt;br /&gt;&lt;/p&gt;&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;&lt;span id="fd85" style="color: rgb(204, 0, 0);"&gt;public class&lt;/span&gt; Car {&lt;br /&gt;&lt;br /&gt;  &lt;span id="cylo" style="color: rgb(204, 0, 0);"&gt;public void&lt;/span&gt; roof(String color) {&lt;br /&gt;      System.out.println(&lt;span id="crun" style="color: rgb(0, 0, 255);"&gt;"Roof is "&lt;/span&gt; + color);&lt;br /&gt;  }&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;&lt;span id="ziuj6" style="color: rgb(204, 0, 0);"&gt;public class&lt;/span&gt; Wolga &lt;span id="fd850" style="color: rgb(204, 0, 0);"&gt;extends &lt;/span&gt;Car {&lt;br /&gt;&lt;br /&gt;  &lt;span id="ziuj7" style="color: rgb(204, 0, 0);"&gt;public void&lt;/span&gt; roof(String color) {&lt;br /&gt;      System.out.println(&lt;span id="hn9v" style="color: rgb(0, 0, 255);"&gt;"Wolga's roof is "&lt;/span&gt; + color);&lt;br /&gt;  }&lt;br /&gt;   &lt;br /&gt;  &lt;span id="cylo1" style="color: rgb(204, 0, 0);"&gt;public static void&lt;/span&gt; main(String[] args) {&lt;br /&gt;      Car car = &lt;span id="i-xm" style="color: rgb(204, 0, 0);"&gt;new &lt;/span&gt;Car();&lt;br /&gt;      Wolga wolga = &lt;span id="i-xm0" style="color: rgb(204, 0, 0);"&gt;new &lt;/span&gt;Wolga();&lt;br /&gt;      Car carRefToWolga = &lt;span id="i-xm1" style="color: rgb(204, 0, 0);"&gt;new &lt;/span&gt;Wolga();&lt;br /&gt;   &lt;br /&gt;      car.roof(&lt;span id="hn9v1" style="color: rgb(0, 0, 255);"&gt;"blue"&lt;/span&gt;);&lt;br /&gt;      wolga.roof(&lt;span id="hn9v0" style="color: rgb(0, 0, 255);"&gt;"red"&lt;/span&gt;);&lt;br /&gt;      carRefToWolga.roof(&lt;span id="hn9v2" style="color: rgb(0, 0, 255);"&gt;"yellow"&lt;/span&gt;);&lt;br /&gt;  }&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;Wynik.........&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;NAJPIERW POMYŚL....&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;Roof is blue&lt;br /&gt;Wolga's roof is red&lt;br /&gt;Wolga's roof is yellow&lt;br /&gt;&lt;/pre&gt;&lt;p&gt;&lt;br /&gt;Pierwsze dwa wiadomo, trzeci wynik jest taki ponieważ obiekt carRefToWolga jest "wywoływany" przez JVM w 'runtime' na podstawie typu obiektu.&lt;br /&gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;br /&gt;Kolejny przykład...&lt;br /&gt;&lt;/p&gt;&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;&lt;span id="kcp87" style="color: rgb(204, 0, 0);"&gt;public class&lt;/span&gt; Fish { }&lt;br /&gt;&lt;br /&gt;&lt;span id="kcp810" style="color: rgb(204, 0, 0);"&gt;public class&lt;/span&gt; Shark &lt;span id="ui_p" style="color: rgb(204, 0, 0);"&gt;extends &lt;span id="ui_p0" style="color: rgb(0, 0, 0);"&gt;Fish&lt;/span&gt;&lt;/span&gt; { }&lt;br /&gt;&lt;br /&gt;&lt;span id="kcp813" style="color: rgb(204, 0, 0);"&gt;public class &lt;/span&gt;TestFishes {&lt;br /&gt;&lt;br /&gt;  &lt;span id="k-ow" style="color: rgb(204, 0, 0);"&gt;public void&lt;/span&gt; swim(Fish fish) {&lt;br /&gt;      System.out.println(&lt;span id="eohv" style="color: rgb(0, 0, 255);"&gt;"Fishes like swimming"&lt;/span&gt;);&lt;br /&gt;  }&lt;br /&gt;&lt;br /&gt;  &lt;span id="k-ow0" style="color: rgb(204, 0, 0);"&gt;public void&lt;/span&gt; swim(Shark shark) {&lt;br /&gt;      System.out.println(&lt;span id="eohv0" style="color: rgb(0, 0, 255);"&gt;"Sharks like swimming too"&lt;/span&gt;);&lt;br /&gt;  }&lt;br /&gt;&lt;br /&gt;  &lt;span id="k-ow1" style="color: rgb(204, 0, 0);"&gt;public static void&lt;/span&gt; main(String[] args) {&lt;br /&gt;      TestFishes testFishes = &lt;span id="y0p6" style="color: rgb(204, 0, 0);"&gt;new &lt;/span&gt;TestFishes();&lt;br /&gt;      Fish fishObject = &lt;span id="y0p60" style="color: rgb(204, 0, 0);"&gt;new &lt;/span&gt;Fish();&lt;br /&gt;      Shark sharkObject = &lt;span id="y0p61" style="color: rgb(204, 0, 0);"&gt;new &lt;/span&gt;Shark();&lt;br /&gt;      Fish fishRefToShark = &lt;span id="y0p62" style="color: rgb(204, 0, 0);"&gt;new &lt;/span&gt;Shark();&lt;br /&gt;   &lt;br /&gt;      testFishes.swim(fishObject);&lt;br /&gt;      testFishes.swim(sharkObject);&lt;br /&gt;      testFishes.swim(fishRefToShark);&lt;br /&gt;  }&lt;br /&gt;}&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;Wynik......&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;NAJPIERW POMYŚL....&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;Fishes like swimming&lt;br /&gt;Sharks like swimming too&lt;br /&gt;Fishes like swimming&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;p&gt;&lt;br /&gt;&lt;br /&gt;Pierwsze dwa wiadomo, trzeci wynik jest taki ponieważ przy &lt;b id="edqa"&gt;przeciążaniu metod&lt;/b&gt; w trakcie wywoływania obiektu fishRefToShark maszyna wirtualna Javy odwoła się do &lt;b id="wvir"&gt;typu referencji&lt;/b&gt; ;-)&lt;br /&gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;span id="f48h"  style="font-size:78%;"&gt;&lt;i id="f48h0"&gt;Mam nadzieję, że &lt;a title="Paweł Szulc" target="_blank" href="http://paulszulc.blogspot.com/" id="nz9e"&gt;Paweł Szulc&lt;/a&gt; nie będzie zły za bezczelnie skopiowanie tytułu posta :-). Jeśli chcecie poczytać więcej ciekawego kodu, zapraszam do niego.&lt;/i&gt;&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/732565809886974735-4716506079342874176?l=blog.gruchala.eu' alt='' /&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/LeszekGruchala?a=4DAP-GcfLhw:4ooY-9ojnDU:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/LeszekGruchala?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/LeszekGruchala?a=4DAP-GcfLhw:4ooY-9ojnDU:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/LeszekGruchala?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/LeszekGruchala?a=4DAP-GcfLhw:4ooY-9ojnDU:dnMXMwOfBR0"&gt;&lt;img src="http://feeds.feedburner.com/~ff/LeszekGruchala?d=dnMXMwOfBR0" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/LeszekGruchala?a=4DAP-GcfLhw:4ooY-9ojnDU:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/LeszekGruchala?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/LeszekGruchala/~4/4DAP-GcfLhw" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.gruchala.eu/feeds/4716506079342874176/comments/default" title="Komentarze do posta" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=732565809886974735&amp;postID=4716506079342874176" title="Komentarze (0)" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/732565809886974735/posts/default/4716506079342874176?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/732565809886974735/posts/default/4716506079342874176?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/LeszekGruchala/~3/4DAP-GcfLhw/java-killers.html" title="Java Killers..." /><author><name>Leszek Gruchała</name><uri>http://www.blogger.com/profile/00088047976523414378</uri><email>leszek@gruchala.eu</email><gd:extendedProperty name="OpenSocialUserId" value="03908813717881848807" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://blog.gruchala.eu/2008/08/java-killers.html</feedburner:origLink></entry><entry gd:etag="W/&quot;D0UAQn86eSp7ImA9WxdbEE0.&quot;"><id>tag:blogger.com,1999:blog-732565809886974735.post-3957585980709011124</id><published>2008-07-31T23:28:00.004+02:00</published><updated>2008-08-06T08:47:23.111+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2008-08-06T08:47:23.111+02:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="JavaFX" /><category scheme="http://www.blogger.com/atom/ns#" term="NetBeans" /><title>JavaFX Preview SDK dostępne</title><content type="html">&lt;p&gt;Można próbować swoich sił ;-)&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;Pobieranie: &lt;a href="http://www.blogger.com/www.javafx.com"&gt;www.javafx.com&lt;/a&gt;&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;Strona projektu: &lt;a href="http://java.sun.com/javafx"&gt;http://java.sun.com/javafx&lt;/a&gt;&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;Plugin do NetBeans'a: &lt;a href="http://javafx.netbeans.org/"&gt;http://javafx.netbeans.org/&lt;/a&gt;&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;Aktualizacja: Pojawił się wpis o uruchamianiu JavaFX na Linuksie. Wpis popełnił Java Champion, także warto zajrzeć - &lt;a href="http://learnjavafx.typepad.com/weblog/2008/08/using-the-javaf.html"&gt;http://learnjavafx.typepad.com/weblog/2008/08/using-the-javaf.html&lt;/a&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/732565809886974735-3957585980709011124?l=blog.gruchala.eu' alt='' /&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/LeszekGruchala?a=ROocxZ0fMLg:meQkpaVbOtI:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/LeszekGruchala?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/LeszekGruchala?a=ROocxZ0fMLg:meQkpaVbOtI:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/LeszekGruchala?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/LeszekGruchala?a=ROocxZ0fMLg:meQkpaVbOtI:dnMXMwOfBR0"&gt;&lt;img src="http://feeds.feedburner.com/~ff/LeszekGruchala?d=dnMXMwOfBR0" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/LeszekGruchala?a=ROocxZ0fMLg:meQkpaVbOtI:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/LeszekGruchala?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/LeszekGruchala/~4/ROocxZ0fMLg" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.gruchala.eu/feeds/3957585980709011124/comments/default" title="Komentarze do posta" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=732565809886974735&amp;postID=3957585980709011124" title="Komentarze (0)" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/732565809886974735/posts/default/3957585980709011124?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/732565809886974735/posts/default/3957585980709011124?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/LeszekGruchala/~3/ROocxZ0fMLg/javafx-preview-sdk-dostpne.html" title="JavaFX Preview SDK dostępne" /><author><name>Leszek Gruchała</name><uri>http://www.blogger.com/profile/00088047976523414378</uri><email>leszek@gruchala.eu</email><gd:extendedProperty name="OpenSocialUserId" value="03908813717881848807" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://blog.gruchala.eu/2008/07/javafx-preview-sdk-dostpne.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CUcHRn46cSp7ImA9WxRaEE0.&quot;"><id>tag:blogger.com,1999:blog-732565809886974735.post-6904744194019552984</id><published>2008-07-22T20:01:00.007+02:00</published><updated>2008-12-11T14:43:57.019+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2008-12-11T14:43:57.019+01:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="NetBeans" /><title>Eclipse Project Importer w NetBeans 6.5</title><content type="html">&lt;p&gt;Nawet nie zdążyłem wziąć się do pracy, a tu taka dobra informacja. To, że w NetBeans jest plugin do importowania eclipsowych projektów to wiedziałem, ale co mi z samego importu jak zmiany w Eclipsie nie byłyby uwzględniane w NB. A tu niespodzianka, bo wraz z NetBeans 6.5 &lt;span style="font-style: italic;"&gt;Eclipse Project Importer&lt;/span&gt; jest dodany by default. Co ważniejsze został ulepszony, a działa tak:&lt;br /&gt;&lt;/p&gt;&lt;ol&gt;&lt;li&gt;Mamy projekt w workspace i importujemy go w NetBeans - &lt;span style="font-style: italic;"&gt;File-&gt;Import Project-&gt;Eclipse Project...&lt;/span&gt;&lt;/li&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_63iqep0nnFY/SIYkuOEE46I/AAAAAAAAAW4/IDHl2OLjAPM/s1600-h/epi_1.PNG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://1.bp.blogspot.com/_63iqep0nnFY/SIYkuOEE46I/AAAAAAAAAW4/IDHl2OLjAPM/s400/epi_1.PNG" alt="" id="BLOGGER_PHOTO_ID_5225904794077815714" border="0" /&gt;&lt;/a&gt;Tak poza tym, to chyba zmienił się &lt;span style="font-style: italic;"&gt;File Chooser &lt;/span&gt;&lt;span&gt;w samym NB&lt;/span&gt;.&lt;br /&gt;&lt;li&gt;Wybieramy co chcemy importować&lt;/li&gt;&lt;/ol&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_63iqep0nnFY/SIYlw_XXq8I/AAAAAAAAAXA/g91wggNVjhk/s1600-h/epi_2.PNG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://3.bp.blogspot.com/_63iqep0nnFY/SIYlw_XXq8I/AAAAAAAAAXA/g91wggNVjhk/s400/epi_2.PNG" alt="" id="BLOGGER_PHOTO_ID_5225905941183441858" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;Teraz jest lepiej dlatego, że NetBeans monitoruje plik .classpath, który znajduje się w naszym workspace. I tu trochę dupa. Na razie tylko ten plik i w razie wprowadzenia zmian przez kogoś w Eclipse, musimy odpalić swojego Eclipse'a, pobrać aktualne pliki projektu z CVS'a i przy ponownym uruchomieniu NB ustawienia zostaną zaktualizowane. W przyszłości ma być dodane sunchronizacja pozostałych plików oraz przeniesienie zmian wprowadzonych w NetBeans do Eclipse'a. Miejmy nadzieję, że dzięki wpięciu tego pluginu w oficjalny release prace będą szybsze i już niedługo będzie solidne wsparcie.&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;Więcej info w &lt;a href="http://www.netbeans.org/servlets/NewsItemView?newsItemID=1259&amp;amp;intcmp=925655"&gt;oficjalnej informacji&lt;/a&gt;.&lt;br /&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/732565809886974735-6904744194019552984?l=blog.gruchala.eu' alt='' /&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/LeszekGruchala?a=EE8C1vx7GkE:53QKBNGB1nQ:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/LeszekGruchala?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/LeszekGruchala?a=EE8C1vx7GkE:53QKBNGB1nQ:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/LeszekGruchala?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/LeszekGruchala?a=EE8C1vx7GkE:53QKBNGB1nQ:dnMXMwOfBR0"&gt;&lt;img src="http://feeds.feedburner.com/~ff/LeszekGruchala?d=dnMXMwOfBR0" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/LeszekGruchala?a=EE8C1vx7GkE:53QKBNGB1nQ:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/LeszekGruchala?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/LeszekGruchala/~4/EE8C1vx7GkE" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.gruchala.eu/feeds/6904744194019552984/comments/default" title="Komentarze do posta" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=732565809886974735&amp;postID=6904744194019552984" title="Komentarze (0)" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/732565809886974735/posts/default/6904744194019552984?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/732565809886974735/posts/default/6904744194019552984?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/LeszekGruchala/~3/EE8C1vx7GkE/eclipse-project-importer-w-netbeans-65.html" title="Eclipse Project Importer w NetBeans 6.5" /><author><name>Leszek Gruchała</name><uri>http://www.blogger.com/profile/00088047976523414378</uri><email>leszek@gruchala.eu</email><gd:extendedProperty name="OpenSocialUserId" value="03908813717881848807" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://1.bp.blogspot.com/_63iqep0nnFY/SIYkuOEE46I/AAAAAAAAAW4/IDHl2OLjAPM/s72-c/epi_1.PNG" height="72" width="72" /><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://blog.gruchala.eu/2008/07/eclipse-project-importer-w-netbeans-65.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CUcHRn8-eCp7ImA9WxRaEE0.&quot;"><id>tag:blogger.com,1999:blog-732565809886974735.post-8294827257469165150</id><published>2008-07-17T19:36:00.004+02:00</published><updated>2008-12-11T14:43:57.150+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2008-12-11T14:43:57.150+01:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="NetBeans" /><title>Pomysł na wtyczkę do NetBeans'a i jego polska wersja</title><content type="html">&lt;p&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_63iqep0nnFY/SH-JaH4TB7I/AAAAAAAAAWw/lDrG-qL5byc/s1600-h/nb65.PNG"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://1.bp.blogspot.com/_63iqep0nnFY/SH-JaH4TB7I/AAAAAAAAAWw/lDrG-qL5byc/s320/nb65.PNG" alt="" id="BLOGGER_PHOTO_ID_5224045174657845170" border="0" /&gt;&lt;/a&gt;Pewnie nie raz macie tak, że w robocie czy gdzieś jest tworzony projekt. Tak, tak to już bywa, że projekty są tworzone ;-) No ale jako, że większość używa Eclipse'a tworzony jest on w tym IDE, a Wy akurat chcielibyście pracować sobie w NetBeans'ie. A tu zonk, bo każde IDE ma swoje pliki projektu. Jakby ciężko im było stworzyć jeden standard. Dlatego przyszedł mi do głowy pomysł napisania wtyczki do NB, która pozwalałaby zapisywać ustawienia projektu itp. do plików &lt;span style="font-style: italic;"&gt;.project&lt;/span&gt; i &lt;span style="font-style: italic;"&gt;.classpath&lt;/span&gt; Eclipse'a. Najlepiej rezygnując ze swoich, chociaż wątpie żeby się udało. Najwyżej nie dodawałoby się ich do kontroli wersji ;-) Skoro w IntelliJ IDEA się udało to nam też powinno. Kto ma ochotę włączyć się w ten projekt? Z góry mówię/piszę, że pisalibyśmy to w NB. Tłumy, czy też nie, proszone są zgłaszać się przez maila: leszek(małpa)gruchala.eu lub w komentarzach.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;Jak widać na załączonym obrazku kolejna wersja NetBeans IDE w natarciu. Wydanie planowane jest na 2 października. Wraca kwestia polskiej wersji, a sprawa przedstawia się tak. Jest przetłumaczone jakieś 85% podstawowego interfejsu użytkownika. Choćby nie wiem co, będzie wydana polska wersja wraz z wydaniem NB 6.5, dlatego przypominam, że jeśli są osoby, które chcą dopomóc w tłumaczeniu reszty i przystosowania tego do nowego wydania proszę bardzo o wyłonienie się. Praca nie jest ciężka, a fajnie jest zrobić coś dla innych. Troszę wiecej informacji w &lt;a href="http://gruchala.eu/2008/02/pom-tumaczy-netbeans-ide.html"&gt;tym wpisie&lt;/a&gt;. Postaram się też odpowiedzieć na wszystkie pytania.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;PS. Jeśli jeszcze ktoś tego nie wiem, z przyjemnością ogłaszam, że &lt;a href="http://www.jaceklaskowski.pl/"&gt;Jacek Laskowski&lt;/a&gt; został członkiem &lt;a href="http://wiki.netbeans.org/NetBeansDreamTeam"&gt;NetBeans Dream Team&lt;/a&gt;. Jest to teraz 15 osoba na świecie, a pierwsza w Polsce. Gratulacje!&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/732565809886974735-8294827257469165150?l=blog.gruchala.eu' alt='' /&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/LeszekGruchala?a=6-wp7JdlhK0:ZYIPof82uz4:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/LeszekGruchala?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/LeszekGruchala?a=6-wp7JdlhK0:ZYIPof82uz4:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/LeszekGruchala?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/LeszekGruchala?a=6-wp7JdlhK0:ZYIPof82uz4:dnMXMwOfBR0"&gt;&lt;img src="http://feeds.feedburner.com/~ff/LeszekGruchala?d=dnMXMwOfBR0" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/LeszekGruchala?a=6-wp7JdlhK0:ZYIPof82uz4:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/LeszekGruchala?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/LeszekGruchala/~4/6-wp7JdlhK0" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.gruchala.eu/feeds/8294827257469165150/comments/default" title="Komentarze do posta" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=732565809886974735&amp;postID=8294827257469165150" title="Komentarze (0)" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/732565809886974735/posts/default/8294827257469165150?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/732565809886974735/posts/default/8294827257469165150?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/LeszekGruchala/~3/6-wp7JdlhK0/pomys-na-wtyczk-do-netbeansa-i-jego.html" title="Pomysł na wtyczkę do NetBeans'a i jego polska wersja" /><author><name>Leszek Gruchała</name><uri>http://www.blogger.com/profile/00088047976523414378</uri><email>leszek@gruchala.eu</email><gd:extendedProperty name="OpenSocialUserId" value="03908813717881848807" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://1.bp.blogspot.com/_63iqep0nnFY/SH-JaH4TB7I/AAAAAAAAAWw/lDrG-qL5byc/s72-c/nb65.PNG" height="72" width="72" /><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://blog.gruchala.eu/2008/07/pomys-na-wtyczk-do-netbeansa-i-jego.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DkEBR3o6fCp7ImA9WxdVEko.&quot;"><id>tag:blogger.com,1999:blog-732565809886974735.post-4455066204600713894</id><published>2008-07-09T19:28:00.003+02:00</published><updated>2008-07-17T08:04:16.414+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2008-07-17T08:04:16.414+02:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Java" /><category scheme="http://www.blogger.com/atom/ns#" term="IntelliJ" /><category scheme="http://www.blogger.com/atom/ns#" term="eclipse" /><category scheme="http://www.blogger.com/atom/ns#" term="NetBeans" /><title>Nowości w Java SE 6 Update 7</title><content type="html">&lt;p&gt;Od wczoraj dostępna jest nowa wersja JDK i JRE. Nie wnosi ona tyle nowości co &lt;i id="dulv"&gt;Update 10&lt;/i&gt; (o tym innym razem), ale też jest o czym pisać ;) Samo JDK zajmuje po instalacji jakieś 20 MB więcej, co dobre to to, że można zainstalować od razu JRE. Wreszcie przeglądarka będzie mi widziała Javę. Chociaż to połowiczne rozwiązanie bo nie rozumiem dlaczego muszę instalować JRE skoro mam JDK, ale teraz przynajmniej nie muszę tego osobno ściągać tylko samo się tak przy okazji. No i na końcu otwiera Sun'owską stronkę z ofertą rejestracji. Także kto chce zostać członkiem, proszę bardzo :) Z ważniejszych rzeczy to wraz z tą aktualizacją dostajemy nowe narzędzie zwane &lt;b id="f5vv0"&gt;Java VisualVM&lt;/b&gt;. &lt;/p&gt;&lt;div id="n_7o" style="padding: 1em 0pt; text-align: center;"&gt;&lt;img id="fsc6" style="width: 527px; height: 304px;" src="http://docs.google.com/File?id=dm79wrg_6cdwf564n_b" /&gt;&lt;/div&gt; &lt;a title="VisualVM" target="_blank" href="http://java.sun.com/javase/6/docs/technotes/guides/visualvm/" id="hrzc"&gt;VisualVM&lt;/a&gt; to graficzne narzędzie do podglądania działających na maszynie wirtualnej aplikacji. JVVM odzyskuje dane z narzędzi JDK i pozwala zbiorczo w łatwy i przyjemny sprawdzać aplikacje na JVM. Czy tak jest? Zaraz zobaczymy....&lt;p&gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;Uruchamiamy poleceniem: &lt;/p&gt;&lt;p&gt;&lt;tt id="gyz7"&gt;&lt;br /&gt;&lt;br /&gt;C:\Program Files\Java\jdk1.6.0_&lt;i id="gyz70"&gt;update-number&lt;/i&gt;\bin\&lt;/tt&gt;&lt;tt id="g0bk0"&gt;jvisualvm&lt;/tt&gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;br /&gt;Wyświetli się monit o jakieś tam testy. Nie pamiętam już jakie bo nie mogę ich powtórzyć, ale Ci co mają laptopy niech przełączą się na max performance.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;Z wyglądu i z &lt;i id="s5-y"&gt;About&lt;/i&gt; widać, że program jest napisany z użyciem &lt;i id="s5-y0"&gt;NetBeans platform&lt;/i&gt;.   Aplikacja pozwala monitorować maszynę wirtualną i wszystko co jest na niej uruchomione, z osobna lokalne aplikacje, zdalne aplikacje, tworzyć snapshoty i zrzucać i przeglądać sobie wątki uruchomione przez te programy.  W ramach testów próbowałem przetestować &lt;i id="p:lh0"&gt;profile'rem&lt;/i&gt; takiego Eclipse'a, ale zawsze się wieszał. Samo monitorowanie aplikacji działało, ale to nie. W ruch poszedł NetBeans. Będę bardzo zdziwiony jak i tu będzie szwankować ;]&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;br /&gt;Uruchamianie NetBeans: &lt;/p&gt;&lt;div id="hipm" style="padding: 1em 0pt; text-align: center;"&gt;&lt;a id="ovpj" href="http://docs.google.com/File?id=dm79wrg_7xzhfmthg_b" target="_blank"&gt;&lt;img id="ovpj0" style="width: 640px; height: 386px;" src="http://docs.google.com/File?id=dm79wrg_7xzhfmthg_b" /&gt;&lt;/a&gt;&lt;/div&gt; W oknie &lt;i id="ovpj2"&gt;Applications&lt;/i&gt; widać co mamy uruchomione. W przypadku Eclipse'a było &amp;lt;unknown application&amp;gt; ;] Przypadek, czy złośliwość....&lt;p&gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;br /&gt;W tym przypadku profiler też się nie udał, przy testowaniu CPU zawiesił się NB, a przy pamięci sam VisualVM. Tak samo z IntelliJ. &lt;/p&gt;&lt;p&gt; Poniżej uruchamianie IntelliJ, NB, Eclipse'a:  &lt;/p&gt;&lt;div id="nopm" style="padding: 1em 0pt; text-align: center;"&gt;&lt;a id="uwmx" href="http://docs.google.com/File?id=dm79wrg_8fsnphqrp_b" target="_blank"&gt;&lt;img id="uwmx0" style="width: 640px; height: 385.5px;" src="http://docs.google.com/File?id=dm79wrg_8fsnphqrp_b" /&gt;&lt;/a&gt;&lt;/div&gt;Myślałem że OpenOffice też będzie widoczny dla VisualVM skoro też coś tam ma napisane w Javie, ale niestety dupa.  Nie wiem, czy to ja mam pecha, że nic nie dało się sprofajlować, ale aplikacja mi się podoba. Z pewnością spodoba się firmom, które będą chciały przetestować np. swoje desktopowe produkty na różnych platformach sprzętowych i systemowych nie koniecznie w środowisku produkcyjnym przy użyciu NB, czy Eclipse'a.&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;Oficjalna strona projektu: &lt;a title="Java VisualVM" target="_blank" href="https://visualvm.dev.java.net/" id="cxmk"&gt;https://visualvm.dev.java.net/&lt;/a&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/732565809886974735-4455066204600713894?l=blog.gruchala.eu' alt='' /&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/LeszekGruchala?a=GpkC-72PRJQ:-cmaFyVoBFU:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/LeszekGruchala?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/LeszekGruchala?a=GpkC-72PRJQ:-cmaFyVoBFU:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/LeszekGruchala?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/LeszekGruchala?a=GpkC-72PRJQ:-cmaFyVoBFU:dnMXMwOfBR0"&gt;&lt;img src="http://feeds.feedburner.com/~ff/LeszekGruchala?d=dnMXMwOfBR0" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/LeszekGruchala?a=GpkC-72PRJQ:-cmaFyVoBFU:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/LeszekGruchala?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/LeszekGruchala/~4/GpkC-72PRJQ" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.gruchala.eu/feeds/4455066204600713894/comments/default" title="Komentarze do posta" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=732565809886974735&amp;postID=4455066204600713894" title="Komentarze (0)" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/732565809886974735/posts/default/4455066204600713894?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/732565809886974735/posts/default/4455066204600713894?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/LeszekGruchala/~3/GpkC-72PRJQ/nowoci-w-java-se-6-update-7.html" title="Nowości w Java SE 6 Update 7" /><author><name>Leszek Gruchała</name><uri>http://www.blogger.com/profile/00088047976523414378</uri><email>leszek@gruchala.eu</email><gd:extendedProperty name="OpenSocialUserId" value="03908813717881848807" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://blog.gruchala.eu/2008/07/nowoci-w-java-se-6-update-7.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CUcHRn06cCp7ImA9WxRaEE0.&quot;"><id>tag:blogger.com,1999:blog-732565809886974735.post-4833199160634590701</id><published>2008-06-25T19:32:00.008+02:00</published><updated>2008-12-11T14:43:57.318+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2008-12-11T14:43:57.318+01:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="maven" /><title>I Ty możesz mieć swoje mavenowe repozytorium!</title><content type="html">&lt;p&gt;No właśnie. Piszesz sobie program. Program oparty na mavenie. Potrzebujesz biblioteki. Dodajesz do pom'a. A co jeśli nie ma jej w oficjalnym repozytorium? Wrzucasz sobie do lokalnego ;] A co jeśli jest Was więcej niż jeden w tym samym projekcie? Wymieniacie się bibliotekami i wrzucacie do siebie? Kiepski pomysł...&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;Z pomocą przychodzą różnej maści repozytoria i proxy do maven'a. Ja chciałbym zwrócić uwagę na &lt;a href="http://nexus.sonatype.org/"&gt;Nexus'a&lt;/a&gt;. Nexus jest taką małą web aplikacją, która pozwala stworzyć repozytoria na release'y i snapshoty, utworzyć wirtualne repozytoria oraz co fajne zachowywać się jako proxy do innych publicznych repozytoriów. I co znowu fajne, można tych kilka release'owych repozytorów złączyć w jedną grupę i ją wrzucić jako nasze główne repozytorium. Wystarczy, że ty wrzucisz jakąś bibliotekę do waszego własnego repozytorium, a ktoś inny już będzie mógł sobie z tego korzystać. Dzięki proxy dzieje się tak samo. Gdy pobierzesz bibliotekę z repozytorium oficjalnego Nexus pobierze to także do swojego repozytorium i kolejne osoby będą już pobierały z Nexus'a.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;O web aplikacji pisałem dlatego, że Nexus'a dostajemy wraz z interfejsem webowym do przeszukiwania naszych repozytoriów i konfiguracji samej aplikacji. Konfiguracja jest bardzo prosta i nie powinna sprawiać nikomu problemów.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;Żeby sprawdzić jak to działa wystarczy wejść na &lt;a href="http://repository.sonatype.org:8081/nexus/"&gt;stronę demo&lt;/a&gt;.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_63iqep0nnFY/SGKIpYlWqSI/AAAAAAAAAWo/FsbI5u4uyGw/s1600-h/nexus1.PNG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://4.bp.blogspot.com/_63iqep0nnFY/SGKIpYlWqSI/AAAAAAAAAWo/FsbI5u4uyGw/s400/nexus1.PNG" alt="" id="BLOGGER_PHOTO_ID_5215881563003595042" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;Pewnie myślisz, że trzeba to deploy'ować na jakichś tam tomcat'ach ;] Otóż nie. &lt;a href="http://nexus.sonatype.org/downloads/"&gt;Ściągasz&lt;/a&gt;, rozpakowujesz, przechodzisz do katalogu, który określa twój system, wpisujesz w linii komend &lt;span style="font-style: italic;"&gt;nexus start&lt;/span&gt; i voilà. Nexus odpala sobie Jetty i niestety nie da się go "zdeplojować" jako war'a na serwerze. Nie przewidują i nie wspierają tego twórcy.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;Gdy już Nexus będzie chodził, wystarczy w pliku settings.xml w katalogu maven'a m2 (lub .m2) wrzucić takie coś w sekcji mirrors:&lt;br /&gt;&lt;/p&gt;&lt;br /&gt;&lt;p class="listing"&gt;Sekcja mirros pliku settings.xml&lt;/p&gt;&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;  &lt; mirror &gt;&lt;br /&gt;    &lt; id &gt;moje_repo&lt; / id &gt;&lt;br /&gt;    &lt; name &gt;Moj Public Mirror&lt; / name &gt;&lt;br /&gt;    &lt; url &gt;http://jakis_path:8081/nexus/content/groups/public&lt; / url &gt;&lt;br /&gt;    &lt; mirrorof &gt;central&lt; / mirrorof &gt;&lt;br /&gt;  &lt; / mirror &gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;p&gt;Oczywiście ten url może się zmienić, bo to jest domyślnie tworzony przez Nexus'a. Polecam też plugin maven'owy do Eclipse'a wydawany przez tą samą firmę, dostępny na &lt;a href="http://m2eclipse.codehaus.org/"&gt;tej stronie&lt;/a&gt;.&lt;br /&gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;br /&gt;Sonatype tworzy także książkę o maven'ie: &lt;a href="http://www.sonatype.com/book/reference/public-book.html#"&gt;The Definitive Guide&lt;/a&gt;. Warte przejrzenia.&lt;br /&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/732565809886974735-4833199160634590701?l=blog.gruchala.eu' alt='' /&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/LeszekGruchala?a=ZnxfjxV_0BA:wPVaqanIBRs:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/LeszekGruchala?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/LeszekGruchala?a=ZnxfjxV_0BA:wPVaqanIBRs:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/LeszekGruchala?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/LeszekGruchala?a=ZnxfjxV_0BA:wPVaqanIBRs:dnMXMwOfBR0"&gt;&lt;img src="http://feeds.feedburner.com/~ff/LeszekGruchala?d=dnMXMwOfBR0" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/LeszekGruchala?a=ZnxfjxV_0BA:wPVaqanIBRs:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/LeszekGruchala?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/LeszekGruchala/~4/ZnxfjxV_0BA" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.gruchala.eu/feeds/4833199160634590701/comments/default" title="Komentarze do posta" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=732565809886974735&amp;postID=4833199160634590701" title="Komentarze (0)" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/732565809886974735/posts/default/4833199160634590701?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/732565809886974735/posts/default/4833199160634590701?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/LeszekGruchala/~3/ZnxfjxV_0BA/i-ty-moesz-mie-swoje-mavenowe.html" title="I Ty możesz mieć swoje mavenowe repozytorium!" /><author><name>Leszek Gruchała</name><uri>http://www.blogger.com/profile/00088047976523414378</uri><email>leszek@gruchala.eu</email><gd:extendedProperty name="OpenSocialUserId" value="03908813717881848807" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://4.bp.blogspot.com/_63iqep0nnFY/SGKIpYlWqSI/AAAAAAAAAWo/FsbI5u4uyGw/s72-c/nexus1.PNG" height="72" width="72" /><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://blog.gruchala.eu/2008/06/i-ty-moesz-mie-swoje-mavenowe.html</feedburner:origLink></entry><entry gd:etag="W/&quot;D0cMSH08cSp7ImA9WxdXFEw.&quot;"><id>tag:blogger.com,1999:blog-732565809886974735.post-3160862634132200665</id><published>2008-06-25T09:29:00.003+02:00</published><updated>2008-06-25T19:31:29.379+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2008-06-25T19:31:29.379+02:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="eclipse" /><title>Finalny Eclipse Ganymade do pobrania</title><content type="html">&lt;p&gt;Dokładnie z tej strony:&lt;br /&gt;&lt;a href="ftp://ftp.man.szczecin.pl/pub/eclipse/technology/epp/downloads/release/ganymede/R/"&gt;ftp://ftp.man.szczecin.pl/pub/eclipse/technology/epp/downloads/release/ganymede/R/&lt;/a&gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;br /&gt;Miłego ściągania :-)&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;Teraz także oficjalnie: &lt;a href="http://www.eclipse.org/downloads/"&gt;http://www.eclipse.org/downloads&lt;/a&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/732565809886974735-3160862634132200665?l=blog.gruchala.eu' alt='' /&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/LeszekGruchala?a=HxJOfR-gz9U:q3SeSx8-kAs:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/LeszekGruchala?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/LeszekGruchala?a=HxJOfR-gz9U:q3SeSx8-kAs:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/LeszekGruchala?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/LeszekGruchala?a=HxJOfR-gz9U:q3SeSx8-kAs:dnMXMwOfBR0"&gt;&lt;img src="http://feeds.feedburner.com/~ff/LeszekGruchala?d=dnMXMwOfBR0" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/LeszekGruchala?a=HxJOfR-gz9U:q3SeSx8-kAs:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/LeszekGruchala?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/LeszekGruchala/~4/HxJOfR-gz9U" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.gruchala.eu/feeds/3160862634132200665/comments/default" title="Komentarze do posta" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=732565809886974735&amp;postID=3160862634132200665" title="Komentarze (0)" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/732565809886974735/posts/default/3160862634132200665?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/732565809886974735/posts/default/3160862634132200665?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/LeszekGruchala/~3/HxJOfR-gz9U/finalny-eclipse-ganymade-do-pobrania.html" title="Finalny Eclipse Ganymade do pobrania" /><author><name>Leszek Gruchała</name><uri>http://www.blogger.com/profile/00088047976523414378</uri><email>leszek@gruchala.eu</email><gd:extendedProperty name="OpenSocialUserId" value="03908813717881848807" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://blog.gruchala.eu/2008/06/finalny-eclipse-ganymade-do-pobrania.html</feedburner:origLink></entry><entry gd:etag="W/&quot;C08DRHozfip7ImA9WxdQFk8.&quot;"><id>tag:blogger.com,1999:blog-732565809886974735.post-7046511565985278214</id><published>2008-06-11T19:34:00.005+02:00</published><updated>2008-06-16T15:11:15.486+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2008-06-16T15:11:15.486+02:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="flex" /><title>Flex Builder 3 Pro za darmo</title><content type="html">Na stronie &lt;a href="http://www.flexregistration.com/"&gt;www.flexregistration.com&lt;/a&gt; dostępny jest Flex Builder 3 Pro dla edukacji. Wystarczy się zarejestrować i przesłać skan jakiegoś dokumentu, że się uczycie, czy pracujecie na uczelni. Procedura może potrwać do dwóch tygodni. Ja swoje wysłałem, zobaczymy czy faktycznie nie są tacy źli po tych &lt;a href="http://koziolekweb.blogspot.com/2008/06/oznacza-to-wojn.html"&gt;cudach&lt;/a&gt; &lt;a href="http://dobreprogramy.pl/index.php?dz=15&amp;amp;n=8596&amp;amp;Kontrowersyjne+warunki+uzytkowania+Photoshop+Express"&gt;dwóch &lt;/a&gt;co ostatnio wyprawiali i czy polski nie jest be.&lt;br /&gt;&lt;p&gt;&lt;br /&gt;Aktualizacja: licencja przyszła następnego dnia.&lt;br /&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/732565809886974735-7046511565985278214?l=blog.gruchala.eu' alt='' /&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/LeszekGruchala?a=XkWQCPpwJBY:YUK6y6T2cXs:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/LeszekGruchala?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/LeszekGruchala?a=XkWQCPpwJBY:YUK6y6T2cXs:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/LeszekGruchala?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/LeszekGruchala?a=XkWQCPpwJBY:YUK6y6T2cXs:dnMXMwOfBR0"&gt;&lt;img src="http://feeds.feedburner.com/~ff/LeszekGruchala?d=dnMXMwOfBR0" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/LeszekGruchala?a=XkWQCPpwJBY:YUK6y6T2cXs:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/LeszekGruchala?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/LeszekGruchala/~4/XkWQCPpwJBY" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.gruchala.eu/feeds/7046511565985278214/comments/default" title="Komentarze do posta" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=732565809886974735&amp;postID=7046511565985278214" title="Komentarze (3)" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/732565809886974735/posts/default/7046511565985278214?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/732565809886974735/posts/default/7046511565985278214?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/LeszekGruchala/~3/XkWQCPpwJBY/flex-builder-3-pro-za-darmo.html" title="Flex Builder 3 Pro za darmo" /><author><name>Leszek Gruchała</name><uri>http://www.blogger.com/profile/00088047976523414378</uri><email>leszek@gruchala.eu</email><gd:extendedProperty name="OpenSocialUserId" value="03908813717881848807" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">3</thr:total><feedburner:origLink>http://blog.gruchala.eu/2008/06/flex-builder-3-pro-za-darmo.html</feedburner:origLink></entry></feed>
