OpenOcean クライアントを Mac で動かす

OpenOcean クライアントバイナリを試験的に公開。

自分の Mac にもインターネット経由で落として使ってみる。(今まで win 機でコーディングしていたので Mac での確認はしてなかった)

まず、起動。

ログイン画面描画は問題なし。

ログインも問題なかったが、なぜか受付情報を受け取れない……。

閉塞」という嫌な文字が ORCA に表示されている。

必殺の wi-fi 切断-再接続を試みる。

当方の環境だとなぜかこれでつながり始める。一昔前のブラウン管チョップと感覚は似ている。

カルテの参照なども問題なし。やはり Mac は表示が綺麗。

しかーし、

  • 処方せん打ち出し機能が選べない
  • ホームフォルダにできてるはずのフォルダができてない

などの不具合あり。

と言ってたんですが、処方せん打ち出しはできますね。

という画面が現れて、「PDF 作成」を押下すると

というそれはそれは美しい処方せんが出現する。

 

後者のバグは心当たりある。ディレクトリを作らせるとき、win でしかチェックしていなかったからだ。

Mac でも開発環境つくろうかな?

できた!

つか、以前に Dolphin ビルドしたときに Java 環境構築したの忘れてたわ。その時の流用。

これで HorliX との連携機能は組みやすくなるかな。

 

にほんブログ村 病気ブログ 医者・医師へ

このアプローチは…

OpenDolphin から OpenOcean に改名したので、今までの仕事をまとめておこうと思い、サイトを新調した。
その際に、ネット上で情報収集をおこなったのだが、けっこう興味深かったのが、

ゼミの飛翔』というブログのこの記事

医療情報系の大学研究室のゼミの公開ブログのようなのだけど、題材として OpenDolphin が取り上げられている。将来的には Dolphin と繋がるオリジナルのスマホアプリをつくりたいらしい。それで、データ構造を把握するためにクライアント-サーバ 間で流れる通信パケットを WireShark でキャプチャして解析したという予備研究。

これはこれで SSL 通信の重要性を示すものとしてまあまあ意味はあると思うけど、目的に対するアプローチの仕方としてはどうなんだろう?

 

というのは…

サーバを走らせた場合、キャプチャしなくても通信内容は同様のものが得られる

というのがその理由の一つ。上記記事を再現してみると「嘔吐・下痢の症状が見られる」という所見を SOA 欄に書き込み、サーバに送信。

ドッカーでは無理だが、普通にサーバを走らせていた場合、Java の(というか Java のライブラリの)ロガーは優秀なので、Win だろうが Mac だろうが Ubuntu だろうが、こんなログを吐き出してくれる(今回は Win10)。

所見の平文対応文字列「PD…(略)…4K」は(当たり前だが)まったくいっしょ。

だから、サーバを走らせれば、キャプチャする意味は(ほぼ)ないのだ。

 

また、トライアンドエラーでサーバの応答をある程度まで求め、それにあわせてクライアントをつくったとしても、

LSC がサーバの仕様を変えてしまえば、そのアプリは使えなくなる

のではないかと思う。

 

そして、これは研究全体の方向性に対することだが、

改変不能なドッカー版サーバを使っている限り、クライアントの仕様はサーバに規定され、クライアントの設計の自由度が落ちるのではないか

という疑問が湧く。

最終的にどういうスマホアプリを目指されているか私程度のものが知る由もないが、個人的には、われわれのように実務家的なちまちまとした工夫を重ねるのではなく、大学には、大学の研究らしくもっと自由で大胆な発想をしてほしいと思う。

 

まあ、私のおすすめは、自由にスマホアプリをつくりたければ、サーバ・クライアントともに Java ソース読んだ方がいいでしょう、ということです。

せっかくソースを公開してくれているのだから。

幸いなことに、Dolphin にしても Ocean にしても、スマホ向けのコードは未実装のところが多いですからね(とヒント出してみる)。

 

(追記)…beanbytes の処理に関しては、元町皮膚科の松村先生のブログ記事にわかりやすい解説があったので、追記しておく。

HealthInsuranceModel,StampModel,ModuleModel には beanBytes というフィールドがあり,bean object を xml 変換して,さらにbyte 配列に変換したものが入って永続化されている。今回,REST化で json を使ったため,object が xml に変換されてさらに byte 配列に変換された beanBytes が json 化でさらに Base64 の文字列に変換されて流されるという,何だかたいそう複雑なことになってしまっていた。

 

引用元『beanBytes の処理:Rest(付録)

 

にほんブログ村 病気ブログ 医者・医師へ

OpenOcean/OpenDolphin をカスタマイズするために知っておいた方がよいこと

OpenOcean/OpenDolphin は、ビルド・デプロイするだけでも出てくる役者が多いので、整理しておきましょう。

 

Java…Win, Mac, Unix などに仮想的なマシンを設定し、それを動かすための言語。したがって、Java で開発されたソフトは Win/Mac/Unix で動く(はず)。JRE は実行環境、SDK は開発用のキットです。ビルドには SDK が必要。

 

Java EE…Java Enterprise Edition の略。通常の Java をクライアント-サーバシステムを開発できるように拡張したもの、というような理解でいいと思います。機能が多彩すぎて私は全貌がまったくつかめてません。Oracle との絡み先行きは不安のようです。

 

PostgreSQL…データベースソフト。いろんなところでお世話になってます。

 

NetBeans…Java でよく使われるIDE(統合開発環境)。Java 版 VisualStudio といった方がわかりやすいか。Java の IDE は、eclipse が有名ですが、ドルフィンプロジェクトではこちらを使っていたため、私もこちらの方に慣れちゃいました。ただ先行きは不安しかない。

 

Maven…「メイヴェン」と読むのが正しいようです。「マーベン」でも通じると思うけど(内輪だけ?)。Java 用プロジェクト管理ツール、と紹介されることが多い。実用的なソフトを構築する場合、自力で書いたソースの他にライブラリが必要になってくる。OpenDolphin/OpenOcean の pom.xml に

<dependency>
 <groupId>postgresql</groupId>
 <artifactId>postgresql</artifactId>
 <version>8.4-702.jdbc4</version>
</dependency>

などと書かれてあるのは、その指定のためです(この場合は、「postgresql を使いたいので jdbc ドライバをリポジトリから取ってきてね」という意味です。ver が 8.4 と最新ではないのは古い ORCA の postgres に対応するためだと思われます)。他にもビルドの際の細かいルールを指定できる。

 

WildFly…Java EE に準拠したアプリケーションサーバ。Java EE は仕様しか決められていないため、Web アプリ実運用のためにはサーバ実体が必要。このサーバ実体の一つがWildFly。 Redhat が開発し配布している。これの商用版が JBoss。Java EE 同様、機能が多彩すぎて、全体がつかみにくい。実稼働時には(アプリ名).war をWildFly 内に配置(デプロイ)する。

 

まずは、こんなところでしょうか。

 

にほんブログ村 病気ブログ 医者・医師へ