Česky   |  Deutsch   |  English   |  Español   |  Français   |  Indonesia   |  日本語   |  한글   |  Polski   |  Português (BR)   |  Türkçe   |  中文   |  正體中文   |  Your Language  
PlanetNetbeans
Planet NetBeans is an aggregation of NetBeans related musings from all over the Blogosphere.
Feeds
[RSS 1.0 Feed] [RSS 2.0 Feed]
[FOAF Subscriptions] [OPML Subscriptions]
Do you blog about NetBeans ? Add your blog to PlanetNetBeans.
Feed Subscriptions
NetBeans Zone - The social network for developers (feed)
APIDesign - Blogs (feed)
blogtrader - Blog (feed)
David R. Heffelfinger (feed)
Carsten Zerbst's Weblog (feed)
Winston Prakash's Weblog (feed)
Anchialas' Java Blog (feed)
Blog of markiewb (feed)
Paulo Canedo » NetBeans English (feed)
Java, business and... NetBeans ! [[ Jonathan Lermitage ]] - NetBeans IDE (feed)
Michael's blog » NetBeans (feed)
Allan Lykke Christensen » NetBeans (feed)
Inspiration and Expression » Netbeans (feed)
James Selvakumar's Blog » netbeans (feed)
open source. open mind. (feed)
J. O'Conner » NetBeans (feed)
ProNetBeans (feed)
Adam Bien (feed)
Ignacio Sánchez Ginés » NetBeans (feed)
Bernhard's Weblog (feed)
Michel Graciano's Weblog (feed)
Ramon.Ramos (feed)
Ozone and Programming » netbeans (feed)
NetBeans Ruminations » NetBeans (feed)
Tiplite » netbeans (feed)
Arun Gupta, Miles to go ... (feed)
Geertjan's Blog (feed)
.JARa's Bilingual Weblog (feed)
JavaFX Composer (feed)
The Java Jungle (feed)
Jesse Glick (feed)
Martin Grebac (feed)
The NetBeans Community Podcast (feed)
NetBeans Profiler (feed)
NetBeans for PHP (feed)
NetBeans Web Client (feed)
Rechtacek's (feed)
Virtual Steve (feed)
My First Blog - Satyajit Tripathi (feed)
The Aquarium (feed)
Tinuola Awopetu (feed)
Insert Witty Irony Here (feed)
mkleint (feed)
Roger Searjeant's blog (feed)
Optonline Webmail (feed)
Bistro! 2.0 (feed)
nB gUru » NetBeans (feed)
Newsintegrator Blog » netbeans (feed)
Praxis LIVE » NetBeans (feed)
TechAshram » NetBeans (feed)
There's no place like 127.0.0.1 » Netbeans (feed)
Anuradha (feed)
Netbeans6/6.5 my best practices (feed)
Java Evangelist John Yeary's Blog (feed)
Need to find a title (feed)
Michel Graciano's Blog (feed)
Neil's Dev Stuff (feed)
Computer says null; (feed)
NetBeans Adventures, Java and more (feed)
NetBeans Community Docs Blog (feed)
Antonio's blog (feed)
Messages from mrhaki (feed)
The Netbeans Experience (feed)
An Open Source Fascicule (feed)
NbPython/ jpydbg / pymvs (feed)
Manikantan's Netbeans (feed)
Shanbag's Blog (ರಜ&#3236 &#3250&#3275&#3221) (feed)
Wade Chandler's Programming Blog (feed)
Devlin's Lab (feed)
In perfect (spherical) shape (feed)
Alex Kotchnev's Blog (feed)
Big Al's Blog (feed)
Code Snakes (feed)
Van Couvering Is Not a Verb (feed)
Diego Torres Milano's blog (feed)
Oliver Wahlen's Blog (feed)
Vroom Framework (feed)
Jeff's Blog (feed)
Shuttle between Galaxies (feed)
Welcome to my live... (feed)
ryandelaplante.com (feed)
Netbeans IDE Blog by Tushar Joshi, Nagpur (feed)
Devel Blog (feed)
diamond-powder (feed)
Where's my Blog?!

Powered by:    Planet

Last updated:
May 24, 2013 06:05 AM
All times are UTC

Sponsored by
sponsored by Oracle

visit NetBeans website
Geertjan's Blog - May 23, 2013 07:44 AM
Undoable Property Sheet

Sometimes there's a need to integrate undo/redo functionality into the NetBeans Properties window. In other words, when the user types something in the Properties window, and presses Enter, you want the "Undo" action to become enabled, and later the "Redo" after you've undone the change.

Tim Boudreau once sent me, quite some time ago, a module that adds this behavior to the Properties window. About his solution, Tim wrote:

The solution consists of replacing the property sheet window with a custom one, which wraps every node in a FilterNode with properties which proxy the original and write them into a global undo/redo manager;  and replace the standard undo/redo actions with ones which work over that global manager.  The nice thing is that this will work over any node, without any changes to the nodes or their properties (within limits - if you have a property which is, say, a number that can only ever be increased, undoing such a change might fail - but that's a pretty rare situation).

It's still useful without the replacement undo/redo actions and without the global undo/redo manager, it just means that you have to give the property sheet window focus if you want to undo/redo (which may or may not be intuitive, but it's the way the window system works).

Here you see the solution in action in the Movie Analyzer example that was used at a NetBeans Platform Training held at MIT:

And this is where you can find the above sample, i.e., it includes Tim's Undoable Property Sheet:

https://java.net/projects/nb-api-samples/sources/api-samples/show/versions/7.3/misc/MovieAnalyzer

Adding a Savable to it would be the next step so that the Save action is enabled when the user changes a property in the Properties window.

NetBeans for PHP - May 22, 2013 10:28 AM
Static code analysis

