シナリオ:glassfish 4.1/jdk1.8.45で動作するJavaサーブレット。データベースから読み込まれ、javax.script。*を使用してサーバー側で実行されるjavascript関数があります。この関数をデバッグしようとすると、JSONオブジェクトをサーバログに出力することが望まれます。実際のJSONの代わりに[オブジェクトオブジェクト]を出力しています.JSON.stringify()を使用して、[未定義]を返します。 このシナリオでjsonオブジェクトの実際の内容を印刷する方法はありますか?おかげさまで glassfishサーバーログのjavascript関数からJSONオブジェクトを出力する
0
A
答えて
1
JSON.stringifyは、javascriptオブジェクトのみが動作します。 Javaオブジェクトでは機能しません。 JSON.stringifyをJavaScriptオブジェクトで呼び出すことを確認してください。
JavaオブジェクトにJSON文字列を作成する必要がある場合は、Object.bindProperties拡張子(https://wiki.openjdk.java.net/display/Nashorn/Nashorn+extensions#Nashornextensions-Object.bindProperties)を使用して、Javaオブジェクトのプロパティをスクリプトオブジェクトにバインドし、JSON.stringifyを呼び出すことができます。
サンプル(テスト)コードはこちら - >http://hg.openjdk.java.net/jdk9/dev/nashorn/file/0de67a63e2c7/test/script/nosecurity/treeapi/utils.js
このスクリプトはフレンドリーJSONオブジェクトとしてNashorn ASTツリーオブジェクト[Javaオブジェクト]を変換するために使用されます。
0
関連する問題
- 1. GlassFishサーバーログの場所
- 2. Javascript:オブジェクト関数内のクリック関数からオブジェクト関数を呼び出す
- 3. のctypes - PythonオブジェクトにC++関数からの出力を得る
- 4. JSON出力の[オブジェクト0オブジェクト]
- 5. コンストラクタ関数からのJavaScript出力が 'undefined'に戻る
- 6. 自分自身から関数を呼び出すJavascriptオブジェクト
- 7. 配列から単一のjsonオブジェクトを出力する
- 8. 異なるURLからJSONオブジェクトを取得するJavascript(JQueryなし)関数?
- 9. flashオブジェクト:javascript関数を呼び出す
- 10. Javascriptの関連オブジェクトを変換してPHPで出力する
- 11. JavaScriptのJSON配列出力
- 12. オブジェクト内の関数から関数を呼び出す(オブジェクトリテラル)
- 13. JSONからJavaScriptオブジェクト#textプロパティ
- 14. jsonオブジェクトをajaxレスポンスに出力する
- 15. 異なるJavaScript関数でJSONオブジェクトを使用する
- 16. knitr出力中の関数からhtmlを出力
- 17. javascriptの変数を関数外に出力する
- 18. C++出力オブジェクトへの配列の出力(関数別)
- 19. jQueryからJavascript変数を返すAJAX呼び出しは前のJavascript/JSONオブジェクトを上書きする
- 20. Glassfishの最大サーブレット出力
- 21. 引数からjavaからjavascript関数を呼び出す
- 22. ループを使わずにjavascriptのJSONオブジェクトから値のみを抽出する
- 23. phl curl関数からテキスト変数を出力する
- 24. Javascript - JavascriptオブジェクトからオブジェクトIDを抽出する
- 25. uiオブジェクトにjsonオブジェクトの出力を表示するには?
- 26. ネストされたオブジェクト関数からJavaScript関数を呼び出すと失敗する
- 27. オブジェクトのプロパティを変更してからjavascriptでカスタム関数の中で関数を呼び出す
- 28. 関数名からのJavascript呼び出し関数
- 29. 外部関数からのJavascript即値関数呼び出し
- 30. javascript関数でjsonオブジェクトを返す方法は?
はい、JavaScript内でstringifyを使用しています。javaではありません。私はデバッグステートメントをJavaScript関数の内部から出力したい。 –
スクリプト内でJSON.stringigyを呼び出す部分は問題ありません。私の質問はあなたがJSON.stringifyに渡す引数についてです!それは引数かスクリプトオブジェクトとしてのJavaオブジェクトですか? JSオブジェクトに "undefined"がある場合は、バグのようです。それがJavaオブジェクトならば、それは設計通りです。 –
ok ..私は誤解しました。引数はjsオブジェクトです。 \t var fullJson = formDataHolder.getFullJson()、 \t \t ignoreList = getIgnoreList(); \t \t groupKey =のparseInt(REQ .__ ctrl__groupKey)、 \t \t ITEMKEY =のparseInt(REQ .__ ctrl__itemKey)、 \t \t validateGroup =のparseInt(REQ .__ ctrl__validateGroup)、 \t \t validateItem =のparseInt(REQ .__ ctrl__validateItem)、 \t REQに\t reviewRequested = 'レビュー' \t \t showReview =偽、 \t \t returnJson = {}、 \t \t vItemCheck = validateGroup + '' +有効ateItem、 \t \t itemCheck = groupKey + '。' + itemKey; いくつかの操作の後、私はreturnJsonを印刷しようとしています。 ご協力いただきありがとうございます! –