私はterser.set()メソッドで少し内容を操作しているHL7メッセージを持っています。私がそれをしたら、私はデバッガに、私が望むように変更されていることがわかりますが、メッセージ全体を元に戻すことはできません。私は、(例えば)試した:terser後のHAPI v2:変更されたメッセージ全体を取得
HapiContext context = new DefaultHapiContext();
Parser parser = context.getGenericParser();
Message message = parser.parse(MESSAGE);
Terser terser = new Terser(message);
terser.set("/PID-2", "XXX XX XXXX");
String fixedMessage = message.encode();
...私は近く、しかし、それぞれの分野で無い値を持つだけで垂直バー(パイプ)に終わったライン(セグメントライン)が戻ってくるトリミング取得します(垂直バーは単に落とされる)。私はメッセージを私が入れたものと同じにしておきたいと思います。
私がここに書いているのは、実際のHL7メッセージの操作です。ユーザーは、自分に合った目的を変更したり修正したりしたいと考えています。このテストの例では、変更はSSNを削除することです。日付形式、住所修正などを変更するなどの理由が考えられます。 –