<p> Hi all, today we will show you how you can check quality of your PHP code in <strong>NetBeans 7.4</strong>. For this task, we use standard PHP tools <a href="http://pear.php.net/manual/en/package.php.php-codesniffer.php" target="_blank" title="PHP_CodeSniffer">PHP_CodeSniffer</a> and&nbsp;<a href="http://phpmd.org/" target="_blank" title="‎PHP Mess Detector">PHP Mess Detector</a>.</p> <p>As always if NetBeans uses any external tool, verify IDE Options that everything is set correctly:</p> <p><img src="https://blogs.oracle.com/netbeansphp/resource/article_images/code-analysis-1.png" alt="IDE Options" /> </p> <p>If it is, you are ready to inspect your code (one can select a PHP project or a PHP file):</p> <p><img src="https://blogs.oracle.com/netbeansphp/resource/article_images/code-analysis-2.png" alt="Inspect Code" /> </p> <p>Inspect dialog will appear. Here, we can e.g. select only one inspection tool or create custom configuration:</p> <p><img src="https://blogs.oracle.com/netbeansphp/resource/article_images/code-analysis-3.png" alt="Inspect Dialog" /> </p> <p>If we are ready and run the inspection (please notice that it can take a long time for big projects), analysis results are shown:</p> <p><img src="https://blogs.oracle.com/netbeansphp/resource/article_images/code-analysis-4.png" alt="Inspection Results" /> </p> <p>As you can see, the results are categorized by files and folders so we can easily recognize which area of our project needs our attention first. If we double click any of these results, the given warning(s) is shown to us on the proper line:</p> <p><img src="https://blogs.oracle.com/netbeansphp/resource/article_images/code-analysis-5.png" alt="Inspection Warning" /> </p> <p>If anything goes wrong (e.g. inspection is running too long), one can easily verify what each tool does exactly in the <i>Output</i> window:</p> <p><img src="https://blogs.oracle.com/netbeansphp/resource/article_images/code-analysis-6.png" alt="Inspection Log" /></p> <p>If anyone of you has a tip for another PHP code analysis tool, let us know via NetBeans Bugzilla or leave a comment here (<b>please notice that the comments are moderated so they will not appear here immediately</b>).</p> <p><span style="line-height: 18px;">That's all for today, as always, please&nbsp;</span><a title="Development version of NetBeans" target="_blank" href="http://bits.netbeans.org/download/trunk/nightly/latest/" style="line-height: 18px;">test it</a><span style="line-height: 18px;">&nbsp;and report all the issues or enhancements you find in&nbsp;</span><a href="http://netbeans.org/community/issues.html" target="_blank" title="NetBeans Bugzilla" style="line-height: 18px;">NetBeans Bugzilla</a><span style="line-height: 18px;">&nbsp;(component&nbsp;</span><em style="line-height: 18px;">php</em><span style="line-height: 18px;">, subcomponent&nbsp;</span><em style="line-height: 18px;">Code</em><span style="line-height: 18px;">).</span> </p>

Geertjan's Blog - May 22, 2013 07:57 AM
Coalescent Theory Calculation Software on the NetBeans Platform

Coalescent is an open source tool in coalescent theory.

It provides solutions for the exact calculation of likelihood under infinite sites and infinite alleles models of mutations in population genetics.

Additionally, it checks phylogeny and draws gene trees for infinite sites data.


Planned features for the upcoming releases will focus on the following areas:

  1. Importance sampling under infinite sites model.
  2. MCMC under infinite sites model model.
  3. Exact calculation with infinite sites/alleles and various migration models.
  4. Exact calculation with infinite sites/infinite alleles and discrete recombination models.
  5. Sampling algorithms for migration and recombination.
  6. Fine-scale recombinations, such as LDHat/LDHelmet.

More info:

http://coalescent.sourceforge.net/

http://pubmedcentralcanada.ca/pmcc/articles/PMC3575375/

