Spring WebFlow Wizard

Inspired by the great Ajax based webflow for Grails a former colleague made and the fact I am currently developing in the Spring MVC framework, I needed something similar for Spring Webflow. The documentation for Spring WebFlow is there, but the examples are very scarce and/or sometimes lacking good documentation. Because I now have an account on Github I decided to put a sort of Spring Webflow Wizard ‘framework’ in the repository there. It contains the minimal skeleton (breadcrumbs, navigation, validation et cetera) required to get people started building a wizard.

The project can be found at https://github.com/tjeerdnet/SpringWebFlowWizard.

It is an initial version, so feedback for improvement and/or bug reports are very welcome.

No Comments Posted in /dev
Tagged , , ,
World Statues Festival Arnhem 2011

Last month I visited the World Statues Festival in Arnhem. More than hundred people from all over the world presenting themselves as statues. The weather was great and it was very crowded. Ester and I took some pictures which you can find here.

Posted in /home, /media
Guruplug boot and kernel upgrade for stable Wi-Fi

Recently I got my Guruplug Server Plus device and I am happy with the toy, but soon I discovered that the Wi-Fi drivers are not stable if you want to run the device in “client mode”, I found out that recently there has been put up a page with instructions to make the device Wi-Fi stable. Although the instructions are there, it was difficult for me to find the right way to upgrade the U-boot and kernel. So here the way I did it. In a next posting I will explain how to setup Wi-Fi correctly, still figuring that out.

Prerequisites:
- Guruplug connected to your network via ethernet and a JTAG module to allow serial console access to the device
- Computer connected to your network (probably also the computer you want to use to access your Guruplug via the serial console)

Part 1: setting up the TFTP-server and putting the images in the right place

- Download pre-compiled U-boot binary here (direct link) into a directory (e.g. /root/guruplug)
- Download pre-compiled binary kernel here (direct link) into a directory (e.g. also /root/guruplug)
- Install a tftp-server (under Ubuntu Linux) and check whether it is running:

sudo apt-get install tftpd-hpa
service tftpd-hpa status

- Go to your work directory (/root/guruplug) and extract the u-boot and the kernel archive:

tar xvzf guruplug-u-boot-flipflip-20101111.tar.gz
tar xjvf UImage_linux_kernel_2_6_33_7.tar.bz2

- Copy of the extracted contents the following two files to the folder where tftpboot resides, in my case /var/lib/tftpboot:

mv /root/guruplug/u-boot.kwb /var/lib/tftpboot
mv /root/guruplug/uImage /var/lib/tftpboot

Part 2: The serial console / JTAG setup and ‘burning’ the images

- Connect via the serial console to the Guruplug, see this page. This
allows you to see what is going on on the device, including the boot process (U-boot).
- Turn on the Guruplug and see the device booting, when you see a message which allows you to interrupt the boot process by pressing a key, do so, this will show you the U-boot prompt
- Set some environment variables to prepare for ‘downloading’ the images from your TFTP-server (= serverip variable) to your Guruplug (= ipaddr variable). The IP addresses used here might be different for your network. The serverip is the computer running the TFTP-server. The ipaddr is the IP address you give to your Guruplug. It might be handy to save the environment variables so they are there everytime you boot.

setenv serverip=192.168.0.100
setenv ipaddr=192.168.0.110
saveenv

- Download the U-boot image from the TFTP-server into the memory of your Guruplug, erase the old U-boot image and write the new U-boot image into the memory of the plug. Finally reset the device. If everything went fine, you will see your updated U-boot prompt.

tftp 0x6400000 u-boot.kwb
nand erase 0x00000000 0x0100000
nand write 0x6400000 0x0000000 0x80000
reset

- Now install the new kernel image from the TFTP-server into the memory of the Guruplug and set the environment variables and save them.

tftp 0x6400000 uImage
nand erase 0x100000 0x400000
nand write.e 0x6400000 0x100000 0x400000

setenv x_bootcmd_kernel 'nand read.e 0x6400000 0x100000 0x400000'
setenv x_bootargs_root 'ubi.mtd=2 root=ubi0:rootfs rootfstype=ubifs'
setenv x_bootargs 'console=ttyS0,115200'
setenv x_bootcmd '$(x_bootcmd_kernel); setenv bootargs $(x_bootargs) $(x_bootargs_root) ;bootm 0x6400000;'
setenv bootcmd 'run x_bootcmd'
saveenv

Now you should be able to boot up your Guruplug with a new U-boot and kernel installed by entering the following command:

reset

Useful links:
http://www.denx.de/wiki/bin/view/DULG/Manual
http://www.plugcomputer.org/plugwiki/index.php/U-Boot_Quick_Reference
http://www.plugcomputer.org/plugwiki/index.php/Re-building_the_kernel_and_U-Boot

Posted in /dev
Polder of Zuidland and Het Spui

Last Monday I filmed nearby Zuidland and Het Spui. I used a tripod for a more stable underground. I experienced several issues which I need to solve, like the need for ND (neutral density/gradient) filters to minimalize the effect of over exposure of some footage. So I am now looking around for Cokin filtersets/adapters/holders which I can put on my lenses. Hopefully this improves the contrast/exposure effects.

Posted in /media