問題タブ [hapi]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - How can I use hapi version safe or as generic?
I have this ugly code below for hl7 message seen here. The code runs for varied versions of HL7 listeners. For one system I receive in v2.3 but for the other one I get in v2.5
As you can notice the job is almost same for all versions. But the base of ACK is message
and I can't call getMsa1_AcknowledgementCode
method without explicitly casting to exact HL7 version,and there isn't a common ACK
class among them. By this dummy diagram I tried to present the problem. (I know there are some other elements ,such as AbstractMessage,Group...)
And for first two the method name is getMsa1_AcknowledgementCode
but for v2.5 it has missing e
letter and seems like getMsa1_AcknowledgmentCode
.
Should I use reflection and find a method starts with the name getMsa_Ack...
to check an Acknowledge message or is there any type safe and beautiful way for this purpose in hapi project?
Do not constrain yourself for ACK message while answering I wonder a better way for others as well.
hl7 - HAPI サンプルを使用した ORU^R01 メッセージの適合性プロファイル
ORU_R01およびADT_A04 (HL7 v2.3.1 ) メッセージをMWB (Message Workbench)から生成された適合プロファイルに対して HAPI API (バージョン 2.2) で検証できません。
- 最初の問題は、ORU_R01 メッセージの準拠プロファイルで MWB によってセグメント グループに割り当てられた名前に関するものです。ここで、PATIENT_RESULTはMWB (Message Workbench)によって生成されたセグメント グループ名であり、 PIDPD1NK1NTEPV1PV2ORCOBRNTEOBXNTECTIは、HAPI がその API で同じセグメント グループを参照する方法です。
- プロファイルでPATIENT_RESULTをPIDPD1NK1NTEPV1PV2ORCOBRNTEOBXNTECTIに置き換えると、プロファイルは HAPI API パーサーに対して有効になります。
以下は、上記の問題の検証ログです。
- ValidationException -メッセージにPATIENT_RESULTが見つかりません
- ValidationException - 構造PIDPD1NK1NTEPV1PV2ORCOBRNTEOBXNTECTIがメッセージに表示されますが、プロファイルには表示されません
2 番目の問題は、OBX.5 フィールドで使用されるデータ型の OBX セグメントにあります。 メッセージには複数の OBX が含まれており、OBX.2 フィールドに複数のデータ型( NMおよびST ) があるため、準拠プロファイルで OBX.5 の固定データ型を使用できないため、データ型プレースホルダーの HAPI api によって提供される「VARIES」を試しましたOBX.5 データ型宣言の適合性プロファイル。しかし、これもうまくいきませんでした。
以下は、上記の問題の検証ログです。
ValidationException - HL7 データ型NMが OBX-5 のプロファイル データ型 VARIES と一致しない
ValidationException - HL7 データ型STが OBX-5 のプロファイル データ型 VARIES と一致しない
以下はメッセージです。
- MSH|^~\&|aa|bb|cc|3910|200903230934||ORU^R01^ORU_R01|75535037-123781|P^T|2.3.1
- EVN|A31|200903230934
- PID|1||29^^||Test300^レティシア^^^^^L||19770202|M||
- OBX|| NM |abc|| 121 ||||||F||
- OBX|| ST |定義|| |||||| F||
以下はプロフィールのスニペットです:
よろしく、 アマール・ジャイスワル
hapi - HAPI V2.6 context.close() が NullPointerException をスローする
HAPI V2 ライブラリを使用して非常に簡単なテストを実行しています。
close() メソッドが NullPointer 例外をスローするため、この JUnit テストは常に失敗します。理由はありますか?
一方、close() の呼び出しを除いて、HAPI コンテキストでやりたいことはすべて実行できますが、close を呼び出さないと、Eclipse でリーク警告が表示されます。
java - Hl7 メッセージを Json に変換する
HL7 メッセージを JSON に変換する必要があるため、Hapi を使用してメッセージを xml に変換し、JSON ライブラリを使用して xml を JSON に変換しました。xml の出力は次のとおりです。
ここでの出力は segmenName.FieldName (MSH.1) のようなものなので、segmenName.FieldName の代わりに Json も同じです。各フィールドに意味のある名前を付ける必要があります。これを行う方法がわかりません。
Xml の要素を JSON の別のキーにマップする必要があります
hl7 - NHAPI ZPI セグメント
アプリケーションで NHAPI を PILOT 実行として使用する予定です。現在のメッセージが NHAPI を使用して解析できるかどうかを検証中です。
そのため、「 ZPI – 追加処方情報セグメント」という名前のセグメントを取得しました。解析するセグメントが定義されていないと思うので、Zxxセグメントを使用することは可能ですか?
よろしく、
ラージ
hl7 - 順次または同時の hl7 メッセージ処理
インバウンドの hl7 メッセージ (adt など) を処理し、それらを正規化されたデータ モデル (リレーショナルまたは no-sql) に保持するために、どのような種類の同時実行モデルを使用しているのか疑問に思っていました。
シーケンシャル メッセージ処理 (nosql db へのマッピング) と、(Java、.net など) からの変換/処理時のマルチスレッド化の考えに苦労しています。
例: クローバー リーフによって受信および変換されたメッセージを処理し (内部 Web/Rest API の予期されるペイロードに準拠するように変換)、内部 Web/REST API サーバー (マルチスレッド Java Web アプリ) に設定すると、スレッド化により、メッセージを順次解析していることを保証します。
メッセージを順番に処理すると、マッピングが遅くなります...
hapi - NTE|9| を作成する方法 ライブラリ バージョン v.2.3.1 を使用したグループ内のセグメント
次のように定義された NTE セグメントがあります。
NTE|9|\F\400797\F\ENG\F\1\F\THEN 1 錠を 1 日 2 回、1 週間服用します。
まず、上記のように NTE|9 セグメントを作成できるようにします。次に、グループで NTE|9 を使用できるようにしたいと考えています。
グループの構造は次のとおりです。 MSH PID ORC ZPI NTE|9 ZSP
ORC から ZSP までのセグメントは、グループとして数回繰り返すことができるため、ORC から ZSP などのグループでそれらをキャプチャしたいと考えています。問題は、AbstractSegment を拡張して NTE|9 セグメントを表す方法がわからないことです。HAPI HL7 ライブラリ バージョン v2.3.1 を使用しています。
hl7 - セグメントの順序が変更された場合、NTE を解析できません
NTE セグメントを含む HL7 メッセージを受け取りました。HL7 メッセージ タイプ RDE_O11 およびバージョン 2.5。NTE でメッセージを渡している間、NHAPI はそれを解析していません。したがって、次のメッセージで、
MSH の直後に NTE の位置を変更すると、NHAPI はそれを解析できます。
apache-camel - HAPI で一部のフィールドの解析をスキップすることはできますか?
HL7 v2 メッセージを受信するために、Apache Camel、Mina2、および HAPI を使用しています。アンマーシャリングと Message オブジェクトの作成に時間がかかることに気付きました。この時間は、メッセージが大きいほど長くなります。
メッセージには約 120 の OBX セグメントがあり、OBX 3 および OBX 5 フィールドのみを使用しています。OBX 5 の後でフィールドを手動で削除するテストを行ったところ、パフォーマンスがいくらか向上したことがわかりました。OBX 5 の後にフィールドを解析しないように HAPI に指示する方法はありますか?