NetBeans Zone - The social network for developers - May 21, 2013 08:39 AM
NetBeans Weekly News (Issue #588 - May 21, 2013 )

Project News Develop Mobile Web Applications On Your Android Device in NetBeans IDE There's an exciting new feature coming to NetBeans IDE 7.4: Support for JavaScript debugging and visual CSS editing on Android devices. But no need to wait till GA release, you can test out the feature now, using the NetBeans 7.4 nightly builds.Legacy Sponsored:  ...

Geertjan's Blog - May 21, 2013 07:38 AM
Health Manager on the NetBeans Platform

Vobium Health Manager, by Vobium Technologies, is software to store and organize your family's medical information securely on your computer.

Many more screenshots can be found here: http://www.vobium.com/health/screenshots

You can manage records across 25+ categories like diseases, allergies, doctor visits, tests & checkups, medicines, vaccinations, surgeries, therapies, diet & fitness, pregnancies, baby milestones, etc, and quickly search for any records whenever needed.

You can generate reports (in PDF or Microsoft Excel format) and carry your data on a USB pen drive, print them, bring them to your doctor visits, or email it to someone. You can print an emergency medical card and keep it in your wallet.

The first time I saw the screenshots, such as the one above, I didn't believe this was written in Java and based on the NetBeans Platform! However, Bhavin Khambhadia from Vobium tells me:

The majority of our end users are Windows based and hence Vobium Health Manager should look like a Windows application. To achieve this, we extended SynthLookAndFeel. We hired an in-house UI designer who created the application wireframe, icons/images, and color combinations for our application. We leveraged rich-client effects for Java Swing applications, as described in "Filthy Rich Clients" by Chet Haase and Romain Guy, together with inputs available from other sources, such as blogs, white papers, in-house POTs, and Google searches.

Here's a screenshot of the application open in NetBeans IDE, showing its modular structure on the NetBeans Platform:

Finally, some nice movies to watch on YouTube:

http://www.youtube.com/user/VobiumHealthManager?feature=watch

APIDesign - Blogs - May 20, 2013 12:45 PM
Bck2Brwsr Goes Server Side: Run the Same Code on Server and Client!

I'd like to introduce my small contribution to Jersey project. It provides (yet another, but this time very lightweight) converter from Java to JSON and back. Together with Bck2Brwsr or FXBrwsr you can now smoothly execute the same Java code on client as well as on your server.

--JaroslavTulach 12:45, 20 May 2013 (UTC)

Geertjan's Blog - May 20, 2013 07:45 AM
Live Band Music Manager on the NetBeans Platform

Chord Maestro is an application on the NetBeans Platform that displays chord charts on a computer, TV, or large (confidence) monitor, without requiring a lot of unnecessary effort. Chord Maestro was made for live bands and church worship leaders tired of using music stands and having to deal with an ever expanding library of paper chord charts.

A comment from Mike Kelly, the developer behind Chord Maestro, as well as the recently highlighted US Navy chemical & biological modeling software:

I built this app in about three months in my free time (which ain't much with a two year old running around). We've been using it every Sunday at church for a while now and it has allowed us to do away with paper music and music stands. Everyone that sees it is shocked that it is not a commercially built tool.

(Much) more info:

http://chordmaestro.secondchancesoldier.com

Arun Gupta, Miles to go ... - May 19, 2013 03:10 PM
Java EE 7 Launch Webcast: Jun 12th, Register Now


The Java EE 7 Platform JSR was approved a few days ago and is ready to be released ...ta da!

Want to learn the latest and the greatest improvements in the platform from the best ?

Mark the date for webinars in two different time zones:

Jun 12, 2013, 9am PT
Jun 12, 2013, 9pm PT

Register now!

What will you see in this online event ?

  • Business Keynote (Hasan Rizvi and Cameron Purdy)
  • Technical Keynote (Linda DeMichiel)
  • Breakout Sessions on different JSRs by specification leads
  • Live Chat
  • Lots of Demos
  • Community, Partner, and Customer video testimonials

Feel free to use any of the following images to promote the launch webcast on your blog, website, social media, or elsewhere. You can also copy/paste the code fragment shown next to them:

<a
href="https://event.on24.com/eventRegistration/EventLobbyServlet?target=registration.jsp&eventid=615713&sessionid=1&key=453EBA948F6408FE613E61903CBAEBFA&partnerref=Java_EE7_Launch_glassfishblogs_06122013&sourcepage=register"><img
alt=""
src="https://blogs.oracle.com/arungupta/resource/javaee7-launch-jun12-185x225.png"
border="0" height="225" width="185"></a>



<a
href="https://event.on24.com/eventRegistration/EventLobbyServlet?target=registration.jsp&eventid=615713&sessionid=1&key=453EBA948F6408FE613E61903CBAEBFA&partnerref=Java_EE7_Launch_glassfishblogs_06122013&sourcepage=register"><img
alt=""
src="https://blogs.oracle.com/arungupta/resource/javaee7-launch-jun12-403x403.png"
border="0" height="403" width="403"></a>

Don't forget to register!

Get ready to drink from the fire hose, no throttle!

Geertjan's Blog - May 19, 2013 07:01 AM
Open Source Financial Platform on the NetBeans Platform

Gaia Transparence is a software vendor specialized in financial markets. It is a pioneer in the open source community for financial markets. The Gaia Transparence team is building an open source solution for the finance industry based on the NetBeans Platform.

The Gaia Transparence open source financial platform will address new regulatory requirements, including central counterparty (CCP) margining, credit value adjustment (CVA), Markets in Financial Instruments Directive revision (MIFID2), and Basle3.


On the open source motivations of the team, Benjamin Frerejean (Director of R&D) explains the following: 

A key benefit of open source is "transparency". As the source code is available, it can easily be audited by either users or auditors. Along with Gaia Transparence turnkey applications, we deliver "generic trades", "positions", and underlying objects. Users pilot the development and share all the specific instance types, while user group members can mutualize enhancement costs.

We, the Gaia Transparence team, believe that open source is the solution for financial institutions to cope with the challenges they are faced with since the 2008 crunch. On the one hand, the market needs to regain "trust", whilst on the other the new regulatory environment imposes new trading standards and reporting. IT budgets are tight in this time of crisis. Trust can only be gained with transparency and standardization. Open source is transparent by nature. Open source solutions become standards when the community is active. By enabling mutualization of development costs, open source solutions help contain IT budgets. The rapid acceptance of the open source CDS pricer published by ISDA in April 2009, as part of the "Big Bang" initiative, proves the market is ready.

Geertjan's Blog - May 18, 2013 09:14 AM
Towards an Integrated WYSIWYG JavaFX WebView

Last week I blogged about the free and open source EPUB Open Toolbox which I am creating for publishers and authors. Officially, it is now known as Fosfor, since it is initially being developed for the Fosfor Uitgeverij, that is, an on-line e-book publisher based in Amsterdam, as a replacement for Sigil. And this is yet another example of how the web and mobile worlds need the desktop—just for fun you should ask a publisher or author some time: "Do you ever see yourself editing and managing books on your mobile phone?"

At the time, when I started working on this, I was using the SHEF framework as the basis of a WYSIWYG editor. That had its shortcomings and I couldn't help thinking that the JavaFX WebView would be a more natural fit.

So, here we are a week later, with the JavaFX WebView doing a superb job rendering the XHTML pages of EPUB projects:

It simply looks awesome. No credit whatsoever for me on that score, since I'm simply reusing the JavaFX WebView, the creation of which I had nothing to do with. Images are rendered, which wasn't the case with SHEF, the performance is great, and the whole thing just looks professional, like a commercial off the shelf product that took years to develop, rather than days. Aside from the rendering, there's a lot of functionality built into the JavaFX WebView, e.g., when you right-click on an image, you get popup menus for opening the image in a new view, when you right-click on a URL, you can open the URL in a new view, etc.

But, I don't want a web browser. I want a WYSIWYG editor. The start is clearly there, i.e., there's a JavaFX toolbar containing JavaFX buttons, each of which will be, once the prototyping phase is over, provided by different NetBeans modules. For example, here's the color chooser in action—select a piece of text, invoke the color chooser, select a color, and immediately the font of the selected text is changed to the selected color:

Still many things to do. Especially, synchronizing changes back into the source file. Once that's done, all the rest should be relatively painless. Not possible, right now, to type in the WebView, but I have a pretty good idea how to solve that. My insight on this is that there's no difference between adding characters and adding colors to selected text. And it's also possible to get hold of the cursor in the JavaFX WebView, so the basics for typing are already included in the app. With that solved, its all about adding more tools, e.g., a bold tool, italics tool, font size, and so on.

I've shared the above pics with Sean Phillips who works on NASA software (he's been mentioned in this blog several times, has a lot of JavaFX/NetBeans Platform articles on NetBeans Zone, and hopefully will be at JavaOne this year) and he responded pretty positively from his perspective at NASA:

Based on what you have said and the limited images I've seen, this could be used as a technical document markup tool. Several of the Ground System missions I am associated with have home brew tools that generate documentation. Office tools like MS Word and the like can't really be used because a significant portion of the documentation is based around data produced by custom mission specific software systems. As a result, someone ends up writing code that generates Latex or HTML as a custom one off. I wonder if there could be a future in a tool like what you are developing that could be used towards a goal like what I have just described.

Part of my reason for blogging about this is to ask—are there developers out there who have tools written in JavaFX (or who would like to start doing so) that are relevant to the above and could be contributed to the free and open source Fosfor project?

NetBeans Zone - The social network for developers - May 17, 2013 09:34 PM
JavaFX Accordion Slide Out Menu for the NetBeans Platform

Let's say you have a NetBeans Platform application that puts a premium on vertical space.  Maybe a Heads Up Display on a Touch Screen?  Wouldn't it be great to have the menu slide out from the edge of the screen only when you need it?  Well the NetBeans Platform provides slide-in TopComponents, of course, but a JMenu just isn't going to work out so well inside one. Preview...

Geertjan's Blog - May 17, 2013 07:45 AM
Network QoS Simulator on the NetBeans Platform

qSim is a computer network simulator with emphasis on Quality of Service (QoS) mechanisms. It lets you observe how computer networks react to different QoS mechanisms, including network node usage (input/output queues, RX/TX buffers usage), data flow delay time, and packet drop statistics.

13 QoS mechanisms are supported, which can be divided in three groups: packet classification & marking, active queue management, and packet scheduling algorithms.

The network topology is fully customizable, including:

  • link bit rate and length (in meters)
  • link reliability
  • simulation of input/output queues
  • simulation of RX/TX buffers
  • size of all buffers/queues
  • different data flows (TCP/UDP/ICMP protocols supported, various packet sizes, realistic packet generation delays)

The simulations have been tested and compared with real CISCO devices, with positive results.

qSim was developed at the Faculty of Informatics and Information Technologies, Slovak University of Technology, in Bratislava.

APIDesign - Blogs - May 16, 2013 09:32 PM
Introducing Knockout4Java

Knockout4Java takes the best of two words: The type safety of Java and Knockout.js ability to alter any HTML page in any browser. Write your models in Java (using JSON4Brwsr library) and render them as HTML with the help of Knockout4Java!

--JaroslavTulach 21:32, 16 May 2013 (UTC)

Geertjan's Blog - May 16, 2013 07:39 AM
Model Based Embedded Development on the NetBeans Platform

SimuQuest is a Michigan-based software development company that specializes in working with electronic hardware companies that produce electronic controls for such things as car engines or wind turbine generators.

UniPhi is one of SimuQuest's software tools. It is created on the NetBeans Platform. It is a model-based development tool for data management and dependency visualization, enabling consistent, version-controlled management of data (signals and parameters) and rapid visualization of object dependencies (modeled features, signals and parameters). UniPhi is deployed to develop embedded systems using model-based design within a variety of industries such as aerospace, automotive, consumer appliance, and alternative energy.

Further info:

http://www.simuquest.com/products/uniphi

Geertjan's Blog - May 15, 2013 12:37 PM
Brand Independent PLC Programming on the NetBeans Platform

Most modern automation installations, such as controlers of machinery on factory assembly lines, amusement rides, or light fixtures, are driven by Programmable Logic Controllers (PLCs). Low level programming languages that have been used for decades, such as Ladder Diagrams (LD), are still being used to develop new PLC software. Together with the ageing techniques inherent in such programming constructs, there are hidden  penalties, such as the fact that PLC software is brand dependent.

PLC-PROG is the first tool for PLC programming to enable a completely brand independent and user-friendly object oriented approach, resulting in a reduction of development cost and an increase in the reliability of developed programs. It is valid for all PLC brands which comply with the IEC 611131-3 standard, is based on graphical programming methodologies, requires no specific programming skills, and makes it possible to perform both monitoring and visualization from the tool.

PLC-PROG has been developed using the NetBeans Platform, to take advantage of the benefits that its libraries offer. Below you see the PLC-Prog Visual Editor with the rack concept, which is a base element on top of which fuctions and input/output modules can be dragged: 

Other tools, such as a Tree View for tracking programming flow, is shown below:

Further info:

http://www.plc-prog.eu/

Adam Bien - May 15, 2013 09:45 AM
AJAX, SOAP, NoSQL, EJB--All Wrong Acronyms

Most of the popular acronyms are wrong:

  1. SOAP (Simple Object Access Protocol): is neither simple nor object oriented. "SOAP originally stood for 'Simple Object Access Protocol' but this acronym was dropped with Version 1.2 of the standard.[2] Version 1.2 became a W3C recommendation on June 24, 2003. The acronym is sometimes confused with SOA, which stands for Service-oriented architecture, but the acronyms are unrelated…" http://en.wikipedia.org/wiki/SOAP
  2. AJAX (Asynchronous JavaScript and XML): Most of AJAX applications are using JSON, not XML. AJAX' core component is the XMLHttpRequest JavaScript object / browser API. Without XMLHttpRequest would be hard to implement an AJAX application...
  3. NoSQL: "… Some authors refer to them as "Not only SQL" to emphasize that some NoSQL systems do allow SQL-like query language to be used…" https://en.wikipedia.org/wiki/NoSQL. …and often the offered NoSQL query language is structured and very similar to SQL :-)
  4. EJB (Enterprise Java Beans): Well designed JavaBeans are actually not well designed EJBs.
  5. YAGNI there should be no acronym for that. Thinking about that may cause endless loops :-)

