問題タブ [rhino]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
12462 参照

java - Javaを使用してRhinoJavascriptインタープリターを呼び出すにはどうすればよいですか?

javaメソッドを使用してrhino-javascript関数を呼び出し、それをjavaに戻す例はありますか?rhinoで見つけた唯一の例は、rhinoシェルでコマンドを入力することだけです。

0 投票する
1 に答える
1660 参照

java - Java 6 ScriptEngine と JSON.parse の問題

Java 6 ScriptEngine に含まれる Rhino リリースには、JSON パーサーがありません。JSON2.jsのスクリプトにcrockfords を含めてみましたscriptengine.eval()。を実行しようとすると、未知の関数JSON.parseであるスクリプト エラーが発生します。JSON2 のいくつかの場所で参照されており、ブラウザー (IE7、IE8、FF3) 内で正常に動作します。誰でもこれを見て、提案がありますか?.replace.replace

0 投票する
1 に答える
560 参照

java - アプレットで Rhino JavaScript エンジンを使用する方法

私の Java プログラムでは、Rhino を使用して JS スクリプトを実行しています。今、私はそれをうまく機能するアプレットに変換しようとしていますが、evaluateString(...) を呼び出すたびに JVM が AccessControlException をスローします。いくつかの(多くの)調査の後、これはRhinoのカスタムクラスローダーが原因であることがわかりました。私の問題は、何時間もグーグルで調べた後でも、Rhino が独自のクラスローダーをロードしようとするのを止める方法が見つからないことです。

誰かが私を助けてくれることを願っています...

0 投票する
4 に答える
8228 参照

java - Rhino を使用して、Java クラスのメソッドを Javascript のグローバル関数として追加するにはどうすればよいですか?

いくつかのメソッドを持つ単純な Java クラスがあります。

このクラスのインスタンスを作成し、Javascript コードがメソッドを直接呼び出せるようにしたいと思います。

今のところ理解できる唯一の方法は、使用することでした

そしてutils.deal(...)Javascriptコードで使用します。メソッドごとに Javascript でラッパー関数を記述することもできますが、クラスのすべてのパブリック メソッドに対してこれを自動的に行う簡単な方法があるはずです。

0 投票する
2 に答える
6257 参照

java - Rhino:ScriptableObjectからすべてのプロパティを取得するにはどうすればよいですか?

構成プロパティを持つオブジェクトとしてJavascriptオブジェクトを使用しています。たとえば、JavaScriptにこのオブジェクトがあります。

このオブジェクト(NativeObject)は、Java関数で返されます。例えば

オブジェクトからすべてのプロパティを取得し、そこからHashMapを構築したいと思います。

どんな助けでもありがたいです。

0 投票する
3 に答える
786 参照

java - JAVAでjavascriptのすべての変数を取得します

ユーザーがアプリケーションを拡張できるようにするために、JavaプラットフォームにrhinoとScriptingを使用しています。

ただし、ユーザーはいくつかのケースを書くことができます。たとえば(ASTO.value>440) || (ASTO.bellowNormal)...問題は、ScriptEngineを使用してJAVAアプリケーションからスクリプトを実行する前に、すべての変数の名前を取得したいということです。スクリプトを実行するために必要な変数を知っておく必要があるため...正規表現でうまくいくことはわかっていますが、確信が持てません...誰かがjavaregexpを見つけて変数を取得するのを手伝ってくれませんか本当にそれを評価します。

0 投票する
1 に答える
706 参照

java - Javascript識別子の解析とJavaでのRhinoへの置き換え

ユーザーにJavascriptを使用して条件を記述させたとすると、ユーザーは条件を記述してテストを実行し、trueまたはfalseを返すことができます。例えば:

ユーザーが作成したスクリプトで使用されている変数を見つけたい。Javaで識別子名を取得する方法を見つけようとしました。Rhinoライブラリはあまり役に立ちませんでした。ただし、例外を処理することで、すべての識別子を取得できることがわかりました。したがって、この問題は解決されます。

ですから、すべてが素晴らしいのですが、小さな問題が1つあります。これらの識別子を数値識別子に置き換えるにはどうすればよいですか?たとえば、INSあるべきであり_234ASTOあるべきです_331

INSなどASTOは私のデータベースのエンティティです。名前が変わる可能性があるので交換したいです。置換を使用してそれを行うことはできますが、これは簡単ではありません。

  1. It should be reversible. E.g. ASTO to _234 and _234 to ASTO again.
  2. Replacing _23 with MPLAH may also replace _234. This could be fixed with regexp somehow.
  3. What if _23 is in a comment section? Rare to happen, but possible /* _23 fdsafd ktl */. It should also be replaced.
  4. What if it is a name of a function? E.g. _32() {}. Also rare, but it shouldn't be replaced.
  5. What if it is enclosed in "" or ''?

I am sure that there are a lot more cases. Any ideas?

0 投票する
1 に答える
1630 参照

unit-testing - 入力値を変更する void メソッドをモック化する

パラメータを使用して void メソッドをモックし、値パラメータを変更するにはどうすればよいですか?

別のクラス (SomeClassB) に依存するクラス (SomeClassA) をテストしたいと考えています。SomeClassB をモックしたいと思います。

SomeClassB はインターフェイス IFoo を実装します

次に、単体テスト クラスで、SomeClassB.GetValue を模倣するデリゲート クラスを準備しました。

私が書いたモックの部分で:

いくつかの投稿を確認しましたが、デリゲートが void メソッドをモックするための鍵のようです。ただし、上記を試してもうまくいきません。私のデリゲートクラスに何か問題があるかどうか教えていただけますか? または、モックステートメントに何か問題がありますか?


私の RhinoMocks は 3.5 で、IgnoreArguments() を含めると Do 部分が削除されているようです

今、私は変わりました

Expect.Call(デリゲート { myFooObject.Getvalue(5, null); })。Do(新しい GetValueDelegate(GetValue)).IgnoreArguments() .Repeat.Any();

Expect.Call(delegate { myFooObject.Getvalue(5, null); }).IgnoreArguments(). Do(新しい GetValueDelegate(GetValue)) .Repeat.Any();

そして今、それは完全に正常に動作します!

0 投票する
3 に答える
916 参照

javascript - RhinoとJavascript1.8?

Rhinoに1.7よりも新しいJSの実装を使用させることは可能ですか?

mozillaがこれを行うのを待つ必要がありますか、それとも主導権を握っているコミュニティプロジェクトがありますか?

ありがとう。

0 投票する
1 に答える
609 参照

request - Rhino - パラメータ マップをネイティブ JS オブジェクトに変換する

パラメータをリクエストからネイティブJSオブジェクトに変換する「正しい」方法は何ですか?

私が何をしても、Javaオブジェクトになってしまうようです。