<?xml version="1.0" encoding="UTF-8"?><!-- generator="wordpress.com" -->
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	>

<channel>
	<title>javafx &amp;laquo; WordPress.com Tag Feed</title>
	<link>http://en.wordpress.com/tag/javafx/</link>
	<description>Feed of posts on WordPress.com tagged "javafx"</description>
	<pubDate>Fri, 27 Nov 2009 14:51:05 +0000</pubDate>

	<generator>http://en.wordpress.com/tags/</generator>
	<language>en</language>

<item>
<title><![CDATA[JFXtras 0.6 Preview Available!]]></title>
<link>http://steveonjava.com/2009/11/25/jfxtras-0-6-preview-available/</link>
<pubDate>Wed, 25 Nov 2009 09:16:48 +0000</pubDate>
<dc:creator>steveonjava</dc:creator>
<guid>http://steveonjava.com/2009/11/25/jfxtras-0-6-preview-available/</guid>
<description><![CDATA[Happy Thanksgiving from the JFXtras team!  While everyone else is celebrating the holiday with frien]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>Happy Thanksgiving from the JFXtras team!  While everyone else is celebrating the holiday with friends and family, we are going to be busy finishing up the 0.6 release.</p>
<div class="wp-caption alignnone" style="width: 510px"><a href="http://www.flickr.com/photos/voght/2441818832/"><img class=" " title="Happy Thanksgiving!" src="http://farm4.static.flickr.com/3141/2441818832_aa89a2ffa2.jpg" alt="" width="500" height="334" /></a><p class="wp-caption-text">Wild turkey in LaConner, WA taken by stevevoght</p></div>
<p>In case you have some spare time between meals and celebration, you can join in the fun too by trying out the JFXtras 0.6 preview release, which can be downloaded here:</p>
<p><a href="http://code.google.com/p/jfxtras/downloads/list">http://code.google.com/p/jfxtras/downloads/list</a></p>
<p>There is a whole slew of new functionality including the following under Common:</p>
<ul>
<li>Layouts &#8211; Changes to the Grid API in preparation for inclusion in the JavaFX Soma release, and also added animation support to all the layouts.</li>
<li>Sphere &#8211; Pseudo 3D sphere created for the <a href="http://jfxstudio.wordpress.com/2009/07/14/fun-with-spheres/">Groovy showdown</a> with Andrey Almiray.</li>
<li>Gear &#8211; New shape from Steve Bixby.</li>
<li>ManualResizableRectangle &#8211; Very useful shape from <a href="http://jfxstudio.wordpress.com/2009/08/15/844/">Yannick&#8217;s post</a>.</li>
<li>JXScene &#8211; Pedro&#8217;s improved API for Swing integration.</li>
<li>PaintUtil, HSBColor, new gradients &#8211; Liu&#8217;s magic paint classes</li>
<li>Custom Paints &#8211; From Jeff Friesen&#8217;s excellent article on <a href="http://today.java.net/pub/a/today/2009/07/30/javafx-custom-paints.html">Custom Paints</a>.</li>
<li>Custom Cursors &#8211; From Jeff Friesen&#8217;s excellent article on <a href="http://today.java.net/pub/a/today/2009/07/14/custom-cursors-javafx.html">Custom Cursors</a>.</li>
<li>Wipe Library &#8211; A transition library from Simon Morris&#8217; <a href="http://www.manning.com/morris/">JavaFX in Action</a> book.</li>
<li>XMap &#8211; A bindable Map implementation for JavaFX.</li>
<li>XStore &#8211; David Armitage&#8217;s simple persistence for JavaFX variables using dependency injection.</li>
<li>ImageCache &#8211; Caching of JavaFX images for building high performance applications contributed by <a href="http://www.joshondesign.com/">Joshua Marinacci</a>.</li>
<li>XEDT &#8211; Simplified event thread mangement for JavaFX infrastructure classes (Warning: Use the JavaFX Task API instead unless you know exactly what you are doing)</li>
</ul>
<p>And the rest under a new Controls jar:</p>
<ul>
<li>XTableView &#8211; I am still working on this, but it is very useful already as demonstrated by Jim Weaver&#8217;s <a href="http://learnjavafx.typepad.com/weblog/2009/09/introducing-speedreaderfx-powered-by-javafx-and-jfxtras.html">SpeedReaderFX </a>application.</li>
<li>XTreeView &#8211; Jim Clarke&#8217;s Tree Control.</li>
<li>XCalendarPicker &#8211; Tom&#8217;s excellent <a href="http://jfxtras.org/portal/core/-/wiki/JFXtras/XCalendarPicker">calendar control</a>.</li>
<li>XPane &#8211; A titled region with rounded corners developed by Dean Iverson.</li>
<li>XPicker &#8211; David Armitage did some great work on this&#8230;  Check out his demo on the <a href="http://jfxtras.org/portal/core/-/wiki/JFXtras/XPicker">JFXtras website</a>.</li>
<li>XShelfView &#8211; A high performance Display Shelf control implementation with support for reflection, titles, and a scrollbar as showcased on <a href="http://jfxstudio.wordpress.com/2009/07/05/jfxtras-shelf-control/">JFXStudio</a>.</li>
<li>XSpinnerWheel &#8211; A prize spinner wheel that makes use of pseudo 3D effects as showcased in the <a href="http://jfxtras.org/portal/samples/-/journal_content/56/10128/32110">JUG Prize Spinner </a>application.</li>
<li>XMenu &#8211; Pure JavaFX Menu developed by <a href="http://jonathangiles.net/blog/?p=566">Jonathan Giles </a>(this version will be replaced by the official Sun Menu control when it becomes available).</li>
<li>XPasswordBox &#8211; Control from Liu to create a password field.</li>
<li>XMultiLineTextBox &#8211; Till&#8217;s control for editing multiple lines of text.</li>
<li>XSwingTable &#8211; From John Freeman, this gives you all the power of a JTable directly from JavaFX code.</li>
</ul>
<p>For this release we decided to go with a new naming convention to differentiate our classes from the built-in JavaFX layouts and controls.  Most of the classes are now prefixed with an &#8220;X&#8221; for jfXtras.  This will make migration slightly more painful now, but prevent future collisions and name changes down the road.</p>
<p>There is also a new version of JFXtras Test.  This is the final version that will be released under this name (it is being <a href="http://steveonjava.com/2009/08/02/jfxtras-test-and-fest-unite/">merged with FEST-JavaFX</a>), but it required an update to work with the new naming convention and to add some much-needed JUnit Runner support (see my <a href="http://steveonjava.com/2009/11/24/devoxx-conference-session-slides/">Devoxx Conference Presentation</a> for more details).</p>
<p>I probably missed a few things along the way here.  You can find the definitive list in the online JavaFXDoc:</p>
<p><a href="http://jfxtras.googlecode.com/svn/site/javadoc/release-0.6/index.html">http://jfxtras.googlecode.com/svn/site/javadoc/release-0.6/index.html</a></p>
<p>Please feel free to download the jars and give the preview release a try.  We are putting the finishing touches on several of the layouts and controls, so expect a final release in a week or so.</p>
<p>Happy Thanksgiving!</p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Devoxx Conference Session Slides]]></title>
<link>http://steveonjava.com/2009/11/24/devoxx-conference-session-slides/</link>
<pubDate>Wed, 25 Nov 2009 05:38:40 +0000</pubDate>
<dc:creator>steveonjava</dc:creator>
<guid>http://steveonjava.com/2009/11/24/devoxx-conference-session-slides/</guid>
<description><![CDATA[Overall I was very impressed with Devoxx.  Everything including the movie theater venue, quality of ]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>Overall I was very impressed with Devoxx.  Everything including the movie theater venue, quality of the speakers, and professionalism of the attendees was top-notch.  Stephan Janssen definitely puts on quite an amazing show!</p>
<p>As a follow-up to my second Devoxx session, here is the full slide deck I presented:</p>
<p><!-- SlideShare error: doc is missing or has illegal characters /[^-_a-zA-Z0-9]/ --></p>
<p>Both this and the university session will be available on the <a href="http://beta.parleys.com/#st=4&#38;id=74957">Parleys.com beta site</a> shortly, so you will be able to watch both sessions from the comfort of your home.</p>
<p>Now back to coding on the JFXtras 0.6 release with an announcement to be posted here very shortly&#8230;</p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Websmiths recomanda JavaFX]]></title>
<link>http://myuglycreature.wordpress.com/2009/11/23/websmiths-recomanda-javafx/</link>
<pubDate>Mon, 23 Nov 2009 02:59:29 +0000</pubDate>
<dc:creator>csosoiu</dc:creator>
<guid>http://myuglycreature.wordpress.com/2009/11/23/websmiths-recomanda-javafx/</guid>
<description><![CDATA[Pentru viitorul site, echipa WebSmiths a trebuit sa aleaga o tehnologie care sa fie free in primul r]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>Pentru viitorul site, echipa <em>WebSmiths</em> a trebuit sa aleaga o tehnologie care sa fie free in primul rand, si care sa fie cat mai ofertanta in development (cat mai rapid si usor) de aplicatii cat mai &#8220;glossy&#8221; de web. Am ales astfel <strong>JavaFX</strong> (fara sa stim prea multe detalii) ca si platforma <strong>RIA</strong>, din urmatoarele motive:</p>
<ul>
<li><strong>JavaFX</strong> ruleaza pe orice calculator si in orice browser care are instalat Java Runtime Environment</li>
<li>Fiind familiari cu <strong>Java</strong>, si cu IDE-urile <strong>NetBeans </strong>si<strong> Eclipse</strong>, am considerat ca ne-ar ajuta in invatarea acestei noi tehnologii</li>
<li> Este o <strong>tehnologie noua</strong> (aparuta prima data in 2008 si actualizata in iulie 2009) de realizare de aplicatii interactive web si desktop, care concureaza cu <strong>Flash </strong>si <strong>Silverlight</strong></li>
<li>Exista multe <strong>sample codes</strong> consistente cat si tutoriale pe site-ul de la Sun JavaFX, cat sa-ti faca pofta sa inveti o noua tehnologie <img src='http://s.wordpress.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </li>
</ul>
<p>Dupa o experienta de a realiza cateva tutoriale de pe site-ul oficial, si &#8220;Pet-ul&#8221; (care este momentan o celula <img src='http://s.wordpress.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />  draggable, si customizabila ca si culoare) de pe site-ul nostru(care este momentan beta) , am putea enunta cateva plusuri si minusuri pentru tehnologia aleasa:</p>
<p><strong>Pros:</strong></p>
<ul>
<li> Mediul de dezvoltare este foarte prietenos (<strong>Netbeans</strong>) si usor de folosit : se pot realiza functii grafice, precum rotatie, umbra, glow , cat si adaugare de componente (shape-uri, componente de interfatare) din cateva click-uri.</li>
<li>Limbajul este intuitiv in descrierea de animatie si grafica (scripting)</li>
<li>Sample-urile ce vin cu Netbeans, cat si cele de pe site, sunt cat se poate de relevante : prelucrari de imagini, slideshow, animatii, jocul pong implementat, draggable object</li>
<li>Se poate instala pachetul <strong>Production Suite,</strong> care faciliteaza lucrul intre programator si grafician/desenator, prin instalarea de plugin-uri in <strong>Adobe Photoshop si Illustrator</strong>, care convertesc un fisier Adobe (de genul psd), layered, intr-un fisier .fxd JavaFX, script ce descrie fiecare layer si ce imagine trebuie inserata in acestea</li>
<li>Aplicatiile JavaFX pot fi setate ca fiind <strong>Draggable</strong>, ceea ce inseamna ca un astfel de content poate fi tras din browser, si pus pe Desktop, el ruland independent</li>
<li>Se poate integra cod java fara probleme, mai ales daca nu stii cum sa implementezi ceva cu JavaFX Script</li>
<li>Are suport <strong>HttpRequest</strong>, ceea ce ne-a ajutat in lucrul cu serverul</li>
<li> Se poate integra lucrul cu baze de date, prin <strong>jdbc</strong></li>
<li> Este o alternativa pentru <strong>Ajax </strong></li>
</ul>
<p><strong>Cons:</strong></p>
<ul>
<li> Fiind o tehnologie noua, <strong>nu exista raspuns</strong> la orice problema pe Google <img src='http://s.wordpress.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> , nici macar pe forumurile de pe site-ul oficial</li>
<li> O aplicatie JavaFX consta in <strong>3 fisiere</strong>, unul jar, si doua jnlp, care trebuie modificate manual pentru a seta calea jar-ului. Ne-am confruntat cu aceasta problema cand am urcat prima data o aplicatie JavaFX pe site si aceasta nu rula, pentru ca nu lua calea corect.</li>
<li> Nu are o <strong>&#8220;masa de lucru&#8221;</strong> grafica, pentru a modifica amplasarea obiectelor grafice cu mouse-ul, asa cum are Adobe Flash, ci totul este descris prin cod</li>
<li> Aplicatia &#8220;Pet&#8221;-ului de pe site, desi are doar 40K, se incarca destul de greu</li>
</ul>
<p>In concluzie, <strong>JavaFX </strong>este o tehnologie demna de incercat macar, avand capabilitati sa inlocuiasca cu brio (si e inca la inceput) aplicatiile<strong> Flash</strong>, ceea ce nu s-a reusit mult timp.</p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Tonight we chat]]></title>
<link>http://pow4ioc.wordpress.com/2009/11/22/tonight-we-chat/</link>
<pubDate>Sun, 22 Nov 2009 21:06:38 +0000</pubDate>
<dc:creator>Frățilă Cătălin Ionuț</dc:creator>
<guid>http://pow4ioc.wordpress.com/2009/11/22/tonight-we-chat/</guid>
<description><![CDATA[În seara asta 5 manageri de echipe ne-am strâns pentru a discuta despre tehnologiile folosite de fie]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>În seara asta 5 manageri de echipe ne-am strâns pentru a discuta despre tehnologiile folosite de fiecare în cadrul proiectului.</p>
<p>Sesiunea a durat cam 2 ore și fiecare am abordat câte o tehnologie importanta în următoarea ordine:</p>
<p>1) Andrei &#8211; JavaScript</p>
<ul>
<li>a punctat foarte bine caracteristicile acestui limbaj de scripting client-side</li>
<li>am discutat apoi despre utilitatea acestui limbaj</li>
<li>am amintit de Firebug ca si aplicatie pentru debugging-ul codului</li>
<li>Sergiu a amintit de framework-uri precum JQuery și YUI</li>
</ul>
<p>2) Eu &#8211; PHP (bineînțeles)</p>
<ul>
<li>limbaj de scripting server-side</li>
<li>foarte bine documentat, fiind baza pentru foarte multe site-uri din prezent</li>
<li>weak typing</li>
<li>PHP ca limbaj orientat obiect</li>
</ul>
<p>3) Tibi &#8211; AJAX</p>
<ul>
<li>Asynchronous JavaScript and XML</li>
<li>nu este un limbaj propriu-zis, folosind JavaScript pentru partea de codare și XML pentru formatul raspunsurilor. Raspunsurile pot fi și în format JSON sau plain text.</li>
<li>ne-a dat un exemplu cu o apllicație cu chat și a subliniat importanta metodei asincrone de comunicare</li>
</ul>
<p>4) Mircea &#8211; JavaFX</p>
<ul>
<li><a href="http://en.wikipedia.org/wiki/Rich_Internet_application" target="_blank">RIA (Rich Internet Application)</a></li>
<li><a href="http://javafx.com/samples/" target="_blank">http://javafx.com/samples/</a> &#8211; pentru exemple</li>
<li>un bun inlocuitor pentru Silverlight sau Flash</li>
<li>foarte bun pentru dezvoltarea unui joc online, browser based</li>
</ul>
<p>5) Sergiu &#8211; CMS-uri (WordPress)</p>
<ul>
<li>Content Management Systems</li>
<li>”CMS-urile sunt o serie de programe, scrise de obicei într-un limbaj server site(PHP de exemplu dar nu numai) care folosesc HTML, CSS, AJAX și altele pentru a facilita afisarea și editarea de continut într-un mod facil”</li>
<li>am discutat și despre diferențele dintre CMS-uri și Framework-urile PHP și despre folosire CMS sau scriere cod de la zero.</li>
</ul>
<p>Mai multe găsiți și pe pagina asociată <a href="http://ltfll-lin.code.ro:11080/concertChat/roomContent.jsp?channelID=Chat_Etapa_3" target="_blank">transcript</a>-ului asociat chat-ului nostru.</p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Devoxx '09 - http://www.devoxx.com/]]></title>
<link>http://ebiinterfaces.wordpress.com/2009/11/18/devoxx-09-httpwww-devoxx-com/</link>
<pubDate>Wed, 18 Nov 2009 09:45:33 +0000</pubDate>
<dc:creator>eamonnmag</dc:creator>
<guid>http://ebiinterfaces.wordpress.com/2009/11/18/devoxx-09-httpwww-devoxx-com/</guid>
<description><![CDATA[Hi all, I&#8217;m at Devoxx in Antwerp this week and there will be a few talks on rich application d]]></description>
<content:encoded><![CDATA[Hi all, I&#8217;m at Devoxx in Antwerp this week and there will be a few talks on rich application d]]></content:encoded>
</item>
<item>
<title><![CDATA[Check it out: Project MaiTai - Interactive Artwork]]></title>
<link>http://terrencebarr.wordpress.com/2009/11/16/check-it-out-project-maitai-interactive-artwork/</link>
<pubDate>Mon, 16 Nov 2009 17:18:20 +0000</pubDate>
<dc:creator>terrencebarr</dc:creator>
<guid>http://terrencebarr.wordpress.com/2009/11/16/check-it-out-project-maitai-interactive-artwork/</guid>
<description><![CDATA[Slightly off-topic, but very cool: Josh Marinacci just announced the first public version of Project]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p><a href="http://www.projectmaitai.org/2009/11/12/announcing-project-maitai/" target="_blank"><img src="http://terrencebarr.files.wordpress.com/2009/11/maitai.png?w=400&#038;h=106" width="400" height="106" alt="MaiTai.png" /></a></p>
<p>Slightly off-topic, but very cool: Josh Marinacci just <a href="http://www.java.net/blogs/joshy/" target="_blank">announced</a> the first public version of <a href="http://www.projectmaitai.org/2009/11/12/announcing-project-maitai/" target="_blank">Project MaiTai</a>.</p>
<p>Josh describes MaiTai this way:</p>
<blockquote>
<p>MaiTai is an open source tool for building interactive artwork. You create interesting sketches by wiring different blocks together with lines. There are blocks to produce graphics, process mouse and keyboard inputs, connect to webservices, and perform complex graphical transformations. The end result is limited only by your imagination.</p>
</blockquote>
<p><a href="http://www.projectmaitai.org/gallery/" target="_blank"><img src="http://terrencebarr.files.wordpress.com/2009/11/maitai2.png?w=200&#038;h=122" width="200" height="122" alt="MaiTai2.png" style="margin-left:5px;float:right;" /></a></p>
<p>It&#8217;s a bit hard to picture exactly what MaiTai is &#8211; but it is very easy to <a href="http://www.projectmaitai.org/download/" target="_blank">try it out</a>. Not only can you create very cool visual effects &#8211; but you do it in an equally cool <strong>visual way</strong>, with absolutely no programming involved.</p>
<p>It&#8217;s an excellent example of the user experience expressive client applications and JavaFX are capable of delivering.</p>
<p>Cheers,</p>
<p>&#8211; Terrence</p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Studi Kasus Loading File FXZ]]></title>
<link>http://belajarjavafx.wordpress.com/2009/11/16/studi-kasus-loading-file-fxz/</link>
<pubDate>Mon, 16 Nov 2009 03:37:52 +0000</pubDate>
<dc:creator>belajar-javafx</dc:creator>
<guid>http://belajarjavafx.wordpress.com/2009/11/16/studi-kasus-loading-file-fxz/</guid>
<description><![CDATA[Kasus dibawah ini adalah contoh ketika saya mencoba me-load file .fxz kemudian ingin mengambil atau ]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>Kasus dibawah ini adalah contoh ketika saya mencoba me-load file .fxz kemudian ingin mengambil atau memunculkan salah satu Node/ImageView dalam paket .fxz/group tersebut dan memanipulasinya. Dibawah ini contoh kodenya:</p>
<blockquote><p>&#8230;&#8230;&#8230;.</p>
<p>var stage:Stage =   Stage {<br />
title: &#8220;HTI Channel Player&#8221;<br />
width: 400<br />
height: 200<br />
style:StageStyle.TRANSPARENT<br />
};<br />
var scene:Scene=Scene{};<!--more--></p>
<p>public function run() {<br />
var fxd = FXDLoader.loadContent(&#8220;{__DIR__}skins/BaseSkin.fxz&#8221;);<br />
var play2=fxd.getNode(&#8220;play&#8221;);<br />
var fxdContent = FXDLoader.loadContent(&#8220;{__DIR__}skins/BaseSkin.fxz&#8221;);</p>
<p>//&#8212;&#8212;&#8212; isi paket dari file .fxz tersebut diinisialisasi pada group<br />
var group=fxdContent.getRoot();<br />
//&#8212;&#8212;&#8212;&#8211; mengambil node/image pertama pada group</p>
<p>var play = group.content[0];</p>
<p>//&#8212;&#8212;&#8212;- kemudian image/node tersebut saya coba masukan kedalam scene.content<br />
insert play into scene.content;<br />
play.translateX = 100;<br />
}</p>
<p>stage.scene=scene;<br />
stage;</p>
<p>}</p>
<p>//&#8212;&#8212;&#8212;&#8212; ketika kode ini dijalankan</p></blockquote>
<p>Akan muncul error seperti ini:</p>
<blockquote><p>WARNING * WARNING * WARNING * WARNING * WARNING<br />
An attempt has been made to add node to a new group without<br />
first removing it from its current group. See the class<br />
documentation for javafx.scene.Node for further information.<br />
This request will be granted temporarily but it will<br />
be refused in the future. Please change your code now.<br />
node=ImageView oldgroup=Group newgroup=Group<br />
Stack trace follows.<br />
java.lang.IllegalArgumentException<br />
at javafx.scene.Group$_SBECL.onChange(Group.fx:162)<br />
at com.sun.javafx.runtime.location.SequenceVariable.notifyListeners(SequenceVariable.java:157)<br />
at com.sun.javafx.runtime.location.SequenceVariable.setAsSequence(SequenceVariable.java:259)<br />
at com.sun.javafx.runtime.location.SequenceVariable.set(SequenceVariable.java:222)<br />
at com.sun.javafx.runtime.location.SequenceVariable.set(SequenceVariable.java:39)<br />
at com.sun.javafx.runtime.location.Bindings$BijectiveBinding$2.onChange(Bindings.java:151)<br />
at com.sun.javafx.runtime.location.AbstractLocation$1.onAction(AbstractLocation.java:219)<br />
at com.sun.javafx.runtime.location.AbstractLocation$1.onAction(AbstractLocation.java:216)<br />
at com.sun.javafx.runtime.location.AbstractLocation.iterateChildren(AbstractLocation.java:181)<br />
at com.sun.javafx.runtime.location.AbstractLocation.invalidateDependencies(AbstractLocation.java:253)<br />
at com.sun.javafx.runtime.location.SequenceVariable.notifyListeners(SequenceVariable.java:150)<br />
at com.sun.javafx.runtime.location.SequenceVariable.replaceSlice(SequenceVariable.java:324)<br />
at com.sun.javafx.runtime.location.SequenceVariable.insert(SequenceVariable.java:442)<br />
at player.Main.javafx$run$(Main.fx:81)<br />
at player.Main.javafx$run$(Main.fx:81)<br />
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)<br />
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)<br />
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)<br />
at java.lang.reflect.Method.invoke(Unknown Source)<br />
at com.sun.javafx.runtime.provider.GUIRuntimeProvider$1.run(GUIRuntimeProvider.java:65)<br />
at com.sun.javafx.tk.swing.SwingToolkit$StartupRoutine.run(SwingToolkit.fx:593)<br />
at java.awt.event.InvocationEvent.dispatch(Unknown Source)<br />
at java.awt.EventQueue.dispatchEvent(Unknown Source)<br />
at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)<br />
at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)<br />
at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)<br />
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)<br />
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)<br />
at java.awt.EventDispatchThread.run(Unknown Source)</p></blockquote>
<p>Hasilnya tetap muncul image/node yang diinginkan, tapi tetap muncul error diatas. Hal ini karena ternyata saya mencoba menambahkan node yang ada di group A (misalkan) ke dalam group B (misalkan) tanpa menghapus terlebih dahulu node tersebut di group A.</p>
<p>Jadi solusinya (1) tetap sesuaikan dengan dokumentasi pada API JavaFX, yaitu load/masukan keseluruhan isi group tersebut pada scene.content, baru setelah itu ambil node tertentu kemudian manipulasi deh. Atau (2) bisa saja dengan mengikuti peringatan dari compiler tadi yaitu dengan menghapus dari group pertama kemudian tambahkan pada group baru. Tapi tentu berarti node tersebut akan hilag di group pertama. klo mo caba silahkan.</p>
<p>Tapi untuk solusi (1) akhirnya saya coba tambahkan kode berikut:</p>
<blockquote><p>//&#8212;&#8212;&#8211; masukan/load group tersebut kedalam scene.content</p>
<p>insert group into scene.content;</p>
<p>//&#8212;&#8212;&#8211; baru ambil node tertentu</p>
<p>var play = group.content[0];</p>
<p>//&#8212;&#8212;&#8212;- nah sekarang aman untuk bisa di manipulasi<br />
play.translateX = 100;</p></blockquote>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Java vs Flash File Uploaders]]></title>
<link>http://icewalker2g.wordpress.com/2009/11/13/java-vs-flash-file-uploaders/</link>
<pubDate>Fri, 13 Nov 2009 23:55:33 +0000</pubDate>
<dc:creator>Francis Adu-Gyamfi</dc:creator>
<guid>http://icewalker2g.wordpress.com/2009/11/13/java-vs-flash-file-uploaders/</guid>
<description><![CDATA[I was using my Yahoo mail today and had to spend of most of the day attaching and sending some moder]]></description>
<content:encoded><![CDATA[I was using my Yahoo mail today and had to spend of most of the day attaching and sending some moder]]></content:encoded>
</item>
<item>
<title><![CDATA[LearnFX and Win at Devoxx]]></title>
<link>http://steveonjava.com/2009/11/13/learnfx-and-win-at-devoxx/</link>
<pubDate>Fri, 13 Nov 2009 20:04:50 +0000</pubDate>
<dc:creator>steveonjava</dc:creator>
<guid>http://steveonjava.com/2009/11/13/learnfx-and-win-at-devoxx/</guid>
<description><![CDATA[Next week I will be giving two talks on JavaFX at Devoxx in Belgium.  The first is a university sess]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>Next week I will be giving two talks on JavaFX at Devoxx in Belgium.  The first is a university session on Tuesday at 13:30 called <a href="http://www.devoxx.com/display/DV09/The+JavaFX+Platform+-+A+Java+Developer%27s+Guide">The JavaFX Platform &#8211; A Java Developer&#8217;s Guide</a>.  The second is a technical session on Thursday at 14:00 entitled <a href="http://www.devoxx.com/display/DV09/Pro+JavaFX+-+Developing+Enterprise+Applications">Pro Javafx &#8211; Developing Enterprise Applications</a>.</p>
<p>Leading up to both these sessions I will post a question via the LearnFX application.  To win a prize, all you have to do is:</p>
<ol>
<li>Answer the question correctly using the LearnFX client (see below)</li>
<li>Come to the next Devoxx session I am speaking at</li>
<li>Winners will be selected by a random drawing from all the correct responses</li>
</ol>
<p>Here is the LearnFX client displaying the first question.  To run it, make sure that you have a recent version (update 14 or later) of Java SE 6, and simply click on the launch button:</p>
<p style="text-align:center;"><a href="http://jmentor.com/LearnFXWidget/LearnFX.jnlp"><img class="aligncenter size-full wp-image-693" title="LearnFX" src="http://steveonjava.wordpress.com/files/2009/11/learnfx.png" alt="LearnFX" width="400" height="360" /><br />
<img class="aligncenter size-full wp-image-642" title="webstartsmall2" src="http://steveonjava.wordpress.com/files/2009/10/webstartsmall2.gif" alt="webstartsmall2" width="88" height="34" /></a></p>
<p><span style="color:#333399;"><strong>Please don&#8217;t ruin this for others by mentioning the answer!</strong></span></p>
<p>The prizes include several copies of Pro JavaFX Platform and a limited edition WidgetFX T-Shirt.  I don&#8217;t know about you, but I know which prize I would pick:</p>
<div id="attachment_692" class="wp-caption aligncenter" style="width: 519px"><a href="http://steveonjava.wordpress.com/files/2009/11/mockup3.png"><img class="size-full wp-image-692" title="WidgetFXShirt" src="http://steveonjava.wordpress.com/files/2009/11/mockup3.png" alt="WidgetFXShirt" width="509" height="315" /></a><p class="wp-caption-text">WidgetFX Limited run T-Shirt - original artwork by Keith Combs (WidgetFX Developer)</p></div>
<p>There will also be an opportunity for audience members to answer simply by using a laptop or mobile Twitter client (more details on this at the start of the session), so you don&#8217;t have to respond in advance to win.</p>
<p>Thanks to <a href="http://learnjavafx.typepad.com/">Jim Weaver</a> for the excellent LearnFX application, and I look forward to seeing you at my Devoxx talks!</p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Java Store: Now serving payments]]></title>
<link>http://terrencebarr.wordpress.com/2009/11/12/java-store-now-serving-payments/</link>
<pubDate>Thu, 12 Nov 2009 13:13:07 +0000</pubDate>
<dc:creator>terrencebarr</dc:creator>
<guid>http://terrencebarr.wordpress.com/2009/11/12/java-store-now-serving-payments/</guid>
<description><![CDATA[UPDATES: 11/17/09: The Java Warehouse is now open to developers in 7 additional countries: UK, Austr]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p><a href="http://store.java.com/" target="_blank"><img src="http://terrencebarr.files.wordpress.com/2009/11/javastore-client-260x213.jpg?w=320&#038;h=189" width="320" height="189" alt="JavaStore-client-260x213.jpg" /></a></p>
<p><b>UPDATES:</b></p>
<ul>
<li><b>11/17/09:</b> The Java Warehouse is now open to developers in 7 additional countries: UK, Australia, India, China (PRC), Sweden, Brazil, and Russia. See <a href="http://java.sun.com/warehouse/overview/locations.jsp" target="_blank">this update</a> on java.sun.com.</li>
<li><b>See also <a href="http://blogs.sun.com/jag/entry/java_store_%CE%B2_payment_and" target="_blank">James Gosling&#8217;s blog</a></b></li>
</ul>
<p><b>Java Store: Now serving payments</b></p>
<p>Last week, PayPal announced their <a href="https://www.x.com/" target="_blank">PayPal X</a> <em>Adaptive Payment API</em>. Coinciding with that announcement Sun enabled the Java Store to take advantage of these new payment services.</p>
<p>Starting immediately with the U.S., content developers can price their applications in the Java Store and leverage payment processing by PayPal, resulting in a convenient in-store billing mechanism for customers <b>and</b> developers. Developers receive 70 percent of the purchase price and funds are instantly routed to the developer upon completion of a transaction, thus providing fast monetization and real-time feedback on purchases.</p>
<p>Along with the new billing mechanism, the Java Store Beta desktop client (created in <a href="http://javafx.com/" target="_blank">JavaFX</a>) has been updated for an improved look and feel, and simplified navigation. Combined with the already existing &#8220;Preview&#8221; (tryout) and &#8220;Drag-to-Install&#8221; functionality the Java Store client now offers a unique and streamlined user experience which makes discovering, trying, and purchasing content very easy.</p>
<p><b>As a content developer, why chose the Java Store for your desktop application?</b></p>
<ul>
<li>It&#8217;s simple and low-cost: Registering for the Java Store Beta program is straightforward, with a low $50 yearly subscription fee</li>
<li>It&#8217;s convenient: The Java Warehouse acts as an aggregation point and single repository for your Java content. Submitting your application to the Java Warehouse will handle most of the deployment and distribution details for you</li>
<li>It has unparalleled reach: The Java Store will allow more than 800 million Java-powered desktops around the world to connect, offering large-scale discovery and distribution of your applications</li>
</ul>
<p><span style="text-decoration:underline;">Important Note:</span> Currently, the Java Store Beta program and Java Warehouse are limited to U.S. residents. We are working with high priority on enabling access and payment processing outside the U.S. &#8211; please be patient while finalize paperwork for different countries around the world. More to come soon.</p>
<p><b>What about mobile and TV platforms?</b></p>
<p>A key feature of the Java Store will be the support across multiple platforms, including the desktop, mobile, and TV. With a single entry point (the Java Warehouse) developers will be able to target their content across a wide range of platforms and deployment models &#8211; a very compelling option. Stay tuned for forthcoming information.</p>
<p><b>What next?</b></p>
<p>Read the announcement details <a href="http://www.sun.com/aboutsun/pr/2009-11/sunflash.20091103.2.xml" target="_blank">here</a>. Or view the <a href="http://java.sun.com/developer/media/deepdivejavawarehouse.jsp" target="_blank">SDN &#8220;Deep Dive&#8221; video</a>. And try out the <a href="http://store.java.com/developerrelease/" target="_blank">Java Store Beta program</a> and the <a href="http://java.sun.com/warehouse/" target="_blank">Java Warehouse</a> today (U.S. residents only).</p>
<p>Cheers,</p>
<p>&#8211; Terrence</p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[My Fame goes to 11]]></title>
<link>http://musicmachinery.com/2009/11/12/my-fame-goes-to-11/</link>
<pubDate>Thu, 12 Nov 2009 12:07:57 +0000</pubDate>
<dc:creator>Paul</dc:creator>
<guid>http://musicmachinery.com/2009/11/12/my-fame-goes-to-11/</guid>
<description><![CDATA[Sten has released a new version of the ultra-cool,  award-winning Music Explorer FX.  It has a new f]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p><a rel="attachment wp-att-1684" href="http://musicmachinery.com/2009/11/12/my-fame-goes-to-11/fame/"><img class="alignleft size-full wp-image-1684" style="margin-left:10px;margin-right:10px;" title="fame" src="http://musicmachinery.wordpress.com/files/2009/11/fame.jpg" alt="fame" width="105" height="85" /></a>Sten has released a new version of the ultra-cool,  <a href="http://javafx.com/challenge/">award-winning</a> Music Explorer FX.  It has a new feature: The Fame Knob.  While you are exploring for music you can set the Fame Knob up or down to control how well known or obscure the artists shown are.   If you are looking for mainstream artists set the Fame Knob to high. Looking for new, undiscovered artists? Set the Fame Knob to low.</p>
<p>Sten has also included a number of performance enhancements so everything runs super snappy.   Read more about the update on <a href="http://blogs.citytechinc.com/sanderson/">Sten&#8217;s blog</a> and give it a whirl.</p>
<div id="attachment_1685" class="wp-caption aligncenter" style="width: 460px"><a href="http://ria.citytechinc.com/javafx/MusicExplorerFX/v1_1/MusicExplorerFX.jnlp"><img class="size-full wp-image-1685" title="BB" src="http://musicmachinery.wordpress.com/files/2009/11/bb.jpg" alt="BB" width="450" height="281" /></a><p class="wp-caption-text">The Music Explorer FX.  Click to launch the app.</p></div>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[NetBeans Starter Kit Special - Free Shipping Promotion]]></title>
<link>http://muhammadghazali.wordpress.com/2009/11/11/netbeans-starter-kit-special-%e2%80%94-free-shipping-promotion/</link>
<pubDate>Wed, 11 Nov 2009 03:08:26 +0000</pubDate>
<dc:creator>muhammadghazali</dc:creator>
<guid>http://muhammadghazali.wordpress.com/2009/11/11/netbeans-starter-kit-special-%e2%80%94-free-shipping-promotion/</guid>
<description><![CDATA[Saat ini NetBeans.org sedang melakukan &#8220;Summer promotion&#8221; untuk menyediakan DVD gratis (]]></description>
<content:encoded><![CDATA[Saat ini NetBeans.org sedang melakukan &#8220;Summer promotion&#8221; untuk menyediakan DVD gratis (]]></content:encoded>
</item>
<item>
<title><![CDATA[Slideshow de Imágenes con JavaFX]]></title>
<link>http://cafelojano.wordpress.com/2009/11/09/slideshow-de-imagenes-con-javafx/</link>
<pubDate>Tue, 10 Nov 2009 03:26:59 +0000</pubDate>
<dc:creator>Jorge López (jorgaf)</dc:creator>
<guid>http://cafelojano.wordpress.com/2009/11/09/slideshow-de-imagenes-con-javafx/</guid>
<description><![CDATA[En ésta ocasión Scott Hommel nos muestra en 6 pasos (un tutorial corto pero bueno) como crear una ap]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>En ésta ocasión Scott Hommel nos muestra en 6 pasos (un tutorial corto pero bueno) como crear una aplicación JavaFX que muestra un grupo de fotografías con transición automática y efectos entre transición, al estilo diapositivas. En realidad resulta bastante sencillo el ver cómo se realiza la aplicación con pocas líneas de código.</p>
<p>La herramienta que ha utilizado en éste caso es NetBeans, y a propósito de NetBeans ya está disponible para la descarga la versión 6.8 Beta y en el blog de Avbravo pueden encontrar una entrada <a title="NetBeans 6.8 JavaFX Ubuntu 9.10 - Avbravo" href="http://avbravo.blogspot.com/2009/11/netbeans-68-beta-javafx-ubuntu-910.html" target="_blank">NetBeans 6.8 Beta JavaFX Ubuntu 9.10</a> el nombre es por demás descriptivo de lo que encontrarán. Sería interesante hacer el slideshow con las herramientas del post de Avbravo.</p>
<p>Los 6 pasos que se muestran en el post <a title="Blog que muestra el ejemplo" href="http://javafx.com/docs/articles/image_slideshow/" target="_blank">Creating an Image Slideshow</a>:</p>
<ol>
<li> Crear el proyecto Slideshow</li>
<li>Crear el Stage y Scene</li>
<li>Configurar el color de fondo</li>
<li>Cargar y mostrar las imágenes</li>
<li>Agregar una línea de tiempo</li>
<li>Agregar la transición</li>
</ol>
<p>El post de Hommel es interesante porque al final se muestran otros recursos relacionadas con cada una de las actividades realizadas para crear el post.</p>
<p>Espero que sea de su interés.</p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Membuat Player Live Radio Streaming ]]></title>
<link>http://belajarjavafx.wordpress.com/2009/11/09/membuat-player-live-radio-streaming/</link>
<pubDate>Mon, 09 Nov 2009 06:19:00 +0000</pubDate>
<dc:creator>belajar-javafx</dc:creator>
<guid>http://belajarjavafx.wordpress.com/2009/11/09/membuat-player-live-radio-streaming/</guid>
<description><![CDATA[Bagi yang ingin mencoba untuk membuat player media streaming atau radio live streaming silahkan coba]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>Bagi yang ingin mencoba untuk membuat player media streaming atau radio live streaming silahkan coba kelas di bawah ini.</p>
<p><!--more--></p>
<p>Ini adalah kelas untuk membaca radio streaming:</p>
<blockquote><p>package radio;</p>
<p>import javafx.scene.media.*;</p>
<p>/**<br />
* @author bhangun<br />
* Created on Nov 7, 2009, 8:14:21 AM<br />
*/<br />
public class Radio {<br />
/**<br />
URL stasion radio<br />
*/<br />
public-init var stationURL:String;</p>
<p>var mediaPlayer:MediaPlayer = MediaPlayer {<br />
volume: 0.5<br />
autoPlay: true<br />
onError: function(e:MediaError) {<br />
println(&#8220;MediaPlayer error : {e.cause} {e}&#8221;);<br />
closeRadio();<br />
}<br />
onEndOfMedia: function() {<br />
println(&#8220;end session {bufferedTime}&#8221;);<br />
}<br />
};<br />
var media:Media = null;<br />
// the time control slider<br />
var time_control_length = 240.0;<br />
var time_control_xoff = 210;</p>
<p>public var currentTime = bind<br />
if (mediaPlayer.media != null and<br />
mediaPlayer.media.duration != null and<br />
mediaPlayer.media.duration.toMillis() &#62; 0 and<br />
mediaPlayer.currentTime.toMillis() &#62; 0)<br />
{<br />
time_control_length * mediaPlayer.currentTime.toMillis() / mediaPlayer.media.duration.toMillis()<br />
} else {<br />
0.0<br />
};<br />
public var bufferedTime = bind<br />
if (mediaPlayer.media != null and<br />
mediaPlayer.media.duration != null and<br />
mediaPlayer.media.duration.toMillis() &#62; 0 and<br />
mediaPlayer.bufferProgressTime.toMillis() &#62; 0)<br />
{<br />
time_control_length * mediaPlayer.bufferProgressTime.toMillis() / mediaPlayer.media.duration.toMillis()<br />
} else {<br />
0.0<br />
};<br />
function getMedia():Media {<br />
if (media == null) {<br />
println(&#8220;Loading radio streaming: {stationURL}&#8221;);<br />
media = Media {<br />
source: &#8220;{stationURL}&#8221;<br />
onError: function(e:MediaError) {<br />
println(&#8220;terjadi error {e}&#8221;);<br />
}<br />
}<br />
}<br />
return media;<br />
}</p>
<p>/**<br />
*<br />
*/<br />
public function closeRadio():Void {<br />
if (media != null) {<br />
media.source = null;<br />
media = null;<br />
}<br />
}</p>
<p>public function playRadio():Void {<br />
mediaPlayer.media = getMedia();<br />
mediaPlayer.play();<br />
}</p>
<p>public function pauseRadio():Void {<br />
mediaPlayer.pause();<br />
}<br />
}</p></blockquote>
<p>Untuk mencobanya jalankan contoh kode berikut;</p>
<blockquote><p>var radio:Radio = Radio{<br />
stationURL:&#8221;http://hizbut-tahrir.or.id:8000&#8243;<br />
}<br />
radio.playRadio();<br />
println(radio.bufferedTime);</p></blockquote>
<p>Selamat mencoba!</p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Sun Tech Days 2009: Você não pode perder!]]></title>
<link>http://jus2think.wordpress.com/2009/11/08/sun-tech-days-2009-imperdivel/</link>
<pubDate>Sun, 08 Nov 2009 19:30:56 +0000</pubDate>
<dc:creator>Wesley</dc:creator>
<guid>http://jus2think.wordpress.com/2009/11/08/sun-tech-days-2009-imperdivel/</guid>
<description><![CDATA[Neste fim de ano um dos melhores eventos sobre desenvolvimento com tecnologias open sources de ponta]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p><img class="aligncenter size-full wp-image-58" title="empower_you" src="http://jus2think.wordpress.com/files/2009/11/empower_you1.jpg" alt="empower_you" width="450" height="95" /><br />
Neste fim de ano um dos melhores eventos sobre desenvolvimento com tecnologias open sources de ponta estará novamente no Brasil, é o <a href="http://www.suntechdays.com.br/">Sun Tech Days</a>!<br />
Vários fatores tornam esta oitava edição do evento organizado no Brasil pela Sun Microsystem <strong>imperdível</strong>. Sem dúvida, a atração mais esperada deste ano é a participação de <a href="http://en.wikipedia.org/wiki/James_Gosling">James Gosling</a>, mais conhecido como o <strong>pai do Java</strong>!</p>
<div id="attachment_62" class="wp-caption alignleft" style="width: 160px"><a href="http://img140.imageshack.us/img140/7204/abertura.jpg" target="_blank"><img class="size-thumbnail wp-image-62" title="abertura" src="http://jus2think.wordpress.com/files/2009/11/abertura1.jpg?w=150" alt="abertura" width="150" height="112" /></a><p class="wp-caption-text">Abertura do evento no auditório principal. </p></div>
<p>Outros pontos que irão contribuir para um evento inesquecível este ano incluem as demonstrações sobre as <strong>novidades do JDK 7</strong>, a nova versão do Kit de Desenvolvimento Java, que trás inúmeros recursos novos à linguagem. Há também muita expectativa quanto as apresentações sobre desenvolvimento de RIAs (&#8220;Aplicações de Internet Rica&#8221;), tecnologia fundamental da &#8220;Web 2.0&#8243;, e que tem a plataforma <strong>JavaFX</strong> como uma ótima opção de desenvolvimento. Haverão também sessões dedicadas a desenvolvimento mobile (como aplicações para celulares) tanto na plataforma JavaME quanto na JavaFX. Teremos aindas as novidades dos Servlets 3.0, tópicos avançados sobre a Java Persistence API (JPA), apresentações dedicadas ao GlashFish e ao MySQL, e um track inteiro dedicado ao <a href="http://jus2think.wordpress.com/2009/11/06/testando-o-opensolaris-em-uma-maquina-virtual/">sistema operacional OpenSolaris</a> e várias de suas funcionalidades avançadas.<br />
O evento conta ainda com a sessão &#8220;Hands-On Lab&#8221; onde o participante leva seu notebook e põe em prática seus conhecimentos!<br />
Você pode conferir a programação na <a href="http://www.suntechdays.com.br/agenda.html">agenda disponível no site</a> do evento (note que ela ainda está incompleta e sujeita a alterações até o dia do evento).</p>
<div id="attachment_63" class="wp-caption alignleft" style="width: 160px"><a href="http://img200.imageshack.us/img200/6773/coffeebreakn.jpg" target="_blank"><img class="size-thumbnail wp-image-63" title="coffeebreak" src="http://jus2think.wordpress.com/files/2009/11/coffeebreak.jpg?w=150" alt="coffeebreak" width="150" height="112" /></a><p class="wp-caption-text">Foto do coffee-break do evento. Peguei ela no site da Sun... e eis que eu me vejo nela! (Onde está Wally?).</p></div>
<p>No ano passado o Sun Tech Days foi um sucesso de público atingindo mais de 6.000 pessoas incluíndo-se as cidades satélites do &#8220;mês do Java&#8221; e as transmissões via webcast. Apenas no local do evento foram mais de 2.000 pessoas, um público formado por executivos, desenvolvedores e estudantes, que tiveram a oportunidade única de conhecer alguns dos <strong>principais experts em tecnologias open sources do mundo</strong>. Houveram momentos de descontração como o &#8220;Show de Talentos&#8221; e os <strong>sorteios de diversos brindes</strong> como mp3 players (iPods), netbooks (Eee PCs), além de bolsas de viagens e videogames. Os horários de coffee-break serviram para a integração dos participantes: grupos se formavam ao redor dos stands dos patrocinadores e dos stands dedicados à tecnologias (como o do OpenSolaris) para conversar, se conhecer e trocarem experiências.</p>
<div id="attachment_65" class="wp-caption alignleft" style="width: 160px"><a href="http://img291.imageshack.us/img291/1240/dukeinscricao.jpg" target="_blank"><img class="size-thumbnail wp-image-65" title="duke_inscricao" src="http://jus2think.wordpress.com/files/2009/11/duke_inscricao.jpg?w=150" alt="duke_inscricao" width="150" height="112" /></a><p class="wp-caption-text">Duke: o mascote da tecnologia Java.</p></div>
<p>As palestras são de alto nível, sempre ministradas por experts mundiais no assunto, e recheadas com a distribuição de camisas do evento, bolas anti-stress, e outros brindes para a platéia.<br />
Apesar de quase todos os palestrantes utilizarem o inglês em suas apresentações, aqueles que não dominam a lingua contam com fones de tradução simultânea e não falta em nenhum momento quem traduza uma dúvida, em português, para o palestrante, fazendo com que, assim, além da apresentação aconteça também a <strong>participação</strong>.</p>
<div id="attachment_66" class="wp-caption alignleft" style="width: 122px"><a href="http://img134.imageshack.us/img134/2756/localp.jpg" target="_blank"><img class="size-thumbnail wp-image-66" title="local" src="http://jus2think.wordpress.com/files/2009/11/local.jpg?w=112" alt="local" width="112" height="150" /></a><p class="wp-caption-text">Amcham Business Center: local do evento.</p></div>
<p>Se você não quer perder um dos melhores eventos sobre tecnologias open sources do Brasil, e não quer perder a chance de participar, conhecer e interagir com vários desenvoldores e experts em tecnologias do Brasil e do mundo, confirme já sua inscrição através do site oficial: <a href="http://www.suntechdays.com.br/">http://www.suntechdays.com.br/</a> (inscrições com desconto até o dia 20/11), e faça, você também, parte deste evento!</p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Announcing the JavaFX Twitter Group]]></title>
<link>http://steveonjava.com/2009/11/07/announcing-the-javafx-twitter-group/</link>
<pubDate>Sun, 08 Nov 2009 03:42:56 +0000</pubDate>
<dc:creator>steveonjava</dc:creator>
<guid>http://steveonjava.com/2009/11/07/announcing-the-javafx-twitter-group/</guid>
<description><![CDATA[JavaFX has a very active Twitter community.  Some have even said that the best way to get help with ]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>JavaFX has a very active Twitter community.  Some have even said that the best way to get help with your JavaFX app is to ask on Twitter first.  But how do you know who to follow?</p>
<p>To make it easy to hook in to the JavaFX Twitter community, I put together a JavaFX Twitter Group using the new group support.  To subscribe, simply follow <a href="http://twitter.com/steveonjava/javafx">@steveonjava/javafx</a>:</p>
<div id="attachment_682" class="wp-caption aligncenter" style="width: 310px"><a href="http://twitter.com/steveonjava/javafx"><img class="size-full wp-image-682 " title="javafxgroup" src="http://steveonjava.wordpress.com/files/2009/11/javafxgroup.png" alt="javafxgroup" width="300" height="357" /></a><p class="wp-caption-text">The JavaFX Twitter Group Stream</p></div>
<p>So who will you find on this list?  Some big names in the JavaFX Community, including:</p>
<ul>
<li>Richard Bair, Joshua Marinacci, and Jonathan Giles from the JavaFX team</li>
<li>JavaFX book authors such as Jim Weaver, Weiqi Gao, Dean Iverson, and Simon Morris</li>
<li>JavaFX evangelists such as Maijaliisa Burkert, and Anatoli Fomenko</li>
<li>JavaFX early adopters such as Peter Pilgrim, Sten Karl, Steven Herod, Carl Dea, William Antonio, Pär Dahlberg, Mark Macumber, Tom, Enrique Garcia, Eric Wendelin, Hideki Kobayashi, and many, many others</li>
</ul>
<p>I tried my best to dig in a few levels deep on the twitter lists of folks I know are active in the JavaFX community so I would get pretty good coverage.  The basic criteria I used for selecting folks was percentage of tweets dedicated to JavaFX discussion.  Most of the folks on the list talk about JavaFX in 50% or more of their tweets, although there are a few notable exceptions (ahem..  Steven Herod).</p>
<p>Please follow the new <a href="http://twitter.com/steveonjava/javafx">JavaFX Twitter Group</a>, and if you would like to be followed by the list, tweet me a direct message <a href="http://twitter.com/steveonjava/">@steveonjava</a>.</p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Memanggil Services WebMethods Melalui JavaFX]]></title>
<link>http://belajarjavafx.wordpress.com/2009/11/05/memanggil-services-webmethods-melalui-javafx/</link>
<pubDate>Thu, 05 Nov 2009 03:51:54 +0000</pubDate>
<dc:creator>belajar-javafx</dc:creator>
<guid>http://belajarjavafx.wordpress.com/2009/11/05/memanggil-services-webmethods-melalui-javafx/</guid>
<description><![CDATA[Ini contoh sederhana bagaimana menggunakan fitur webservice pada JavaFX. Dalam hal ini memanggil ser]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>Ini contoh sederhana bagaimana menggunakan fitur webservice pada JavaFX. Dalam hal ini memanggil services webMethods yang biasa digunakan di perusahaan skala Enterprise. Komunikasi yang dilakukan menggunakan protokol SOAP-RPC, dan pada ada contoh dibawah ini hanya merubah karakter (case) dari inputan lowercase menjadi uppercase.</p>
<p>Mengenai SOAP-RPC jika ada yang belum jelas silahkan baca di <a title="SOAP" href="http://en.wikipedia.org/wiki/SOAP" target="_self">wiki</a>. Kalo tentang webMethods silahkan di gugling saja atau silahkan baca di dokumntasinya, khususnya mengenai SOAP. Tapi dalam kasus ini tidak perlu tahu banyak tentang webmethods, karena prinsipnya sama dengan webservices. Jika tidak menggunakan webMethods silahkan bisa menggunakan Axis atau server webbservices lainya, tinggal disesuiakan format envelopenya.</p>
<p>Pada kasus ini saya menggunakan webMethods sebagai server webservices nya. Dibawah ini adalah format envelope nya yang nanti akan dikirim ke engine SOAP-RPC yang ada di webMethods.<!--more--></p>
<blockquote><p>&#8216;&#60;?xml version=&#8221;1.0&#8243; encoding=&#8221;UTF-8&#8243;?&#62;&#8217;<br />
&#8216;&#60;SOAP-ENV:Envelope&#8217;<br />
&#8216; xmlns:SOAP-ENV=&#8221;http://schemas.xmlsoap.org/soap/envelope/&#8221;&#8216;<br />
&#8216; xmlns:SOAP-ENC=&#8221;http://schemas.xmlsoap.org/soap/encoding/&#8221;&#8216;<br />
&#8216; xmlns:xsi=&#8221;http://www.w3.org/2001/XMLSchema-instance&#8221;&#8216;<br />
&#8216; xmlns:xsd=&#8221;http://www.w3.org/2001/XMLSchema&#8221;&#62;&#8217;<br />
&#8216;&#60;SOAP-ENV:Body&#62;&#8217;<br />
&#8216;&#60;riset:getUp xmlns:riset=&#8221;http://www.webmethods.com/riset&#8221;&#62;&#8217;<br />
&#8216;&#60;input&#62;{masukan}&#60;/input&#62;&#8217;<br />
&#8216;&#60;/riset:getUp&#62;&#8217;<br />
&#8216;&#60;/SOAP-ENV:Body&#62;&#8217;<br />
&#8216;&#60;/SOAP-ENV:Envelope&#62;&#8217;;</p></blockquote>
<p>Dan dibawah ini adalah kode JavaFX lengkapnya, silahkan di coba.</p>
<blockquote><p>/*<br />
* Main.fx<br />
*<br />
* Created on Nov 3, 2009, 4:38:15 PM<br />
*/</p>
<p>package invokewm;</p>
<p>import javafx.stage.Stage;<br />
import javafx.scene.Scene;<br />
import javafx.scene.text.Text;<br />
import javafx.scene.text.Font;<br />
import java.io.InputStream;<br />
import java.io.OutputStream;<br />
import java.lang.Exception;<br />
import javafx.io.http.HttpHeader;<br />
import javafx.io.http.HttpRequest;<br />
import invokewm.parser.RSSPullParser;<br />
import javafx.data.pull.Event;<br />
import javafx.data.pull.PullParser;<br />
import javafx.scene.control.ProgressBar;<br />
import javafx.ext.swing.SwingTextField;<br />
import javafx.scene.control.Button;<br />
import javafx.scene.layout.VBox;<br />
import javafx.scene.layout.HBox;</p>
<p>/**<br />
* @author bhangun<br />
*/</p>
<p>//&#8211; login akses ke webmethods<br />
var httpHeader = HttpHeader.basicAuth(&#8220;username&#8221;, &#8220;password&#8221;);</p>
<p>var par:RSSPullParser;<br />
var isi:String;<br />
var progress:Integer;<br />
var masukan:String;</p>
<p>//&#8211; hardcode format amplop yg akan dikirim ke webmethods<br />
var amplop: String=bind &#8216;&#60;?xml version=&#8221;1.0&#8243; encoding=&#8221;UTF-8&#8243;?&#62;&#8217;<br />
&#8216;&#60;SOAP-ENV:Envelope&#8217;<br />
&#8216; xmlns:SOAP-ENV=&#8221;http://schemas.xmlsoap.org/soap/envelope/&#8221;&#8216;<br />
&#8216; xmlns:SOAP-ENC=&#8221;http://schemas.xmlsoap.org/soap/encoding/&#8221;&#8216;<br />
&#8216; xmlns:xsi=&#8221;http://www.w3.org/2001/XMLSchema-instance&#8221;&#8216;<br />
&#8216; xmlns:xsd=&#8221;http://www.w3.org/2001/XMLSchema&#8221;&#62;&#8217;<br />
&#8216;&#60;SOAP-ENV:Body&#62;&#8217;<br />
&#8216;&#60;riset:getUp xmlns:riset=&#8221;http://www.webmethods.com/riset&#8221;&#62;&#8217;<br />
&#8216;&#60;input&#62;{masukan}&#60;/input&#62;&#8217;<br />
&#8216;&#60;/riset:getUp&#62;&#8217;<br />
&#8216;&#60;/SOAP-ENV:Body&#62;&#8217;<br />
&#8216;&#60;/SOAP-ENV:Envelope&#62;&#8217;;</p>
<p>//&#8211; ukuran amplop yang akan dikirim<br />
def testContentSize: Integer = amplop.getBytes().length;</p>
<p>//&#8211; fungsi untuk memanggil service webmethods<br />
def panggil: HttpRequest = HttpRequest {<br />
location: &#8220;http://localhost:5555/soap/rpc&#8221;;</p>
<p>method: HttpRequest.POST;</p>
<p>headers: [<br />
HttpHeader {<br />
name: HttpHeader.CONTENT_TYPE;<br />
value: "text/xml";<br />
},<br />
HttpHeader {<br />
name: HttpHeader.CONTENT_LENGTH;<br />
value: "{testContentSize}";<br />
},<br />
HttpHeader {<br />
name: HttpHeader.AUTHORIZATION;<br />
value: "Basic";<br />
},<br />
HttpHeader {<br />
name: HttpHeader.USER_AGENT;<br />
value: "Mozilla/4.0";<br />
},<br />
httpHeader<br />
];</p>
<p>onStarted: function() {<br />
println(&#8220;onStarted &#8211; started performing method: {panggil.method} on location: {panggil.location}&#8221;);<br />
}</p>
<p>onConnecting: function() { println(&#8220;onConnecting&#8221;) }<br />
onDoneConnect: function() { println(&#8220;onDoneConnect&#8221;) }<br />
onWriting: function() { println(&#8220;onWriting&#8221;) }</p>
<p>onOutput: function(os: java.io.OutputStream) {<br />
try {<br />
println(&#8220;onOutput &#8211; about to write {testContentSize} bytes to output stream&#8221;);<br />
os.write(amplop.getBytes());<br />
} finally {<br />
println(&#8220;onOutput &#8211; about to close output stream.&#8221;);<br />
os.close();<br />
}<br />
}</p>
<p>onToWrite: function(bytes: Long) { println(&#8220;onToWrite &#8211; entire content to be written: {bytes} bytes&#8221;) }<br />
onWritten: function(bytes: Long) {</p>
<p>println(&#8220;onWritten &#8211; {bytes} bytes has now been written&#8221;)<br />
}<br />
onDoneWrite: function() { println(&#8220;doneWrite&#8221;) }<br />
onReadingHeaders: function() { println(&#8220;onReadingHeaders&#8221;) }<br />
onResponseCode: function(code:Integer) { println(&#8220;onResponseCode &#8211; responseCode: {code}&#8221;) }<br />
onResponseMessage: function(msg:String) { println(&#8220;onResponseMessage &#8211; responseMessage: {msg}&#8221;) }</p>
<p>onResponseHeaders: function(headerNames: String[]) {<br />
println(&#8220;onResponseHeaders &#8211; there are {headerNames.size()} response headers:&#8221;);<br />
for (name in headerNames) {<br />
println(&#8220;    {name}: {panggil.getResponseHeaderValue(name)}&#8221;);<br />
}<br />
}</p>
<p>onReading: function() { println(&#8220;onReading&#8221;) }</p>
<p>onToRead: function(bytes: Long) {<br />
if (bytes &#60; 0) {<br />
println(&#8220;onToRead &#8211; Content length not specified by server; bytes: {bytes}&#8221;);<br />
} else {<br />
println(&#8220;onToRead &#8211; total number of content bytes to read: {bytes}&#8221;);<br />
}<br />
}</p>
<p>onRead: function(bytes: Long) {</p>
<p>progress =panggil.toread;</p>
<p>}</p>
<p>onInput: function(is: java.io.InputStream) {<br />
try {<br />
println(&#8220;onInput &#8211; bytes of content available: {is.available()}&#8221;);<br />
def parser = PullParser {</p>
<p>input: is</p>
<p>onEvent: function(event: Event) {</p>
<p>//println(event.toString());<br />
if (event.type == PullParser.START_ELEMENT) {<br />
if(event.qname.name == &#8220;hasil&#8221; and event.level == 3) {</p>
<p>println(event.name);<br />
}<br />
}</p>
<p>if(event.type == PullParser.TEXT){<br />
if(event.qname.name == &#8220;hasil&#8221; and event.level == 3) {<br />
isi = event.text;<br />
println(event.text);<br />
}<br />
}</p>
<p>}<br />
}<br />
parser.parse();<br />
} finally {<br />
is.close();<br />
}<br />
}</p>
<p>onException: function(ex: java.lang.Exception) {<br />
println(&#8220;onException &#8211; exception: {ex.getClass()} {ex.getMessage()}&#8221;);<br />
}</p>
<p>onDoneRead: function() { println(&#8220;onDoneRead&#8221;) }<br />
onDone: function() { println(&#8220;onDone&#8221;) }<br />
};</p>
<p>var field:SwingTextField = SwingTextField {<br />
columns: 10<br />
editable: true<br />
}</p>
<p>//&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;- GUI<br />
Stage {<br />
title: &#8220;Uppercase Menggunakan Service webMethods&#8221;<br />
width: 380<br />
height: 150<br />
scene: Scene {<br />
content: [<br />
VBox {<br />
content: [<br />
HBox {<br />
content: [<br />
field,<br />
Button {<br />
text: "Kirim"<br />
action: function() {<br />
masukan=field.text;<br />
panggil.start()<br />
}<br />
}</p>
<p>]},<br />
VBox {<br />
content: [ProgressBar {<br />
progress: bind ProgressBar.computeProgress( 100, progress )<br />
},<br />
Text {<br />
font : Font {<br />
size : 20<br />
}<br />
x: 10<br />
y: 50<br />
content: bind isi;<br />
}<br />
]<br />
}<br />
]}<br />
]<br />
}<br />
}</p></blockquote>
<p>Jika berhasil di jalankan akan muncul seperti dibawah ini:</p>

<p>Untuk mencoba silahkan masukan kata-kata dalam huruf kecil (lowercase), karena nanti hasilnya dalam huruf besar (uppercase).</p>
<p>source dapat di download disini;</p>
<p>&#60;a href=&#8221;http://api.ning.com/files/Lqh-Mcf*Rx7JV7mnbsQrxd8Cmazt4ldez1y5LX24xkBIZEQUAD1tCadjVfCAFmltS2e7VDRg1QgIQPNy4*XtkYYfLr3eDwZp/InvokeWM.zip&#8221;&#62;InvokeWM.zip&#60;/a&#62;</p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Meet the New Java Store]]></title>
<link>http://steveonjava.com/2009/11/04/meet-the-new-java-store/</link>
<pubDate>Wed, 04 Nov 2009 10:29:04 +0000</pubDate>
<dc:creator>steveonjava</dc:creator>
<guid>http://steveonjava.com/2009/11/04/meet-the-new-java-store/</guid>
<description><![CDATA[The Java Store team at Sun has been busy at work on a new release of the Java Store, which is finall]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>The Java Store team at Sun has been busy at work on a new release of the Java Store, which is finally available in Beta.  The easiest way to get it is to go through the Java Warehouse to the developer preview link here:</p>
<p><a href="http://store.java.com/developerrelease">http://store.java.com/developerrelease</a></p>
<p>(If you are on Windows 7 or Vista-64, you can still run the store with no problems&#8230;  Just make sure you have a 32-bit JRE installed)</p>
<p>The latest version of the Java Store sports a new look and feel that is a dramatic improvement over the early versions.  Some of the new user interface features include:</p>
<ul>
<li>Integrated UI with Featured Apps, Top Downloads, and App Browsing all in one place</li>
<li>Free-form text search for finding new applications quickly</li>
<li>Improved navigation &#8211; New apps listed first, and navigation at all levels</li>
</ul>
<p><a href="http://steveonjava.wordpress.com/files/2009/11/javastorebeta1.png"><img class="alignnone size-full wp-image-675" title="JavaStoreBeta1" src="http://steveonjava.wordpress.com/files/2009/11/javastorebeta1.png" alt="JavaStoreBeta1" width="509" height="301" /></a></p>
<p>Perhaps the biggest change is the ability for developers to charge for applications.  This is provided via integration with PayPal, and currently available for U.S. customers.  Full details on the payment system can be found in this <a href="http://finance.yahoo.com/news/Sun-Enhances-Java-Application-bw-3386995891.html?x=0&#38;.v=1">press release</a>.</p>
<p>Of course, the best applications are available for free&#8230;  Be sure to try launching WidgetFX from the Java Store and let me know how it works!</p>
<p><a href="http://steveonjava.wordpress.com/files/2009/11/javastorebeta2.png"><img class="alignnone size-full wp-image-674" title="JavaStoreBeta2" src="http://steveonjava.wordpress.com/files/2009/11/javastorebeta2.png" alt="JavaStoreBeta2" width="509" height="301" /></a></p>
<p>Congratulations to the JavaFX team on a very nice face lift for the Java Store!</p>
<p>I know that many of the Java Store development team members read this blog, including Joshua Marinacci, so feel free to use the comments section to give them constructive feedback.</p>
<p>(Did I mention Josh has an awesome <a href="http://www.joshondesign.com/">new design blog</a>?)</p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Running Text vertikal yang dinamis]]></title>
<link>http://belajarjavafx.wordpress.com/2009/11/03/running-text-vertikal-yang-dinamis/</link>
<pubDate>Tue, 03 Nov 2009 08:38:54 +0000</pubDate>
<dc:creator>belajar-javafx</dc:creator>
<guid>http://belajarjavafx.wordpress.com/2009/11/03/running-text-vertikal-yang-dinamis/</guid>
<description><![CDATA[import javafx.scene.shape.Line; import javafx.scene.paint.Color; import javafx.stage.Stage; import j]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><blockquote><p>import  javafx.scene.shape.Line;<br />
import javafx.scene.paint.Color;<br />
import  javafx.stage.Stage;<br />
import javafx.scene.Scene;<br />
import  javafx.scene.transform.Translate;<br />
import  javafx.animation.Timeline;<br />
import javafx.animation.KeyFrame;<br />
import  javafx.scene.text.Text;<br />
import javafx.scene.text.Font;<br />
import  javafx.ext.swing.SwingTextField;<br />
/**<br />
* @author bhangun<br />
*/</p>
<p>// y variable updated periodically<br />
var y : Number = 200;</p>
<p>//  Timeline updates y variable<br />
var timeline : Timeline = Timeline {<br />
repeatCount: Timeline.INDEFINITE<br />
keyFrames :<br />
KeyFrame {<br />
time : 16ms<br />
action : function()  : Void {<br />
y -= 1;<br />
if( y == -1 ) { y  = 200 }<br />
}<br />
}<br />
};<br />
var  teksf:SwingTextField=SwingTextField {<br />
columns: 10<br />
//text: bin;<br />
editable: true<br />
};<br />
Stage {<br />
scene :  Scene {<br />
fill : Color.WHITE<br />
content : [ teksf,<br />
Text {<br />
font : Font {<br />
size: 24<br />
}<br />
transforms : [ Translate { y : bind y }]<br />
content:  bind teksf.text;<br />
x: 10<br />
}]<br />
}</p>
<p>title : &#8220;Linear&#8221;<br />
width : 200<br />
height : 232<br />
}</p>
<p>//  Start animation<br />
timeline.play();</p></blockquote>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Novo projetinho open-source]]></title>
<link>http://germanofronza.wordpress.com/2009/11/02/novo-projetinho-open-source/</link>
<pubDate>Mon, 02 Nov 2009 16:18:15 +0000</pubDate>
<dc:creator>germanofronza</dc:creator>
<guid>http://germanofronza.wordpress.com/2009/11/02/novo-projetinho-open-source/</guid>
<description><![CDATA[Acabo de realizar os primeiros commits no meu novo projeto open-source, chamado Baradur (link aqui).]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>Acabo de realizar os primeiros commits no meu novo projeto open-source, chamado Baradur (link <a href="http://github.com/gfronza/Baradur">aqui</a>). O projeto consiste em um visualizador de grafo de cena para aplicações JavaFX (versão 1.2.1 que é a mais recente no momento em que escrevo este post). O Objetivo a ferramenta é fazer com que o desenvolvedor JavaFX possa visualizar, em tempo de execução, a estrutura do grafo de cena da sua aplicação. Com a ferramenta também é possível exibir na própria cena, a bounding box de cada nodo. Isso pode ser bastante útil quando existem nós opacos na cena. Outra caracteristica bacana da ferramenta é que pode-se visualizar também todo o estado do nodo selecionado na TreeView do grafo de cena. Futuramente pretendo possibilitar ao usuário que altere o valor dos atributos do nó selecionado, porém atualmente os valores são apenas exibidos ao usuário.</p>
<p>Espero que gostem do projeto. Abraços</p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Apresentações sobre JavaFX]]></title>
<link>http://williamantonio.wordpress.com/2009/11/02/apresentacoes-sobre-javafx/</link>
<pubDate>Mon, 02 Nov 2009 12:52:41 +0000</pubDate>
<dc:creator>William Antônio  Siqueira</dc:creator>
<guid>http://williamantonio.wordpress.com/2009/11/02/apresentacoes-sobre-javafx/</guid>
<description><![CDATA[Duas apresentações sobre JavaFX. A primeira é de Steven Herod, é mais voltada para quem já conhece J]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>Duas apresentações sobre JavaFX.<br />
A primeira é de Steven Herod, é mais voltada para quem já conhece Java e quer saber um pouco de JavaFX:</p>
<div style="width:425px;text-align:left;" id="__ss_2168867"><a style="font:14px Helvetica,Arial,Sans-serif;display:block;text-decoration:underline;margin:12px 0 3px;" href="http://www.slideshare.net/sherod/javafx-presentation-for-sjug" title="JavaFX Presentation For SJUG">JavaFX Presentation For SJUG</a>
<div style="font-size:11px;font-family:tahoma,arial;height:26px;padding-top:2px;">View more <a style="text-decoration:underline;" href="http://www.slideshare.net/">documents</a> from <a style="text-decoration:underline;" href="http://www.slideshare.net/sherod">Steven Herod</a>.</div>
</div>
<p>A segunda é de Raphael Marques, você pode acessar através do <a href="http://javafree.uol.com.br/noticia/4131/Minicurso-de-JavaFX-na-UFPB.html">JavaFree</a>.</p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Five Prayer Time]]></title>
<link>http://jampasir.wordpress.com/2009/11/01/five-prayer-time/</link>
<pubDate>Sat, 31 Oct 2009 23:07:25 +0000</pubDate>
<dc:creator>Muhammad Hakim</dc:creator>
<guid>http://jampasir.wordpress.com/2009/11/01/five-prayer-time/</guid>
<description><![CDATA[this application show current time &amp; five prayer time for muslim specific for my current city (B]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p><img class="alignnone size-full wp-image-975" title="five-prayer-times" src="http://jfxstudio.wordpress.com/files/2009/10/five-prayer-times2.png" alt="five-prayer-times" width="480" height="365" /></p>
<p>this application show current time &#38; <a href="http://en.wikipedia.org/wiki/Salah">five prayer time for muslim</a> specific for my current city (Bandung, latitude:6.54 &#38; longitude: 107.36), with <a href="http://blog.pixelbreaker.com/polarclock/">polar clock</a> as visualization.</p>
<p>to compute prayer time, i use algorithm that described in this site <a href="http://tanzil.info/praytime/doc/calculation/">http://tanzil.info/praytime/doc/calculation/</a>.</p>
<p>source code:<br />
<!--more--></p>
<pre class="brush: java;">
import javafx.scene.shape.*;
import javafx.animation.*;
import java.util.*;
import javafx.scene.shape.*;
import javafx.scene.paint.Color;
import javafx.util.Math;

import javafx.scene.CustomNode;

import javafx.scene.Group;
import javafx.scene.Scene;
import javafx.stage.Stage;

import javafx.date.DateTime;
import javafx.scene.control.Label;
import javafx.scene.image.ImageView;
import javafx.scene.image.Image;

import java.text.SimpleDateFormat;
/**
 * @author Muhammad Hakim A
 */

var hours;
var minutes;
var seconds;
var date;
var day;
var month;
var year;
var cal;
var time = Timeline {
    repeatCount: Timeline.INDEFINITE
    keyFrames: [
        KeyFrame {
            time: 100ms
            action:function(){
                    cal = createCalendar();
                    seconds = (cal.get(Calendar.SECOND) + (cal.get(Calendar.MILLISECOND) as Float)/1000)/60;
                    minutes = (cal.get(Calendar.MINUTE) + seconds)/60;
                    hours = (cal.get(Calendar.HOUR) + minutes)/12;
                   }
        }
    ]
}

var sdf = new SimpleDateFormat(&#34;yyyy-MM-dd HH:mm:ss&#34;);
var today:String = &#34;{sdf.format(Calendar.getInstance().getTime())}&#34;;
function createCalendar() {
    var date = new Date();
    def calendar = Calendar.getInstance();
    calendar.setTime(new Date());

    calendar
}

// class polarclock
class PolarClock extends CustomNode{
        public var cX=10;
        public var cY=10;
        public var strokeWidth = 5;
        public var radius=50;
        public var secLength= 180;
        public var minLength= 90;
        public var hourLength= 30;
        public var text = &#34;&#34;;

        override function create(){
            return Group{
                    opacity: 0.85
                    content:[
                            Arc {// second
                                centerX: cX, centerY: cY
                                radiusX: radius, radiusY: radius
                                startAngle: 90, length:bind -secLength+strokeWidth*360.0/(4*Math.PI*radius)
                                stroke: Color.GREEN
                                fill: null
                                strokeWidth: strokeWidth
                            }
                            Arc {// minute
                                centerX: cX, centerY: cY
                                radiusX: radius-17, radiusY: radius -17
                                startAngle: 90, length:bind -minLength+strokeWidth*360.0/(4*Math.PI*radius)
                                stroke: Color.RED
                                fill: null
                                strokeWidth: strokeWidth
                            }
                            Arc {// hour
                                centerX: cX, centerY: cY
                                radiusX: radius-34, radiusY: radius-34
                                startAngle: 90, length:bind -hourLength+strokeWidth*360.0/(4*Math.PI*radius)
                                stroke: Color.BLUE
                                fill: null
                                strokeWidth: strokeWidth
                            }
                            Label {
                                    translateY : cY+radius + 10
                                    translateX : cX - radius/2;
                                    text: text
                                    textFill: Color.GOLD
                            }
                    ];
            };
        }
}

// prayer time calculator
def JD1970 = 2440587.5;
def d2r = Math.PI/180;
def r2d = 57.2957795;
var dt:DateTime = DateTime{};
var jd = JD1970 + Math.floor((dt.instant + 0.5)/(1000 * 60 * 60* 24));
var D = jd - 2451545.0;  // jd is the given Julian date

var g = 357.529 + 0.98560028* D;
var q = 280.459 + 0.98564736* D;
var L = q + 1.915* sin(g) + 0.020*sin(2*g);

var R = 1.00014 - 0.01671*cos(g) - (1.4e-4)*cos(2*g);
var e = 23.439 - (3.6e-7)* D;
var RA = atan2(cos(e)*sin(L),cos(L))/15;

var d = asin(sin(e)*sin(L));  // declination of the Sun
var EqT = q/15 - RA;  // equation of time

// Bandung info
def TZ = 7;
def lat = 6.54;
def lng = 107.36;

var dzuhr = fixhour(12 + TZ - lng/15 - EqT);
var fajr = dzuhr - T(18);
var fajrh = [to12h(Math.floor(fajr)),to60((fajr - Math.floor(fajr))*60)];
var isya = dzuhr + T(17);
var ashr = dzuhr + 1.0/15*acos((sin(acotan(1.0+tan(lat-d)))
                    -(sin(lat)*sin(d)))/(cos(lat)*cos(d)));
var maghrib = dzuhr + T(0.8333);

function T(a:Double) {
return (1.0/15)*acos(-sin(a)-sin(lat)*sin(d)/cos(lat)*cos(d)) }
function fixhour(a:Float)
{
    var b = a - 24.0 * (Math.floor(a / 24.0));
    if (b &#60; 0) b= b + 24.0;
    return b;
}

function to12h (h:Integer) { if (h&#62;12) h-12 else h }
function to60(m:Integer) { if(m&#62;60) m-60 else m }
function sin (a:Double) { Math.sin(a*d2r)}
function cos (a:Double) { Math.cos(a*d2r)}
function tan (a:Double) { Math.tan(a*d2r)}
function acotan (a:Double){ Math.atan(1.0/a)*r2d }
function acos(a:Double) { Math.acos(a)*r2d}
function asin(a:Double) { Math.asin(a)*r2d}
function atan(a:Double) { Math.atan(a)*r2d}
function atan2 (y:Double,x:Double) { Math.atan2(y, x)*r2d }

public function run () {
    time.play();
    println(&#34;{today}&#34;);
    var scene:Scene = Scene {
        width: 500
        height: 500
        fill: Color.BLACK
        content: [
               ImageView {
                        image: Image {
                                url: &#34;{__DIR__}Masjid.png&#34;
                        }
                }

               PolarClock{
                    radius:120
                    cX: 150
                    cY: 160
                    strokeWidth:15
                    secLength:bind 360*seconds
                    minLength: bind 360*minutes
                    hourLength:bind 360*hours
                    text: bind &#34;today: {today}&#34;
                  }
                  //fajr
                 PolarClock{
                    radius:50
                    cX: 340
                    cY: 60
                    strokeWidth:11
                    secLength: 360
                    minLength: fajrh[1]*6
                    hourLength: fajrh[0]*30
                    text: &#34;Fajr: {fajrh[0]}:{fajrh[1]} am&#34;
                  }
                  //dzuhr
                 PolarClock{
                    radius:50
                    cX: 340
                    cY: 200
                    strokeWidth:11
                    secLength: 360
                    minLength: to60((dzuhr - Math.floor(dzuhr))*60)*6
                    hourLength: to12h(Math.floor(dzuhr))*30
                    text: &#34;Dzuhr&#34;
                  }
                  //ashr
                 PolarClock{
                    radius:70
                    cX: 340
                    cY: 360
                    strokeWidth:11
                    secLength: 300
                    minLength: to60((ashr - Math.floor(ashr))*60)*6
                    hourLength: to12h(Math.floor(ashr))*30
                    text: &#34;Ashr&#34;
                  }
                  //maghrb
                 PolarClock{
                    radius:50
                    cX: 190
                    cY: 400
                    strokeWidth:11
                    secLength: 350
                    minLength: to60((maghrib - Math.floor(maghrib))*60)*6
                    hourLength: to12h(Math.floor(maghrib))*30
                    text: &#34;Maghrib&#34;
                  }
                  //isya
                 PolarClock{
                    radius:50
                    cX: 70
                    cY: 400
                    strokeWidth:11
                    secLength: 360
                    minLength: to60((isya - Math.floor(isya))*60)*6
                    hourLength: to12h(Math.floor(isya))*30
                    text: &#34;Isya&#34;
                  }]
        }

    def stage:Stage = Stage {
        title: &#34;Five Prayer Time&#34;
        scene: scene
    }
    stage.visible = true;
}
</pre>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[First SvJugFx Meetup - JavaFX with Richard Bair]]></title>
<link>http://steveonjava.com/2009/10/28/first-svjugfx-meetup-javafx-with-richard-bair/</link>
<pubDate>Wed, 28 Oct 2009 21:20:34 +0000</pubDate>
<dc:creator>steveonjava</dc:creator>
<guid>http://steveonjava.com/2009/10/28/first-svjugfx-meetup-javafx-with-richard-bair/</guid>
<description><![CDATA[I am pleased to announce the formation of a new Silicon Valley JavaFX User Group.  While this group ]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>I am pleased to announce the formation of a new Silicon Valley JavaFX User Group.  While this group is rooted in the SF Bay Area, we also plan to make it easy for remote attendees to watch and participate by doing live streaming of our meetings via USTREAM and allowing remote participation through Google Moderator.</p>
<p><a href="http://www.svjugfx.org/calendar/11620691/?eventId=11620691&#38;action=detail"><img class="alignright size-full wp-image-665" title="richBair" src="http://steveonjava.wordpress.com/files/2009/10/richbair.gif" alt="richBair" width="100" height="110" /></a>For the <a href="http://www.svjugfx.org/calendar/11620691/?eventId=11620691&#38;action=detail">initial launch meeting</a> on December 9th we are fortunate to have Richard Bair as the presenter.  For those of you who don&#8217;t know him, he is a JavaFX lead developer, JavaOne Rockstar Speaker, has an <a href="http://fxexperience.com/">awesome blog</a>, and will be talking about JavaFX at <a href="http://devoxx.com/display/DV09/Home">Devoxx</a> (where I am also presenting).  He is also a great sparring partner on almost any technical topic (speaking from experience), so Q&#38;A should be lots of fun!</p>
<p>The <a href="http://www.svjugfx.org/">SvJugFx Homepage</a> is on Meetup.com where you can sign up to become a member and register for the December 9th session with Richard:</p>
<p style="text-align:center;"><a href="http://www.svjugfx.org/"><img class="aligncenter size-full wp-image-664" title="svjugfx" src="http://steveonjava.wordpress.com/files/2009/10/svjugfx.jpg" alt="svjugfx" width="200" height="181" /></a></p>
<p>This is the first JavaFX User Group in the U.S. to my knowledge.  Although Japan has the title of world&#8217;s first JavaFX User Group as reported on <a href="http://learnjavafx.typepad.com/weblog/javafx-user-groups/">Jim Weaver&#8217;s blog</a>.</p>
<p style="text-align:center;"><a href="http://javafx.jp/"><img class="aligncenter size-full wp-image-663" title="javafxUsersGroup" src="http://steveonjava.wordpress.com/files/2009/10/javafxusersgroup.png" alt="javafxUsersGroup" width="509" height="102" /></a></p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[10/31: Mobile App Conference in Bangalore]]></title>
<link>http://terrencebarr.wordpress.com/2009/10/28/1031-mobile-app-conference-in-bangalore/</link>
<pubDate>Wed, 28 Oct 2009 10:26:10 +0000</pubDate>
<dc:creator>terrencebarr</dc:creator>
<guid>http://terrencebarr.wordpress.com/2009/10/28/1031-mobile-app-conference-in-bangalore/</guid>
<description><![CDATA[This weekend SiliconIndia brings the Mobile Application Conference India to Bangalore. Sun is a conf]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p><a href="http://www.siliconindia.com/mobileconference/" target="_blank"><img src="http://terrencebarr.files.wordpress.com/2009/10/siliconindia.png?w=400&#038;h=69" width="400" height="69" alt="siliconindia.png" /></a></p>
<p>This weekend <a href="http://www.siliconindia.com/" target="_blank">SiliconIndia</a> brings the <a href="http://www.siliconindia.com/mobileconference/" target="_blank">Mobile Application Conference India</a> to Bangalore. Sun is a conference sponsor and we are preparing a bunch of content and information around Sun&#8217;s technologies and programs such as the JavaFX Partner Program, the Java ME SDK 3.0, latest JavaFX applications and tools, and the Java Store.</p>
<p>The Sun India team would love to see you there!</p>
<p>Cheers,</p>
<p>&#8211; Terrence</p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Palestra: Aplicações desktop (GUI) e aplicações ricas para internet (RIA)]]></title>
<link>http://raphaelmarques.wordpress.com/2009/10/25/palestra-aplicacoes-desktop-gui-e-aplicacoes-ricas-para-internet-ria/</link>
<pubDate>Sun, 25 Oct 2009 20:45:41 +0000</pubDate>
<dc:creator>Raphael Marques</dc:creator>
<guid>http://raphaelmarques.wordpress.com/2009/10/25/palestra-aplicacoes-desktop-gui-e-aplicacoes-ricas-para-internet-ria/</guid>
<description><![CDATA[Ai vão os slides apresentados no 1º dia do evento &#8220;Java versus .NET&#8221; (http://www.javaver]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>Ai vão os slides apresentados no 1º dia do evento &#8220;Java versus .NET&#8221; (<a href="http://www.javaversusdotnet.com.br/">http://www.javaversusdotnet.com.br/</a>) que ocorreu em Brasilia esse sabado. O pessoal pareceu empolgado com JavaFX =D</p>
<p><!-- SlideShare error: doc is missing or has illegal characters /[^-_a-zA-Z0-9]/ --></p>
<p>O evento foi muito legal, aprendi muito! Muito bem organizado pelo Rogério Moraes (<a href="http://rogeriomoraescarvalho.spaces.live.com/">http://rogeriomoraescarvalho.spaces.live.com/</a>) (obrigado pelo convite).</p>
<p>\o/</p>
</div>]]></content:encoded>
</item>

</channel>
</rss>