See you at Java EE Workshops at MUC Airport!


Real World Java EE Workshops [Airport Munich]>

NetBeans Zone - The social network for developers - May 14, 2013 01:33 PM
NetBeans Weekly News (Issue #587 - May 13, 2013 )

Project News NetBeans IDE 7.3: Power Tools for HTML5 & JavaScript From NetBeans IDE 7.3 onwards, released earlier this year, new features have been introduced to enhance the development experience for HTML5/JavaScript/CSS3 Web applications. In this article, an overview is provided of all the new features encompassing the new tools for HTML5 and JavaScript developers.Legacy ...

NetBeans Web Client - May 14, 2013 11:47 AM
Develop Mobile Web Applications On Your Android Device

This blog post introduces another exciting new feature in the upcoming NetBeans IDE 7.4. Namely, JavaScript debugging and visual CSS editing on Android devices. So without further ado, let's see how it works.

As a prerequisite, you will need an Android 4.x device. Let's do some setup steps that you only need to do once. First, install the Chrome browser on the device. The Chrome browser is available in the Play store.

Chrome browser for Android 4.x in the Google Play store

Next, you will need to turn on USB debugging both at the system level and in the Chrome browser, which can be done in Android's Developer options in the phone settings. Note that on Android 4.2 and newer, Developer options is hidden by default, so we need to unhide it first. To do that, go to Settings > About phone option in settings, and tap Build number seven (7) times. Then return to the previous screen, and you will find Developer options.

Once Developer options are present, you will see the USB debugging checkbox inside this category. Make sure it is checked.

Next, open the Chrome browser, go to Chrome settings, and under Advanced > Developer tools, check the Enable USB Web debugging checkbox.

Turning on USB debugging in Android Turning on USB debugging in Chrome on Android

We will also need to set up the Android SDK and point NetBeans to it. In NetBeans, go to Tools > Options (or NetBeans > Preferences on Mac OS X), choose Miscellaneous > Mobile Platforms, and specify the location of the Android SDK. In case you don't have the Android SDK installed on your machine, the dialog provides a convenient link to the SDK's download page. This completes the one-time setup.

Setting the Android SDK location in IDE options

Now, to start developing your web application on your Android device:

  • Connect your machine and the Android device with a USB cable
  • Connect your developer machine and the Android device to the same Wi-Fi network (this is necessary so the device can access the web server running on your computer)

As our testing application, we will use the AngularJS Phone Catalog application that is bundled as a sample in NetBeans, but you could of course use any HTML5 application - or a Java web application or a PHP application, as described in a prior blog post

To run the application in Chrome on your Android device, click the new browser switcher icon in the main NetBeans toolbar, and select Android Device (Chrome).

Switching to Chrome browser on Android device

Next, just run the application, and the application will open in Chrome on your device.

Let's now see how we can tweak the style of this application directly on the device. You will notice that in the IDE, a couple more windows opened: Browser DOM and CSS Styles. The Browser DOM window displays the real DOM tree as rendered by the browser on your device. When you select elements in this window, the CSS Styles window refreshes to show the CSS styling information for the currently selected element.

Browser DOM and CSS Styles windows

More interestingly, as you select (or hover over) elements in the Browser DOM, the current element will be highlighted in the page on your device.

Hovering over Browser DOM elements highlights the element on your device

Next, we will want to select elements on the device in order to change them. If we were using the desktop version of Chrome, we could do this by turning on Inspect in NetBeans Mode using the menu item provided by the NetBeans Connector for Chrome. But as Chrome for Android does not support extensions, we will do this using the Inspect Mode in the Browser toggle button at the top right of the CSS Styles window.

Turning on Inspect Mode

Once Inspect Mode is on, the interaction now works in the other direction: tap elements in the page on your device, and both Browser DOM and CSS Styles windows will be synchronized. Once we have selected the element whose style we'd like to modify, we can just do so using the bottom part of the CSS Styles window (Property sheet), and the change will be reflected live on the device. For example, this is the result of increasing the font size of the description text from 13px to 22px.

Modifying CSS style with NetBeans on a mobile device

Note that this example is illustrative only - in a real world example we would likely use media queries to achieve good appearance on both mobile and desktop clients. Speaking of which, media queries (as the main tool to do responsive web design) are supported in NetBeans' visual CSS editor.

Next, we may want to debug the application. For example, to see what happens when we click on an individual item in the list of phones in our application, we will place a breakpoint on line 16 in controllers.js. But in order to tap the item, we first need to turn off Inspect Mode using the toggle button in the CSS Styles window. Then after tapping the item on your device, the IDE will stop on the breakpoint.

Debugging JavaScript on the mobile device

Now we can inspect the variables, step through the code, see the call stack, and in general use all the features of the NetBeans JavaScript debugger.

All this support will be included in NetBeans IDE 7.4, which will be released later in 2013. However, you can already try this out now in a recent nightly build of NetBeans 7.4.

Geertjan's Blog - May 14, 2013 10:16 AM
Corona SDK Lua IDE on the NetBeans Platform

The Corona SDK lets you build rich mobile apps for iOS, Android, Kindle, and Nook. The Corona SDK uses Lua as its programming language. Lua Glider has been created by M.Y. Developers LLC on the NetBeans Platform and NetBeans IDE as an advanced IDE for Corona SDK professionals and beginners alike. Lua Glider's latest release is 1.9, released 11 May 2013.

Its many features include an advanced debugger, variables explorer, call stack, adaptive auto-complete, built in documentation, real-time breakpoints, split screen support, asset preview, simulator remote, theme switcher, and much more.

YouTube has several videos on Lua Glider (previously known as Corona Cider), including this very inspiring introduction:

Further info:

http://www.coronalabs.com/products/corona-sdk/

http://www.mydevelopersgames.com/Glider/

http://forums.coronalabs.com/topic/34829-lua-glider-v-19-launch-discount-code-included/

http://www.holamariquita.com/?p=136

http://www.raywenderlich.com/22064/how-to-make-a-simple-game-with-corona

Geertjan's Blog - May 13, 2013 06:27 PM
WYSIWYG Editor for Java Desktop Applications

The EPUB Open Toolbox (introduced in the last two blog entries) includes a WYSIWYG editor based on the Swing HTML Editor Framework (SHEF), but extended in small ways. For example, keyboard shortcuts can be used for bold, italics, etc.

One of the holy grails of the Java desktop world, that is, WYSIWYG support, can thus be solved via SHEF. Here's the visual pane of SHEF embedded in a NetBeans TopComponent:

And, when you switch to the Source view, the above is shown as follows in the SHEF XML editor:

If I make a change to the source and switch to the view, the view is automatically updated, and vice versa.

Would be cool to replace the editor above with the NetBeans XML Editor. On the other hand, that could have disadvantages too. Not sure how that would figure on the juice/squeeze continuum. 

Praxis LIVE » NetBeans - May 13, 2013 04:37 PM
Praxis LIVE build:130508

A new build of Praxis LIVE is now available from the usual place, with Windows (.exe) installer, zip distribution, and of course Linux (.deb) installer. This release has taken a little longer than normal to put together. A project I … Continue reading

Adam Bien - May 13, 2013 03:35 AM
Maven: Lifecycle Hooks Lead To Infrequent Integrations

You could build, test and deploy the entire Java EE Application and even create a working application server from scratch with a single mvm clean install command. The only problem is: it will take forever and you will have to repeat the whole process over and over again, even if you were only interested in particular build steps.

If mvm clean install would just execute the unit tests, your feedback will be significantly faster. Instead of waiting hours, you get the first results in seconds.

A series of composable jobs, each executing a goal or maven plugin, could be realized with http://jenkins-ci.org, or a simple shell / batch script on the developer's machine.

Instead of executing all plugins at once by hooking them to the lifecycle, you could implement a series of chained together jobs. E.g.

  1. Job: mvm clean install
  2. Job: mvn failsafe:integration-test
  3. Job: server setup
  4. Job: deployment
  5. Job: system test execution
  6. Job: quality assurance
  7. Job: promotion
  8. Job: tagging / release
  9. ...

The faster the feedback, the more valuable it gets. A monolithic mvn clean install leads to too long builds, less feedback and becomes less valuable for Continuous Integration. CI degrades to nightly builds…

Just start with an essential setup essential and not with a super-pom.

[See also an in-depth discussion in the "Real World Java EE Night Hacks--Dissecting the Business Tier" book, page 136 in, chapter "Continuous Integration and QA"]

See you at Java EE Workshops at MUC Airport (Effective JavaEE)!


Real World Java EE Workshops [Airport Munich]>

Geertjan's Blog - May 12, 2013 10:08 AM
EPUB Open Toolbox (Part 2)

In the absence of a WYSIWYG editor in JavaFX WebView, the SHEF project provides a fine alternative. Click to enlarge the image below.

Aside from being to generate to/from EPUB, project templates are provided for creating new EPUB 3.0 and EPUB 2.0 books:


The structure of the app is modular and Mavenized:


One thing I will do is replace all Matisse GUI Builder forms with plain Java classes, so that anyone can work on this application, i.e., in any IDE. The point is that thanks to Maven, the app can be opened in any IDE that supports Maven, but the TopComponents have been generated in NetBeans IDE, hence they use the Matisse GUI Builder forms, which are not supported in other IDEs. It will be simple to replace those with plain Java classes, since in each case the TopComponent only contains one Swing component, i.e., either a BeanTreeView or the SHEF HTML Editor.

Return to part 1...

Geertjan's Blog - May 11, 2013 02:59 PM
EPUB Open Toolbox (Part 1)

The start of an open source EPUB editing tool in Java. Right now, you're able to open EPUB files, view their content (the JavaFX WebView is used to display the XHTML content), and even extract the content of EPUB files so that they can be edited in a new EPUB project type, prior to letting you recreate the EPUB file from the project. Click to enlarge the image below.


The Java API used to inspect EPUB files is:

http://www.siegmann.nl/epublib/

Ultimately, the aim is to replicate the EPUB functionality of Sigil and Oxygen. The sources (and binaries) will be available here on java.net (but not yet right now):

https://java.net/projects/epubopentoolbox

The application is modular on the NetBeans Platform, uses the JavaFX WebView, and is built on Maven. Is there a WYSIWYG editor based on the JavaFX WebView out there? Would be great to integrate it, instead of the bare WebView component currently used in this project. Therefore, right now, there's no editing support in the WebView, though the raw XHTML files can be edited, with the support of the standard NetBeans tools, e.g., syntax coloring, code completion, and validation.

Continue to part 2...

Geertjan's Blog - May 10, 2013 10:50 AM
Aquatic Robotic Management Software on the NetBeans Platform

Jessiko is robot fish technology created by Robotswim in France. The technology was first exhibited at the French Pavilion at the 2012 World Expo in South Korea. It is currently marketed at events and for luxury decorations, such as at luxury hotels, restaurants, commercial centers, museums, and waiting rooms.

The Robotswim management software, named Jessikommand, offers robotic research teams and teachers a unique development and learning platform with access to cutting edge software and technologies. Together, the originality of an aquatic fish robot, 3D locating capabilities, and inter-robot communication make Jessiko a full and powerful system. Also, Jessiko opens the door to collaboration with biologists, thanks to its capacity to integrate with the living world.

Jessikommand is an integrated environment on the NetBeans Platform. It has been designed for trying out Jessiko features, letting you control aquatic robots, while also enabling you to display real-time status of elements such as robots and beacons:

The main features of Jessikommand are as follows:

  • Transmitter control. Connect to the concentrator without any configuration.
  • Direct control. Control one or more Jessiko robots using your keyboard.
  • World design. Create your own “world” with robots, beacons, and remotes.
  • Battery monitoring. Check batteries of active robots.
  • Radar view. Check internal vision of robots
  • Debug systems. Read reports from internal Jessiko variables.
  • Check distance. From elements to beacons, enabling finding of nearest beacon.
  • Emergency stop. Immediately disable all active elements within the beacons range.
  • Intuitive GUI. You can adapt Jessikommand to your needs using its flexible GUI.
  • Cross-platform. Jessikommand is available for Microsoft Windows and Linux.

More info:

http://www.robotswim.com

http://www.robotswim.com/docs/Jessiko_Lab_Technical_Description_April2011.pdf

NetBeans for PHP - May 09, 2013 09:54 AM
Nette Framework with Latte Templates (and one more thing)

<p> Hi all! After few weeks we would like to introduce you some new features which will be available in <strong>NetBeans 7.4</strong>. And what is it about? It's about <strong>new framework support</strong>! For <strong>NetBeans 7.4</strong> we added a support for <a href="http://nette.org" target="_blank">Nette Framework</a> with Latte Templates. </p> <p> Not sure if all of you know it, so here is an official introduction: <cite>&quot;A popular tool for PHP web development. It is designed to be the most usable as possible and is definitely one of the safest one. It speaks your language and helps you to easily build better websites.&quot;</cite> </p> <p> If you remember, we wrote about <a href="http://nette.org" target="_blank">Nette Framework</a> few months ago when <a href="https://blogs.oracle.com/netbeansphp/entry/initial_support_for_neon_file" target="_blank">we added a support for the <strong>Neon</strong></a> file type, which is a configuration file type for most of <strong>Nette Framework</strong> applications, and then once again when we <a href="https://blogs.oracle.com/netbeansphp/entry/apigen_support_added" target="_blank">introduced new ApiGen suppport</a>, which is an API generation tool based on <strong>Nette Framework</strong>. </p> <p> <strong>Nette Framework</strong> also has a great and active community, so if you have a problem, don't hesitate to ask on <a href="http://forum.nette.org/en/" target="_blank">an offical Nette Framework forum</a>! You will receive an answer in minutes ;) </p> <p> Ok, so let's look at some features :) </p> <h3>Nette Framework</h3> <p> Let's start with support of the framework part. As usual, Nette Framework has it's own <em>Options tab</em>. You can select a directory with Nette Framework sources and a directory with Nette Framework sandbox. </p> <p><img src="https://blogs.oracle.com/netbeansphp/resource/article_images/nette-latte-1.png" title="Nette Framework Options Tab" /></p> <p> These both information are useful when you try to create a new project and in a framework selection step select a <strong>Nette2 Framework</strong>. Then you can decide to copy Nette Framework sources into your project and if you properly set a path to the Nette Framework sandbox directory, then it's automatically created in your new project. </p> <p><img src="https://blogs.oracle.com/netbeansphp/resource/article_images/nette-latte-2.png" title="Creating Nette Framework Project" /></p> <p> We try to automatically detect whether the Nette Framework is used in your project to provide some framework specific features (such as custom <code>@persistent</code> annotation, code generator for action and render methods, or <em>Go to View</em> action), but when the detection fails (e.g. due to non-standard directory structure), you can enable whole support manually in <em>Project Properties</em>. </p> <p><img src="https://blogs.oracle.com/netbeansphp/resource/article_images/nette-latte-3.png" title="Nette Framework Project Properties" /></p> <h3>Latte Templates</h3> <p> At first, what is <strong>Latte Template</strong>? If you know <strong>Smarty</strong> or <strong>Twig</strong>, then you will exactly know what it is. It's just a HTML file, with a custom extension (<code>.latte</code>), which contains some embedded parts which are &quot;somehow processed by Latte Templating engine&quot;. You can read much more in an <a href="http://doc.nette.org/en/templating#toc-latte" target="_blank">official documentation of Latte Templates</a>. </p> <p> And what we support? For example coloring (of embedded Latte parts, comments and such). But our coloring is a bit clever ;) In <strong>Latte Templates</strong>, you can switch to another Latte delimiters in one file (or in HTML element) without any problem. Just use <code>{syntax ...}</code> macro or <code>n:syntax=&quot;...&quot;</code> tag in a HTML element. NetBeans catches that and colors following source properly :) </p> <p><img src="https://blogs.oracle.com/netbeansphp/resource/article_images/nette-latte-4.png" title="Latte Coloring" /></p> <p> And another great thing is code completion. It work for macros, helpers and keywords. And it works for <code>n:tags</code> too ;) </p> <p><img src="https://blogs.oracle.com/netbeansphp/resource/article_images/nette-latte-5.png" title="Latte Code Completion" /></p> <p><img src="https://blogs.oracle.com/netbeansphp/resource/article_images/nette-latte-6.png" title="Latte Code Completion" /></p> <h3>One more thing</h3> <p> Now all of you know, that <strong>Neon</strong> file type is a common configuration file for Nette Framework applications. It has some special sections like <code>services:</code> and such. And in these sections you will sometimes need to write some PHP types with fully qualified name (to specify factory classes and such). So it would be helpful to have some <strong>code completion</strong> in there, right? Ok, so <strong>it's there!</strong> ;) It's simple, it just lists all of PHP types from your project, but it's better then nothing, isn't it? :) </p> <p><img src="https://blogs.oracle.com/netbeansphp/resource/article_images/nette-latte-7.png" title="Neon code completion" /></p> <p> And that's all for today and as usual, please <a href="http://bertram2.netbeans.org:8080/job/PHP-build/" target="_blank">test it</a> and if you find something strange, don't hesitate to <a href="http://netbeans.org/bugzilla/enter_bug.cgi?product=php" target="_blank">file a new issue</a> (product <em>php</em>, component <em>Nette / Latte / Neon</em>). Thanks a lot! </p>

Geertjan's Blog - May 09, 2013 07:37 AM
Military Chemical & Biological Modeling Software on the NetBeans Platform

The Joint Expeditionary Collective Protection (JECP) Program is part of the Joint Program Executive Office for Chemical and Biological Defense, which is the Joint Services single focal point for research, development, acquisition, fielding, and life-cycle support of chemical and biological defense equipment and medical countermeasures.

In developing a family of transportable shelter systems, the JECP provides collective protection to joint expeditionary forces and their assets. These shelter systems range from two-person passive filtration tents to large multiperson shelters that can be combined together to provide active filtration and internal environmental conditioning.

The objective of the JECP System Performance Model (SPM) is to model the collective protection performance of each JECP shelter and predict the level of exposure to chemical and biological (CB) agents experienced by personnel inside the toxic-free area (TFA). Exposure within the TFA can occur as a result of agent infiltration through barrier materials, air locks, closures, seams, filters, and from personnel entering or exiting the TFA.

The SPM provides a cost-effective method for predicting system collective protection performance while interacting within a complex environment, allowing users to create realistic operational scenarios. Also, the SPM improves the test and evaluation (T&E) planning process by simulating results for testing environments that are otherwise too dangerous, complex, or expensive to physically test.

From Leading Edge Magazine - Chemical, Biological, and Radiological Defense, April 2012, page 157: 

