Exceptions thrown by java code are placed in $@ if the code is called inside 
an eval block.
The exceptions seem to have a very limited lifespan when left in [EMAIL 
PROTECTED] If I 
copy $@ to a normal variable I can 
call multiple functions , if I use $@ directly the second function call fails 
with "can't call method "something" 
without a package or object reference"

Is this related to the way perl normally handles $@ , something I missed in 
the Inline::Java docs or an Inline::Java bug?

eg :

eval { call_some_java() }
if($@)
{
   [EMAIL PROTECTED]>getMessage();
   [EMAIL PROTECTED]>getMessage();
}

fail but

eval { call_some_java() }
if($@)
{
   my $var = $@;
   $var->getMessage();
   $var->getMessage();
}

works

Reply via email to