<?xml version="1.0"?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>Planet NetBeans</title>
    <link>http://www.planetnetbeans.org/</link>
    <language>en</language>
    <description>Planet NetBeans - http://www.planetnetbeans.org/</description>
    <item>
      <title>Geertjan's Blog: Syntax Coloring for FreeMarker</title>
      <guid isPermaLink="false">https://blogs.oracle.com/geertjan/entry/syntax_coloring_for_freemarker</guid>
      <link>https://blogs.oracle.com/geertjan/entry/syntax_coloring_for_freemarker</link>
      <description>&lt;p&gt;Without fail, each JavaCC file (and ANTLR file) I have ever found (e.g., for &lt;a href="https://blogs.oracle.com/geertjan/entry/syntax_coloring_for_clojure"&gt;Clojure&lt;/a&gt; and &lt;a href="https://blogs.oracle.com/geertjan/entry/syntax_coloring_for_ceylon"&gt;Ceylon&lt;/a&gt;) has been beaten into submission via this tutorial, which includes a YouTube movie explaining everything:&lt;/p&gt; &lt;p&gt;&lt;a
      href="http://platform.netbeans.org/tutorials/nbm-javacc-lexer.html"&gt;http://platform.netbeans.org/tutorials/nbm-javacc-lexer.html&lt;/a&gt;&lt;/p&gt; &lt;p&gt;Here's FreeMarker in NetBeans IDE, after applying the above tutorial to this file, which I found on-line after googling for about 5 minutes:&lt;/p&gt; &lt;p&gt;&lt;a href="https://raw.github.com/freemarker/freemarker/master/src/main/javacc/FTL.jj"&gt;https://raw.github.com/freemarker/freemarker/master/src/main/javacc/FTL.jj&lt;/a&gt;&lt;br
      /&gt;&lt;/p&gt; &lt;p&gt;&lt;img src="https://blogs.oracle.com/geertjan_images/resource/early-freemarker-72-5.png" /&gt; &lt;/p&gt; &lt;p&gt;Not as pretty nor as complete as it could be, but I've clearly gone some way to getting things to work together. &lt;/p&gt; &lt;p&gt;However, note that in line 6 and 7, I have selected the "p" tag across two lines, meaning that I can change related text across multiple lines, because the block selection feature is a standard part of all editors, including any
      new editor you create, such as the FreeMarker editor above.&lt;br /&gt;&lt;/p&gt;</description>
      <pubDate>Wed, 16 May 2012 23:42:20 +0000</pubDate>
    </item>
    <item>
      <title>NetBeans DZone: NetBeans Weekly News (Issue #537 - May 16, 2012)</title>
      <guid isPermaLink="false">http://netbeans.dzone.com/109993 at http://netbeans.dzone.com</guid>
      <link>http://feeds.dzone.com/~r/zones/netbeans/~3/so_f2cGx8lU/netbeans-weekly-news-issue-537</link>
      <description>Project News Summer Internship for NetBeans Development A summer internship for NetBeans projects is being set up by NetBeans Dream Team member Emilian Bold's company. Read all about it here and gain some NetBeans API experience this summer!&lt;img src="http://feeds.feedburner.com/~r/zones/netbeans/~4/so_f2cGx8lU" height="1" width="1" /&gt;</description>
      <pubDate>Wed, 16 May 2012 12:34:32 +0000</pubDate>
    </item>
    <item>
      <title>open source. open mind.: Free Workshop: Extending VisualVM BYOL</title>
      <guid isPermaLink="false">http://3.171</guid>
      <link>http://88.198.17.44/java-performance-tuning-training/free-workshop-extending-visualvm-byol/</link>
      <description>&lt;p&gt;&lt;strong&gt;&lt;img src="http://asset-3.java.net/attachments/images/project/visualvm.png?20120430.2938d5f" alt="" height="150" class="alignleft" width="150" /&gt;VisualVM&lt;/strong&gt; is great for monitoring and profiling your application, and it has been created with extension points that you can use to add more functionality. Under the hood VisualVM uses the NetBeans Platform. In this workshop we’ll have a look at VisualVM and how to extend it with additional
      functionality.&lt;/p&gt; &lt;p&gt;Location: Eppleton IT Consulting, Bergmannstr. 66, 80339 Munich&lt;/p&gt; &lt;p&gt;Time: 23 May 2012, 18:30-21:00&lt;/p&gt; &lt;p&gt;This workshop is&lt;strong&gt; free for Java User Group members&lt;/strong&gt;.&lt;/p&gt; &lt;p&gt;Bring your own Laptop (BYOL) with NetBeans 7.1.2 and JDK 7 preinstalled.&lt;/p&gt; &lt;p&gt;Update: No more seats available, due to many requests we’ll repeat the workshop in June or July (drop us a mail to
      register).&lt;/p&gt;</description>
      <pubDate>Wed, 16 May 2012 05:35:33 +0000</pubDate>
    </item>
    <item>
      <title>NetBeans DZone: Specifying Appropriate NetBeans JDK Source Release</title>
      <guid isPermaLink="false">http://netbeans.dzone.com/109573 at http://netbeans.dzone.com</guid>
      <link>http://feeds.dzone.com/~r/zones/netbeans/~3/3X0W32uyiww/specifying-appropriate</link>
      <description>NetBeans uses its projects' settings for javac.source (and javac.target) in more ways than simply enforcing javac's use of the -source and -target. Preview Text:&#160; NetBeans uses its projects' settings for javac.source (and javac.target) in more ways than simply enforcing javac's use of the -source and -target. In this post, I look at some...&lt;img src="http://feeds.feedburner.com/~r/zones/netbeans/~4/3X0W32uyiww" height="1" width="1" /&gt;</description>
      <pubDate>Wed, 16 May 2012 04:44:26 +0000</pubDate>
    </item>
    <item>
      <title>Adam Bien: Java EE and How to Specify The Unconventional With Convention Over Configuration [Free Article]</title>
      <guid isPermaLink="false">http://www.adam-bien.com/roller/abien/entry/java_ee_and_how_to</guid>
      <link>http://www.adam-bien.com/roller/abien/entry/java_ee_and_how_to</link>
      <description>The free (registration is required) Java Magazine article &lt;a href="http://www.oraclejavamagazine-digital.com/javamagazine/20120506?sub_id=nFh4uHOwWPeu#pg60" target="_blank"&gt;Convention Over Configuration in Java EE 6&lt;/a&gt; focuses on the implementation of project and stage dependent configuration with JSF, EJB, JMX, JAX-RS and CDI. &lt;p&gt;Executable Maven 3 project is included and &lt;a href="http://kenai.com/projects/javaee-patterns/sources/hg/show/ConfiguringJavaEE?rev=338"
      target="_blank"&gt;checked-in&lt;/a&gt;. Feedback is, as always, highly appreciated!&lt;/p&gt; &lt;br /&gt; &lt;a href="http://workshops.adam-bien.com/real-world-javaee-bootstrap.htm"&gt;Real World Java EE Bootstrap &lt;/a&gt; and &lt;a href="http://workshops.adam-bien.com/effective-javaee.htm"&gt;Effective Java EE Bootstrap&lt;/a&gt; Workshops [Airport Munich] &lt;a href="http://press.adam-bien.com" target="_self"&gt;Books: Real World Java EE Night Hacks - Dissecting Best Practices ...and the
      bestseller Real World Java EE - Rethinking Best Practices&lt;/a&gt; &lt;p&gt;&lt;/p&gt;</description>
      <pubDate>Wed, 16 May 2012 04:39:30 +0000</pubDate>
    </item>
    <item>
      <title>Geertjan's Blog: Gaea+</title>
      <guid isPermaLink="false">https://blogs.oracle.com/geertjan/entry/gaea</guid>
      <link>https://blogs.oracle.com/geertjan/entry/gaea</link>
      <description>&lt;p&gt;&lt;a href="http://www.gaeaplus.si/sl"&gt;Gaea+&lt;/a&gt; is a powerful geospatial application offering stunning 3D visualization, manipulation and analysis of spatial data. The data is pulled from the web using standard Open Geospatial Consortium protocols. &lt;/p&gt; &lt;p&gt;The terrain visualization is based on the NASA WorldWind Java SDK, while the user interface was first created in plain Swing, and then ported to the NetBeans Platform in 2009:&lt;br /&gt;&lt;/p&gt;
      &lt;p&gt;&lt;a href="https://blogs.oracle.com/geertjan_images/resource/gaeaplus.gif"&gt;&lt;img src="https://blogs.oracle.com/geertjan_images/resource/gaeaplus_small.png" /&gt;&lt;/a&gt; &lt;/p&gt; &lt;p&gt;Gaea+ is being used by the Association of Municipalities and Towns of Slovenia for public display of urban plans, by the members of the Alpine Association of Slovenia to plan hiking trips, by the Slovene Administration for Civil Protection and Disaster Relief to visualize disasters and plan rescue
      actions, among others.&lt;/p&gt;</description>
      <pubDate>Tue, 15 May 2012 19:42:33 +0000</pubDate>
    </item>
    <item>
      <title>Arun Gupta, Miles to go ...: JSON-P: Java API for JSON Processing (TOTD #178)</title>
      <guid isPermaLink="false">https://blogs.oracle.com/arungupta/entry/json_p_java_api_for</guid>
      <link>https://blogs.oracle.com/arungupta/entry/json_p_java_api_for</link>
      <description>&lt;br /&gt; &lt;a href="http://jcp.org/en/jsr/detail?id=353"&gt;JSR 353&lt;/a&gt; is Java API for JSON Processing (JSON-P) and will define an API to process (e.g. parse, generate, transform, and query) JSON. This JSR will be delivered as part of Java EE 7. The API will allow to produce and consume JSON in a streaming fashion (StAX equivalent in XML world) and build a Java object model for JSON (DOM equivalent in XML world). Note, binding JSON to Java objects and vice versa is not part
      of the scope of this JSR.&lt;br /&gt; &lt;br /&gt; &lt;a href="http://json-processing-spec.java.net"&gt;json-processing-spec.java.net&lt;/a&gt; is where all the specification work is happening and &lt;a href="http://jsonp.java.net"&gt;jsonp.java.net&lt;/a&gt; is the project for the&#160; Reference Implementation. Its still early days but this &lt;span style="font-weight: bold;"&gt;T&lt;/span&gt;ip &lt;span style="font-weight: bold;"&gt;O&lt;/span&gt;f &lt;span style="font-weight:
      bold;"&gt;T&lt;/span&gt;he &lt;span style="font-weight: bold;"&gt;D&lt;/span&gt;ay (TOTD) will explain how to get started. The workspace can be checked out as&lt;br /&gt; &lt;br /&gt; &lt;pre&gt;&lt;span style="font-weight: bold;"&gt;git clone git://java.net/jsonp~git&lt;/span&gt;&lt;br /&gt;Cloning into jsonp~git...&lt;br /&gt;remote: Counting objects: 313, done.&lt;br /&gt;remote: Compressing objects: 100% (218/218), done.&lt;br /&gt;remote: Total 313 (delta 110), reused 0 (delta 0)&lt;br
      /&gt;Receiving objects: 100% (313/313), 64.13 KiB, done.&lt;br /&gt;Resolving deltas: 100% (110/110), done.&lt;br /&gt;&lt;/pre&gt; &lt;br /&gt; Building the workspace require JAVA_HOME to be set (&lt;code&gt;/Library/Java/JavaVirtualMachines/1.7.0.jdk/Contents/Home&lt;/code&gt; or &lt;code&gt;/System/Library/Frameworks/JavaVM.framework/Versions/1.6/Home&lt;/code&gt;). Once set, the workspace can be built as&lt;br /&gt; &lt;pre&gt;&lt;span style="font-weight: bold;"&gt;mvn install&lt;/span&gt;&lt;br
      /&gt;[INFO] Scanning for projects...&lt;br /&gt;[INFO] ------------------------------------------------------------------------&lt;br /&gt;[INFO] Reactor Build Order:&lt;br /&gt;[INFO] &lt;br /&gt;[INFO] RI for JSON-P JSR&lt;br /&gt;[INFO] Java API for Processing JSON (JSON-P)&lt;br /&gt;[INFO] jsonp-tests&lt;br /&gt;[INFO] &lt;br /&gt;[INFO] ------------------------------------------------------------------------&lt;br /&gt;[INFO] Building RI for JSON-P JSR 1.0-SNAPSHOT&lt;br /&gt;[INFO]
      ------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;. . .&lt;br /&gt;&lt;br /&gt;Tests run: 22, Failures: 0, Errors: 0, Skipped: 0&lt;br /&gt;&lt;br /&gt;[INFO] &lt;br /&gt;[INFO] --- maven-jar-plugin:2.3.1:jar (default-jar) @ jsonp-tests ---&lt;br /&gt;[WARNING] JAR will be empty - no content was marked for inclusion!&lt;br /&gt;[INFO] Building jar: /Users/arungup/code/workspaces/jsonp~git/tests/target/jsonp-tests-1.0-SNAPSHOT.jar&lt;br /&gt;[INFO] &lt;br
      /&gt;[INFO] --- maven-install-plugin:2.3.1:install (default-install) @ jsonp-tests ---&lt;br /&gt;[INFO] Installing /Users/arungup/code/workspaces/jsonp~git/tests/target/jsonp-tests-1.0-SNAPSHOT.jar to /Users/arungup/.m2/repository/org/glassfish/jsonp-tests/1.0-SNAPSHOT/jsonp-tests-1.0-SNAPSHOT.jar&lt;br /&gt;[INFO] Installing /Users/arungup/code/workspaces/jsonp~git/tests/pom.xml to /Users/arungup/.m2/repository/org/glassfish/jsonp-tests/1.0-SNAPSHOT/jsonp-tests-1.0-SNAPSHOT.pom&lt;br /&gt;[INFO]
      ------------------------------------------------------------------------&lt;br /&gt;[INFO] Reactor Summary:&lt;br /&gt;[INFO] &lt;br /&gt;[INFO] RI for JSON-P JSR ................................. SUCCESS [0.528s]&lt;br /&gt;[INFO] Java API for Processing JSON (JSON-P) ............. SUCCESS [12.214s]&lt;br /&gt;[INFO] jsonp-tests ....................................... SUCCESS [1.695s]&lt;br /&gt;[INFO] ------------------------------------------------------------------------&lt;br /&gt;[INFO] BUILD
      SUCCESS&lt;br /&gt;[INFO] ------------------------------------------------------------------------&lt;br /&gt;&lt;/pre&gt; &lt;br /&gt; The API .jar file is in &lt;code&gt;api/target/jsonp-ri-1.0-SNAPSHOT.jar&lt;/code&gt; and javadocs are in &lt;code&gt;api/target/jsonp-ri-1.0-SNAPSHOT-javadoc.jar&lt;/code&gt;. There are several tests in the &lt;code&gt;tests&lt;/code&gt; directory that shows the API usage. The RI JARs are not pushed to a public maven repo yet but are installed in the local repo with
      the above command. These can be included in your "pom.xml" with the following coordinates:&lt;br /&gt; &lt;br /&gt; &lt;pre&gt;&amp;lt;dependency&gt;&lt;br /&gt; &amp;lt;groupId&gt;javax.json&amp;lt;/groupId&gt;&lt;br /&gt; &amp;lt;artifactId&gt;jsonp-ri&amp;lt;/artifactId&gt;&lt;br /&gt; &amp;lt;version&gt;1.0-SNAPSHOT&amp;lt;/version&gt;&lt;br /&gt;&amp;lt;/dependency&gt;&lt;br /&gt;&lt;/pre&gt; &lt;br /&gt; The key APIs are&lt;br /&gt; &lt;ul&gt; &lt;li&gt;DOM-based APIs (javax.json package)&lt;br
      /&gt; &lt;/li&gt; &lt;ul&gt; &lt;li&gt;JsonBuilder - Builds a JSON object or JSON array&lt;/li&gt; &lt;li&gt;JsonReader - Reads a JSON object or array from the stream&lt;/li&gt; &lt;li&gt;JsonWriter - Writes a JSON object or array to the stream&lt;/li&gt; &lt;/ul&gt; &lt;li&gt;Streaming APIs (javax.json.stream package)&lt;br /&gt; &lt;/li&gt; &lt;ul&gt; &lt;li&gt;JsonGenerator - Streaming JSON generator&lt;br /&gt; &lt;/li&gt; &lt;li&gt;JsonParser - Allows forward, read-only access to JSON&lt;br
      /&gt; &lt;/li&gt; &lt;/ul&gt; &lt;/ul&gt; &lt;br /&gt; Here is an sample usage of JsonBuilder:&lt;br /&gt; &lt;code&gt;JsonObject value = new JsonBuilder() &lt;br /&gt; &#160;&#160; .beginObject() &lt;br /&gt; &#160;&#160;&#160;&#160; .add("firstName", "John") &lt;br /&gt; &#160;&#160;&#160;&#160; .add("lastName", "Smith") &lt;br /&gt; &#160;&#160;&#160;&#160; .add("age", 25) &lt;br /&gt; &#160;&#160;&#160;&#160;&#160;&#160;&#160; .beginObject("address") &lt;br /&gt;
      &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; .add("streetAddress", "21 2nd Street") &lt;br /&gt; &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; .add("city", "New York") &lt;br /&gt; &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; .add("state", "NY") &lt;br /&gt; &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; .add("postalCode", "10021") &lt;br /&gt; &#160;&#160;&#160;&#160;&#160;&#160;&#160; .endObject() &lt;br /&gt;
      &#160;&#160;&#160;&#160;&#160;&#160;&#160; .beginArray("phoneNumber") &lt;br /&gt; &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; .beginObject() &lt;br /&gt; &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; .add("type", "home") &lt;br /&gt; &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; .add("number", "212 555-1234") &lt;br /&gt; &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; .endObject() &lt;br /&gt;
      &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; .beginObject() &lt;br /&gt; &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; .add("type", "home") &lt;br /&gt; &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; .add("number", "646 555-4567") &lt;br /&gt; &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; .endObject() &lt;br /&gt; &#160;&#160;&#160;&#160;&#160;&#160;&#160; .endArray() &lt;br /&gt; &#160;&#160; .endObject()
      &lt;br /&gt; .build();&lt;/code&gt; &lt;br /&gt; Here is a sample usage of JsonReader:&lt;br /&gt; &lt;br /&gt; &lt;pre&gt;String json = "...";&lt;br /&gt;JsonReader reader = new JsonReader(new StringReader(json));&lt;br /&gt;JsonValue value = reader.readObject();&lt;br /&gt;reader.close();&lt;br /&gt;&lt;/pre&gt; &lt;br /&gt; A sample usage of JsonWriter:&lt;br class="Apple-interchange-newline" /&gt; &lt;pre&gt;&lt;code&gt; JsonWriter jsonWriter = new JsonWriter(new FileWriter(...));&lt;br
      /&gt;&lt;/code&gt;&lt;code&gt;JsonObject jsonObject = new JsonBuilder()&lt;br /&gt; .beginObject()&lt;br /&gt; . . .&lt;br /&gt; .endObject()&lt;br /&gt; .build()&lt;/code&gt;; &lt;code&gt;jsonWriter.writeObject(jsonObject); jsonWriter.close();&lt;/code&gt;&lt;/pre&gt; Here is a sample usage of JsonGenerator:&lt;br /&gt; &lt;br /&gt; &lt;pre&gt;JsonGenerator generator = new JsonGenerator(new FileWriter(...));&lt;br /&gt;generator&lt;br /&gt; .beginObject()&lt;br /&gt; . . .&lt;br /&gt;
      .beginArray()&lt;br /&gt; . . .&lt;br /&gt; .endArray()&lt;br /&gt; .endObject()&lt;br /&gt;.build();&lt;br /&gt;generator.close();&lt;br /&gt;&lt;/pre&gt; &lt;br /&gt; And finally a sample usage of JsonParser:&lt;br /&gt; &lt;pre&gt;String json = "..."; JsonParser parser = new JsonParser(new StringReader(json));&lt;br /&gt;Iterator&amp;lt;Event&gt; it = reader.iterator();&lt;br /&gt;Event event = it.next();&lt;br /&gt;&lt;/pre&gt; The &lt;code&gt;event&lt;/code&gt;&#160; can be of the following
      types:&lt;br /&gt; &lt;ul&gt; &lt;li&gt;START_OBJECT&lt;/li&gt; &lt;li&gt;END_OBJECT&lt;/li&gt; &lt;li&gt;START_ARRAY&lt;/li&gt; &lt;li&gt;END_ARRAY&lt;/li&gt; &lt;li&gt;KEY_NAME&lt;/li&gt; &lt;li&gt;VALUE_STRING&lt;/li&gt; &lt;li&gt;VALUE_NUMBER&lt;br /&gt; &lt;/li&gt; &lt;li&gt;VALUE_FALSE&lt;/li&gt; &lt;li&gt;VALUE_TRUE&lt;/li&gt; &lt;li&gt;VALUE_NULL&lt;br /&gt; &lt;/li&gt; &lt;/ul&gt; Here are some references to track the progress and provide feedback:&lt;br /&gt; &lt;ul&gt; &lt;li&gt;Join the
      specification project at &lt;a href="http://json-processing-spec.java.net"&gt;json-processing-spec.java.net&lt;/a&gt;&lt;/li&gt; &lt;li&gt;The Reference Implementation is built at &lt;a href="http://jsonp.java.net"&gt;jsonp.java.net&lt;/a&gt;&lt;span style="text-decoration: underline;"&gt;&lt;/span&gt;&lt;/li&gt; &lt;li&gt;Mailing Lists&lt;/li&gt; &lt;ul&gt; &lt;li&gt;users@json-processing-spec.java.net&lt;/li&gt; &lt;li&gt;jsr353-experts@json-processing.java.net&lt;/li&gt; &lt;/ul&gt;
      &lt;li&gt;Issue Tracker: &lt;a href="http://java.net/jira/browse/JSON_PROCESSING_SPEC"&gt;java.net/jira/browse/JSON_PROCESSING_SPEC&lt;/a&gt;&lt;br /&gt; &lt;/li&gt; &lt;/ul&gt; This JSR will be delivered as part of Java EE 7. Here are some other early work that has been explained:&lt;br /&gt; &lt;ul&gt; &lt;li&gt;&lt;a href="https://blogs.oracle.com/arungupta/entry/jpa_2_1_early_draft"&gt;JPA 2.1 Early Draft Explained&lt;/a&gt;&lt;/li&gt; &lt;li&gt;&lt;a
      href="https://blogs.oracle.com/arungupta/entry/jax_rs_2_0_early"&gt;JAX-RS 2.0 Early Draft Explained&lt;/a&gt;&lt;/li&gt; &lt;li&gt;&lt;a href="http://jdevelopment.nl/jsf-22/"&gt;What's new in JSF 2.2 ?&lt;/a&gt;&lt;br /&gt; &lt;/li&gt; &lt;/ul&gt; &lt;br /&gt; Have fun!&lt;br /&gt;</description>
      <pubDate>Tue, 15 May 2012 12:11:10 +0000</pubDate>
    </item>
    <item>
      <title>open source. open mind.: Last Chance for Early Birds – Become Proficient in Java Performance Tuning with Kirk Pepperdine</title>
      <guid isPermaLink="false">http://3.163</guid>
      <link>http://88.198.17.44/java-performance-tuning-training/last-chance-for-early-birds-become-proficient-in-java-performance-tuning-with-kirk-pepperdine/</link>
      <description>&lt;p&gt;Nur noch &lt;strong&gt;6 Tage&lt;/strong&gt; (bis einschl. 20.05.2012) haben Sie die Möglichkeit auf &lt;strong&gt;10% Early Bird Rabatt&lt;/strong&gt; bei Buchung des Kurses:&lt;strong&gt;&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;&lt;strong&gt;Become Proficient in Java Performance Tuning with Kirk Pepperdine&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;In diesem umfassenden viertägigen Workshop erlernen Sie praxiserprobte Techniken um Performance-Engpässe zu entdecken und zu beheben. Was Sie
      nicht finden werden sind Tipps und Tricks, die mit der nächsten Version von Java veraltet sein werden. Stattdessen konzentriert sich der Kurs darauf eine Methodik zu vermitteln, die aus jahrelanger Erfahrung bei der Lösung von Performanceproblemen für eine Vielzahl unterschiedlicher Programmiersprachen und Plattformen entwickelt wurden. Im Laufe des Seminars untersuchen wir, wie Java funktioniert und zeigen eine Methodik, um zu entscheiden welche Tools für das vorliegende Problem geeignet sind. Der
      Workshop fordert Sie mit mehr als einem Dutzend Übungsproblemen heraus, die aus realen Projekten stammen.&lt;/p&gt; &lt;p&gt;Während der 4 Tage lernen Sie:&lt;/p&gt; &lt;ul&gt; &lt;li&gt;schnell und zuverlässig die Hauptursachen für schlechte Performance in Ihren Applikationen zu identifizieren,&lt;/li&gt; &lt;li&gt;wie man Randbedingungen eliminiert, die das Auffinden von Bottlenecks verhindern,&lt;/li&gt; &lt;li&gt;die notwendigen unterstützenden Beweise vor einer Entscheidung über eine
      möglicherweise teure Vorgehensweise zu finden&lt;/li&gt; &lt;li&gt;und Performance-Probleme zu entdecken, bevor sie ihren Weg in Ihre Produktionsumgebung finden.&lt;/li&gt; &lt;/ul&gt; &lt;p&gt;Kursleiter&lt;a href="http://www.java-performance-tuning.de" target="_blank"&gt;&lt;strong&gt; Kirk Pepperdine&lt;/strong&gt;&lt;/a&gt; – ein anerkannter Experte für Java Performance Tuning, Sun Java Champion, internationaler Referent und Trainer und Co-Author des erfolgreichen Java Performance Tuning
      Newsletters – lehrt Sie in vier Tagen, was sonst Jahre des Selbsstudiums erfordert. Kirk hat zahlreiche kritische Performance-Probleme behoben und seinen Kunden Millionen in entgangenen Einnahmen und Ausfallzeiten eingespart. Dieser Kurs wird Ihnen helfen das gleiche zu tun.&lt;/p&gt; &lt;p&gt;Weitere Info unter: &lt;a href="http://www.java-performance-tuning.de" target="_blank"&gt;&lt;strong&gt;www.java-performance-tuning.de&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;</description>
      <pubDate>Tue, 15 May 2012 10:45:31 +0000</pubDate>
    </item>
    <item>
      <title>NetBeans DZone: Paid Summer Internship: Our Own NetBeans Summer Of Code!</title>
      <guid isPermaLink="false">http://netbeans.dzone.com/109841 at http://netbeans.dzone.com</guid>
      <link>http://feeds.dzone.com/~r/zones/netbeans/~3/Pf0gme3_mY0/joseki-bold-nb-summer-of-code</link>
      <description>My company, Joseki Bold, is having&#160;a Summer of Code for students&lt;img src="http://feeds.feedburner.com/~r/zones/netbeans/~4/Pf0gme3_mY0" height="1" width="1" /&gt;</description>
      <pubDate>Tue, 15 May 2012 07:48:35 +0000</pubDate>
    </item>
    <item>
      <title>Arun Gupta, Miles to go ...: Java Day, Istanbul, May 2012 Trip Report</title>
      <guid isPermaLink="false">https://blogs.oracle.com/arungupta/entry/java_day_istanbul_may_2012</guid>
      <link>https://blogs.oracle.com/arungupta/entry/java_day_istanbul_may_2012</link>
      <description>&lt;br /&gt; &lt;a href="http://www.oracle.com/webapps/events/ns/EventsDetail.jsp?p_eventId=144022&amp;amp;src=7307403&amp;amp;src=7307403&amp;amp;Act=212"&gt;&lt;img src="https://lh5.googleusercontent.com/-tbSIK9bxScI/T7K0pcDdtLI/AAAAAAAAkDw/L851FXfgLlI/s912/DSC_0052.jpg" alt="" style="border: 0px solid; width: 650px; height: 292px;" /&gt;&lt;/a&gt;&lt;br /&gt; &lt;br /&gt; About &lt;span style="text-decoration: line-through;"&gt;120+&lt;/span&gt; 150 attendees at Java Day, Istanbul
      learned about Java EE 6/7 earlier today. The Java track had about &lt;span style="text-decoration: line-through;"&gt;100&lt;/span&gt; 110 attendees during most of the day. I gave 4 sessions:&lt;br /&gt; &lt;ul&gt; &lt;li&gt;Developing Modern and Lightweight Java EE 6 Applications using WebLogic 12c (keynote to all the attendees)&lt;br /&gt; &lt;/li&gt; &lt;li&gt;What's coming in Java EE 7&lt;/li&gt; &lt;li&gt;Java EE 6 Hands-on Lab using NetBeans/WebLogic&lt;/li&gt; &lt;li&gt;RESTful Web services
      using JAX-RS&lt;/li&gt; &lt;/ul&gt; &lt;p&gt;The attendees were generally quiet but the hands-on session had some interesting conversations around Java EE 6 usage. &lt;a href="https://blogs.oracle.com/arungupta/entry/wls_maven_plugin_weblogic_12c"&gt;TOTD #177&lt;/a&gt; showcase the WebLogic Maven plugin usage &lt;a href="https://blogs.oracle.com/arungupta/entry/java_ee_6_sample_application"&gt;TOTD #176&lt;/a&gt; shows how to run Conference Planner application on WebLogic 12c. I also had the
      opportunity to meet the &lt;a href="http://www.jtpd.org/"&gt;Istanbul JUG&lt;/a&gt; leader and &lt;a href="http://www.istanbul-gtug.org/"&gt;local GTUG&lt;/a&gt; leader. Show your passion about Java by participating at the local JUG, all the more better to volunteer as a speaker :-)&lt;br /&gt; &lt;/p&gt; &lt;p&gt;The slides presented are available below. &lt;br /&gt; &lt;/p&gt; &lt;div style="width: 425px;" id="__ss_12811157"&gt; &lt;strong style="display: block; margin: 12px 0 4px;"&gt;&lt;a
      href="http://www.slideshare.net/arungupta1/weblogic-12c-developer-deep-dive-at-oracle-develop-india-2012" target="_blank" title="WebLogic 12c Developer Deep Dive at Oracle Develop India 2012"&gt;WebLogic 12c Developer Deep Dive at Oracle Develop India 2012&lt;/a&gt;&lt;/strong&gt; &lt;/div&gt; &lt;br /&gt; &lt;br /&gt; &lt;div style="width: 425px;" id="__ss_12928507"&gt; &lt;strong style="display: block; margin: 12px 0 4px;"&gt;&lt;a
      href="http://www.slideshare.net/arungupta1/java-ee-7-developing-for-the-cloud-at-java-day-istanbul-may-2012" target="_blank" title="Java EE 7: Developing for the Cloud at Java Day, Istanbul, May 2012"&gt;Java EE 7: Developing for the Cloud at Java Day, Istanbul, May 2012&lt;/a&gt;&lt;/strong&gt; &lt;/div&gt; &lt;br /&gt; &lt;br /&gt; &lt;div style="width: 425px;" id="__ss_12928365"&gt; &lt;strong style="display: block; margin: 12px 0 4px;"&gt;&lt;a
      href="http://www.slideshare.net/arungupta1/restful-web-services-using-jaxrs" target="_blank" title="RESTful Web services using JAX-RS"&gt;RESTful Web services using JAX-RS&lt;/a&gt;&lt;/strong&gt; &lt;/div&gt; &lt;br /&gt; The self-paced instructions for Java EE 6 hands-on lab using NetBeans and WebLogic is &lt;a href="https://blogs.oracle.com/arungupta/resource/javaee6-hol-weblogic.pdf"&gt;available here&lt;/a&gt;.&lt;br /&gt; &lt;br /&gt; Some pictures from the event and around the city ...&lt;br
      /&gt; &lt;br /&gt; &lt;table cellpadding="5" style="text-align: left;" cellspacing="5"&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td style="vertical-align: top;"&gt;&lt;img src="https://lh3.googleusercontent.com/-EngCKkFPwwU/T7E-U2I66SI/AAAAAAAAj38/-3qN26VafoA/s288/DSCN3037.JPG" alt="" style="width: 288px; height: 216px;" /&gt;&lt;br /&gt; &lt;/td&gt; &lt;td style="vertical-align: top;"&gt;&lt;img src="https://lh5.googleusercontent.com/-JXbFTw1omiA/T7E-ZKfzibI/AAAAAAAAj4k/I7as2Zq92OM/s288/DSCN3042.JPG" alt=""
      style="width: 288px; height: 216px;" /&gt;&lt;br /&gt; &lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td style="vertical-align: top; text-align: center;"&gt;&lt;img src="https://lh3.googleusercontent.com/-zezBmTlEG-w/T7E-cAFhF6I/AAAAAAAAj5A/aatBkvyHESY/s288/DSCN3046.JPG" alt="" style="width: 216px; height: 288px;" /&gt;&lt;br /&gt; &lt;/td&gt; &lt;td style="vertical-align: top; text-align: center;"&gt;&lt;img
      src="https://lh4.googleusercontent.com/-oQA2a9gTZkg/T7E-dkjM_xI/AAAAAAAAj5M/28zL1ApGjto/s288/DSCN3049.JPG" alt="" style="width: 216px; height: 288px;" /&gt;&lt;br /&gt; &lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td style="vertical-align: top;"&gt;&lt;img src="https://lh3.googleusercontent.com/-2TVVxY2NTic/T7E-hJrBCJI/AAAAAAAAj50/eBQ2--ssiBA/s288/DSCN3054.JPG" alt="" style="width: 288px; height: 216px;" /&gt;&lt;br /&gt; &lt;/td&gt; &lt;td style="vertical-align: top;"&gt;&lt;img
      src="https://lh4.googleusercontent.com/-xx_mBjbx_Qw/T7E-i9-_BdI/AAAAAAAAj6A/ZoXkKx8L-As/s288/DSCN3056.JPG" alt="" style="width: 288px; height: 216px;" /&gt;&lt;br /&gt; &lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td style="vertical-align: top;"&gt;&lt;img src="https://lh4.googleusercontent.com/-lr2e6zYBfXg/T7E-lM6-UBI/AAAAAAAAj6U/nqk3g_OHNaA/s288/DSCN3059.JPG" alt="" style="width: 288px; height: 216px;" /&gt;&lt;br /&gt; &lt;/td&gt; &lt;td style="vertical-align: top;"&gt;&lt;img
      src="https://lh6.googleusercontent.com/-5wFUzckUlCA/T7E-nptWTcI/AAAAAAAAj60/mXLWjklxoqU/s288/DSCN3062.JPG" alt="" style="width: 288px; height: 216px;" /&gt;&lt;br /&gt; &lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td style="vertical-align: top;"&gt;&lt;img src="https://lh4.googleusercontent.com/-71m8AZY3DfA/T7E-qVBp3jI/AAAAAAAAj7E/yDNnoSxzUWo/s288/DSCN3065.JPG" alt="" style="width: 288px; height: 216px;" /&gt;&lt;br /&gt; &lt;/td&gt; &lt;td style="vertical-align: top;"&gt;&lt;img
      src="https://lh5.googleusercontent.com/-J9WBEjSQ-30/T7E-rDLX33I/AAAAAAAAj7M/Cp28OCqbhQI/s288/DSCN3066.JPG" alt="" style="width: 288px; height: 216px;" /&gt;&lt;br /&gt; &lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td style="vertical-align: top;"&gt;&lt;img src="https://lh6.googleusercontent.com/-b_xMrVFsRC8/T7E-x8TZdqI/AAAAAAAAj78/Y9GhGlSP7Bo/s288/DSCN3074.JPG" alt="" style="width: 288px; height: 216px;" /&gt;&lt;br /&gt; &lt;/td&gt; &lt;td style="vertical-align: top;"&gt;&lt;img
      src="https://lh5.googleusercontent.com/--vIfwX--VY4/T7E-yqPhB6I/AAAAAAAAj8E/Jin4DPuRnKE/s288/DSCN3075.JPG" alt="" style="width: 288px; height: 216px;" /&gt;&lt;br /&gt; &lt;/td&gt; &lt;/tr&gt; &lt;/tbody&gt; &lt;/table&gt; &lt;br /&gt; Here are a couple of more pictures from the local events team:&lt;br /&gt; &lt;br /&gt; &lt;img src="https://lh5.googleusercontent.com/-pzJ-tmylkks/T7K0xkn0FaI/AAAAAAAAkD4/z4ZwgbYieXE/s800/DSC_0056.jpg" alt="" style="width: 640px; height: 426px;" /&gt;&lt;br /&gt;
      &lt;br /&gt; &lt;img src="https://lh6.googleusercontent.com/-EOJB9Cgpz2s/T7K02exSSII/AAAAAAAAkEA/4V3b6a_kskA/s800/DSC_0061.jpg" alt="" style="width: 640px; height: 426px;" /&gt;&lt;br /&gt; &lt;br /&gt; And the complete album:&lt;br /&gt; &lt;br /&gt; &lt;br /&gt; Next stop &lt;a href="https://blogs.oracle.com/arungupta/entry/otn_developer_days_in_turkey"&gt;Geecon, Poland&lt;/a&gt; ...</description>
      <pubDate>Mon, 14 May 2012 18:27:31 +0000</pubDate>
    </item>
    <item>
      <title>Geertjan's Blog: Synchronize Javadoc Changes While Refactoring</title>
      <guid isPermaLink="false">https://blogs.oracle.com/geertjan/entry/refactor</guid>
      <link>https://blogs.oracle.com/geertjan/entry/refactor</link>
      <description>&lt;p&gt;Let's say here's a method you've defined:&lt;br /&gt;&lt;/p&gt; &lt;p&gt;&lt;img src="https://blogs.oracle.com/geertjan_images/resource/refactor-parameter-1.png" /&gt; &lt;/p&gt; &lt;p&gt;Now you decide that "idx" should be "index". So you type "index" instead of "idx":&lt;br /&gt;&lt;/p&gt; &lt;p&gt; &lt;img src="https://blogs.oracle.com/geertjan_images/resource/refactor-parameter-2.png" /&gt;&lt;br /&gt;&lt;/p&gt; &lt;p&gt;However, if you're smart, you'll first press Ctrl-R on
      "idx". When you then change "idx" to "index", the javadoc will ALSO be changed, automatically, as you type:&lt;br /&gt;&lt;/p&gt; &lt;p&gt; &lt;img src="https://blogs.oracle.com/geertjan_images/resource/refactor-parameter-4.png" /&gt;&lt;/p&gt;</description>
      <pubDate>Mon, 14 May 2012 15:53:26 +0000</pubDate>
    </item>
    <item>
      <title>Geertjan's Blog: "Extract Method" Functionality in NetBeans?</title>
      <guid isPermaLink="false">https://blogs.oracle.com/geertjan/entry/extract_method_functionality_in_netbeans</guid>
      <link>https://blogs.oracle.com/geertjan/entry/extract_method_functionality_in_netbeans</link>
      <description>&lt;p&gt;Why does NetBeans IDE not have "extract method" functionality?&lt;br /&gt;&lt;/p&gt; &lt;p&gt;&lt;img src="https://blogs.oracle.com/geertjan_images/resource/extract-method-5.png" /&gt; &lt;/p&gt; &lt;p&gt;Well, as Ralph from the NetBeans Team points out, it's as simple as using Alt-Shift-M. For example, here's a big chunk of code in the constructor of the Anagram Game (which is one of the samples in NetBeans IDE):&lt;br /&gt;&lt;/p&gt; &lt;p&gt;&lt;img
      src="https://blogs.oracle.com/geertjan_images/resource/extract-method-1.png" /&gt;&lt;/p&gt; &lt;p&gt;That big chunk of code deserves its own separate method. So, as you can see, I select it all with my mouse and then I press Alt-Shift-M (or Refactor | Introduce Method), which causes the "Introduce Method" dialog to be displayed, as shown below, where I type "postInitializeGUI", as you can see below:&lt;br /&gt;&lt;/p&gt; &lt;p&gt;&lt;img
      src="https://blogs.oracle.com/geertjan_images/resource/extract-method-2.png" /&gt;&lt;/p&gt; &lt;p&gt;I click OK in the dialog above. And now the constructor contains a new reference to a method...&lt;br /&gt;&lt;/p&gt; &lt;p&gt;&lt;img src="https://blogs.oracle.com/geertjan_images/resource/extract-method-3.png" /&gt;&lt;/p&gt; &lt;p&gt;...which is defined elsewhere in the code:&lt;br /&gt;&lt;/p&gt; &lt;p&gt;&lt;img src="https://blogs.oracle.com/geertjan_images/resource/extract-method-4.png"
      /&gt;&lt;/p&gt; &lt;p&gt;Hurray, again, for NetBeans IDE!&lt;br /&gt;&lt;/p&gt;</description>
      <pubDate>Sun, 13 May 2012 14:19:27 +0000</pubDate>
    </item>
    <item>
      <title>open source. open mind.: JavaFX MotionBlur</title>
      <guid isPermaLink="false">http://88.198.17.44/?p=868</guid>
      <link>http://88.198.17.44/blog/2012/05/13/javafx-motionblur/</link>
      <description>&lt;p&gt;In my little Pinball Machine project, I’m using JBox2D to position the nodes, specifically the ball. In every KeyFrame JBox2D gives me the current position and I simply set the layout of the Node representing the ball. Sometimes the motion looks a bit snatchy. Since I’ve got the current position and the new position I thought I could maybe use that info to create a nice MotionBlur to make the motion look a bit smoother and more realistic. The previous and new position can be
      used to calculate the angle and radius of the blur. I removed all custom Renderers to only show the rendering of the Ball (the pinball machine actually already looks a lot nicer, more about this later)&lt;/p&gt; &lt;p&gt;Here’s how it looks without (watch in fullscreen in case you want to see the difference &lt;img src="http://88.198.17.44/wp-includes/images/smilies/icon_smile.gif" alt=":-)" class="wp-smiley" /&gt; ):&lt;/p&gt; &lt;p&gt;&lt;/p&gt; &lt;p&gt;And here how it looks with
      MotionBlur:&lt;/p&gt; &lt;p&gt;&lt;/p&gt; &lt;p&gt;I hope the MotionBlur is visible in the Videos… By the way, my “Angry Duke- physics based games with JavaFX” Session has been accepted for W-Jax. &lt;a href="http://entwickler.com/konferenzen/ext_scripts/v2/php/sessions-popup.php?module=wjax2012&amp;amp;id=22412"&gt;Hope to see you there&lt;/a&gt;.&lt;/p&gt;</description>
      <pubDate>Sun, 13 May 2012 07:11:17 +0000</pubDate>
    </item>
    <item>
      <title>APIDesign - Blogs: An API Proximity. Are You Close Friend with Your API?</title>
      <guid isPermaLink="false">http://wiki.apidesign.org/wiki/Proximity</guid>
      <link>http://wiki.apidesign.org/wiki/Proximity</link>
      <description>&lt;p&gt;How &lt;a href="http://wiki.apidesign.org/wiki/Proximity" title="Proximity"&gt;close&lt;/a&gt; are you to the API that you use? Are you friends? Do you hate each other? Have you memorize the API? Can you debug it? Is your API a &lt;a href="http://wiki.apidesign.org/wiki/Clueless" class="mw-redirect" title="Clueless"&gt;clueless&lt;/a&gt; blackbox for you? Are you a calling client? Do you implement and provide some of the API concepts? Do you think I am asking silly questions?
      &lt;/p&gt;&lt;p&gt;It seems that &lt;a href="http://wiki.apidesign.org/wiki/Proximity" title="Proximity"&gt;proximity&lt;/a&gt; is one of the best ways to classify &lt;a href="http://wiki.apidesign.org/wiki/Libraries" class="mw-redirect" title="Libraries"&gt;libraries&lt;/a&gt; into categories. So far I managed to recognize &lt;a href="http://wiki.apidesign.org/wiki/Simple_library" title="Simple library"&gt;Zero to Many&lt;/a&gt;, &lt;a href="http://wiki.apidesign.org/wiki/Vendor_library"
      title="Vendor library"&gt;One to Many&lt;/a&gt;, &lt;a href="http://wiki.apidesign.org/wiki/Semantic_versioning" title="Semantic versioning"&gt;Few to Many&lt;/a&gt; and &lt;a href="http://wiki.apidesign.org/wiki/Modular_library" title="Modular library"&gt;Many to Many&lt;/a&gt; &lt;a href="http://wiki.apidesign.org/wiki/Proximity" title="Proximity"&gt;proximity&lt;/a&gt; categories. They seem to directly influence the &lt;a href="http://wiki.apidesign.org/wiki/APIDesignPatterns" class="mw-redirect"
      title="APIDesignPatterns"&gt;APIDesignPatterns&lt;/a&gt; one should use when designing such &lt;a href="http://wiki.apidesign.org/wiki/Libraries" class="mw-redirect" title="Libraries"&gt;libraries&lt;/a&gt;. As such, when you are about to design your &lt;a href="http://wiki.apidesign.org/wiki/Library" title="Library"&gt;library&lt;/a&gt;, think a bit about the &lt;a href="http://wiki.apidesign.org/wiki/Proximity" title="Proximity"&gt;proximity&lt;/a&gt; you want to have with your clients and
      providers. &lt;/p&gt;&lt;p&gt;Btw. Most of &lt;a href="http://wiki.apidesign.org/wiki/NetBeans" title="NetBeans"&gt;NetBeans&lt;/a&gt; &lt;a href="http://wiki.apidesign.org/wiki/Libraries" class="mw-redirect" title="Libraries"&gt;libraries&lt;/a&gt; is using the &lt;a href="http://wiki.apidesign.org/wiki/Modular_library" title="Modular library"&gt;Many to Many&lt;/a&gt; &lt;a href="http://wiki.apidesign.org/wiki/Proximity" title="Proximity"&gt;proximity&lt;/a&gt;. I'll be more than glad if you decide
      to stick with our most favourite &lt;a href="http://wiki.apidesign.org/wiki/Proximity" title="Proximity"&gt;proximity&lt;/a&gt; style as well. &lt;/p&gt;&lt;p&gt;--&lt;a href="http://wiki.apidesign.org/wiki/User:JaroslavTulach" title="User:JaroslavTulach"&gt;JaroslavTulach&lt;/a&gt; 19:56, 12 May 2012 (UTC) &lt;/p&gt;</description>
      <pubDate>Sat, 12 May 2012 19:56:00 +0000</pubDate>
    </item>
    <item>
      <title>NetBeans DZone: Rants On The Daily Grind of Building Software</title>
      <guid isPermaLink="false">http://netbeans.dzone.com/109737 at http://netbeans.dzone.com</guid>
      <link>http://feeds.dzone.com/~r/zones/netbeans/~3/udxxmkAtEV0/rants-daily-grind-building</link>
      <description>Language, Tools, Chickens, Eggs, Java and Python Too much of programming is intimately tied up with the tools to support the development of the software. Example 1. I was told -- with absolute and fierce conviction -- that VB may suck as a language, but Visual Studio more than makes up for the obvious problems. For some people, Tools Trump Language. Sadly, I've also had customers...&lt;img src="http://feeds.feedburner.com/~r/zones/netbeans/~4/udxxmkAtEV0" height="1" width="1"
      /&gt;</description>
      <pubDate>Fri, 11 May 2012 17:19:35 +0000</pubDate>
    </item>
    <item>
      <title>Arun Gupta, Miles to go ...: wls-maven-plugin: WebLogic 12c Maven Plugin Usage (TOTD #177)</title>
      <guid isPermaLink="false">https://blogs.oracle.com/arungupta/entry/wls_maven_plugin_weblogic_12c</guid>
      <link>https://blogs.oracle.com/arungupta/entry/wls_maven_plugin_weblogic_12c</link>
      <description>&lt;br /&gt; &lt;a href="http://www.oracle.com/technetwork/middleware/weblogic/overview/index.html"&gt; Oracle WebLogic Server 12c&lt;/a&gt; provides full Java EE 6 platform support. The &lt;a href="https://blogs.oracle.com/arungupta/entry/java_ee_6_using_weblogic"&gt;screencast #39&lt;/a&gt; shows how to build a complete application using NetBeans. The self-paced hands-on lab provides &lt;a href="https://blogs.oracle.com/arungupta/resource/javaee6-hol-weblogic.pdf"&gt;detailed
      instructions&lt;/a&gt; on the same as well. The Maven support in WebLogic 12c is much more improved. &lt;a href="http://buttso.blogspot.in/2011/12/weblogic-server-12c-maven-usage-notes.html"&gt;Steve Button&lt;/a&gt; and &lt;a href="http://blog.eisele.net/2011/12/installing-and-using-new-weblogic-12.html"&gt;Markus Eisele&lt;/a&gt; wrote detailed blogs on how/what/why of Maven support in WebLogic. This &lt;span style="font-weight: bold;"&gt;T&lt;/span&gt;ip &lt;span style="font-weight:
      bold;"&gt;O&lt;/span&gt;f &lt;span style="font-weight: bold;"&gt;T&lt;/span&gt;he &lt;span style="font-weight: bold;"&gt;D&lt;/span&gt;ay (TOTD) will provide a quick overview of how to get started with using the maven plugin for deploying a Java EE 6 web application.&lt;br /&gt; &lt;br /&gt; &lt;ol&gt; &lt;li&gt;Download and install WebLogic 12c using the zip installer as explained in &lt;a href="https://blogs.oracle.com/arungupta/entry/get_started_with_oracle_weblogic"&gt;TOTD #174&lt;/a&gt;. &lt;br
      /&gt; &lt;/li&gt; &lt;li&gt;The Maven plugin can be installed using "$MW_HOME/wlserver/server/lib/wls-maven-plugin.jar". Change the directory to "$MW_HOME/wlserver/server/lib" and give the following commands:&lt;br /&gt; &lt;pre&gt;mvn install mvn install:install-file –Dfile=wls-maven-plugin.jar -DpomFile=pom.xml&lt;/pre&gt; &lt;/li&gt; &lt;li&gt;The maven plugin usage can be seen by giving the following command:&lt;br /&gt; &lt;pre&gt;mvn com.oracle.weblogic:wls-maven-plugin:help&lt;/pre&gt; Or add
      the following to "~/.m2/settings.xml":&lt;br /&gt; &lt;pre&gt;&amp;lt;pluginGroups&gt; &#160;&#160;&#160;&#160; &amp;lt;pluginGroup&gt;com.oracle.weblogic&amp;lt;/pluginGroup&gt; &amp;lt;/pluginGroups&gt;&lt;/pre&gt; And then give the following command:&lt;br /&gt; &lt;pre&gt;mvn wls:help&lt;/pre&gt; to see the output as:&lt;br /&gt; &lt;pre&gt;[INFO] Scanning for projects...&lt;br /&gt;[INFO] &lt;br /&gt;[INFO] ------------------------------------------------------------------------&lt;br
      /&gt;[INFO] Building wls-maven-sample 1.0-SNAPSHOT&lt;br /&gt;[INFO] ------------------------------------------------------------------------&lt;br /&gt;[INFO] &lt;br /&gt;[INFO] --- wls-maven-plugin:12.1.1.0:help (default-cli) @ wls-maven-sample ---&lt;br /&gt;[INFO] &lt;br /&gt;WebLogic Server Maven Plugin&lt;br /&gt;The following goals are supported by wls-maven-plugin:&lt;br /&gt;&lt;br /&gt;appc:&lt;br /&gt; The appc compiler generates and compiles the classes needed to deploy &lt;br /&gt; EJBs
      and JSPs to WebLogic Server. It also validates the deployment &lt;br /&gt; descriptors for compliance with the current specifications at both the &lt;br /&gt; individual module level and the application level. &lt;br /&gt;&lt;br /&gt;deploy:&lt;br /&gt; To deploy a weblogic server application (supports all formats WAR,JAR &lt;br /&gt; etc..)&lt;br /&gt;&lt;br /&gt;create-domain:&lt;br /&gt; Create a domain for WebLogic Server using the default domain template. &lt;br /&gt; For more complex domain
      creation use the WLST goal. &lt;br /&gt;&lt;br /&gt;help:&lt;br /&gt; Provides a list of all the goals supported by the wls-maven-plugin &lt;br /&gt;&lt;br /&gt;install:&lt;br /&gt; Install WebLogic Server &lt;br /&gt;&lt;br /&gt;list-apps:&lt;br /&gt; Lists the deployment names for applications and stand-alone modules &lt;br /&gt; deployed distributed, or installed to the domain &lt;br /&gt;&lt;br /&gt;redeploy:&lt;br /&gt; Redeploys a running application or part of a running application &lt;br
      /&gt;&lt;br /&gt;start-app:&lt;br /&gt; Starts an application deployed on weblogic server. &lt;br /&gt;&lt;br /&gt;start-server:&lt;br /&gt; Start WebLogic Server &lt;br /&gt;&lt;br /&gt;stop-app:&lt;br /&gt; Stops an application &lt;br /&gt;&lt;br /&gt;stop-server:&lt;br /&gt; Stop Weblogic Server &lt;br /&gt;&lt;br /&gt;undeploy:&lt;br /&gt; Undeploys the application from weblogic server. Stops the deployment unit &lt;br /&gt; and removes staged files from target servers &lt;br /&gt;&lt;br
      /&gt;update-app:&lt;br /&gt; Updates an application's deployment plan by redistributing the plan files &lt;br /&gt; and reconfiguring the application based on the new plan contents. &lt;br /&gt;&lt;br /&gt;wlst:&lt;br /&gt; WLST wrapper for Maven &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;For detailed help on a goal, use -Dgoal=&amp;lt;goal-name&gt; -Ddetail=true options.&lt;br /&gt;[INFO] ------------------------------------------------------------------------&lt;br /&gt;[INFO] BUILD SUCCESS&lt;br
      /&gt;[INFO] ------------------------------------------------------------------------&lt;br /&gt;[INFO] Total time: 0.794s&lt;br /&gt;[INFO] Finished at: Thu May 03 06:38:23 IST 2012&lt;br /&gt;[INFO] Final Memory: 8M/125M&lt;br /&gt;[INFO] ------------------------------------------------------------------------&lt;br /&gt;&lt;/pre&gt; More details about each goal can be found using the following command:&lt;br /&gt; &lt;pre&gt;mvn wls:help -Dgoal=&amp;lt;GOAL&gt; -Ddetail=true&lt;/pre&gt; For
      example:&lt;br /&gt; &lt;pre&gt;&lt;span style="font-weight: bold;"&gt;mvn wls:help -Dgoal=install -Ddetail=true&lt;/span&gt;&lt;br /&gt;[INFO] Scanning for projects...&lt;br /&gt;[INFO] &lt;br /&gt;[INFO] ------------------------------------------------------------------------&lt;br /&gt;[INFO] Building Maven Stub Project (No POM) 1&lt;br /&gt;[INFO] ------------------------------------------------------------------------&lt;br /&gt;[INFO] &lt;br /&gt;[INFO] --- wls-maven-plugin:12.1.1.0:help
      (default-cli) @ standalone-pom ---&lt;br /&gt;[INFO] &lt;br /&gt;WebLogic Server Maven Plugin&lt;br /&gt;The following goals are supported by wls-maven-plugin:&lt;br /&gt;&lt;br /&gt;install:&lt;br /&gt; Install WebLogic Server &lt;br /&gt;&lt;br /&gt; Available Parameters:&lt;br /&gt;&lt;br /&gt; installCommand:&lt;br /&gt; The command to use to install the product when using an &lt;br /&gt; 'executable' installer. The following macros are supported - &lt;br /&gt; @INSTALLER_FILE@ - the path to the
      installer file, @JAVA_HOME@ - &lt;br /&gt; path to the java home. eg: @JAVA_HOME@ -Xms512m -Xmx1024m -jar &lt;br /&gt; @INSTALLER_FILE@ one two &lt;br /&gt;&lt;br /&gt; artifactLocation:&lt;br /&gt; The address of the artifact. This can be one of the following - &lt;br /&gt; 1) A ':' separated maven coordinates of the form (groupId:artifac-&lt;br /&gt; tId:packaging:classifier:version) 2) A file on the local system &lt;br /&gt; (/home/prash/myapps/helloworld.war)3) A remote http url &lt;br /&gt;
      (http://foo/a/b.zip)&lt;br /&gt;&lt;br /&gt; middlewareHome:&lt;br /&gt; The home directory for Oracle WebLogic Server or Fusion &lt;br /&gt; Middleware installation. Required unless WLS was installed in the &lt;br /&gt; default location selected by the WLS Maven Plugin's install goal. &lt;br /&gt;&lt;br /&gt; domainHome:&lt;br /&gt; Location of WLS domain &lt;br /&gt;&lt;br /&gt; localRepository:&lt;br /&gt; The absolute path of a local maven repository. &lt;br /&gt;&lt;br /&gt;
      artifactFactory:&lt;br /&gt; The artifactFactory is used to locate an artifact with a &lt;br /&gt; groupId:artifactId:artifactName:version in the remote Repository &lt;br /&gt; as provided by the remoteRepsitories parameter. &lt;br /&gt;&lt;br /&gt; artifactResolver:&lt;br /&gt; Artifactresolver resolves the artifact from the remote &lt;br /&gt; repository. Downloads an updated version of the artifact if &lt;br /&gt; present in the remote repo. &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;[INFO]
      ------------------------------------------------------------------------&lt;br /&gt;[INFO] BUILD SUCCESS&lt;br /&gt;[INFO] ------------------------------------------------------------------------&lt;br /&gt;[INFO] Total time: 0.889s&lt;br /&gt;[INFO] Finished at: Wed May 02 17:35:46 PDT 2012&lt;br /&gt;[INFO] Final Memory: 6M/89M&lt;br /&gt;[INFO] ------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;&lt;/pre&gt; &lt;/li&gt; &lt;li&gt;Build a Java EE 6
      application&lt;/li&gt; &lt;ol&gt; &lt;li&gt;Create a Java EE 6 Maven web application as:&lt;br /&gt; &lt;pre&gt;mvn archetype:generate -DarchetypeGroupId=org.codehaus.mojo.archetypes -DarchetypeArtifactId=webapp-javaee6 -DgroupId=example -DartifactId=wls-maven-sample -DarchetypeVersion=1.5 -DinteractiveMode=false&lt;/pre&gt; &lt;/li&gt; &lt;li&gt; Add a trivial servlet to the sample project by following the &lt;a href="https://blogs.oracle.com/arungupta/entry/java_ee_6_using_weblogic"&gt;screencast
      #39&lt;/a&gt;. The complete source code for the project can be &lt;a href="https://blogs.oracle.com/arungupta/resource/wls-maven-sample.zip"&gt;downloaded here&lt;/a&gt;.&lt;/li&gt; &lt;/ol&gt; &lt;li&gt; Add the following code fragment to the generated "pom.xml":&lt;br /&gt; &lt;pre&gt;&amp;lt;plugin&gt; &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; &amp;lt;groupId&gt;com.oracle.weblogic&amp;lt;/groupId&gt;
      &amp;lt;artifactId&gt;wls-maven-plugin&amp;lt;/artifactId&gt; &amp;lt;version&gt;12.1.1.0&amp;lt;/version&gt; &amp;lt;/plugin&gt;&lt;/pre&gt; &lt;/li&gt; &lt;li&gt;Try some Maven commands in the "wls-maven-sample" directory&lt;/li&gt; &lt;ol&gt; &lt;li&gt;The server can be started as:&lt;br /&gt; &lt;pre&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;mvn wls:start-server &lt;br /&gt; -DmiddlewareHome=/Users/arungup/tools/weblogic/12c &lt;br /&gt;
      -DdomainHome=/Users/arungup/tools/weblogic/mydomain&lt;/span&gt;&lt;br /&gt;[INFO] Scanning for projects...&lt;br /&gt;[INFO] &lt;br /&gt;[INFO] ------------------------------------------------------------------------&lt;br /&gt;[INFO] Building wls-maven-sample 1.0-SNAPSHOT&lt;br /&gt;[INFO] ------------------------------------------------------------------------&lt;br /&gt;[INFO] &lt;br /&gt;[INFO] --- wls-maven-plugin:12.1.1.0:start-server (default-cli) @ wls-maven-sample ---&lt;br /&gt;[INFO]
      ++====================================================================++&lt;br /&gt;[INFO] ++ wls-maven-plugin: start-server ++&lt;br /&gt;[INFO] ++====================================================================++&lt;br /&gt;.[INFO] Starting server in domain: /Users/arungup/tools/weblogic/mydomain&lt;br /&gt;[INFO] Check stdout file for details: /Users/arungup/tools/weblogic/mydomain/server-922019421247284651.out&lt;br /&gt;[INFO] Process being executed, waiting for completion.&lt;br
      /&gt;................&lt;br /&gt;[INFO] Server started successful&lt;br /&gt;[INFO] ------------------------------------------------------------------------&lt;br /&gt;[INFO] BUILD SUCCESS&lt;br /&gt;[INFO] ------------------------------------------------------------------------&lt;br /&gt;[INFO] Total time: 16.919s&lt;br /&gt;[INFO] Finished at: Wed May 02 18:06:22 PDT 2012&lt;br /&gt;[INFO] Final Memory: 5M/88M&lt;br /&gt;[INFO]
      ------------------------------------------------------------------------&lt;/pre&gt; &lt;/li&gt; &lt;li&gt;Build and deploy the application as:&lt;br /&gt; &lt;pre&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;mvn wls:deploy &lt;br /&gt; -DmiddlewareHome=/Users/arungup/tools/weblogic/12c &lt;br /&gt; -DdomainHome=/Users/arungup/tools/weblogic/mydomain &lt;br /&gt; -Duser=admin &lt;br /&gt; -Dpassword=admin007 &lt;br /&gt;
      -Dsource=/Users/arungup/code/samples/weblogic/wls-maven-sample/target/wls-maven-sample-1.0-SNAPSHOT.war&lt;/span&gt;&lt;br /&gt;[INFO] Scanning for projects...&lt;br /&gt;[INFO] &lt;br /&gt;[INFO] ------------------------------------------------------------------------&lt;br /&gt;[INFO] Building wls-maven-sample 1.0-SNAPSHOT&lt;br /&gt;[INFO] ------------------------------------------------------------------------&lt;br /&gt;[INFO] &lt;br /&gt;[INFO] --- wls-maven-plugin:12.1.1.0:deploy (default-cli)
      @ wls-maven-sample ---&lt;br /&gt;[INFO] ++====================================================================++&lt;br /&gt;[INFO] ++ wls-maven-plugin: deploy ++&lt;br /&gt;[INFO] ++====================================================================++&lt;br /&gt;weblogic.Deployer invoked with options: -noexit -user admin -deploy -source /Users/arungup/code/samples/weblogic/wls-maven-sample/target/wls-maven-sample-1.0-SNAPSHOT.war&lt;br /&gt;&amp;lt;May 3, 2012 8:24:17 AM IST&gt; &amp;lt;Info&gt;
      &amp;lt;J2EE Deployment SPI&gt; &amp;lt;BEA-260121&gt; &amp;lt;Initiating deploy operation for application, wls-maven-sample-1.0-SNAPSHOT [archive: /Users/arungup/code/samples/weblogic/wls-maven-sample/target/wls-maven-sample-1.0-SNAPSHOT.war], to configured targets.&gt; &lt;br /&gt;Task 0 initiated: [Deployer:149026]deploy application wls-maven-sample-1.0-SNAPSHOT on myserver.&lt;br /&gt;Task 0 completed: [Deployer:149026]deploy application wls-maven-sample-1.0-SNAPSHOT on myserver.&lt;br
      /&gt;Target state: deploy completed on Server myserver&lt;br /&gt;&lt;br /&gt;[INFO] ------------------------------------------------------------------------&lt;br /&gt;[INFO] BUILD SUCCESS&lt;br /&gt;[INFO] ------------------------------------------------------------------------&lt;br /&gt;[INFO] Total time: 7.745s&lt;br /&gt;[INFO] Finished at: Thu May 03 08:24:18 IST 2012&lt;br /&gt;[INFO] Final Memory: 11M/130M&lt;br /&gt;[INFO]
      ------------------------------------------------------------------------&lt;br /&gt;&lt;/pre&gt; &lt;/li&gt; &lt;li&gt; The application is accessible at &lt;a href="http://localhost:7001/wls-maven-sample-1.0-SNAPSHOT/TestServlet"&gt;localhost:7001/wls-maven-sample-1.0-SNAPSHOT/TestServlet&lt;/a&gt;.&lt;br /&gt; &lt;/li&gt; &lt;li&gt;Stop the server as:&lt;br /&gt; &lt;pre&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;mvn wls:stop-server &lt;br /&gt;
      -DmiddlewareHome=/Users/arungup/tools/weblogic/12c &lt;br /&gt; -DdomainHome=/Users/arungup/tools/weblogic/mydomain &lt;br /&gt; -Duser=admin &lt;br /&gt; -Dpassword=admin007&lt;/span&gt;&lt;br /&gt;[INFO] Scanning for projects...&lt;br /&gt;[INFO] &lt;br /&gt;[INFO] ------------------------------------------------------------------------&lt;br /&gt;[INFO] Building wls-maven-sample 1.0-SNAPSHOT&lt;br /&gt;[INFO] ------------------------------------------------------------------------&lt;br
      /&gt;[INFO] &lt;br /&gt;[INFO] --- wls-maven-plugin:12.1.1.0:stop-server (default-cli) @ wls-maven-sample ---&lt;br /&gt;[INFO] ++====================================================================++&lt;br /&gt;[INFO] ++ wls-maven-plugin: stop-server ++&lt;br /&gt;[INFO] ++====================================================================++&lt;br /&gt;[INFO] Stop server in domain: /Users/arungup/tools/weblogic/mydomain&lt;br /&gt;[INFO] Process being executed, waiting for completion.&lt;br
      /&gt;[INFO] [exec] Stopping Weblogic Server...&lt;br /&gt;[INFO] [exec] &lt;br /&gt;[INFO] [exec] Initializing WebLogic Scripting Tool (WLST) ...&lt;br /&gt;[INFO] [exec] &lt;br /&gt;[INFO] [exec] Welcome to WebLogic Server Administration Scripting Shell&lt;br /&gt;[INFO] [exec] &lt;br /&gt;[INFO] [exec] Type help() for help on available commands&lt;br /&gt;[INFO] [exec] &lt;br /&gt;[INFO] [exec] Connecting to t3://localhost:7001 with userid admin ...&lt;br /&gt;[INFO] [exec] Successfully connected
      to Admin Server 'myserver' that belongs to domain 'mydomain'.&lt;br /&gt;[INFO] [exec] &lt;br /&gt;[INFO] [exec] Warning: An insecure protocol was used to connect to the &lt;br /&gt;[INFO] [exec] server. To ensure on-the-wire security, the SSL port or &lt;br /&gt;[INFO] [exec] Admin port should be used instead.&lt;br /&gt;[INFO] [exec] &lt;br /&gt;[INFO] [exec] Shutting down the server myserver with force=false while connected to myserver ...&lt;br /&gt;[INFO] [exec] WLST lost connection to the
      WebLogic Server that you were &lt;br /&gt;[INFO] [exec] connected to, this may happen if the server was shutdown or &lt;br /&gt;[INFO] [exec] partitioned. You will have to re-connect to the server once the &lt;br /&gt;[INFO] [exec] server is available.&lt;br /&gt;[INFO] [exec] Disconnected from weblogic server: myserver&lt;br /&gt;[INFO] [exec] Disconnected from weblogic server: &lt;br /&gt;[INFO] [exec] &lt;br /&gt;[INFO] [exec] &lt;br /&gt;[INFO] [exec] Exiting WebLogic Scripting Tool.&lt;br
      /&gt;[INFO] [exec] &lt;br /&gt;[INFO] [exec] Done&lt;br /&gt;[INFO] [exec] Stopping Derby Server...&lt;br /&gt;[INFO] ------------------------------------------------------------------------&lt;br /&gt;[INFO] BUILD SUCCESS&lt;br /&gt;[INFO] ------------------------------------------------------------------------&lt;br /&gt;[INFO] Total time: 10.847s&lt;br /&gt;[INFO] Finished at: Thu May 03 06:37:48 IST 2012&lt;br /&gt;[INFO] Final Memory: 9M/125M&lt;br /&gt;[INFO]
      ------------------------------------------------------------------------&lt;br /&gt;&lt;/pre&gt; &lt;/li&gt; &lt;/ol&gt; &lt;/ol&gt; &lt;br /&gt; Simple, quick, and easy!&lt;br /&gt; &lt;br /&gt; Are you building Java EE 6 applications on WebLogic ? With Maven ? Now you can fully integrate the WebLogic lifecycle with your "pom.xml".&lt;br /&gt; &lt;br /&gt; The &lt;a href="http://docs.oracle.com/cd/E24329_01/web.1211/e24368/overview.htm"&gt;WebLogic Application Development Guide&lt;/a&gt; provide
      &lt;a href="http://docs.oracle.com/cd/E24329_01/web.1211/e24368/maven.htm#WLPRG585"&gt;detailed documentation&lt;/a&gt; on the maven plugin.&lt;br /&gt; &lt;br /&gt; &lt;br /&gt;</description>
      <pubDate>Fri, 11 May 2012 16:41:13 +0000</pubDate>
    </item>
    <item>
      <title>Geertjan's Blog: Mass Format in NetBeans IDE 7.2</title>
      <guid isPermaLink="false">https://blogs.oracle.com/geertjan/entry/mass_format_in_netbeans_ide</guid>
      <link>https://blogs.oracle.com/geertjan/entry/mass_format_in_netbeans_ide</link>
      <description>&lt;p&gt;Prior to the upcoming 7.2 release, the Source | Format menu item would be disabled, unless the currently selected window was an editor document.&lt;/p&gt; &lt;p&gt;In 7.2, you can select any of these:&lt;/p&gt; &lt;p&gt; &lt;/p&gt; &lt;ul&gt; &lt;li&gt;project node&lt;/li&gt; &lt;li&gt;Source Packages node&lt;/li&gt; &lt;li&gt;package node&lt;/li&gt; &lt;li&gt;folder node&lt;/li&gt; &lt;/ul&gt; &lt;div&gt; &lt;p&gt;And you can also select multiple nodes, from various kinds, of
      the above. You'll then see that Source | Format is enabled and functions as you might expect:&lt;/p&gt; &lt;p&gt; &lt;/p&gt; &lt;p&gt;When the action is invoked everything within the selected nodes is formatted as defined by the rules defined in the Options window.&lt;/p&gt; &lt;p&gt;Related issue:&#160;&lt;a href="https://www.netbeans.org/bugzilla/show_bug.cgi?id=67397"&gt;https://www.netbeans.org/bugzilla/show_bug.cgi?id=67397&lt;/a&gt;&lt;/p&gt; &lt;/div&gt;</description>
      <pubDate>Fri, 11 May 2012 10:59:25 +0000</pubDate>
    </item>
    <item>
      <title>NetBeans DZone: NetBeans Platform</title>
      <guid isPermaLink="false">http://netbeans.dzone.com/109641 at http://netbeans.dzone.com</guid>
      <link>http://feeds.dzone.com/~r/zones/netbeans/~3/cDMprnujmxU/nb-oracle-insurance-rules-palette</link>
      <description>oirpThumb.JPG&lt;img src="http://feeds.feedburner.com/~r/zones/netbeans/~4/cDMprnujmxU" height="1" width="1" /&gt;</description>
      <pubDate>Fri, 11 May 2012 07:31:03 +0000</pubDate>
    </item>
    <item>
      <title>NetBeans Ruminations » NetBeans: Migrating my Mind to Maven (Part 4) – Building an Update Center</title>
      <guid isPermaLink="false">http://www.pellissier.co.za/hermien/?p=333</guid>
      <link>http://www.pellissier.co.za/hermien/?p=333</link>
      <description>&lt;p&gt;The ability to easily build an update center that users of your application can use to update their software, is a very useful feature of the NetBeans Platform. And being able to build this from the command line means that it can be useful on a build server.&lt;/p&gt; &lt;p&gt;For an Ant-based application, you can call the nbms target in the build script of the suite. The nbms and update.xml file will be built to &amp;lt;suite folder&gt;/build/updates. This can also be executed
      from the NetBeans IDE by right-clicking on the suite project &gt; Package As &gt; NBMs.&lt;/p&gt; &lt;p&gt;With a Maven-based project, you can use the following command in the parent project folder:&lt;/p&gt; &lt;pre&gt;mvn nbm:autoupdate&lt;/pre&gt; &lt;p&gt;The nbms and update.xml file will be placed in the parent project folder, under target/netbeans_site.&lt;/p&gt;</description>
      <pubDate>Fri, 11 May 2012 06:24:45 +0000</pubDate>
    </item>
    <item>
      <title>NetBeans DZone: Customize NetBeans Platform Installer to Copy External Files During Installation</title>
      <guid isPermaLink="false">http://netbeans.dzone.com/64657 at http://netbeans.dzone.com</guid>
      <link>http://feeds.dzone.com/~r/zones/netbeans/~3/NHEsrl_AlmQ/nb-customize-installer-to-copy-files</link>
      <description>Installer software helps to copy application files to their expected locations. Well, not only to the application folder, but to any place on the system it is run on.The NetBeans Platform installer infrastructure helps to package and distribute software to any supported machine. The job is routine but it gets a bit tricky when it comes to customization.For instance, consider the situation that an...&lt;img src="http://feeds.feedburner.com/~r/zones/netbeans/~4/NHEsrl_AlmQ" height="1"
      width="1" /&gt;</description>
      <pubDate>Thu, 10 May 2012 19:11:27 +0000</pubDate>
    </item>
    <item>
      <title>Adam Bien: Summer Java EE Workshops</title>
      <guid isPermaLink="false">http://www.adam-bien.com/roller/abien/entry/summer_java_ee_workshops</guid>
      <link>http://www.adam-bien.com/roller/abien/entry/summer_java_ee_workshops</link>
      <description>&lt;ol&gt; &lt;li&gt;23.05, Amsterdam &lt;a href="http://www.nljug.org/pages/events/partnercalendar/00077/?template=showevent.html" target="_blank"&gt;Airport Java EE Hacking, Without Airport&lt;/a&gt;. The dutch version of &lt;a href="http://workshops.adam-bien.com"&gt;Airport Hacking&lt;/a&gt;. Seems like sold out.&lt;/li&gt; &lt;li&gt;26.06-27.06, Munich &lt;a href="http://java-ee-summit.de/2012spring/trainer/"&gt;Java EE Summit. I will give sessions about testing, patterns,
      anti-patterns and a "Productivity with Joy" workshop&lt;/a&gt;. Last year it was sold out.&lt;/li&gt; &lt;li&gt;09.07-10.07, Airport Munich &lt;a href="http://workshops.adam-bien.com/real-world-javaee-bootstrap.htm"&gt;Java EE Bootstrap&lt;/a&gt; and &lt;a href="http://workshops.adam-bien.com/effective-javaee.htm"&gt;Effective Java EE&lt;/a&gt; workshops. At the first day I will focus on principles and essentials needed to bootstrap a Java EE project. The second day is all about tools, approaches and
      tricks for effective Java EE Development. The first edition of this workshop was sold out weeks before. After scaling the venue, there are still some seats available.&lt;/li&gt; &lt;/ol&gt; &lt;br /&gt; Conclusion: Everything Java EE related is sold out :-) &lt;br /&gt; &lt;a href="http://workshops.adam-bien.com/real-world-javaee-bootstrap.htm"&gt;Real World Java EE Bootstrap &lt;/a&gt; and &lt;a href="http://workshops.adam-bien.com/effective-javaee.htm"&gt;Effective Java EE Bootstrap&lt;/a&gt;
      Workshops [Airport Munich] &lt;a href="http://press.adam-bien.com" target="_self"&gt;Books: Real World Java EE Night Hacks - Dissecting Best Practices ...and the bestseller Real World Java EE - Rethinking Best Practices&lt;/a&gt; &lt;p&gt;&lt;/p&gt;</description>
      <pubDate>Thu, 10 May 2012 16:39:58 +0000</pubDate>
    </item>
    <item>
      <title>Geertjan's Blog: Geotk &amp; NetBeans Platform</title>
      <guid isPermaLink="false">https://blogs.oracle.com/geertjan/entry/geotk_netbeans_platform</guid>
      <link>https://blogs.oracle.com/geertjan/entry/geotk_netbeans_platform</link>
      <description>&lt;p&gt;An alternative to &lt;a href="http://openmap.bbn.com/"&gt;OpenMap&lt;/a&gt; is &lt;a href="http://www.geotoolkit.org/"&gt;Geotk&lt;/a&gt;. (&lt;a href="http://www.geotoolkit.org/history.html"&gt;Read here&lt;/a&gt; about the relationship between Geotk and GeoTools.) I &lt;a href="https://blogs.oracle.com/geertjan/entry/openmap_netbeans_platform"&gt;recently wrote about&lt;/a&gt; how to get started setting up OpenMap in a NetBeans Platform application.&lt;/p&gt; &lt;p&gt;Now it's
      Geotk's turn.&#160; &lt;/p&gt; &lt;p&gt;Here's some code to get a first impression of how it works:&lt;/p&gt; &lt;pre&gt;&lt;font size="1"&gt;public class Map extends JFrame { public Map() { initComponents(); setLayout(new BorderLayout()); MapContext mapContext = MapBuilder.createContext(DefaultGeographicCRS.WGS84); addShpData(mapContext); JMap2D map = new JMap2D(); map.getContainer().setContext(mapContext); map.setBackground(new Color(0, 150, 150)); JNavigationBar navBar = new JNavigationBar(map);
      add(navBar, BorderLayout.NORTH); add(map, BorderLayout.CENTER); } public static void addShpData(MapContext context) { try { DataStore store = DataStoreFinder. getDataStore("url", Map.class.getResource("/some/path/Countries.shp")); Name name = store.getNames().iterator().next(); FeatureCollection fs = store.createSession(true).getFeatureCollection(QueryBuilder.all(name)); MapLayer layer = MapBuilder.createFeatureLayer(fs, RandomStyleFactory.createRandomVectorStyle(fs)); layer.setVisible(true);
      context.layers().add(layer); } catch (DataStoreException e) { } } ... ... ...&lt;/font&gt;&lt;/pre&gt; &lt;p&gt;When the application above is run, the following is shown, depending on the selected Shape file:&lt;/p&gt; &lt;p&gt;&lt;img src="https://blogs.oracle.com/geertjan_images/resource/geotoolkit-nb-1.png" /&gt; &lt;/p&gt; &lt;p&gt;Next, of course, I want to do the above within a NetBeans Platform application.&lt;/p&gt; &lt;p&gt;Here's the code I used, in a TopComponent, i.e., a copy/paste of the
      code above:&lt;/p&gt; &lt;pre&gt;&lt;font size="1"&gt;public final class MapTopComponent extends TopComponent { public MapTopComponent() { initComponents(); setName(Bundle.CTL_MapTopComponent()); setToolTipText(Bundle.HINT_MapTopComponent()); setLayout(new BorderLayout()); MapContext mapContext = MapBuilder.createContext(DefaultGeographicCRS.SPHERE); addShpData(mapContext); JMap2D map = new JMap2D(); map.getContainer().setContext(mapContext); map.setBackground(new Color(0, 150, 150)); JNavigationBar
      navBar = new JNavigationBar(map); add(navBar, BorderLayout.NORTH); add(map, BorderLayout.CENTER); } public void addShpData(MapContext context) { try { DataStore store = DataStoreFinder.getDataStore("url", MapTopComponent.class.getResource("Countries.shp")); Name name = store.getNames().iterator().next(); Session session = store.createSession(true); FeatureCollection fs = session.getFeatureCollection(QueryBuilder.all(name)); MapLayer layer = MapBuilder.createFeatureLayer(fs,
      RandomStyleFactory.createDefaultVectorStyle(fs)); layer.setVisible(true); context.layers().add(layer); } catch (DataStoreException e) { } } ... ... ...&lt;/font&gt;&lt;/pre&gt; &lt;p&gt;However, when I run the above, I see the following:&lt;/p&gt; &lt;p&gt;&lt;img src="https://blogs.oracle.com/geertjan_images/resource/geotoolkit-nb-2.png%20" /&gt; &lt;/p&gt; &lt;p&gt;The message in the error dialog above is:&lt;/p&gt; &lt;p&gt;"The ShapeFileDatastore does&#160;not support sortby query."&lt;/p&gt;
      &lt;p&gt;I wonder why this problem occurs, since the code works fine in a standard Java Swing application, but not in the NetBeans Platform. I have a feeling that the DataStore class is resolved to a different implementation in standard Java Swing to when used within the NetBeans Platform.&lt;/p&gt; &lt;p&gt;I asked Johann Sorel from the Geotk project for advice, and he told me: "Shapefile are flat files with few indexes, a sort by would cause the datastore to read the full file and potentialy take
      much memory." I tried various solutions based on what Johann sent, but so far without any luck. Hope to get this working!&lt;/p&gt;</description>
      <pubDate>Thu, 10 May 2012 07:00:00 +0000</pubDate>
    </item>
    <item>
      <title>Arun Gupta, Miles to go ...: OTN Developer Days in Turkey and Johannesburg, Geecon in Poland, JEEConf in Ukraine</title>
      <guid isPermaLink="false">https://blogs.oracle.com/arungupta/entry/otn_developer_days_in_turkey</guid>
      <link>https://blogs.oracle.com/arungupta/entry/otn_developer_days_in_turkey</link>
      <description>&lt;br /&gt; Several Java EE sessions around the world over next few days ...&lt;br /&gt; &lt;br /&gt; &lt;table cellpadding="5" style="text-align: left;" cellspacing="5"&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td style="vertical-align: top;"&gt;&lt;a href="http://www.oracle.com/webapps/events/ns/EventsDetail.jsp?p_eventId=144022&amp;amp;src=7307403&amp;amp;src=7307403&amp;amp;Act=212"&gt;&lt;img src="https://blogs.oracle.com/arungupta/resource/otn-day-turkey-2012.png" alt="" style="border: 0px
      solid; width: 200px; height: 94px;" /&gt;&lt;/a&gt;&lt;br /&gt; &lt;/td&gt; &lt;td style="vertical-align: top;"&gt;Where: Ceylan Intercontinental Istanbul, Turkey&lt;br /&gt; When: May 14, 9am&lt;br /&gt; Sessions: Several Java EE 6/7 sessions&lt;br /&gt; &lt;a href="http://www.oracle.com/webapps/events/ns/EventsDetail.jsp?p_eventId=144022&amp;amp;src=7307403&amp;amp;src=7307403&amp;amp;Act=212"&gt;Agenda&lt;/a&gt;, &lt;a
      href="http://www.oracle.com/webapps/events/EvtInit.jsp?prfURL=https%3A%2F%2Fmyprofile.oracle.com%2FEndUser%2Ffaces%2Fprofile%2Fsso%2FupdateUser.jspx%3Ftid%3Dcomplete%26doupdate%3Dn%26nextURL%3D&amp;amp;evtURL=http%3A%2F%2Fwww.oracle.com%2Fwebapps%2Fevents%2Fservlet%2FSurvey%3Fp_eventId%3D144022%26src%3D7307403%26src%3D7307403%26Act%3D212%26showProfile%3Dn%26langCode%3Dtr"&gt;Register&lt;/a&gt;&lt;br /&gt; &lt;/td&gt; &lt;/tr&gt; &lt;/tbody&gt; &lt;/table&gt; &lt;br /&gt; &lt;br /&gt; &lt;table
      cellpadding="5" style="text-align: left;" cellspacing="5"&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td style="vertical-align: top;"&gt;&lt;img src="https://blogs.oracle.com/arungupta/resource/geecon-2012-logo.png" alt="" style="width: 167px; height: 100px;" /&gt;&lt;br /&gt; &lt;/td&gt; &lt;td style="vertical-align: top;"&gt;Where: Poznan, Poland&lt;br /&gt; When: May 16-18&lt;br /&gt; Sessions: &lt;br /&gt; &#160;&#160;&#160; &lt;a href="http://2012.geecon.org/speakers/arun-gupta"&gt;Java EE 6 = Less Code +
      More Power&lt;/a&gt; (May 16, 9am)&lt;br /&gt; &#160;&#160;&#160; &lt;a href="http://2012.geecon.org/speakers/arun-gupta"&gt;Java EE 7: Developing for the Cloud&lt;/a&gt; (May 16, 11:10am)&lt;br /&gt; &#160;&#160;&#160; &lt;a href="http://2012.geecon.org/speakers/arun-gupta"&gt; JAX-RS 2.0: RESTful Java on Steroids&lt;/a&gt; (May 18, 11:20am)&lt;br /&gt; &#160;&#160;&#160; &lt;a href="http://2012.geecon.org/speakers/arun-gupta"&gt;PaaSing a Java EE 6 Application&lt;/a&gt; (May 18, 2:30pm)&lt;br /&gt;
      &lt;/td&gt; &lt;/tr&gt; &lt;/tbody&gt; &lt;/table&gt; &lt;br /&gt; &lt;br /&gt; &lt;table cellpadding="5" style="text-align: left;" cellspacing="5"&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td style="vertical-align: top;"&gt;&lt;img src="https://blogs.oracle.com/arungupta/resource/jeeconf-2012-logo.png" alt="" style="width: 194px; height: 97px;" /&gt;&lt;br /&gt; &lt;/td&gt; &lt;td style="vertical-align: top;"&gt;Where: International Exhibition Center, Kiev, Ukraine&lt;br /&gt; When: May 19, 10am&lt;br /&gt;
      Session: &lt;a href="http://jeeconf.com/program/#jee7"&gt;Java EE 7: Developing for the Cloud&lt;/a&gt;&lt;br /&gt; &lt;a href="http://jeeconf.com/registration/"&gt;Register&lt;/a&gt;&lt;br /&gt; &lt;/td&gt; &lt;/tr&gt; &lt;/tbody&gt; &lt;/table&gt; &lt;br /&gt; &lt;br /&gt; &lt;table cellpadding="5" style="text-align: left;" cellspacing="5"&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td style="vertical-align: top;"&gt;&lt;a
      href="http://www.oracle.com/webapps/events/ns/EventsDetail.jsp?p_eventId=144025&amp;amp;src=7307403&amp;amp;src=7307403&amp;amp;Act=352"&gt;&lt;img src="https://blogs.oracle.com/arungupta/resource/otn-day-joburg-2012.png" alt="" style="border: 0px solid; width: 250px; height: 74px;" /&gt;&lt;/a&gt;&lt;br /&gt; &lt;/td&gt; &lt;td style="vertical-align: top;"&gt;When: May 21&lt;br /&gt; Where: The Forum, Johannesburg, South Africa&lt;br /&gt; Session: Several&lt;br /&gt; &lt;a
      href="http://www.oracle.com/webapps/events/ns/EventsDetail.jsp?p_eventId=144025&amp;amp;src=7307403&amp;amp;src=7307403&amp;amp;Act=352"&gt;Agenda&lt;/a&gt;, &lt;a
      href="http://www.oracle.com/webapps/events/EvtInit.jsp?prfURL=https%3A%2F%2Fmyprofile.oracle.com%2FEndUser%2Ffaces%2Fprofile%2Fsso%2FupdateUser.jspx%3Ftid%3Dcomplete%26doupdate%3Dn%26nextURL%3D&amp;amp;evtURL=http%3A%2F%2Fwww.oracle.com%2Fwebapps%2Fevents%2Fservlet%2FSurvey%3Fp_eventId%3D144025%26src%3D7307403%26src%3D7307403%26Act%3D352%26showProfile%3Dn%26langCode%3Den"&gt;Register&lt;/a&gt; &lt;br /&gt; &lt;br /&gt; &lt;/td&gt; &lt;/tr&gt; &lt;/tbody&gt; &lt;/table&gt; &lt;br /&gt; Where will I
      see or run with you ?&lt;br /&gt; &lt;br /&gt;</description>
      <pubDate>Thu, 10 May 2012 04:45:00 +0000</pubDate>
    </item>
    <item>
      <title>Geertjan's Blog: JavaFX Charts for Kirk Pepperdine's VisualVM Plugin</title>
      <guid isPermaLink="false">https://blogs.oracle.com/geertjan/entry/javafx_charts_for_kirk_s</guid>
      <link>https://blogs.oracle.com/geertjan/entry/javafx_charts_for_kirk_s</link>
      <description>&lt;p&gt;&lt;a href="http://www.kodewerk.com/"&gt;Kirk Pepperdine&lt;/a&gt; wrote a VisualVM plugin sometime ago &lt;a href="http://netbeans.dzone.com/vvm-displaying-java-memory-pool-stats"&gt;for displaying Java's memory pool statistics&lt;/a&gt;:&lt;/p&gt; &lt;p&gt;&lt;img src="https://blogs.oracle.com/geertjan_images/resource/java-memory-monitor-kirk-1.png%20" /&gt; &lt;/p&gt; &lt;p&gt;Sources are here: &lt;a
      href="http://java.net/projects/memorypoolview"&gt;http://java.net/projects/memorypoolview&#160;&lt;/a&gt;&lt;/p&gt; &lt;p&gt;Let's replace those charts with some of the cool charts provided by JavaFX. In real life, of course, the charts below are all squiggly and moving like a stock chart:&lt;/p&gt; &lt;p&gt;&lt;a href="https://blogs.oracle.com/geertjan_images/resource/java-memory-monitor-kirk-5.gif"&gt;&lt;img src="https://blogs.oracle.com/geertjan_images/resource/java-memory-monitor-kirk-4.png"
      /&gt;&lt;/a&gt; &lt;/p&gt; &lt;p&gt;The data displayed above isn't real. The blog entry you're currently reading only deals with embedding JavaFX charts into Kirk's VisualVM plugin. It does not deal with the question about how to update those charts when the memory pool changes. That is a different discussion for another time. So, to get started, from the above, as you can see, I like this NetBeans IDE sample for JavaFX, which, as you can see from the above, would be a cool replacement for those blue
      lines in Kirk's plugin:&lt;/p&gt; &lt;p&gt;&lt;img src="https://blogs.oracle.com/geertjan_images/resource/java-memory-monitor-kirk-2.png%20" /&gt; &lt;/p&gt; &lt;p&gt;Of course, the above is an image; in real life it is an animated stock line like you might expect in stock applications. The above is one of the standard JavaFX samples that comes with NetBeans IDE, named "ChartAdvancedStockLine".&lt;/p&gt; &lt;p&gt;Let's start by transforming Kirk's plugin so that it is embedded in a nice comfy JavaFX
      environment. That entails two steps:&lt;/p&gt; &lt;p&gt; &lt;/p&gt; &lt;ol&gt; &lt;li&gt;Wrap the jfxrt.jar (the JavaFX Runtime JAR) into the module. Though a preferable approach in a modular application, such as VisualVM, would be to create a separate module for the JAR, it is quite convenient to stick it into the module where the JavaFX functionality is going to be found. That way we'll only have one NBM to distribute, instead of two. So, right-click the module, choose Properties, go to Libraries |
      Wrapped JARs, click Add JAR, and browse to the "jfxrt.jar" in your JavaFX distribution.&lt;br /&gt;&lt;/li&gt; &lt;br /&gt; &lt;li&gt;Next, we need to include the JavaFX native libraries in our module. At some stage, maybe already in JDK 7 Update 4, those native libraries will at least be in the JDK. And, hopefully, ultimately, they'll be in the JRE (or in some additional JRE) so that the user will already have the native libraries available. Of course, since VisualVM is a JDK tool, having the JavaFX
      native libraries in the JDK will be exactly what is needed. However, in my case, I am on JDK 7 Update 2, so I am going to include the native libraries (for Windows only, since I'm on Windows right now as I make this plugin) for Windows only, just to prove that it works. Switch to the Files window in NetBeans IDE and copy all the DLL's into "release/modules/bin", which should be a directory you create for the first time. (In "release/modules/ext" you'll find the JAR you wrapped in the previous step.)
      Again, note that this is a temporary step, since the DLL's will ultimately be in the JDK already.&lt;/li&gt; &lt;/ol&gt; &lt;p&gt;Now we're good to go. Let's start coding. In fact, not much coding, mostly refactoring, as you'll see.&lt;/p&gt; &lt;p&gt; &lt;/p&gt; &lt;ol&gt; &lt;li&gt;From the JavaFX example illustrated above, i.e., "ChartAdvancedStockLine", copy the variables at the top of the (only) class in the sample, i.e., "ChartAdvancedStockLine.java" to the top of Kirk's plugin's
      "MemoryPoolPanel.java" file: &lt;pre&gt;private XYChart.Series hourDataSeries; private XYChart.Series minuteDataSeries; private NumberAxis xAxis; private Timeline animation; private double hours = 0; private double minutes = 0; private double timeInHours = 0; private double prevY = 10; private double y = 10;&lt;/pre&gt; &lt;/li&gt; &lt;li&gt;Next copy the bulk of the code into the same class in Kirk's plugin, i.e., copy "createChart()", "nextTime()", "plotTime()", "play()", and "stop()", as shown
      below, i.e., the below is literally copied and pasted from the sample code: &lt;pre&gt;protected LineChart createChart() { xAxis = new NumberAxis(0, 24, 3); final NumberAxis yAxis = new NumberAxis(0, 100, 10); final LineChart lc = new LineChart(xAxis, yAxis); // setup chart lc.setId("lineStockDemo"); lc.setCreateSymbols(false); lc.setAnimated(false); lc.setLegendVisible(false); lc.setTitle("ACME Company Stock"); xAxis.setLabel("Time"); xAxis.setForceZeroInRange(false); yAxis.setLabel("Share Price");
      yAxis.setTickLabelFormatter(new NumberAxis.DefaultFormatter(yAxis, "$", null)); // add starting data hourDataSeries = new XYChart.Series(); hourDataSeries.setName("Hourly Data"); minuteDataSeries = new XYChart.Series(); minuteDataSeries.setName("Minute Data"); // create some starting data hourDataSeries.getData().add(new XYChart.Data(timeInHours, prevY)); minuteDataSeries.getData().add(new XYChart.Data(timeInHours, prevY)); for (double m = 0; m &amp;lt; (60); m++) { nextTime(); plotTime(); }
      lc.getData().add(minuteDataSeries); lc.getData().add(hourDataSeries); return lc; } private void nextTime() { if (minutes == 59) { hours++; minutes = 0; } else { minutes++; } timeInHours = hours + ((1d / 60d) * minutes); } private void plotTime() { if ((timeInHours % 1) == 0) { // change of hour double oldY = y; y = prevY - 10 + (Math.random() * 20); prevY = oldY; while (y &amp;lt; 10 || y &gt; 90) { y = y - 10 + (Math.random() * 20); } hourDataSeries.getData().add(new XYChart.Data(timeInHours,
      prevY)); // after 25hours delete old data if (timeInHours &gt; 25) { hourDataSeries.getData().remove(0); } // every hour after 24 move range 1 hour if (timeInHours &gt; 24) { xAxis.setLowerBound(xAxis.getLowerBound() + 1); xAxis.setUpperBound(xAxis.getUpperBound() + 1); } } double min = (timeInHours % 1); double randomPickVariance = Math.random(); if (randomPickVariance &amp;lt; 0.3) { double minY = prevY + ((y - prevY) * min) - 4 + (Math.random() * 8); minuteDataSeries.getData().add(new
      XYChart.Data(timeInHours, minY)); } else if (randomPickVariance &amp;lt; 0.7) { double minY = prevY + ((y - prevY) * min) - 6 + (Math.random() * 12); minuteDataSeries.getData().add(new XYChart.Data(timeInHours, minY)); } else if (randomPickVariance &amp;lt; 0.95) { double minY = prevY + ((y - prevY) * min) - 10 + (Math.random() * 20); minuteDataSeries.getData().add(new XYChart.Data(timeInHours, minY)); } else { double minY = prevY + ((y - prevY) * min) - 15 + (Math.random() * 30);
      minuteDataSeries.getData().add(new XYChart.Data(timeInHours, minY)); } // after 25hours delete old data if (timeInHours &gt; 25) { minuteDataSeries.getData().remove(0); } } public void play() { animation.play(); } public void stop() { animation.pause(); } &lt;/pre&gt; &lt;/li&gt; &lt;li&gt;Now we'll add our first bit of unique code to the class, though the body (i.e., the animation stuff) is directly copied from the JavaFX sample: &lt;pre&gt;private void initAndShowGUI() { final JFXPanel fxPanel =
      new JFXPanel(); add(fxPanel, BorderLayout.CENTER); Platform.runLater(new Runnable() { @Override public void run() { fxPanel.setScene(new Scene(createChart())); animation = new Timeline(); animation.getKeyFrames().add(new KeyFrame(Duration.millis(1000 / 60), new EventHandler() { @Override public void handle(ActionEvent actionEvent) { // 6 minutes data per frame for (int count = 0; count &amp;lt; 6; count++) { nextTime(); plotTime(); } } })); animation.setCycleCount(Animation.INDEFINITE); play(); } });
      }&lt;/pre&gt; &lt;p&gt;So, we use the JFXPanel, since that's what it's for, i.e., it is a Swing container for embedding JavaFX code, in this case a Scene defined by our LineChart, which is returned by the "createChart()" method, which we moved into the class in the previous step. The initialization of the animation functionality is a direct copy/paste from the sample.&lt;/p&gt; &lt;/li&gt; &lt;br /&gt; &lt;li&gt;At this stage, when you install the plugin, the JavaFX chart is running inside VisualVM!
      Now you need to customize the JavaFX chart to display the same info as in Kirk's original code. For example, use the "memoryPoolUpdated" method, which is an override from something Kirk created, to do something like this: &lt;pre&gt;@Override public void memoryPoolUpdated(MemoryPoolModel model) { long[] dataPoints = new long[2]; dataPoints[0] = model.getCommitted(); dataPoints[1] = model.getUsed(); // chart.addValues(System.currentTimeMillis(), dataPoints); animation.getKeyFrames().add( new
      KeyFrame(Duration.millis(System.currentTimeMillis()), new EventHandler() { ... ... ...&lt;/pre&gt; &lt;p&gt;The point is, when the memory pool changes, you need to update the JavaFX chart. That synchronization is outside the scope of what I'm trying to do here, i.e., I want to show how the JavaFX charts can be embedded in VisualVM. If you're at this stage of the story, you're welcome to develop Kirk's plugin further, to show the JavaFX chart changing as the memory pool changes. &lt;/p&gt; &lt;/li&gt;
      &lt;/ol&gt; &lt;p&gt;When I run it at this point in the proceedings, Kirk's plugin looks as follows in VisualVM:&lt;/p&gt; &lt;p&gt;&lt;a href="https://blogs.oracle.com/geertjan_images/resource/java-memory-monitor-kirk-5.gif"&gt;&lt;img src="https://blogs.oracle.com/geertjan_images/resource/java-memory-monitor-kirk-4.png" /&gt;&lt;/a&gt; &lt;/p&gt; &lt;p&gt;Looking forward to what Kirk thinks of this and also to seeing this plugin come to a happy resolution in the JavaFX
      ecosystem!&lt;/p&gt;</description>
      <pubDate>Wed, 09 May 2012 15:14:49 +0000</pubDate>
    </item>
    <item>
      <title>NetBeans DZone: NetBeans Weekly News (Issue #536 - May 09, 2012)</title>
      <guid isPermaLink="false">http://netbeans.dzone.com/109517 at http://netbeans.dzone.com</guid>
      <link>http://feeds.dzone.com/~r/zones/netbeans/~3/IO2P2LbLy7g/netbeans-weekly-news-issue-536</link>
      <description>Project News 10th Annual Duke's Choice Awards: Nominations Call The Duke's Choice Awards celebrate extreme innovation in the world of Java technology. NetBeans-based projects have been Duke winners in 2009 and 2011. Be a part of this distinguished group!&lt;img src="http://feeds.feedburner.com/~r/zones/netbeans/~4/IO2P2LbLy7g" height="1" width="1" /&gt;</description>
      <pubDate>Wed, 09 May 2012 12:42:22 +0000</pubDate>
    </item>
    <item>
      <title>Geertjan's Blog: Leveraging AgroSense, GeoViewer, and Maven</title>
      <guid isPermaLink="false">https://blogs.oracle.com/geertjan/entry/leveraging_agrosense_geoviewer_and_maven</guid>
      <link>https://blogs.oracle.com/geertjan/entry/leveraging_agrosense_geoviewer_and_maven</link>
      <description>&lt;p&gt;&lt;a href="http://www.agrosense.nl/home/en"&gt;AgroSense&lt;/a&gt; is a Java open-source services platform for farm management. It looks like an extremely cool and well-designed app, on top of SwingX, GeoTools, the Flamingo Ribbon bar, the NetBeans Platform, and many other libraries. Click to enlarge the image to get a better view:&#160;&lt;/p&gt; &lt;p&gt;&lt;a href="https://blogs.oracle.com/geertjan_images/resource/geoviewer-qs-4.jpg"&gt;&lt;img
      src="https://blogs.oracle.com/geertjan_images/resource/geoviewer-qs-5.png%20" /&gt;&lt;/a&gt;&lt;/p&gt; &lt;p&gt;As an open source project, the team is constantly looking for new developers to work with them, especially if you're interested in farm software. In fact, forget about creating your own farm software, just port your code to plugins for AgroSense. Come one, come all and join this truly useful Java project. (One simple way to join is to leave a message at the end of this blog entry and then
      you'll be contacted.)&lt;/p&gt;&lt;a href="https://blogs.oracle.com/geertjan_images/resource/geoviewer-qs-4.jpg"&gt; &lt;/a&gt; &lt;p&gt;The project is built via Maven. Here's the source structure in the IDE, from a Mercurial check out that I did today:&lt;/p&gt; &lt;p&gt;&lt;img src="https://blogs.oracle.com/geertjan_images/resource/geoviewer-qs-7.png" /&gt; &lt;/p&gt; &lt;p&gt;(Tushar Joshi from India should recognize part of the above project structure!)&#160;&lt;/p&gt; &lt;p&gt;Artifacts from
      AgroSense are checked into Maven central, so parts of the above application can very easily be reused within your own Maven-based NetBeans Platform applications. For example, let's assume we want to reuse the mapping functionality from AgroSense, as provided by the "geoviewer" suite in the project structure above.&lt;/p&gt; &lt;p&gt;Here's what you need to do to achieve the above.&#160;&lt;/p&gt; &lt;p&gt;1. Create a new Maven based NetBeans Platform application:&lt;/p&gt; &lt;p&gt;&lt;img
      src="https://blogs.oracle.com/geertjan_images/resource/geoviewer-qs-1.png" /&gt; &lt;/p&gt; &lt;p&gt;2. Give the application a name and other Maven properties: &lt;/p&gt; &lt;p&gt;&lt;img src="https://blogs.oracle.com/geertjan_images/resource/geoviewer-qs-2.png" /&gt;&lt;/p&gt; &lt;p&gt;3. Add these dependencies in the POM file of the NetBeans Platform application module:&lt;/p&gt; &lt;pre&gt;&amp;lt;dependency&gt; &amp;lt;groupId&gt;nl.cloudfarming.client&amp;lt;/groupId&gt;
      &amp;lt;artifactId&gt;geoviewer-api&amp;lt;/artifactId&gt; &amp;lt;version&gt;1.0.24&amp;lt;/version&gt; &amp;lt;/dependency&gt; &amp;lt;dependency&gt; &amp;lt;groupId&gt;nl.cloudfarming.client&amp;lt;/groupId&gt; &amp;lt;artifactId&gt;geoviewer-jxmap&amp;lt;/artifactId&gt; &amp;lt;version&gt;1.0.24&amp;lt;/version&gt; &amp;lt;/dependency&gt;&lt;/pre&gt; &lt;p&gt;4. Build and run the application and you should see this: &lt;/p&gt; &lt;p&gt;&lt;img
      src="https://blogs.oracle.com/geertjan_images/resource/geoviewer-qs-3.png" /&gt; &lt;/p&gt; &lt;p&gt;&lt;b&gt;Note:&#160;&lt;/b&gt;An example of AgroSense API usage for the GeoViewer is included in the "examples" folder in the Mercurial repository:&lt;/p&gt; &lt;a href="http://java.net/projects/agrosense/sources/core/show"&gt;http://java.net/projects/agrosense/sources/core/show&lt;/a&gt; &lt;p&gt;I intend to discuss this example in an upcoming blog entry soon.&lt;/p&gt;</description>
      <pubDate>Tue, 08 May 2012 18:41:46 +0000</pubDate>
    </item>
    <item>
      <title>Geertjan's Blog: OpenMap &amp; NetBeans Platform</title>
      <guid isPermaLink="false">https://blogs.oracle.com/geertjan/entry/openmap_netbeans_platform</guid>
      <link>https://blogs.oracle.com/geertjan/entry/openmap_netbeans_platform</link>
      <description>&lt;p&gt;&lt;a href="http://openmap.bbn.com/"&gt;OpenMap&lt;/a&gt; is an open-source map technology. Integrated into the NetBeans Platform, you can click on a map (below one of the sample maps that comes with the OpenMap download is shown), and then use Lookup to publish items of interest for display in other windows, which can be undocked at startup (and the application can start in full screen mode) with tabs removed, creating the start of a typical mapping solution, such as used in
      air traffic control systems:&lt;/p&gt; &lt;p&gt;&lt;img src="https://blogs.oracle.com/geertjan_images/resource/openmap-nb-small2.png" /&gt;&lt;/p&gt; &lt;p&gt;(My mouse isn't shown in the screenshot above, but it is on Ouagadougou in Burkina Faso. Hi Constantine and other NetBeans users in Ouagadougou!)&#160;&lt;/p&gt; &lt;p&gt;Here's the code in the MapTopComponent, which is in the "editor" position above, with the tab removed, so that it covers the whole frame of the application:&#160;&lt;/p&gt;
      &lt;pre&gt;public final class MapTopComponent extends TopComponent { private final InstanceContent ic = new InstanceContent(); public MapTopComponent() { initComponents(); setName(Bundle.CTL_MapTopComponent()); setToolTipText(Bundle.HINT_MapTopComponent()); setLayout(new BorderLayout()); try { //MapPanel: MapPanel mapPanel = new BasicMapPanel(); //MapHandler: MapHandler mapHandler = mapPanel.getMapHandler(); mapHandler.add(new LayerHandler()); mapHandler.add(this); //MapBean: MapBean mapBean =
      mapPanel.getMapBean(); mapBean.setScale(120000000f); //Selection: MouseDelegator mouseDelegator = new MouseDelegator(); mapHandler.add(mouseDelegator); SelectMouseMode selectMouseMode = new SelectMouseMode(); mapHandler.add(selectMouseMode); mouseDelegator.setActive(selectMouseMode); //MapMouseListener: final MyMapMouseListener myMapMouseListener = new MyMapMouseListener(); //ShapeLayer: ShapeLayer shapeLayer = new ShapeLayer() { @Override public synchronized MapMouseListener getMapMouseListener() {
      return myMapMouseListener; } }; //Properties: Properties shapeLayerProps = new Properties(); shapeLayerProps.put("lineColor", "000000"); shapeLayerProps.put("fillColor", "BDDE83"); shapeLayerProps.put("shapeFile", "org/myatc/initializer/dcwpo-browse.shp"); shapeLayerProps.put("spatialIndex", "org/myatc/initializer/dcwpo-browse.ssx"); //Assign properties to ShapeLayer: shapeLayer.setProperties(shapeLayerProps); shapeLayer.setVisible(true); //Assign ShapeLayer to MapHandler: mapHandler.add(shapeLayer);
      add(mapPanel.getMapBean(), BorderLayout.CENTER); } catch (MultipleSoloMapComponentException msmce) { } associateLookup(new AbstractLookup(ic)); } public class MyMapMouseListener implements MapMouseListener { @Override public String[] getMouseModeServiceList() { return new String[]{SelectMouseMode.modeID}; } @Override public boolean mouseClicked(MouseEvent e) { MapMouseEvent mme = (MapMouseEvent) e; //Optionally: //LatLonPoint latLonPoint = LatLonPoint.getFloat(mme.getLatLon()); //UTMPoint utmPoint =
      UTMPoint.LLtoUTM(latLonPoint); //Publish something into Lookup: ic.set(Collections.singleton(mme.getLatLon()), null); return true; } @Override public boolean mousePressed(MouseEvent e) {return true;} @Override public boolean mouseReleased(MouseEvent e) {return true;} @Override public void mouseEntered(MouseEvent e) {} @Override public void mouseExited(MouseEvent e) {} @Override public boolean mouseDragged(MouseEvent e) {return true;} @Override public boolean mouseMoved(MouseEvent e) {return true;}
      @Override public void mouseMoved() {} } ... ... ...&lt;/pre&gt;</description>
      <pubDate>Tue, 08 May 2012 06:06:07 +0000</pubDate>
    </item>
    <item>
      <title>NetBeans RSS Feed Filter: JSF 2 Tip of the Day: Learning the JSF Lifecycle with a PhaseListener</title>
      <guid isPermaLink="false">http://pipes.yahoo.com/pipes/05c8976f752a076398231a6293ce68e8_2b4a5b88de865c8d20aa9424a54206b8</guid>
      <link>http://feedproxy.google.com/~r/JavaEvangelistJohnYearysBlog/~3/T9kFBr0G0KE/jsf-2-tip-of-day-learning-jsf-lifecycle.html</link>
      <description>&lt;div style="clear: both; text-align: center;" class="separator"&gt; &lt;a style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;" href="http://javaserverfaces.java.net/images/glassfish_logo.gif" target="_blank" rel="nofollow"&gt;&lt;img src="http://javaserverfaces.java.net/images/glassfish_logo.gif" border="0" /&gt;&lt;/a&gt;&lt;/div&gt; I have to do some JSF training in the next couple of weeks for some of the staff at the company where I work. The learning curve for
      JSF has often been called a vertical wall. In part this is due to the JSF Lifecycle. The JSF Lifecycle has a number of phases, and before and after each phase there is an extension point where we can intervene in the process using a &lt;code&gt;&lt;a href="http://javaserverfaces.java.net/nonav/docs/2.1/javadocs/javax/faces/event/PhaseListener.html" target="_blank" rel="nofollow"&gt;PhaseListener&lt;/a&gt;&lt;/code&gt;.&lt;br /&gt; &lt;br /&gt; Since the&#160;&lt;a style="font-family: monospace;"
      href="http://javaserverfaces.java.net/nonav/docs/2.1/javadocs/javax/faces/event/PhaseListener.html" target="_blank" rel="nofollow"&gt;PhaseListener&lt;/a&gt;&#160;intercepts the process, you can use it to learn the phases. The&#160;&lt;a style="font-family: monospace;" href="http://javaserverfaces.java.net/nonav/docs/2.1/javadocs/javax/faces/event/PhaseListener.html" target="_blank" rel="nofollow"&gt;PhaseListener&lt;/a&gt;&#160;below is an example of one that reports on all &lt;code&gt;&lt;a
      href="http://javaserverfaces.java.net/nonav/docs/2.1/javadocs/javax/faces/event/PhaseEvent.html" target="_blank" rel="nofollow"&gt;PhaseEvent&lt;/a&gt;s&lt;/code&gt;. You should modify it to learn what occurs during each phase.&lt;br /&gt; &lt;h2&gt; PhaseListenerImpl.java&lt;/h2&gt; Here is the output: &lt;br /&gt; &lt;pre&gt;INFO: Before Phase: RESTORE_VIEW 1 invoked. INFO: After Phase: RESTORE_VIEW 1 invoked. INFO: Before Phase: APPLY_REQUEST_VALUES 2 invoked. INFO: After Phase:
      APPLY_REQUEST_VALUES 2 invoked. INFO: Before Phase: PROCESS_VALIDATIONS 3 invoked. INFO: After Phase: PROCESS_VALIDATIONS 3 invoked. INFO: Before Phase: UPDATE_MODEL_VALUES 4 invoked. INFO: After Phase: UPDATE_MODEL_VALUES 4 invoked. INFO: Before Phase: INVOKE_APPLICATION 5 invoked. INFO: After Phase: INVOKE_APPLICATION 5 invoked. INFO: Before Phase: RENDER_RESPONSE 6 invoked. INFO: After Phase: RENDER_RESPONSE 6 invoked. &lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img
      src="https://blogger.googleusercontent.com/tracker/36773632-6091204058539084785?l=javaevangelist.blogspot.com" alt="" height="1" width="1" /&gt;&lt;/div&gt; &lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/l_TpYiFtpWIIs0_37okkkOHl4QM/0/da" target="_blank" rel="nofollow"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/l_TpYiFtpWIIs0_37okkkOHl4QM/0/di" border="0" ismap="ismap" /&gt;&lt;/a&gt;&lt;br /&gt; &lt;a href="http://feedads.g.doubleclick.net/~a/l_TpYiFtpWIIs0_37okkkOHl4QM/1/da"
      target="_blank" rel="nofollow"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/l_TpYiFtpWIIs0_37okkkOHl4QM/1/di" border="0" ismap="ismap" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/JavaEvangelistJohnYearysBlog/~4/T9kFBr0G0KE" height="1" width="1" /&gt;</description>
      <pubDate>Mon, 07 May 2012 15:46:35 +0000</pubDate>
    </item>
    <item>
      <title>NetBeans DZone: First Smoke Test: NetBeans IDE 7.1.2 &amp; Oracle JDK 7u4 for Mac OS X</title>
      <guid isPermaLink="false">http://netbeans.dzone.com/64623 at http://netbeans.dzone.com</guid>
      <link>http://feeds.dzone.com/~r/zones/netbeans/~3/OoN5KGAjMHg/smoke-test-netbeans-712</link>
      <description>In case you didn't notice it, Oracle has released the first JDK 7 for Mac OS X made under its own responsibility. This is a historic milestone as in the past decade Apple did the whole job of porting, after some previous poor attempts by Sun. Unfortunately, Apple's work became unsatisfactory too, at least in some respects like constant delays or missing security patches such as those that shed...&lt;img src="http://feeds.feedburner.com/~r/zones/netbeans/~4/OoN5KGAjMHg" height="1"
      width="1" /&gt;</description>
      <pubDate>Mon, 07 May 2012 05:03:02 +0000</pubDate>
    </item>
    <item>
      <title>NetBeans RSS Feed Filter: JSF 2 Tip of the Day: JSF Page Redirection in PhaseListener</title>
      <guid isPermaLink="false">http://pipes.yahoo.com/pipes/05c8976f752a076398231a6293ce68e8_e455e5d48ef72fa426d3bd9fed4768c0</guid>
      <link>http://feedproxy.google.com/~r/JavaEvangelistJohnYearysBlog/~3/qKBXKBtHO54/jsf-2-tip-of-day-jsf-page-redirection.html</link>
      <description>&lt;div style="clear: both; text-align: center;" class="separator"&gt; &lt;a style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;" href="http://javaserverfaces.java.net/images/glassfish_logo.gif" target="_blank" rel="nofollow"&gt;&lt;img src="http://javaserverfaces.java.net/images/glassfish_logo.gif" border="0" /&gt;&lt;/a&gt;&lt;/div&gt; I needed to redirect a user to a login page the other day, and solved it using a &lt;code&gt;PhaseListener&lt;/code&gt;.
      Subsequently, I had another need to do a page redirection based on a value in the &lt;code&gt;HttpSession&lt;/code&gt;. I thought I would share the general idea of how to do it with you.&lt;br /&gt; &lt;br /&gt; The &lt;code&gt;&lt;a href="http://docs.oracle.com/cd/E17802_01/j2ee/javaee/javaserverfaces/2.0/docs/api/javax/faces/event/PhaseListener.html" target="_blank" rel="nofollow"&gt;PhaseListener&lt;/a&gt;&lt;/code&gt; allows us to take action at various integration points in the JSF lifecycle.
      The most likely place you will want to handle an internal redirection, is before the view is restored. We use the JSF &lt;code&gt;&lt;a href="http://docs.oracle.com/cd/E17802_01/j2ee/javaee/javaserverfaces/2.0/docs/api/javax/faces/application/NavigationHandler.html" target="_blank" rel="nofollow"&gt;NavigationHandler&lt;/a&gt;&lt;/code&gt; to do the work for us. &lt;br /&gt; &lt;h2&gt; PageRedirectionPhaseListener.java&lt;/h2&gt; &lt;div class="blogger-post-footer"&gt;&lt;img
      src="https://blogger.googleusercontent.com/tracker/36773632-9031094484498024795?l=javaevangelist.blogspot.com" alt="" height="1" width="1" /&gt;&lt;/div&gt; &lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/nEUya97HUeu4WtqpHklrh7ps-HU/0/da" target="_blank" rel="nofollow"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/nEUya97HUeu4WtqpHklrh7ps-HU/0/di" border="0" ismap="ismap" /&gt;&lt;/a&gt;&lt;br /&gt; &lt;a href="http://feedads.g.doubleclick.net/~a/nEUya97HUeu4WtqpHklrh7ps-HU/1/da"
      target="_blank" rel="nofollow"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/nEUya97HUeu4WtqpHklrh7ps-HU/1/di" border="0" ismap="ismap" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/JavaEvangelistJohnYearysBlog/~4/qKBXKBtHO54" height="1" width="1" /&gt;</description>
      <pubDate>Sun, 06 May 2012 15:46:09 +0000</pubDate>
    </item>
  </channel>
</rss>