The approach taken for SPM development leverages the open source NetBeans application platform. This approach allows for highly modular application development while making extensive reuse of mature software components. In developing any application that has a significant number of capabilities, there are typically a large number of “boilerplate” features that must be implemented in order to make the domain-specific capabilities accessible by the user. Many of these application components are taken for granted by most users (i.e., menus, drag and drop, cut/paste, undo/redo, open/save) but are very time-consuming to develop. The NetBeans Platform provides a large portion of these common application capabilities as reusable components. This drastically reduces the development time required to implement a new application by allowing developers to focus primarily on the domain specific capabilities instead of the "boilerplate" code.

The NetBeans Platform is an open-source framework that has been steadily maturing over the course of almost a decade. NetBeans is most commonly known as the host environment for the highly popular NetBeans integrated development environment (IDE) which, in many ways, outperforms commercial IDEs, such as Microsoft’s Visual Studio. The NetBeans Platform provides a large set of reusable software components that allow for rapid development of highly modular applications. The workflow for developing applications that leverage the NetBeans Platform is built into its IDE, which makes constructing new applications and modules very straightforward. Because of its flexibility and maturity, SPM developers chose to implement SPM capabilities on top of the NetBeans Platform, which affords a great deal of flexibility that can easily accommodate changing requirements and data structures.

