SOA Friday #2

In an attempt to highlight some SOA related news each week, this is the second SOA Friday blog post.

(SOA-related how? GlassFish ESB bundles GlassFish v2 and NetBeans SOA tools; future Open ESB work (and GlassFish v3) embrace OSGi, and virtualization is handy for developing/testing ESBs)

Category: glassfish, glassfish esb, virtualbox

Posted by: Mike Wright on: September 19, 2008

Tags:

Netbeans Weekly Newsletter

From this week’s edition of the Netbeans Weekly Newsletter,

here are a couple of highlights:

  1. Under Calendar:
  2. Under Projects:

    “Project OpenESB is an Open Source project that is building an ESB that consists of both a runtime and a design time tooling based completely on NetBeans. In the last few years, OpenESB has made important contributions to the NetBeans IDE, for example, the WSDL editor, the CASA editor, the BPEL editor, and more. GlassFish ESB, the first milestone of a commercially supported binary distribution, is now available. The distribution includes NetBeans and adds extra components, such as JAXB based code seeding, a JCA wizard, and more, that are not available in the IDE’s standard downloads.”

You can also subscribe to the newsletter(s).

Category: glassfish esb, netbeans, open source, open-esb

Posted by: Mike Wright on: September 16, 2008

Tags:

SOA Friday

Some Open ESB related news of interest (at least to me) this week:

Category: glassfish esb, open-esb, virtualbox

Posted by: Mike Wright on: September 12, 2008

Tags:

jregress: open-source test-running framework

So, what is jregress?  It’s my Java-based test-running framework, used to run Open ESB regression tests, and it is now open-source.

History: at Forte we used a C++-based tool, regress, to run regression tests.  I created a Java-based work-alike that Sun uses for running regression tests.  We can run Open ESB  tests using the open-source or closed-source version.  More history at project site.

What does it do? It uses a file naming and directory structure convention to discover, run, and check-the-results-of setup, test, and tear-down scripts or programs.

How? Each test is a monitored process.  Jregress evaluates the test output, or stops the process if the test times-out.

The custom diff command ignores non-deterministic output; multiple developers can easily develop and run portable tests.

Features: Setup, test, and tear-down wrappers are shell or ant scripts, Java or scripting language programs.  Setup/tear-down scripts can start/stop processes.  Tests are independent and can use jUnit, TestNG, Selenium, etc.

Pre-reqs: “Unix” environment: Solaris, Mac OS X, Linux, Cygwin, etc.

Category: jregress

Posted by: Mike Wright on: September 11, 2008

Tags:

Migrating from Cygwin to VirtualBox

While migrating from MKSTools to Cygwin to VMWare-plus-Knoppix over the years, I’ve recently ended up with VirtualBox-plus-Ubuntu as my preferred way to run *nix-depenedent builds/tests on my Windows systems at home.

Reducing cost is one a factor.  A bigger factor is the ease of finding documentation, FAQs and HOW-TOs.  VirtualBox and Ubuntu just seem easier to use, too.  Another factor is power use.

With Solar PV cells soon to be offsetting a small percentage of the electricity I use at home for servers, consolidating multiple virtual servers on fewer physical systems with larger memory reduces power use by a large percentage.

The kill-a-watt shows that my home server systems consume around 2 Amps each, so instead of running four at once it would be better to consolidate the work on to one system, saving 75% or 6 Amps.  (I use Solaris Zones on my lab systems at work to also conserve power, space, and cooling requirements).

Category: virtualbox

Posted by: Mike Wright on: September 11, 2008

Tags:

Open ESB scalable testing environment

virtualization plan

Working towards JBI Service Engine scalable testing

When checking out different branches from different projects using different tools, it is hard to predict which two or three builds need to run at any given time.   I’ve had to maintain nearly identical setups across multiple physical systems.

Plan: attach granular VirtualBox disks to a particular virtual machine as needed.

The benefits:

  • save energy (powering up fewer physical machines when only running a couple of builds at once)
  • “on demand” scaling (”move” work to additional physical machines by copying a relatively small disk image for each vm)
  • less entropy (cloning disks ensures identical setups)

This makes it easier to distribute test clients and servers across my network and try different WS-Notification publish/subscribe use-cases and configurations.

Category: open-esb, virtualbox

Posted by: Mike Wright on: September 10, 2008

Tags: , ,

Resuming virtual machine after laptop hibernate

Setup: a Windows laptop with a VirtualBox (Ubuntu) guest machine,  running Open ESB, for developing WS-Notification demos.

A use-case: Moving the laptop from one location to another, requiring: pausing, hibernating, waking, switching from wireless to LAN connection, and resuming the virtual machine (which works, yay!).

A problem: However, when resuming the guest machine, it had the wrong date and time.  Then trying the ntpdate command failed to fix this, due to the laptop’s different network setup.

A solution: create a script, for example in:

/usr/local/bin/myresume.sh

to compensate for this, with two commands:

#/bin/sh
dhclient
ntpdate ntp.ubuntu.com

(After running this, as root, the resumed guest machine was all set to go.)

Category: virtualbox

Posted by: Mike Wright on: September 10, 2008

Tags: