Upload
others
View
14
Download
0
Embed Size (px)
Citation preview
2
目次
[1] はじめに ................................................................................................................... 4
[2] InterSystems Labs(お試し環境)を利用するための準備 ......................................................... 6
1) オンラインラーニングのアカウントを作成する ....................................................................... 7
2) InterSystems Labsで IRISインストール環境を作成する .................................................... 10
3) ネームスペースについて理解する................................................................................... 14
4) 管理ポータルの SQL メニューの使い方を理解する ............................................................... 15
5) IDE(Atelier)の準備 ................................................................................................. 17
[3] 様々なアクセスを体験する .............................................................................................. 19
1) Javaから JDBCでアクセスしてみる ............................................................................... 20
2) C#で ADO.NETを利用してアクセスしてみる ..................................................................... 21
3) RESTインターフェースを作成してみる ............................................................................. 23
[4] Experienceシリーズのご紹介 ........................................................................................ 31
1) Big Data Analytics ................................................................................................ 33
2) InterSystems in the Cloud ..................................................................................... 35
3) Java & InterSystems IRIS ...................................................................................... 36
4) .NET and InterSystems IRIS .................................................................................. 40
5) InterSystems on FHIR ........................................................................................... 41
6) RESTful FHIR & Messaging ..................................................................................... 42
[5] 付録 ...................................................................................................................... 43
1) ロケールの変更 ....................................................................................................... 43
2) Web Terminalの利用方法確認 ................................................................................... 44
3) Web Terminalのインストール方法 ............................................................................... 45
3
図表目次
図 1 演習環境付きオンラインラーニング:イメージ ..................................................................... 4
図 2 オンラインラーニングのアカウント登録画面 ....................................................................... 7
図 3 オンラインラーニング:パスワード設定 ............................................................................. 8
図 4 オンラインラーニング:ログイン画面 ................................................................................ 9
図 5 [ENROLL ME]ボタン:InterSystems Labsの利用登録 .................................................... 10
図 6 InterSystems Labs 環境構築後の表示 ...................................................................... 11
図 7 IRIS体験環境:接続情報について ............................................................................... 12
図 8 管理ポータル:ユーザ「tech」のパスワード変更 ................................................................. 13
図 9 IRISのネームスペース、データベース ........................................................................... 14
図 10 管理ポータル:SQL メニュー ..................................................................................... 15
図 11 管理ポータル SQL メニュー:データインポートメニュー ....................................................... 16
図 12 Atelier:サーバ接続情報の設定 ................................................................................ 17
図 13 Atelier:クラス定義の作成とデバッグ実行例 .................................................................. 18
図 14 INSERT と SELECTを行う Javaのサンプルコード .......................................................... 20
図 15 コンソールアプリケーションのソースコード例(C#) ............................................................ 22
図 16 REST用ディスパッチクラスの作成 ............................................................................. 24
図 17 REST用ディスパッチクラス:GET要求の実装 ................................................................ 25
図 18 REST用ウェブアプリケーションパスの設定(ディスパッチクラスの登録) .................................... 26
図 19 REST クライアントからのテスト:GET要求 ..................................................................... 27
図 20 REST用ディスパッチクラス:POST要求の実装 ............................................................... 29
図 21 REST クライアントからのテスト:POST要求 ................................................................... 30
図 22 Experienceシリーズ:一覧 ..................................................................................... 31
図 23 Big Data Analytics:Apache Spark体験までの流れ 1 .................................................. 33
図 24 Big Data Analytics:Apache Spark体験までの流れ:Apache Zeppelinの環境構築 .............. 34
図 25 InterSystems in the Cloud Experience:体験環境の構築 ............................................. 35
図 26 Experience Java and InterSystems IRISのトップページ ............................................. 36
図 27 オンラインラーニングの開始方法 ................................................................................ 37
図 28 オンラインラーニング:演習環境付き Java体験コース開始方法 ............................................. 38
図 29 IRISへの接続情報例 ........................................................................................... 39
図 30 Experience .NET and InterSystems IRISのトップページ ............................................. 40
図 31 InterSystems on FHIR:体験ページ ........................................................................ 41
図 32 RESTful FHIR & Messaging:演習ページ .................................................................. 42
図 33 日本語ロケールへの変更 ........................................................................................ 43
図 34 Web Terminal実行例 .......................................................................................... 44
図 35 Web Terminalのソースコードダウンロード ................................................................... 45
図 36 Web Terminalのクラス定義をインポート ..................................................................... 46
4
[1] はじめに
InterSystems 教育サービスでは、InterSystems IRIS をはじめ、弊社製品をお手元の環境ですぐにご体験いただ
けるよう、演習環境付きオンラインラーニングを各種ご用意しています。
本ガイドでご説明する、演習環境付きオンラインラーニングの 1つ「InterSystems IRIS Labs(お試し環境)」では、以
下の操作が行える環境をご提供しております1。
InterSystems IRISの管理ポータル(ブラウザで操作する管理ツール)
Javaや.Netアプリケーションからの接続
InterSystems の IDE(Eclipse ベースで起動する Atelier 、またはクライアントキットのインストールにより提
供されるスタジオ )を利用したサーバサイドのプログラミング
図 1 演習環境付きオンラインラーニング:イメージ
1 IRISがインストールされた OSへの SSH接続は行えません。また、体験用環境への重要なデータのアップロードは
行わないでください。
オンラインラーニング 体験用環境
ユーザ=yamada利用環境=InterSytesms Labs
ユーザ=kato利用環境=InterSytesms Labs
ユーザ=suzuki利用環境=.Net & InterSystems IRIS
ユーザ=yamazaki利用環境=InterSytesms Labs
山崎さん「InterSystems IRIS Labs」で管理ポータルからのアクセスとADO.NET
からのアクセスを体験中。
ユーザ=tanaka利用環境=Java & InterSystems IRIS
ExperienceシリーズInterSystems IRIS Labs(お試し環境)
オンラインラーニングメニュー例
山田さん「InterSystems IRIS Labs」 で管理ポータルからのアクセスとJavaからのアクセスを体験中。またInterSystemsのIDEを利用してクラス定義作成中
5
インターシステムズ教育サービスでは、オンラインラーニングの他にも講師付きクラスルームラーニングもご用意しており
ます。ご提供中コース一覧については、こちらをご参照ください。
また、クラスルームラーニングでは、お客様のご要望に合わせた内容/日数での開催も承っております。
詳しくはこちらのページ下部にある「教育サービスへのお問合せ」または、担当営業までお問い合わせください。
その他技術情報については、以下のページよりご参照いただけます。
IRIS日本語ドキュメントトップページは、こちらから
InterSystems FAQサイトはこちらから。
(IRIS のトピックは将来追加される予定です。プログラミング関連は Caché/Ensemble のトピックと基本は同じ
操作方法です。)
デベロッパーコミュニティ(英語)はこちらから
Google翻訳を利用したコミュニティページ(日本語)はこちらから
開発者向け情報はこちらから
技術ガイドについてはこちらから
(IRIS用ガイドは将来追加される予定です。プログラミング関連は Caché/Ensembleのガイドと基本は同じ操作
方法です。)
実際の体験環境が本ガイド記載の内容と異なる場合もあります。予めご了承ください。
オンラインラーニングの操作や開始方法についてのご不明な点は、こちらのページ下部にある「教育サービスへのお問
合せ」または、担当営業までお問い合わせください。
IRISの操作についてのご不明な点は、弊社サポートセンター、または担当営業までお問い合わせください。
6
[2] InterSystems Labs(お試し環境)を利用するための準備
IRISお試し環境をご利用いただくため、以下の準備や確認を行います。
1) オンラインラーニングのアカウントを作成する
2) InterSystems Labs専用画面でアカウント別の環境を構築する
3) ネームスペースについて理解する
4) 管理ポータルの SQL メニューの使い方を理解する
5) IDE(Atelier)の準備
構築した体験環境へのアクセス情報は、オンラインラーニングのページでいつでも確認できますが、確認しやすくするた
めにテキストファイルなどに保存しておいてください。
7
1) オンラインラーニングのアカウントを作成する
1. 登録画面で、*お名前(FirstName/LastName)、職種(Job Title)、*会社名(Company)、
*国(Country)、*Email を記入します(*は必須項目です。お名前、職種、会社名は日本語で入力できます)。
図 2 オンラインラーニングのアカウント登録画面
<ユーザ登録画面の下半分>Terms and Conditions(利用規約と条件)に同意する場合は、チェックします。
ユーザ登録画面の上半分*は必須の登録項目です。
インターシステムズからのイベント情報、最新情報などニュースレター(英語)の配信を希望される場合はYes を、そうでない場合は、No にチェックします。
ご登録いただいた情報を使用して、オンラインラーニングの各種サービスを利用することを確認しています。よろしければ「Continue」ボタンを押下します。
8
2. 登録したメールアドレスに [email protected] からメールが送信されます。メール本文中
に記載されたトークンをテキストボックスに入力します。
3. パスワードを設定します。登録したメールアドレスに対するパスワードを設定して手続き終了です。
図 3 オンラインラーニング:パスワード設定
入力したEmail
まだ登録は完了していません。登録したメールアドレスに [email protected]からメールが送信されます。
本文の中に記載されたトークンを、テキストボックスに入力し「Continue」ボタンを押下します。
登録時指定したメールアドレスがあなたのアカウント名となります。アカウント名に対するパスワードを設定します。記入できたら「Continue」ボタンを押下します。入力したEmail
この画面が表示されたら登録完了です。
Hello,
You have been registered for an InterSystems account.
To complete this process, please paste the following token into the provided field in your browser:
IFOp5DKZBes
If you did not in fact register, kindly disregard this e-mail; feel free to contact [email protected] if you are concerned or have questions.
Thanks,
InterSystems Support
トークン
9
4. https://learning.intersystems.com のページへ移動し、画面右上の「Log in」でログインできることをご
確認ください。
図 4 オンラインラーニング:ログイン画面
10
2) InterSystems Labsで IRISインストール環境を作成する
InterSystems Labs の専用ページへ移動すると以下の「InterSystems Labs」のページが表示されます。
まずは、環境利用のため のボタンを押してください。
図 5 [ENROLL ME]ボタン:InterSystems Labsの利用登録
次に、IRISインストール環境作成用ページに移動します。
上図の「InterSystems Labs」をクリックするか、こちらをクリックしてください。
①
②
11
表示されたページの「Launch InterSystems IRIS」
にあるボタンをクリックすると、IRIS インストール環境が
構築されます。2
同じログインアカウントで構築済環境がある場合は、作成当時の情報を再表示します。
図 6 InterSystems Labs 環境構築後の表示
アクセス情報を後で確認できるように、テキストファイルなどに保存しておいてください。
2 環境構築には数十秒かかる場合もあります。
③
アクセスする環境が表示されます。Java/.NETからのアクセスは画面下部の「Connecting Your Java Application」「Connecting Your .NET Application」
にドライバダウンロードのリンクなど詳細情報が記載されています。
12
作成された環境のそれぞれの情報については、以下の通りです3。
図 7 IRIS体験環境:接続情報について
InterSystems Labsでは、ユーザが操作できる空のデータベースが予め用意されています。
ではさっそく、管理ポータルにアクセスして、練習用のテーブル定義やデータ作成など、行ってみましょう。
管理ポータルにアクセスするには、上図にある ①の「ServerAddress」の URL をクリックします。ユーザ名、パスワー
ドは、①に記載されている「Username」と「Password」に指定のある文字列をご利用ください。
3 Eclipseベースで動作する専用 IDE(Atelier)についての利用ガイドはこちらからご覧いただけます。
Server AddressはIRISの管理ポータル(ブラウザで操作する管理ツール)へのURLです。アクセス時のログインユーザはUserNameに記載された名前を利用してください。パスワードはPasswordに記載のある文字列を利用してください。
統合開発環境にIRIS スタジオを利用する場合の接続情報です。※スタジオはWindowsに専用キットでクライアントツールをインストールする必要があります。専用キットをお持ちでない場合は、Eclipseベースで動作するIDE(Atelier)をご利用ください。
EclipseベースのIDE(Atelier)を利用する場合の接続情報です。Atelierの使い方詳細はガイドをご参照ください。
①
②
③
13
管理ポータルの以下メニューを利用してユーザ:tech のパスワードを変更します4。
管理ポータル→システム管理→セキュリティ→ユーザ→techを選択
図 8 管理ポータル:ユーザ「tech」のパスワード変更
techユーザの修正画面で「新しいパスワードを入力」にチェックし、新しいパスワードを設定します。
パスワードは、3文字以上の英数字と記号の組み合わせで指定できます。
設定が終わったら、保存ボタンを押下し、設定を保存します。
4 構築された体験環境にアクセスする際使用するユーザ名(tech)のパスワードは、全ての体験環境で共通設定となる
ため、パスワードの変更を強く推奨いたします。
「新しいパスワードを入力」をチェックし、新しいパスワードを設定します(3文字以上の英数字+記号で設定します)。
14
3) ネームスペースについて理解する
続いて、アプリケーションやプログラムから IRISに接続する際必ず指定する「ネームスペース」についてご説明します。
IRISのインストール環境には、デフォルトでユーザが利用できる空のデータベース:USERが用意されています。
IRIS ではアプリケーションやプログラムはデータベースにアクセスするために「ネームスペース」を通してアクセスします。
ネームスペースとは、1つ以上のデータベースを取りまとめて 1つの論理的な単位として扱うための論理定義で、USER
データベースにアクセスするためには、USER データベースを使用するように定義したネームスペース(下図のイメージ
だと USER)からアクセスします。
なお、IRISのデータベースには、テーブル/クラス定義、ストアドプロシージャ、クラスメソッドやルーチン、そしてデータ
が格納されます(=全てデータベースに格納されます)。
つまり、ネームスペースにアクセスすれば、テーブル/クラス定義、ストアドプロシージャ、クラスメソッド、ルーチン、デー
タにアクセスできることと同等となります。
図 9 IRISのネームスペース、データベース
IRISのインストール環境には、USERネームスペースが用意されていて、空の USERデータベースを利用するように定
義されています。
以降の説明では、既存に準備のある USERネームスペースに接続した例でご紹介します。
USERIRISLIB
IRISTEMPIRISSYSデータベース
ネームスペースUSER TEST
TEST
15
4) 管理ポータルの SQL メニューの使い方を理解する
最初の操作は、ブラウザ上で操作する管理ポータルを起動し、SQL メニューの使い方をご体験いただきます。
P12「図 7 IRIS 体験環境:接続情報について」の①の ServerAddress に記載のアドレスにアクセスし、管理ポータ
ルを起動してください。
管理ポータル→システムエクスプローラ→SQL から SQL メニューを起動します。
以下の図例は CREATE TABLE文を利用したテーブル作成の流れです。
図 10 管理ポータル:SQL メニュー
1. 管理ポータルでSQLを操作できるSQLメニューに移動します。システムエクスプローラ→SQL
ログインに利用したtechユーザは、デフォルトネームスペースとしてUSERが設定されているため、USERネームスペースに接続した状態で画面が開きます。
2. ここに任意のSQL文を記述できます。例は、CREATE TABLEを実行しています。
4. 左画面で「テーブル」の►をクリックすると、テーブル一覧が参照できます。Demoスキーマ、HibernatesスキーマはUSERネームスペースに事前に
用意されたサンプルスキーマです。
3. テーブルのツリー情報を をクリックして更新します。
16
また、SQLを利用したデータを登録や、ファイルからデータのインポートを行うこともできます。
(体験環境は Ubuntu上に英語環境でインストールされているため、日本語が含まれるファイルをインポートする場合は、
事前に体験環境のロケールを変更する必要があります。手続きについては後述の P43 [5]付録の 1)ロケールの変更
をご参照ください。)
図 11 管理ポータル SQL メニュー:データインポートメニュー
図例に合わせたサンプルファイルのイメージは以下の通りです。
1. 管理ポータルのSQLメニューには、データインポート/エクスポートウィザードが用意されています。システムエクスプローラ→SQL 2. ウィザード→データ・インポート をクリック
3. インポートファイルが存在する場所を「マイローカルマシン」に設定します
4. インポートファイルを選択します。
5. インポート対象テーブルがあるネームスペースを指定します。
6. インポート対象のスキーマとテーブルを選択します
7. インポート対象カラムを「選択済み」に移します。また、インポートファイルの列の順序に合わせ、カラムの順序をあわせます。
8. ファイルの区切りマークを選択します。カンマの場合は、「キャラクタ」にチェックし、右横のテキストボックスに , を指定します。
9. インポート結果を確認する場合はリンクを押下します。
Name,Email
yamada,[email protected]
suzuki,[email protected]
17
5) IDE(Atelier)の準備
IRIS の体験環境では、専用 IDE(Eclipse の Atelier プラグイン)を利用してクラス定義を作成し、コードを記述して動
作をテストすることもできます。
以下の例は、Eclipseベースの IDEである Atelierを利用してクラス定義を作成するまでの流れです。
Atelierのインストール方法や詳細な利用方法については、ガイドをご参照下さい。
図 12 Atelier:サーバ接続情報の設定
Atelierの「Server Explorer」を開き を押下します。
アドレスは「Atelier」のServer Addressウェブサーバポートは80番を指定します。
「接続のテスト」ボタンを押下し、接続できることを確認できたら「完了」ボタンを押下します。
18
Atelierプロジェクトを追加し、クラス定義を追加しデバッグ実行している例です。
図 13 Atelier:クラス定義の作成とデバッグ実行例
【ご参考】
デバッグ実行の他に IRIS には、ObjectScript のコマンドを入力したり、作成したクラスメソッドを実行できるコマンド行
インターフェースを提供しています。
Linux 環境の場合は、Linux に SSH で接続したあと IRIS にログインしてから実行できますが、お試し環境では SSH
を許可していないため、Web Terminal5を利用します。
Web Terminalの利用方法について詳しくは、後述の P44[5]付録 2)[Web Terminalの利用方法確認]をご参照く
ださい。
5 Web Terminalは弊社のサポート機能ではありませんが、弊社製品を利用して作成されたサンプルコードのまとめサ
イトである Open Exchange上に公開された誰でも利用できるサンプルアプリケーションです。
事前に作成したサーバ名とネームスペース名を指定
プロジェクト名を設定
3. デバッグを実行するため、実行→デバッグの構成で実行対象
のクラスメソッド、引数を指定します。この他、実行中プロセスにアタッチしてデバッグを行う方法もあります
1. Atelierプロジェクトを作成します。
2. 例のクラスメソッドでは、第1引数Name、第2引数Emailを渡すとオブジェクトの文法でデータを1件登録するメソッドを記述しています。
19
[3] 様々なアクセスを体験する
前述までの流れで、IRISに簡単なテーブルが用意されましたので、この後の流れでは、Javaや.NETから IRISにアク
セスする方法と RESTインターフェースの作成方法を解説します。
Java については、4 つの接続方法(JDBC/NativeAPI/XEP/Hivernate)からアクセスできますが、JDBC を利用
したアクセスについてご紹介します。その他の利用方法については、後述のページ(P36[Java & InterSystems
IRIS])をご参照ください。
.NETについては、4つの接続方法(ADO.NET/NativeAPI/XEP/Entity Framework)からアクセスできますが、
ADO.NET を利用したアクセスについてご紹介します。その他の利用方法については、後述のページ(P40[.NET and
InterSystems IRIS])をご参照ください。
20
1) Javaから JDBCでアクセスしてみる
IRISに登録のある Training.Personテーブルに対して INSERTと SELECTを実行する Javaのコードを実行します。
JDBC の接続文字列は、環境構築時に表示された P12「図 7 IRIS 体験環境:接続情報について」の「External
Connections(Including InterSystems Studio)」の欄に記載のある InterSystems IRIS IP と InterSystems
IRIS Portの番号とアクセス対象のネームペースを以下の順序で指定します。
jdbc:IRIS://InterSystems IRIS IP:IntertSystems IRIS Port/ネームスペース
例) jdbc:IRIS://146.148.90.135:24549/USER
JDBC ドライバはこちらのページからダウンロードできます6。
6
JDBCドライバのダウンロードはこちらから
import java.sql.*;
public class JDBCSample {
public static void main(String[] str) throws Exception {
String url = "jdbc:IRIS://146.148.90.135:24549/USER";
Class.forName("com.intersystems.jdbc.IRISDriver");
Connection connection = DriverManager.getConnection(url,"tech","demo");
String insert1 = "INSERT INTO Training.Person VALUES ('テスト②太郎', '[email protected]')";
String query = "SELECT * FROM Training.Person";
Statement statement = connection.createStatement();
statement.executeUpdate(insert1);
ResultSet resultSet = statement.executeQuery(query);
System.out.println("*** SELECTの結果 ****");
while (resultSet.next()) {
System.out.println(resultSet.getString(1) + ", " + resultSet.getString(2) );
}
resultSet.close();
statement.close();
connection.close();
}
}
図 14 INSERT と SELECTを行う Javaのサンプルコード
21
2) C#で ADO.NETを利用してアクセスしてみる
IRIS体験環境に登録のある Training.Person テーブルに対して INSERT と SELECT を実行する ADO.NETのコー
ドを実行します。
接続文字列は、環境構築時に表示された P12「図 7 IRIS 体験環境:接続情報について」の「External
Connections(Including InterSystems Studio)」の欄に記載のある InterSystems IRIS IP と InterSystems
IRIS Portの番号とアクセス対象のネームペースを以下の順序で指定します。
"Server = " + InterSystems IRIS IP + "; Port = " + InterSystems IRIS Port + "; Namespace = ア
クセス対象のネームペース" + "; Password = " + password + "; User ID = " + username
例) "Server = " + 146.148.90.135 + "; Port = " + 24549 +
"; Namespace = USER; Password = demo; User ID = tech;"
ADO.NET用 DLLはこちらのページからダウンロードできます7。
サンプルコードは次ページやドキュメントをご参照ください。
7
DLLのダウンロードはこちらから
22
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using InterSystems.Data.IRISClient;
namespace ConsoleApp1
{
class Program
{
static void Main(string[] args)
{
String host = " 146.148.90.135";
String port = "24549";
String username = "tech";
String Password = "demo";
String Namespace = "USER";
IRISConnection IRISConnect = new IRISConnection();
IRISConnect.ConnectionString = "Server = " + host + "; Port = " + port + "; Namespace = " + Namespace
+ "; Password = " + Password + "; User ID = " + username;
IRISConnect.Open();
String sqlStatement1 = "INSERT INTO Training.Person VALUES ('山田テスト3太郎', '[email protected]')";
String queryString = "SELECT * FROM Training.Person";
IRISCommand cmd1 = new IRISCommand(sqlStatement1, IRISConnect);
IRISCommand cmd2 = new IRISCommand(queryString, IRISConnect);
cmd1.ExecuteNonQuery(); //ExecuteNonQuery() は、CREATE,INSERT,UPDATE,DELETE文で使用します。
IRISDataReader Reader = cmd2.ExecuteReader(); //ExecuteReader() はSELECT文で使用します
Console.WriteLine("SELECTの結果表示: ");
while (Reader.Read())
{
Console.WriteLine(Reader.GetValue(0).ToString() + ", " + Reader.GetValue(1).ToString());
}
Reader.Close();
cmd1.Dispose();
cmd2.Dispose();
IRISConnect.Close();
}
}
図 15 コンソールアプリケーションのソースコード例(C#)
23
3) REST インターフェースを作成してみる
IRISに登録のある Training.Person テーブルに対して INSERT と SELECT を実行する REST インターフェースを作
成します。
作成するためには、REST用ディスパッチクラスの作成が必要となるため、以下の流れで作成とテストを行います。
1. %CSP.RESTクラスを継承するクラス定義の作成
2. ウェブアプリケーションパスを定義し、1で作成したクラスをディスパッチクラスとして設定
3. RESTクライアント(資料では ARCを利用)からテスト
詳細な説明については、ドキュメントをご参照下さい。
24
1. %CSP.RESTクラスを継承するクラス定義作成
REST用ディスパッチクラスを作成するため、システムクラス:%CSP.RESTを継承した新規クラスを作成します。
Atelierの操作は以下の通りです。
Atelierプロジェクトにクラスを新規で追加します。
図 16 REST用ディスパッチクラスの作成
「続き」ボタンクリックでクラス選択用画面が開きます。
REST用ディスパッチクラスの作成には、%CSP.RESTを継承します。
REST用URLを指定するためのURLMapを定義します。定義のひな形がスーパークラスにあるので、%CSP.RESTを選択し、右クリック→宣言を開く からソースコードを開きます。
UrlMapの定義をコピーし、作成中のディスパッチクラス内に貼り付けます。
25
ディスパッチクラス内は以下のようなコードを記述します。
図 17 REST用ディスパッチクラス:GET要求の実装
UrlMapの定義では、/all も /search も両方とも GetPerson()メソッドを呼び出します。
違いは、/search/:name の:nameの場所には、URIのクエリパラメータが指定されると仮定して定義しています。
また、/search/:name の:nameの値は、Callで指定したクラスメソッドの引数に渡される仕組みになっています。
スクリプト内の JSONオブジェクトや JSONの配列の操作8については、ドキュメントをご参照ください。
実際に動作を確認するため、REST用ディスパッチクラスに対応するウェブアプリケーションパスの定義を作成します。
8 %ToJSON()メソッドは、ObjectScriptの JSON用ダイナミックエンティティ(JSON配列/JSONオブジェクト)を
JSON文字列へ変換します。
%FromJSON()メソッドは、JSON文字列から、ObjectScriptの JSON用ダイナミックエンティティ(JSON配列/
JSONオブジェクト)を生成します。
Training.Personテーブルを検索しています。SELECTではJSON_OBJECT()関数を利用すると、結果行をJSONオブジェクトの文字列として返します。
GET要求の場合、メソッドの引数にURIクエリパラメータが格納されます。
GET要求で /all を指定されたとき、または /search/名前 を指定したとき
GetPerson()メソッドを実行
【注意】メソッドの戻り値には%Statusを設定してください
26
2. ウェブアプリケーションパスの登録
ウェブアプリケーションパスの定義は、管理ポータルで定義します。
管理ポータル→システム管理→セキュリティ→アプリケーション→ウェブ・アプリケーション
図 18 REST用ウェブアプリケーションパスの設定(ディスパッチクラスの登録)
RESTインターフェースで公開したいパスの定義を指定します。例では、/person を指定しています。
[ネームスペース]に USER、[RESTディスパッチ・クラス]に作成した Training.REST、
[許可された認証方法]には、パスワード を指定し、保存します。
27
3. RESTクライアントからテスト
RESTクライアントでテストします。例では、ARC 9を利用しています。URLの指定は以下の通りです。
図 19 RESTクライアントからのテスト:GET要求
9 Chromeのアプリケーションで Advanced Rest Client
Webサーバアドレス/ウェブアプリケーションパス/URLマップに記載したURL
管理ポータルのWebサーバアドレスに続けて/person/all をGET要求で指定します。
/personの定義がパスワード認証を設定したため、ユーザ名、パスワードの入力画面が表示されます。tech/demo でログインします。
検索結果がJSONで返送されたことが確認できます。
29
実装例では、/add が指定されたとき、AddPerson()メソッドが動作します。
図 20 REST用ディスパッチクラス:POST要求の実装
POST要求時に送信される JSONは、%request.Content にストリームとして格納されます。ストリームから JSON
文字列を取り出すには Read()メソッドを使用します(取り出すサイズを指定して取得します。全体のサイズを指定する場
合は、%request.Content.Sizeを使用します。)。
set content=%request.Content.Read(%request.Content.Size)
%request.Contentには、送信されたまま(変換無し)のデータがセットされるため、%request.CharSet (リクエスト
時の CharSet)の値に応じて文字コード変換を行います($ZCVT()関数を利用します。第 3引数は IRIS内の変換テ
ーブル名を記載する必要があるため、CharSetの指定コードに合わせ変更します。詳細は FAQをご参照ください)。
set contentCVT=$ZCVT(content,"I","UTF8") //utf-8 は UTF8 と指定します
続いて、変換データを利用して JSON オブジェクトに変換します。変換後は、SQL の引数に入れやすいように変数にプ
ロパティ値を登録したりできます(例: set name = jsonInput.name)。
set jsonInput={}.%FromJSON(<文字コード変換後の文字列>)
POST要求で /add を指定されたとき
AddPerson()メソッドを実行
POST要求送信時のContentTypeの内容により、送信されたJSONを %request.Content で取得するか %request.Get(“プロパティ名”) で取得します。例は、application/json で送信されているので、 %request.Content を使用しています。Contentプロパティには、クライアントで設定した文字コードのままの情報が登録されるので、クライアントのContentTypeに合わせて文字コード変換を行います。
30
POST要求の実行例は以下の通りです。
図 21 RESTクライアントからのテスト:POST要求
次ページ以降では、InterSystems の様々なテクノロジをお試しいただける Experience シリーズについてご紹介しま
す。
実行結果
31
[4] Experienceシリーズのご紹介
Experience InterSystems Technologyでは、お客様が InterSystems製品について学び、どのようにお客様の
ビジネスやソリューションに活かすことができるかをご体験いただく機会をご提供しています。
図 22 Experienceシリーズ:一覧
Javaからの4つの接続方法(JDBC/NativeAPI/XEP/Hibernate)をサンプルを利用しながら学習・体験できるExperience
.NETからの4つの接続方法(ADO.NET/XEP/NativeAPI/Entity Framework)をサンプルを利用しながら学習・体験できるExperience
InterSystems IRIS Spark Connector を使用して、巨大なデータに対して高速分散処理が行えるオープンソースのApache Spark をInterSystems IRISに接続す
る方法を体験できる環境をご利用いただけます。
InterSystems Cloud Manager(ICM)を利用して、クラウド環境に InterSystems製品をデプロイする方法を体験できます。
InterSystems HealthShare Health Connect のコンポーネントを使用してHL7 C-CDA、HL7 v2文書からFHIRへの変換の流れや、Health Connectに用意したFHIRサーバへの FHIR リソースの送信や REST テストツールを使用した患者検索を体験できます。
InterSystems HealthShare にFHIR アプリケーションを接続してテストする環境をご用意しています。
オンラインラーニングトップページ(learning.intersystems.com)
32
1) Big Data Analytics
2) InterSystems in the Cloud
3) Java & InterSystems IRIS
4) .NET & InterSystems IRIS
5) InterSystems on FHIR
6) RESTful FHIR & Messaging
それぞれのトップページでは、Learn(学習用ビデオや関連コンテンツへのリンク)と Play(体験環境用オンラインコンテ
ンツへのリンク)を選択できます
体験を開始するまでの手順については次ページ以降をご参照ください。
21 3
4
5 6
33
1) Big Data Analytics
「Learn:Using Apache Spark」をクリックするとサンプルを実装した演習環境を起動するオンラインラーニングページ
が開きます。
図 23 Big Data Analytics:Apache Spark体験までの流れ 1
コースを開始するためにENROLL MEボタンをクリックします
34
図 24 Big Data Analytics:Apache Spark体験までの流れ:Apache Zeppelinの環境構築
[EXPERIENCE MENU] の「Learn:」から始まるメニューはそれぞれの概要を説明するオンラインラーニングページへ
移動します。
のボタン構築環境は、2週間ご利用いただけます。
ボタンクリックでInterSystems IRISとApache Zeppelinの環境が構築されます。
構築完了でアクセス用URLやユーザ情報などが表示されます。
Learn: から始まるメニューは、概要説明のオンラインラーニングページへ移動します。
35
2) InterSystems in the Cloud
「Play: Hands-On with InterSystems Cloud Manager」から、機能概要や演習環境構築が行えるオンラインラー
ニングページが開きます。
図 25 InterSystems in the Cloud Experience:体験環境の構築
体験環境では、InterSystemsの Google Cloudアカウントを使用して Google Cloud Platformに
InterSystems Cloud Manager(ICM)コマンド10を利用して 3つのノードをプロビジョニングします。
【注意】 ICMコマンドで作成した環境は毎晩(米国時間)クリアされます。予めご了承ください。
10 ICMのドキュメントはこちら
コースを開始するためにENROLL MEボタンをクリックします
Cloud Manager概要説明
演習ページ
演習環境構築ボタン
専用環境へのアクセス情報
36
3) Java & InterSystems IRIS
Java から IRIS へのアクセスには、4 つの接続方法(JDBC/NativeAPI/XEP/Hibernate)についての概要説明
や、サンプルを動かしながら確認できる演習環境付きオンラインラーニングを提供しています。
「Learn:Designing a Java Connection Strategy」をクリックすると Javaアプリケーションから接続する 4つ
の方法についての解説用オンラインラーニングページが開きます。「Play:Stock Traiding with Java」をクリック
すると Java アプリケーションからの 4 つの接続方法のサンプルが含まれる演習環境構築用オンラインラーニングペー
ジが開きます。
図 26 Experience Java and InterSystems IRISのトップページ
以降のページでは、それぞれのトレーニングを開始するまでの手続きについて解説します。
IRISのJavaの機能について学習する場合は「Learn:Designing a JavaConnection Strategy」をクリックします。
Javaのサンプル付き環境でのハンズオンを試す場合は、「PLAY:Stock Trading with Java」をクリックします。
37
それぞれのコースを開始するため、 ボタンをクリックしてください。
図 27 オンラインラーニングの開始方法
Designing a Java Connection Strategy を始めるために、ENROLL MEボタンをクリックしてください。
コース用画面が起動します。
38
続いて、演習環境付きの Stock Trading with Java コースの開始方法をご紹介します。
図 28 オンラインラーニング:演習環境付き Java体験コース開始方法
演習環境を構築すると、2 週間の利用期限で、InterSystems IRIS の管理ツールへの URL、JDBC 接続文字列、
InterSystemsが提供する IDE(Atelier) 用の接続情報などが提供されます(次ページをご参照ください)。
Stock Trading with Javaを始めるために、ENROLL MEボタンをクリックします。
LEARNで説明した接続4手法のサンプル付き体験環境を構築します。
39
図 29 IRISへの接続情報例
アクセス情報を後で確認できるように、テキストファイルなどに保存しておいてください。
Atelier用の接続情報
演習専用のIDEへの接続URLとユーザ認証情報
管理ポータルのURLとユーザ認証情報
JDBCの接続文字列
40
4) .NET and InterSystems IRIS
.NET から IRIS への 4 つの接続方法(ADO.NET/XEP/NativeAPI/Entity Framework)についての概要説明
や、サンプルを動かしながら確認できる演習環境付きオンラインラーニングを提供しています。
「Learn:Designing a .NET Connection Strategy」をクリックすると.NETから IRISへの 4つの接続方法に
ついて概要説明を行うオンラインラーニングが開きます。
「PLAY:Stock Traiding with .NET」をクリックすると.NETから IRISへの 4手法それぞれのサンプルコードと解
説が含まれる演習環境付きオンラインラーニングが開きます。
それぞれのオンラインラーニングの開始方法については、以下の図例と同じ手順で開始できます。ご参照ください。
P37[図 27 オンラインラーニングの開始方法]
P38[図 28 オンラインラーニング:演習環境付き Java体験コース開始方法]
IRISのJavaの機能について学習する場合は「Learn:Designing a .NETConnection Strategy」をクリックします。
Javaのサンプル付き環境でのハンズオンを試す場合は、「PLAY:Stock Trading with .NET」をクリックします。
図 30 Experience .NET and InterSystems IRISのトップページ
41
5) InterSystems on FHIR
FHIR を使用する理由や、一般的なユースケース、InterSystems 製品での取り扱いについての概要を学習するため
のオンラインラーニングを用意しています。
また、「Play:InterSystems FHIR Sandbox」では最新版の HealthShare Information Exchange を使用して
FHIR アプリケーションを自由に組み込みテストできるページを提供しています。
図 31 InterSystems on FHIR:体験ページ
InterSystems FHIR Sandbox は、業界で唯一公開されている、ベンダーに依存しない環境の 1つです。
独自の FHIR DSTU2/STU3 アプリを開発、またはオープンソースとして入手可能なものを利用して、試すことができ
ます。
インターシステムズの開発者向けコミュニティのフォーラムの一つ、FHIR Implementers Group で、ぜひ他の開発者
とお客様の経験を共有してください。
Learn で始まる項目は概要説明用ページを開きます。
42
6) RESTful FHIR & Messaging
InterSystems HealthShare Health Connectで FHIRデータモデルを使用してクリニカルデータの変換(HL7 v2
→FHIR、C-CDA→FHIR)までの流れや FHIR リソースを FHIR サーバに登録し、REST テスト用ツールから検索でき
ることを確認します。体験環境は、「Launch the Experience」のリンクから開きます。
演習環境の構築は、オンラインラーニングの 2.1Excerciseで行います。
図 32 RESTful FHIR & Messaging:演習ページ
演習環境構築ボタン
43
[5] 付録
1) ロケールの変更
お試し環境は Ubuntuにインストールされた英語環境の IRISです。
この後の操作で、日本語を含むファイルを IRIS にインポートする際、文字コードの指定が合わないため日本語の文字
列が正確にインポートできません。
日本語を含むファイルの入出力がある場合は、IRISのロケールを日本語環境に切り替えます11。
以下の図でロケールの変更方法を解説します。
管理ポータル→システム管理→構成→国際言語設定→ロケール定義 を選択します。
既存は enuwが選択されています。これを jpuwに変更し、ロケールのインストールを行います。
図 33 日本語ロケールへの変更
11 日本語 OSにインストールした場合は、自動的に日本語用ロケールがインスールされますが、お試し環境は英語環
境の Ubuntuのため、ロケールの変更を行います。
jpuw を選択後インストールボタンを押すと、下に確認画面が表示されます。
「はい-今インストールします」ボタン押下で指定したロケールに変更されます。
44
2) Web Terminalの利用方法確認
Web Terminalにアクセスするための URLを確認します。
P12「図 7 IRIS体験環境:接続情報について」の ServerAddressの URLの末尾に/terminal/ を追加して起動し
ます。
例) https://52773-68489853.labs.learning.intersystems.com/terminal/
起動後、ユーザ名とパスワードの入力画面が表示されるので、管理ポータルと同じユーザでログインします。
Web Terminalの起動例は以下の通りです。
もし起動できない場合は、P45 3)[Web Terminalのインストール方法]の手順に沿って Web Terminalをインストー
ルしてください。
例では、Atelierで作成した Training.Utils クラスの Insert メソッドを実行し、データを登録しています。
登録後、SQL実行環境に切り替え、SELECT文を実行してデータ登録を確認しています。
図 34 Web Terminal実行例
ここまでの流れで、IRISお試し環境の基本操作方法を確認できました
以降のページでは、Java、.NETからのアクセスと、IRISで RESTインターフェースを実装する方法を解説します。
以下の実行でObjectScriptの実行環境からSQLの実行環境に変更できます。do $system.SQL.Shell()
元のコマンド実行環境に戻るには、quit を実行します。
45
3) Web Terminalのインストール方法
Web Terminalは、インターシステムズのサンプルまとめサイトである Open Exchange上のWeb Terminal 専用
ページにアクセスしソースコードをダウンロードします。
図 35 Web Terminalのソースコードダウンロード
ダウンロードするファイルは、「The Latest Versions」以下にある InterSystems IRIS Support add の行のファ
イルをダウンロードします。ダウンロードすると Web Terminal の起動と設定に必要なソースコード(クラス定義など)を
エクスポートした XMLファイルがダウンロードされます。
クラスのインポートメニューでダウンロードファイルをインポートしたら利用できます。
クリック
46
クラス定義のエクスポートファイル(XMLファイル)のインポート方法は以下の通りです。
管理ポータル→システムエクスプローラ→クラス→インポートボタンクリック
図 36 Web Terminalのクラス定義をインポート
インポート後、Web Terminalを起動してみます12。
IRIS のお試し環境の場合は、P12「図 7 IRIS 体験環境:接続情報について」の ServerAddress の URL の末尾に
/terminal/ を追加して起動します。
例) https://52773-68489853.labs.learning.intersystems.com/terminal/
12 Web Terminalは、インポートした環境の管理ポータルの Webサードレス:ポート番号/terminal/ でアクセスで
きます。
1. マイローカルマシンを選択
2. ダウンロードしたファイルを選択
3. 次へ をクリック
インポートリストが表示されます
4. 最後にインポートボタンをクリック