アプレットがユーザーのマシンで信頼できないコードを実行できる Java7 の最新のセキュリティ侵害。詳細については、http://www.h-online.com/security/features/The-new-Java-0day-examined-1677789.htmlを参照してください。
しかし、私が持っている質問は次のとおりです。Expression クラスに導入された execute() メソッドにより、これらすべてが可能であると言われています。しかし、以前のバージョンでは不可能だった特別なことは何もありません。ソースは次のとおりです。
@Override
public void execute() throws Exception {
setValue(invoke());
}
java1.4 以降に存在する getValue() の場合:
public Object getValue() throws Exception {
if (value == unbound) {
setValue(invoke());
}
return value;
}
getValue() は、execute() が行うすべてのことを行います。では、なぜ execute メソッドについてそんなに大騒ぎするのでしょうか??