You may see the following message in ColdFusion's logfile, at the head of a stack trace:
The actual method signature, ;)Ljava/lang/Object; may differ.
No ColdFusion page is generated. This exception may be displayed in the browser instead.
The root cause appears to be as follows:
During the last step, BCEL emits an exception that the given method signature is not valid. In the case of our exemplar, the method signature actually is not valid: ;)Ljava/lang/Object; contains the return type (a java.lang.Object) and part of the method parameters (😉) which have been truncated.
The reason for the truncation is not known, since we have been unable to reproduce this case, so the following is (educated) conjecture:
This bug seems to occur with or without FusionReactor installed, from time periods spanning several releases. We do not believe at this time that FR is a causative factor in this bug. There are some documented cases of similar issues with BCEL. The library is not thread-safe, so attempting to compile several ColdFusion pages at one time might trigger it.
If the bug is actually related to thread-safety, it will be extremely sensitive to timing. It appears to be quite rare, and difficult to reproduce.
Causing ColdFusion to recompile the page should alleviate the problem:
The presence of FR should not affect the likelihood of this bug occurring.
If you have a repeatable case, where this bug can be exercised at will, please get in touch with us: firstname.lastname@example.org – we'd love to hear from you.
|Last Updated:||04/Oct/11 12:31 PM|
Comments are closed.