In the last installment of my post, I briefly described how to do Test Driven Development (TDD) in JavaFX using Model-View-Presenter (MVP) pattern. In this installment, I illustrate this particular piece in detail and provide working code samples. You can download the code here (Caution: 6.7 MB download).
The download is a zip file containing all 4 Netbeans projects. The code is tested with...
on Jul 7, 2010
I am happy to announce the release of Apache Pivot 1.5! Apache Pivot (http://pivot.apache.org) is a platform for building rich Internet applications (RIAs) in Java. It combines the enhanced productivity and usability features of a modern RIA toolkit with the robustness of the industry-standard Java platform.
Pivot 1.5 includes a number of improvements intended to help improve the overall...
on Jun 8, 2010
I've finished the development of my Game of Life, with a couple final fixes and new features... including a solution to the bad performance reported before. Once again the work has uncovered some surprises; read on.
Un-Scripting JavaFX Script
The first version used a "scriptish" style, all code thrown in a single .fx file, only average effort in structure. Now I have three files: World....
on Jun 4, 2010
Performance: JavaFX Balls
As soon as I've got JavaFX 1.3 and NetBeans 6.9-beta, first thing I did was obviously running benchmarks, and the new update delivers on its promise. Let's first check JavaFX Balls (port of Bubblemark). I've last reported results for 1.2 here; but scores for 1.2 are updated again to account for changes in my test system, remarkably the JDK (now 6u21-ea-b03).
on May 3, 2010
Update (2012-09-24): Maven users, you can directly link this class (LGPL), as I have uploaded it into Maven Central. Simply add a dependency to:
<dependency> <groupId>eu.headcrashing.treasure-chest</groupId> <artifactId>EnumerationsClass</artifactId> <version>...
on Jul 4, 2010
I was doing some JavaFX hacking, and I had to create a sequence initially full of zeros. How can you do that? There's apparently only one way:
<p>var bits = for (i in [1..64]) (0 as Long);</p>
Problems: First, I need a loop - OK, a comprehension - to initialize the sequence. There is no syntax, no API helper or type constructor, that directly expresses "Long with N elements...
on Jun 18, 2010
<a name="abstract">In the month of June 2009, I did an initial post in the openjdk.java.net-jdk7-dev<br /> mailing list with a request for what I feel are two very important changes<br /> required in the Java Platform.This resulted in a thread of discussions...
on Jun 2, 2010
My previous blog, presenting the Life program, was quite long, still not really complete. I've continued the work, but soon found some interesting surprises. This new blog starts investigating an API bug, then trips into some surprising language behavior, and ends in a proposal for a small change in the JavaFX Script language.
A Slider bug
I was annoyed to see that the Slider control ignores my...
on May 25, 2010
There is an unwritten tradition that John Conway's Game of Life must be implemented in every programming language and every GUI toolkit. Well, OK I just invented this tradition, but it's a smart introduction and Life is one of the easiest games / cool animations you can program. But it's not too simple that we can't learn a few important things about JavaFX...
My goal: a good-looking and feature-...
on May 21, 2010
In my opinion, SQL Anyhwere is the best RDBMS I can think of. I can remember when we started distributing it in Germany back in the early 1990ies, as one of the first early adopters in this country. Since then, we provided it to hundreds of enterprises, from single-person laptop-only ones to large ones spanning replicated installations crossing country borders. So call me biased in that...
on Jul 3, 2010
If you wonder whether the style of use with JDBC API has an impact of performance, you might like to read my latest blog entry on Head Crashing Informatics. While the entry mostly is about tuning SQL Anywhere's BLOB handling performance, it contains an interesting aspect: There are three ways to deal with BLOBs in JDBC, and the performance difference is tremendous. While obvious for the JDBC...
on Apr 10, 2010
Web Services and XML
As part of some open source stuff I've been doing on the side I've had to generate and parse a lot of XML. I like working with the DOM because it's tree structure cleanly matches my needs, but the W3C API is *so* cumbersome. The DOM was designed to be implemented in any language, not just clean OO languages like Java, so any code using it will work but be ugly. After considering a few other XML...
on Jun 28, 2010
In two previous entries I covered Introducing NIO.2 (JSR 203) Part 1: What are new features? and Introducing NIO.2 (JSR 203) Part 2: The Basics In this entry I will discuss Attributes introduced in NIO.2. Using attributes we can read platform specific attributes of an element in the file system. For example to hide a file system in DOS file system or to check the last access date of a file in...
on Jun 23, 2010
OpenESB project initiated by Sun Microsystems to develop and deliver a high performance, and feature rich implementation of Java Business Integration (JBI) under an open source friendly license. Basic task of JBI implementations is connecting different type of resources and applications together in a standard and none intrusive way. Basic building blocks of an ESB includes the Bus which is a...
on May 24, 2010
Spring framework is one of the biggest and the most comprehensive frameworks Java Community can utilize to cover most of the end to end requirement of a software system when it come to implementation.
Spring Security and Spring Remoting are two important parts of the framework which covers security in a descriptive way and let us have remote invocation of a spring bean methods using a local...
on Mar 18, 2010
In this part we will discuss the basic classes that we will work with them to have file system operations like copying a file, dealing with symbolic links, deleting a file, and so on. I will write a separate entry to introduce classes which are new to Java 7 for dealing with streams and file contents, watching service and directory tree walking. If you want to know what are new features in Java...
on Jun 1, 2010
JMath: A Java API for doing Math
Hello. I would like to introduce JMath project. JMath is math API for doing serious math with Java.
With JMath you can do linear algebra, set calculations, general math calculations such as arithmetics, fractions and the like.
Also, with JMath you will be able to do serious statistics.
Origin of JMath
Origin of JMath is the former LinAlg API....
on Apr 18, 2010
Java EE Security refcard is available for download. This refcard covers Java EE 6 security and discuss how each application server supports the specs. The refcard covers authentication, authorization, and transport security in Web Application, EJB application and web services by introducing the concept and the related annotations and deployment descriptors which help us realize the concept....
on May 17, 2010
The Book in Details:
Security was, is, and will be one of the most important aspects of Enterprise Applications and one of the most challenging areas for architects, developers, and administrators. It is mandatory for Java EE application developers to secure their enterprise applications using Glassfish security features.
Learn to secure Java EE artifacts (like Servlets and EJB methods),...
on May 13, 2010
Two talks at JavaOne this year:
S313580 - "Swinglabs Dev Update" with Karl and Alex ... I hope guys will do most of the talking :D
S314239 - "Building Content Management solutions based on Java Content Repository" together with Greg
BTW for those wondering what is happening with the swinglabs.org, server have been recently moved around yet again. It is now in so...
on May 11, 2010