More Related Content Similar to クラウドサービスとの連携で Notes/Domino の新しい活用方法を考えてみませんか
Similar to クラウドサービスとの連携で Notes/Domino の新しい活用方法を考えてみませんか (20) クラウドサービスとの連携で Notes/Domino の新しい活用方法を考えてみませんか2. 特記事項
• 本資料の掲載内容は、できる限り正確を期するよう に努めてはおりますが、いかなる明示または暗黙の 保証も責任も負いかねます。
• 本資料の情報は、使用先の責任において使用され るべきものであることを、あらかじめご了承ください。
• 掲載情報は不定期に変更されることもあります。他 のメディア等に無断で転載する事はご遠慮下さい。
• 当資料をコピー等で複製することは、執筆者の承諾 なしではできません。
• IBM®、Lotus®、WebSphere® は、International Business Machines Corporation の米国およびその他の国における商標です。
• Google および Google ロゴ、Android および Android ロゴ、Gmail、YouTube および YouTube ロゴ、Picasa、Google Play とそのロゴ、Chrome、Chrome
OS、Chromebook、Chromebooks for Work、Chromebox for meetings、Chrome Management Consoleは、Google Inc の商標または登録商標です。
• Microsoft, Encarta, MSN, および Windows は、米国 Microsoft Corporation の、米国およびその他の国における登録商標または商標です。
• Salesforce、Chatter、Sales Cloud、Service Cloud、Marketing Cloud、Salesforce Work.com、AppExchange、Salesforce Platform、および関連する全ての
ロゴは、salesforce.com,inc. の商標です。
• OracleとJavaはOracle Corporationおよびその関連企業の登録商標です。
• Twilio は Twilio, Inc. の登録商標あるいは商標です。
• Cloud Shared Office、CSO は株式会社ソルクシーズの登録商標です。
• 当資料に掲載された製品名または会社名は それぞれの各社の商標または登録商標です。
• イラストは、「ピクト缶」様を利用させて頂きました。
ピクト缶ではシンプルなベクターイラストを無料で配布しています。(http://www.pictcan.com/)
5. 全般的な課題
• 仕様変更、サービス停止などの可能性
• 社内のセキュリティーポリシーのクリア
• 各サイトの利用規約、利用料金
• 今回紹介する例は Notes/Domino の機能紹介としての一例です。
Notes/Domino だけの閉じた世界ではなく、もっと他のサービスと組み合わ
せることで素早く、新しい活用を考えることのきっかけになればと考えていま
す。実際のご利用に際しては、各サービスにご確認ください。
• 今回ご紹介する内容には、スタンダード版ノーツクライアントのみの
機能があります
12. LiveText の補足
• LiveText では、認識したテキストを URL パラメータとしてブラウザで開き
ます。
• 例)
• http://zipsearch.mybluemix.net/zip.nsf/xpZipToAddr.xsp?zip=XXX-XXXX
• 上記 URL は、デモ用サイトのため使用できなくなる予定です。すいません。
17. Notes/Domino で Java™ を使うときの注意点
• 参考資料
• Lotus Notes/Domino における Java 実行環境とその問題判別について
• http://www-01.ibm.com/support/docview.wss?uid=swg21466201
18. JVM 環境
Notes/Domino のバージョン JVM バージョン
Lotus Notes/Domino 8.5 JVM 1.6.0 (SR1)
Lotus Notes/Domino 8.5.1 JVM 1.6.0 (SR4)
Lotus Notes/Domino 8.5.2 以降 1.6.0 (SR7)
IBM Notes/Domino 9.0.1 1.6.0 (SR16)
JavaCompilerTarget について
• デフォルトでは下位互換性維持のために Java エージェントは Java 1.2 用にコンパイルされます。
• Java6 の機能を有効化するには、コンパイルを行う Lotus Notes クライアントまたは Lotus
Domino サーバーに以下の Notes.ini パラメータを追加し、再起動を行ってください。
JavaCompilerTarget = 1.6
または
JavaCompilerTarget = CurrentJavaVersion (最も新しい Java バージョン)
補足
「設定」の Java > コンパイラーにもバージョンの
設定があるので確認しておいた方が良い
19. Java アプリケーションでの考慮事項と Recycle()
• JVM ではガベージコレクションが不要になったオブジェクトを定期的
に解放する。
• しかし、Lotus Notes における Java API では Lotus Notes のオブジェク
トを生成する際に Lotus Notes のメモリ管理下に置かれるオブジェク
トも生成されるため、定期的に Recycle() メソッドの実行が必要になる
ことがる。
• これらのオブジェクトはエージェント実行終了後、Lotus Notes 用のク
ラスローダーがアンロードされたタイミングで解放される、エージェン
ト実行時には解放されないままになる。
20. よくあるエラー
org.codehaus.jackson.map.JsonMappingException: Can not access public java.util.HashMap() (from class java.util.HashMap; failed
to set access: Access denied (java.lang.reflect.ReflectPermission suppressAccessChecks)
at org.codehaus.jackson.map.deser.StdDeserializerProvider._createAndCache2(StdDeserializerProvider.java:315)
at org.codehaus.jackson.map.deser.StdDeserializerProvider._createAndCacheValueDeserializer(StdDeserializerProvider.java:290)
at org.codehaus.jackson.map.deser.StdDeserializerProvider.findValueDeserializer(StdDeserializerProvider.java:159)
・・・・・・・
grant {
permission java.lang.reflect.ReflectPermission "suppressAccessChecks";
};
JSON のライブラリでエラーに遭遇
(gson, jsonic, jackson)
古いですが… Jsonic 1.1.3 だと使えました
問題の切り分けとして、一時的に以下のファイルを修正して確認
C:<Notes インストールパス>Notesjvmlibsecurity フォルダの Java.policy ファイル
21. Salesforce とは
• 営業支援 & CRM として、レポートやダッ
シュボード機能などは機能は魅力的
• アプリケーション開発プラットフォームとし
ても利用可能
• Developer Edition は無償
23. Salesforce との連携方法
• SOAP API
• Salesforce を操作するための強力で便利で、使いやすい SOAP ベースの Web サービスインターフェースを提
供します。レコードを作成、取得、更新、削除、または検索の実行などを行うことができます。
• REST API
• Force.com を操作するための強力で便利で、使いやすい Web サービス API を提供します。統合および開発が
容易という利点があり、モバイルアプリケーションおよび Web 2.0 プロジェクトで使用するための技術では最適
な選択です。
• Bulk API
• REST 規則に基づいており、大規模データセットの読み込みまたは削除用に最適化されています。 Salesforce の
バックグラウンド処理で複数のバッチを送信することにより、多数のレコードを非同期にクエリ、挿入、更新、更
新/挿入または削除できます。
• 他にも メタデータ API、ストリーミング API などもあります。
• どの API を使用すべきですか?
• https://help.salesforce.com/apex/HTViewHelpDoc?id=integrate_what_is_api.htm&language=ja
Salesforce 開発ドキュメントなどから抜粋
今回は、SOAP API について話します
24. 情報収集
• SOAP API 開発者ガイド
• http://resources.docs.salesforce.com/198/0/ja-jp/sfdc/pdf/apex_api.pdf
• 開発者ドキュメント:SOAP API開発者ガイド
• https://developer.salesforce.com/docs/atlas.ja-jp.api.meta/api/
25. 今回のアプリケーション環境
• サーバー
• IBM Domino 9.0.1 FP3
• クライアント
• IBM Notes/Domino Designer 9.0.1 FP3
• アプリケーション
• 標準のディスカッションDBをカスタマイズ
Java エージェントを
使ってデータを登録
• Developer Edition
• 掲示板アプリケーションを作成済み
今回は、Notes のディスカッションDBの内容を
Salesforce の掲示板アプリケーションへ登録する想定
27. WADL (ウィズダル) の取得
• 「設定」>「開発」>「API」>「Enterprise
WSDL の生成」を開く
• 表示された XML を名前を付けて保存
• enterprise.wsdl
29. WSC ファイルの取得
(Force.com Web Service Connector)
• 今回は「wsc-23.jar」をダウンロードして利用
(Notes/Domino の Java が 1.6 ベースであるのが原因なのか環境の問
題なのかそれ以降の WSC だとスタブの生成ができませんでした)
• http://mvnrepository.com/artifact/com.force.api/force-wsc
または
• https://code.google.com/p/sfdc-wsc/downloads/list
• 最新の WSC は、GitHub にある
• https://github.com/forcedotcom/wsc
30. スタブの生成(1)
• WSDL と WSC からスタブ(jar)を生成する
• コマンドプロンプトから以下のコマンドを実行
• java -classpath wsc-XX.jar com.sforce.ws.tools.wsdlc enterprise.wsdl
enterprise.jar
• 例
java -classpath c:salesforcewsc-23.jar com.sforce.ws.tools.wsdlc
c:salesforceenterprise.wsdl c:salesforceenterprise.jar
※ C:ibmnotesjvmbin に移動して実行してください
(Notes のインストール先が C:ibmnotes の場合)
※ 例では、enterprise.wsdl, wsc-23.jar は、 C:salesforce フォルダに配置
31. スタブの生成(2)
• C:>C:ibmnotesjvmbinjava -classpath c:salesforcewsc-23.jar com.sforce.ws.
• tools.wsdlc c:salesforceenterprise.wsdl c:salesforceenterprise.jar
• [WSC23][wsdlc.<init>:99]Created temp dir: C:UserstestAppDataLocalTempwsdlc-temp-8141655918898842490-dir
• [WSC23][wsdlc.generateTypes:302]Generating Java files from schema ...
• [WSC23][wsdlc.generateTypes:309]Generated 583 java files.
• [WSC23][wsdlc$Compiler.compile:474]Compiling to target default...
• [WSC23][wsdlc$Compiler.compile:504]Compiled 586 java files.
• [WSC23][wsdlc.generateJarFile:211]Generating jar file ... c:salesforceenterprise.jar
• [WSC23][wsdlc.generateJarFile:233]To include runtime classes in the generated jar please set system property standalone-jar=true
• [WSC23][wsdlc.generateJarFile:239]Generated jar file c:salesforceenterprise.jar
• [WSC23][wsdlc.<init>:125]Delete temp dir: C:UserstestAppDataLocalTempwsdlc-temp-8141655918898842490-dir
• [WSC23][wsdlc.<init>:127]Set system property del-temp-dir=false to not delete temp dir.
jar ファイルが生成される
36. まとめ…
• 今回の例は、Notes のデータを Salesforce に登録しましたが逆も可能
• リッチテキストは仕様が異なるので難しいと思う(無理?)
テキスト情報のみならば可能
• 添付ファイルは、Salesforce では本文と別のレコードに格納する必要が
あるので注意。大きな添付ファイルは Notes 側でメモリ不足のエラーが
出ることもあった。
38. 38
Copyright© 2015 SOLXYZ Co., Ltd. All Rights Reserved.
Cloud Shared Office ECM によるワークスタイルの変革
Cloud Shared Office ECMは、オフィスだけでなく、移動中、在宅勤務などの場所や海外、社外の取引先、パ
ートナーまで、安全かつスムーズに情報共有を行うことで、ビジネスを活性化させるファイルコラボレーショ
ンを提供します。
外出先から業務ファイルを
タブレットで参照。
空いた業務時間を有効活用。
パートナー
国内本社から大容量のファ
イルを転送。
メディア送付に掛けた時間
の短縮を実現。
営業社員
本社
自宅
取引先
社内で共有された文書が、
自宅PCへ自動同期。在宅
勤務などの促進に。
提供する文書に透かし、暗号化を
施し、情報漏えいの抑制を向上
国内・社内外へ提供ファイルは適
切なワークフローを経て公開。
業務プロセスの自動化に
データ管理、UIプラットフォーム
Salesforceと連携することで、営業支
援、ケース管理などのさまざまな業務
アプリケーションと連携可能
顧客
ログイン
FAQ
商談検索
39. Notes ユーザーが CSO を使う利点
• 利便性
• ワークフロー、ファイルの配信、スペースルール
• セキュリティ
• 柔軟なアクセス権管理
• 証跡(5年間。CSV 出力可能)
• ユーザー有効期間の設定
• PDF 透かし(ダウンロード時に日時やユーザー情報を透かしで挿入)
• 費用
• ユーザー数での課金ではない
( 5,000ユーザーまで。社外のユーザー数の増減も安心)
社内の Notes のように、
社外の人との情報共有にも
便利なコラボレーションの
機能が使える