Right, after dropping into #Puppet-dev and hashing the issue out with Andy (zaphod42), have managed to find a fix...
The failures I was seeing on 1.9.3 were due to a difference in how asadmin.rb:6 was being interpreted between Ruby 1.8.7 and 1.9.3, as Andy outlined:
17:11 <+zaphod42> fatmcgav: figured it out
17:12 <+zaphod42> 1.8.7 and 1.9.3 deal with that line differently
17:12 <+zaphod42> on 1.8.7 defined?@resource[:dashost] && !@resource[:dashost].nil? turns into nil
17:12 <+zaphod42> on 1.9.3 defined?@resource[:dashost] && !@resource[:dashost].nil? turns into "expression"
He also suggested a more elegant way of handling this scenario, by using '@resource.parameters.include?' [1] to check if the param is present.
So a quick tweak, and it appears to be working as expected : D
So again, a massive thanks to Andy for persisting.
Regards
Gavin
[1]
https://github.com/fatmcgav/puppet-glassfish/commit/ea702df4ec111c81b55a4b927191673faddbe270