The various models and capabilities that need to be managed by SPM can be nicely encapsulated inside NetBeans modules. Each module has well-defined interfaces that govern which portions of the module’s code are exposed to other modules. In addition, modules must specifically state dependencies on other application modules in order to access exposed classes. This ensures that all application dependencies can be quickly determined, thus providing better software maintainability.

Screenshots below, the first shows the JECP SPM interface and the second shows the JMAT Visualization Package:

The JMAT Visualization Package software allows analysts to "playback" a scenario in order to view how contaminants move externally and internally. This visualization, coupled with various reports and plots, allows the user to determine the overall performance of JECP shelters, air locks, and other components when faced with a variety of attacks, configurations, and environmental conditions.

The above and further info is all publicly available here:

http://www.navsea.navy.mil/nswc/dahlgren/Leading%20Edge/CBRD/index.html (from page 152 to 159)

Geertjan's Blog - May 08, 2013 08:47 AM
Graphic/Touch Panel System Development on the NetBeans Platform

Serious Integrated provides hardware, software, and services for front panels. The company focuses on replacing buttons with graphic touch screens. The project is moving along very well. SHIPTide, the related GUI development toolsuite on the NetBeans Platform, was published publicly in beta on the website (at www.seriousintegrated.com/docs) in October 2012 and there are dozens of customers using it.

You can layout your GUI, define events or actions, build your resource library, and create a package that you can upload to your hardware with ease:



What SHIPTide does is similar to Adobe Flash and Flash Builder, but for graphic/touch front panel hardware modules that use very low end 32-bit processors. Some of these have as little as 128KB RAM. Integrated into SHIPTide is SHIPEngine, which is similar to Adobe Flash Player, but fits in <512KB of ROM on the module. SHIPTide is the PC/MAC/Linux based tool that helps you create your GUIs. 

Features of SHIPTide:

  • WYSIWYG manipulation of GUI pages.
  • Automatic translation of jpg/gif/bmp/tiff/png image files.
  • Automatic translation of TTF fonts.
  • Full UTF-8 support with Multilanguage support for the target GUI, including auto-codeset-subsetting for large fontsets, such as Japanese.
  • Built-in ANTLR/BNF grammar and Java-lite-like compiler for our scripting language, SHIPSail.
  • Complete GUI compiler (similar to that Adobe would have to build .swf files) that combines layout, resources, compiled code, etc into a single "cargo" file that gets loaded into data-FLASH memory on the target hardware module; this is beginning to include some incremental compiler elements, for instance image compilation is cached so it only happens once.
  • Built-in USB connectivity to the target hardware so you can craft/build/download/test in seconds.
  • The NetBeans Platform update mechanism is leveraged.

Here's a picture of one of the front panel modules that is the "target" for the tool:

The above is is a 4.3" WQVGA (480x272) touch screen module. It is powered by a Renesas RX MCU running at 100MHz, and has 8MB total RAM.

There are a lot of items on the roadmap, including enhanced USB communications, better font management, some level of drag-n-drop in the GUI layout itself, better tools for managing translation(s), and live remote-debugging of SAIL scripts on the target from within SHIPTide.

More info:

http://www.seriousintegrated.com/w/index.php?title=SHIPTide

http://www.padtinc.com/blog/product-development/serious-integrated-modular-touch-screen-panels

Especially the SHIPTide video library is very nice, showing the features of the application in some detail, i.e., showing the features anyone can create in their own applications on the NetBeans Platform:

http://www.seriousintegrated.com/w/index.php?title=SHIP:Video_Training

Adam Bien - May 07, 2013 08:09 PM
Real World Java EE - Devoxx 2012 Session is Online

Watch @parleys

See also other screencasts at: http://tv.adam-bien.com or subscribe to http://www.youtube.com/user/bienadam.

Thanks for watching and see you at Java EE Workshops at MUC Airport!


Real World Java EE Workshops [Airport Munich]>

NetBeans Zone - The social network for developers - May 07, 2013 10:35 AM
NetBeans Weekly News (Issue #586 - May 7, 2013 )

Project News Jelastic Announces Integration with NetBeans IDE Jelastic Inc., the creators of a cloud hosting platform for Java and PHP applications, has announced the integration of the Jelastic platform with NetBeans IDE. Full instructions are provided for getting started with the Jelastic plugin in NetBeans IDE.Legacy Sponsored:  unsponsored ...