in the LiveConnect3 Java Method Overloading,
reference http://www.mozilla.org/js/liveconnect/lc3_method_overloading.html,
it states in Resolution of Java Methods from JavaScript...

"Although the the choice of method to be invoked may be different in
LC3 compared to earlier versions of LiveConnect, the permitted
conversions of JavaScript arguments to Java types has not been
changed.  Hence, backward compatibility is preserved for invocations
of non-overloaded methods or in cases where only a single method is
compatible with the argument types used. "

I suppose that "backward compatibility" means conformance with...
http://www.webreference.com/javascript/reference/core/lc.html#1037125
<
Chapter 9   LiveConnect Overview
Data Type Conversions
JavaScript to Java Conversions
Number Values
0 and NaN values are converted to false.
Other values are converted to true.
>
if I interpret this correctly then a nonoverloaded Java method e.g.
public void aBoolean(boolean x)

should be invocable in Javascript with a numeric value, e.g.

javaRef.aBoolean(0);

however this is not the case in Rhino. this causes an
EvaluatorException:
Can't find method ...aBoolean(number).

is this an intentional omission, an oversight, or am I confused in my
interpretation of the JavaScript to Java Conversions in past
LiveConnect versions and the LC3 backward compatibility claim?
_______________________________________________
dev-tech-js-engine-rhino mailing list
[email protected]
https://lists.mozilla.org/listinfo/dev-tech-js-engine-rhino

Reply via email to