Submit Search
Upload
XPagesDay2015 - 誰も教えてくれなかったデバッグ方法
•
Download as PPTX, PDF
•
3 likes
•
3,775 views
Mitsuru Katoh
Follow
XPagesDay 2015 で行ったセッションのスライドです。
Read less
Read more
Software
Report
Share
Report
Share
1 of 29
Download now
Recommended
XPages 開発 Tips 百連発
XPages 開発 Tips 百連発
Mitsuru Katoh
XPagesで検索してみよう
XPagesで検索してみよう
Masahiko Miyo
Javascript Roadmap - The Basics
Javascript Roadmap - The Basics
Aswin Barath
Mongo sharding
Mongo sharding
Takahiro Inoue
Boost.Coroutine
Boost.Coroutine
melpon
ソーシャルゲームにおけるMongoDB適用事例 - Animal Land
ソーシャルゲームにおけるMongoDB適用事例 - Animal Land
Masakazu Matsushita
C++でNVMeと(*´Д`)ハァハァ 戯れていたら一年経ってた。
C++でNVMeと(*´Д`)ハァハァ 戯れていたら一年経ってた。
hiyohiyo
実践!Django + GraphQL 実装
実践!Django + GraphQL 実装
ssuseraf19bf
Recommended
XPages 開発 Tips 百連発
XPages 開発 Tips 百連発
Mitsuru Katoh
XPagesで検索してみよう
XPagesで検索してみよう
Masahiko Miyo
Javascript Roadmap - The Basics
Javascript Roadmap - The Basics
Aswin Barath
Mongo sharding
Mongo sharding
Takahiro Inoue
Boost.Coroutine
Boost.Coroutine
melpon
ソーシャルゲームにおけるMongoDB適用事例 - Animal Land
ソーシャルゲームにおけるMongoDB適用事例 - Animal Land
Masakazu Matsushita
C++でNVMeと(*´Д`)ハァハァ 戯れていたら一年経ってた。
C++でNVMeと(*´Д`)ハァハァ 戯れていたら一年経ってた。
hiyohiyo
実践!Django + GraphQL 実装
実践!Django + GraphQL 実装
ssuseraf19bf
NAND Flash から InnoDB にかけての話(仮)
NAND Flash から InnoDB にかけての話(仮)
Takanori Sejima
OpenFOAMスレッド並列化のための基礎検討
OpenFOAMスレッド並列化のための基礎検討
Fixstars Corporation
Odoo Experience 2018 - The Odoo JS Framework
Odoo Experience 2018 - The Odoo JS Framework
ElínAnna Jónasdóttir
RDBとNoSQLの上手な付き合い方(勉強会@LIG 2013/11/11)
RDBとNoSQLの上手な付き合い方(勉強会@LIG 2013/11/11)
Yuji Otani
Modern Kernel Pool Exploitation: Attacks and Techniques
Modern Kernel Pool Exploitation: Attacks and Techniques
Michael Scovetta
traitを使って楽したい話
traitを使って楽したい話
infinite_loop
Chrome DevTools
Chrome DevTools
roadster43
MongoDBのはじめての運用テキスト
MongoDBのはじめての運用テキスト
Akihiro Kuwano
GraalVM の概要と、Native Image 化によるSpring Boot 爆速化の夢
GraalVM の概要と、Native Image 化によるSpring Boot 爆速化の夢
apkiban
Migration Guide from Java 8 to Java 11 #jjug
Migration Guide from Java 8 to Java 11 #jjug
Yuji Kubota
はまる!JPA(初学者向けライト版)
はまる!JPA(初学者向けライト版)
Masatoshi Tada
React Native
React Native
Fatih Şimşek
[CB19] アンチウイルスをオラクルとしたWindows Defenderに対する新しい攻撃手法 by 市川遼
[CB19] アンチウイルスをオラクルとしたWindows Defenderに対する新しい攻撃手法 by 市川遼
CODE BLUE
Portable Lucene Index Format & Applications - Andrzej Bialecki
Portable Lucene Index Format & Applications - Andrzej Bialecki
lucenerevolution
詳説データベース輪読会: 分散合意その2
詳説データベース輪読会: 分散合意その2
Sho Nakazono
オススメのJavaログ管理手法 ~コンテナ編~(Open Source Conference 2022 Online/Spring 発表資料)
オススメのJavaログ管理手法 ~コンテナ編~(Open Source Conference 2022 Online/Spring 発表資料)
NTT DATA Technology & Innovation
포트폴리오에서 사용한 모던 C++
포트폴리오에서 사용한 모던 C++
KWANGIL KIM
Javaはどのように動くのか~スライドでわかるJVMの仕組み
Javaはどのように動くのか~スライドでわかるJVMの仕組み
Chihiro Ito
Kotlinアンチパターン
Kotlinアンチパターン
Recruit Lifestyle Co., Ltd.
PostgreSQLモニタリングの基本とNTTデータが追加したモニタリング新機能(Open Source Conference 2021 Online F...
PostgreSQLモニタリングの基本とNTTデータが追加したモニタリング新機能(Open Source Conference 2021 Online F...
NTT DATA Technology & Innovation
知って得するWebで便利なpostgre sqlの3つの機能
知って得するWebで便利なpostgre sqlの3つの機能
Soudai Sone
【LiT Leaders】Android0309
【LiT Leaders】Android0309
Ryo Yamamoto
More Related Content
What's hot
NAND Flash から InnoDB にかけての話(仮)
NAND Flash から InnoDB にかけての話(仮)
Takanori Sejima
OpenFOAMスレッド並列化のための基礎検討
OpenFOAMスレッド並列化のための基礎検討
Fixstars Corporation
Odoo Experience 2018 - The Odoo JS Framework
Odoo Experience 2018 - The Odoo JS Framework
ElínAnna Jónasdóttir
RDBとNoSQLの上手な付き合い方(勉強会@LIG 2013/11/11)
RDBとNoSQLの上手な付き合い方(勉強会@LIG 2013/11/11)
Yuji Otani
Modern Kernel Pool Exploitation: Attacks and Techniques
Modern Kernel Pool Exploitation: Attacks and Techniques
Michael Scovetta
traitを使って楽したい話
traitを使って楽したい話
infinite_loop
Chrome DevTools
Chrome DevTools
roadster43
MongoDBのはじめての運用テキスト
MongoDBのはじめての運用テキスト
Akihiro Kuwano
GraalVM の概要と、Native Image 化によるSpring Boot 爆速化の夢
GraalVM の概要と、Native Image 化によるSpring Boot 爆速化の夢
apkiban
Migration Guide from Java 8 to Java 11 #jjug
Migration Guide from Java 8 to Java 11 #jjug
Yuji Kubota
はまる!JPA(初学者向けライト版)
はまる!JPA(初学者向けライト版)
Masatoshi Tada
React Native
React Native
Fatih Şimşek
[CB19] アンチウイルスをオラクルとしたWindows Defenderに対する新しい攻撃手法 by 市川遼
[CB19] アンチウイルスをオラクルとしたWindows Defenderに対する新しい攻撃手法 by 市川遼
CODE BLUE
Portable Lucene Index Format & Applications - Andrzej Bialecki
Portable Lucene Index Format & Applications - Andrzej Bialecki
lucenerevolution
詳説データベース輪読会: 分散合意その2
詳説データベース輪読会: 分散合意その2
Sho Nakazono
オススメのJavaログ管理手法 ~コンテナ編~(Open Source Conference 2022 Online/Spring 発表資料)
オススメのJavaログ管理手法 ~コンテナ編~(Open Source Conference 2022 Online/Spring 発表資料)
NTT DATA Technology & Innovation
포트폴리오에서 사용한 모던 C++
포트폴리오에서 사용한 모던 C++
KWANGIL KIM
Javaはどのように動くのか~スライドでわかるJVMの仕組み
Javaはどのように動くのか~スライドでわかるJVMの仕組み
Chihiro Ito
Kotlinアンチパターン
Kotlinアンチパターン
Recruit Lifestyle Co., Ltd.
PostgreSQLモニタリングの基本とNTTデータが追加したモニタリング新機能(Open Source Conference 2021 Online F...
PostgreSQLモニタリングの基本とNTTデータが追加したモニタリング新機能(Open Source Conference 2021 Online F...
NTT DATA Technology & Innovation
What's hot
(20)
NAND Flash から InnoDB にかけての話(仮)
NAND Flash から InnoDB にかけての話(仮)
OpenFOAMスレッド並列化のための基礎検討
OpenFOAMスレッド並列化のための基礎検討
Odoo Experience 2018 - The Odoo JS Framework
Odoo Experience 2018 - The Odoo JS Framework
RDBとNoSQLの上手な付き合い方(勉強会@LIG 2013/11/11)
RDBとNoSQLの上手な付き合い方(勉強会@LIG 2013/11/11)
Modern Kernel Pool Exploitation: Attacks and Techniques
Modern Kernel Pool Exploitation: Attacks and Techniques
traitを使って楽したい話
traitを使って楽したい話
Chrome DevTools
Chrome DevTools
MongoDBのはじめての運用テキスト
MongoDBのはじめての運用テキスト
GraalVM の概要と、Native Image 化によるSpring Boot 爆速化の夢
GraalVM の概要と、Native Image 化によるSpring Boot 爆速化の夢
Migration Guide from Java 8 to Java 11 #jjug
Migration Guide from Java 8 to Java 11 #jjug
はまる!JPA(初学者向けライト版)
はまる!JPA(初学者向けライト版)
React Native
React Native
[CB19] アンチウイルスをオラクルとしたWindows Defenderに対する新しい攻撃手法 by 市川遼
[CB19] アンチウイルスをオラクルとしたWindows Defenderに対する新しい攻撃手法 by 市川遼
Portable Lucene Index Format & Applications - Andrzej Bialecki
Portable Lucene Index Format & Applications - Andrzej Bialecki
詳説データベース輪読会: 分散合意その2
詳説データベース輪読会: 分散合意その2
オススメのJavaログ管理手法 ~コンテナ編~(Open Source Conference 2022 Online/Spring 発表資料)
オススメのJavaログ管理手法 ~コンテナ編~(Open Source Conference 2022 Online/Spring 発表資料)
포트폴리오에서 사용한 모던 C++
포트폴리오에서 사용한 모던 C++
Javaはどのように動くのか~スライドでわかるJVMの仕組み
Javaはどのように動くのか~スライドでわかるJVMの仕組み
Kotlinアンチパターン
Kotlinアンチパターン
PostgreSQLモニタリングの基本とNTTデータが追加したモニタリング新機能(Open Source Conference 2021 Online F...
PostgreSQLモニタリングの基本とNTTデータが追加したモニタリング新機能(Open Source Conference 2021 Online F...
Similar to XPagesDay2015 - 誰も教えてくれなかったデバッグ方法
知って得するWebで便利なpostgre sqlの3つの機能
知って得するWebで便利なpostgre sqlの3つの機能
Soudai Sone
【LiT Leaders】Android0309
【LiT Leaders】Android0309
Ryo Yamamoto
プログラムの処方箋~健康なコードと病んだコード
プログラムの処方箋~健康なコードと病んだコード
Shigenori Sagawa
Windows ストア アプリの上手な作り方
Windows ストア アプリの上手な作り方
一希 大田
15分でざっくり分かるScala入門
15分でざっくり分かるScala入門
SatoYu1ro
Rあんなときこんなとき(tokyo r#12)
Rあんなときこんなとき(tokyo r#12)
Shintaro Fukushima
開発中 3Dプリント API for Flash の 紹介 【as3sculpteo】
開発中 3Dプリント API for Flash の 紹介 【as3sculpteo】
Sadao Tokuyama
LITメンター研修_Android0212
LITメンター研修_Android0212
Ryo Yamamoto
明日から使えるPostgre sql運用管理テクニック(監視編)
明日から使えるPostgre sql運用管理テクニック(監視編)
kasaharatt
PHP基礎勉強会
PHP基礎勉強会
Yuji Otani
Interop2017
Interop2017
tak9029
TypeScript0.9
TypeScript0.9
ukayare
データサイエンティストに聞く!今更聞けない機械学習の基礎から応用まで V7
データサイエンティストに聞く!今更聞けない機械学習の基礎から応用まで V7
Shunsuke Nakamura
Object-oriented Programming / Exception handling
Object-oriented Programming / Exception handling
saireya _
03 var array_flow_func
03 var array_flow_func
文樹 高橋
Cookpad Summer Intern 2015 - Programming Paradigm
Cookpad Summer Intern 2015 - Programming Paradigm
Minero Aoki
お手軽Ajaxアプリケーションの作り方
お手軽Ajaxアプリケーションの作り方
Shunji Konishi
OSC沖縄2014_JPUG資料
OSC沖縄2014_JPUG資料
kasaharatt
オブジェクト指向入門5
オブジェクト指向入門5
Kenta Hattori
運用構築技術者の為のPSプログラミング第1回
運用構築技術者の為のPSプログラミング第1回
Shigeharu Yamaoka
Similar to XPagesDay2015 - 誰も教えてくれなかったデバッグ方法
(20)
知って得するWebで便利なpostgre sqlの3つの機能
知って得するWebで便利なpostgre sqlの3つの機能
【LiT Leaders】Android0309
【LiT Leaders】Android0309
プログラムの処方箋~健康なコードと病んだコード
プログラムの処方箋~健康なコードと病んだコード
Windows ストア アプリの上手な作り方
Windows ストア アプリの上手な作り方
15分でざっくり分かるScala入門
15分でざっくり分かるScala入門
Rあんなときこんなとき(tokyo r#12)
Rあんなときこんなとき(tokyo r#12)
開発中 3Dプリント API for Flash の 紹介 【as3sculpteo】
開発中 3Dプリント API for Flash の 紹介 【as3sculpteo】
LITメンター研修_Android0212
LITメンター研修_Android0212
明日から使えるPostgre sql運用管理テクニック(監視編)
明日から使えるPostgre sql運用管理テクニック(監視編)
PHP基礎勉強会
PHP基礎勉強会
Interop2017
Interop2017
TypeScript0.9
TypeScript0.9
データサイエンティストに聞く!今更聞けない機械学習の基礎から応用まで V7
データサイエンティストに聞く!今更聞けない機械学習の基礎から応用まで V7
Object-oriented Programming / Exception handling
Object-oriented Programming / Exception handling
03 var array_flow_func
03 var array_flow_func
Cookpad Summer Intern 2015 - Programming Paradigm
Cookpad Summer Intern 2015 - Programming Paradigm
お手軽Ajaxアプリケーションの作り方
お手軽Ajaxアプリケーションの作り方
OSC沖縄2014_JPUG資料
OSC沖縄2014_JPUG資料
オブジェクト指向入門5
オブジェクト指向入門5
運用構築技術者の為のPSプログラミング第1回
運用構築技術者の為のPSプログラミング第1回
More from Mitsuru Katoh
テクてくLotus技術者夜会 2020年7月 MarvelClient を使ったクライアント管理機能
テクてくLotus技術者夜会 2020年7月 MarvelClient を使ったクライアント管理機能
Mitsuru Katoh
panagenda MarvelClientとケートリック XPages マスターテンプレートのご紹介
panagenda MarvelClientとケートリック XPages マスターテンプレートのご紹介
Mitsuru Katoh
ケートリック製品ポートフォリオを一挙にご紹介
ケートリック製品ポートフォリオを一挙にご紹介
Mitsuru Katoh
Notes クライアント上のすべての項目を一括管理、変更も可能なクライアント管理ツール「panagenda MarvelClient」のご紹介
Notes クライアント上のすべての項目を一括管理、変更も可能なクライアント管理ツール「panagenda MarvelClient」のご紹介
Mitsuru Katoh
活用状況可視化ツール のご紹介
活用状況可視化ツール のご紹介
Mitsuru Katoh
Notes Dominoアプリのモバイル化戦略
Notes Dominoアプリのモバイル化戦略
Mitsuru Katoh
【テクてく】IBM ConnectED 苦行レポート
【テクてく】IBM ConnectED 苦行レポート
Mitsuru Katoh
一歩先行くNotes dominoモバイルアプリ戦略
一歩先行くNotes dominoモバイルアプリ戦略
Mitsuru Katoh
XPagesDay 2014【B 1】最新のモバイル ui を瞬時に作成 〜x controlsのご紹介〜
XPagesDay 2014【B 1】最新のモバイル ui を瞬時に作成 〜x controlsのご紹介〜
Mitsuru Katoh
Dominoアクセスサービスを使用したRESTサービスのプレイブック
Dominoアクセスサービスを使用したRESTサービスのプレイブック
Mitsuru Katoh
GSX Monitor と GSX Analyzer のご紹介
GSX Monitor と GSX Analyzer のご紹介
Mitsuru Katoh
XPagesジャンプスタート
XPagesジャンプスタート
Mitsuru Katoh
IBM Notes/Domino 9.0.1 アプリケーション開発新機能
IBM Notes/Domino 9.0.1 アプリケーション開発新機能
Mitsuru Katoh
モバイルファースト時代のノーツアプリモバイル化戦略
モバイルファースト時代のノーツアプリモバイル化戦略
Mitsuru Katoh
これからのNotesモバイルアプリはこう作れ
これからのNotesモバイルアプリはこう作れ
Mitsuru Katoh
これからのNOTESモバイルアプリはこう作れ
これからのNOTESモバイルアプリはこう作れ
Mitsuru Katoh
Unplugged brief introduction
Unplugged brief introduction
Mitsuru Katoh
More from Mitsuru Katoh
(17)
テクてくLotus技術者夜会 2020年7月 MarvelClient を使ったクライアント管理機能
テクてくLotus技術者夜会 2020年7月 MarvelClient を使ったクライアント管理機能
panagenda MarvelClientとケートリック XPages マスターテンプレートのご紹介
panagenda MarvelClientとケートリック XPages マスターテンプレートのご紹介
ケートリック製品ポートフォリオを一挙にご紹介
ケートリック製品ポートフォリオを一挙にご紹介
Notes クライアント上のすべての項目を一括管理、変更も可能なクライアント管理ツール「panagenda MarvelClient」のご紹介
Notes クライアント上のすべての項目を一括管理、変更も可能なクライアント管理ツール「panagenda MarvelClient」のご紹介
活用状況可視化ツール のご紹介
活用状況可視化ツール のご紹介
Notes Dominoアプリのモバイル化戦略
Notes Dominoアプリのモバイル化戦略
【テクてく】IBM ConnectED 苦行レポート
【テクてく】IBM ConnectED 苦行レポート
一歩先行くNotes dominoモバイルアプリ戦略
一歩先行くNotes dominoモバイルアプリ戦略
XPagesDay 2014【B 1】最新のモバイル ui を瞬時に作成 〜x controlsのご紹介〜
XPagesDay 2014【B 1】最新のモバイル ui を瞬時に作成 〜x controlsのご紹介〜
Dominoアクセスサービスを使用したRESTサービスのプレイブック
Dominoアクセスサービスを使用したRESTサービスのプレイブック
GSX Monitor と GSX Analyzer のご紹介
GSX Monitor と GSX Analyzer のご紹介
XPagesジャンプスタート
XPagesジャンプスタート
IBM Notes/Domino 9.0.1 アプリケーション開発新機能
IBM Notes/Domino 9.0.1 アプリケーション開発新機能
モバイルファースト時代のノーツアプリモバイル化戦略
モバイルファースト時代のノーツアプリモバイル化戦略
これからのNotesモバイルアプリはこう作れ
これからのNotesモバイルアプリはこう作れ
これからのNOTESモバイルアプリはこう作れ
これからのNOTESモバイルアプリはこう作れ
Unplugged brief introduction
Unplugged brief introduction
XPagesDay2015 - 誰も教えてくれなかったデバッグ方法
1.
誰も教えてくれなかった XPagesのデバッグ方法 チームスタジオジャパン株式会社 加藤 満
2.
このセッションでカバーする内容 アプリケーションエラーや動作が「?」のときにどう対処する かを考える 対象 - SSJSの古典的なデバッグとエラー制御 - ログを取る -
SSJSデバッガー(9.0以降)
3.
エラーページの表示 基本中の基本!
4.
print() と _dump()
5.
print() と _dump() ともに変数に指定したオブジェクトをコンソールに表示するも のだが何が違うのか?
6.
print() と _dump() print()は基本的にどんなオブジェクト型にも対応するが、その オブジェクトの
toString() がコールされる - 例でみる jsonObject の [object Object] では役に立たない _dump() は複数要素をもつオブジェクト(JSONや配列、 HashMap、Vector値などなど)に有効 - サマリー情報だけでなく、それぞれのエントリーのすべての詳細デー タを書き出してくれる
7.
try / catch
/finally
8.
try { } catch(e) { } finally
{ } 評価コード エラー発生後のコード エラーの有無にかかわらず実行する後処理コード
9.
var iconPath =
""; try{ var doc = viewEntry.getDocument( ); if(doc.hasEmbedded()){ iconPath = "/attachment.gif"; } doc.recycle(); }catch(e){ } finally { return iconPath; } var iconPath = ""; var doc = viewEntry.getDocument(); if(doc.hasEmbedded()){ iconPath = "/attachment.gif"; } doc.recycle(); return iconPath;
10.
Commons のログ機能を使ってみる loggerクラスを使ってログ出力 - com.ibm.commons.log
クラスを拡張して console.log に出力 • <データディレクトリー>¥IBM_TECHNICAL_SUPPORT 内 - SSJS から利用可能 - notes.ini に HTTP_OSGI_ENABLE_CONSOLE_LOGGING=1 (要サーバー再起動) - プログラマブル {0} {1} {n} に変数を代入可能
11.
まずは java コードから Javaの設計としてこの以下のコード追加 -
package 名はご自由に
12.
SSJS
13.
errorp() – エラー warnp()
– 警告 infop() – 情報 APIの詳細は http://tinyurl.com/XPagesLogMgrAPI
14.
SSJSデバッガー
15.
SSJS デバッガー Domino Designer
9.0 以降 Domino サーバー上でも Designer のHTTP からでも動作 notes.ini JavaEnableDebug=1 JavaDebugOptions=transport=dt_socket,server=y,suspend=n, address=8000 JavascriptEnableDebug=1 - ※1 HTTPの再起動が必要 - ※2 JavascriptEnableDebugは大文字小文字を正確に 本番環境のサーバーでは決して行わないでください
16.
Domino Designer でのデバッグ構成
17.
18.
失敗 成功
19.
ブレークポイントの設定 ソースパネル上のSSJS コードの設定にブレークポイントを ダブルクリック!!!
20.
デバッグの開始 XPageをプリビューすると...
21.
22.
デバッグの操作 - ステップイン(F5) - ステップオーバー(F6) -
ステップリターン(F7) - 中断 - 再開(F8) - 終了(Ctrl+F2)
23.
- 「変数」タブで値を確認 • 実行時のそれぞれのステップでのスコープ変数の値を確認するには特に有効 •
値は確認するだけでなく、その場で変更することも可能
24.
ブレークポイントに debugger ステート メントを利用する
25.
debugger ステートメント 目的 他の開発者とブレークポイントを共有する 注意点 Notes/Domino 9.0
以降で有効 - 8.5.x 以前のバージョンではエラーが発生 本番環境のコードではこのステートメントは削除しましょう!
26.
「サーバーサイドJavaScriptの最初の行 で停止」オプション すべてのSSJSの最初の行で停 止 - 挙動がおかしいアプリでどこが原 因がわからないときに有効 - もちろん途中で好きな場所にブ レークポイントを設定してもよい
27.
条件付きブレークポイントの設定 設定したブレークポイントを右クリック - ブレークポイント・プロパティ - 条件の有効化 -
条件式
28.
29.
ご視聴ありがとうございました ご質問?ご批判?
Download now