2017-03-25 7 views
0

JSONファイルからDiagnosticReportを解析していますが、正常に動作しますが、IParserエンコード関数を使用して同じJSONファイルを印刷しようとすると、JSONは元のものとは異なります。私は同じJSONを印刷する必要があります。JSONからDiagnosticReportを解析し、同じJSONをもう一度印刷するにはどうすればいいですか?

オリジナルJSON(文字列JSON)は

{ 
    "resourceType": "DiagnosticReport", 
    "text": { 
    "status": "generated", 
    "div": "<div><p><b>Narrative A</b></p></div>" 
    }, 
    "contained": [ 
    { 
     "resourceType": "Patient", 
     "id": "1" 
    }, 
    { 
     "resourceType": "Observation", 
     "id": "2", 
     "meta": { 
     "lastUpdated": "2017-03-22T22:00:28.089-05:00" 
     }, 
     "text": { 
     "div": "<div><p><b>Narrative B</b></p></div>" 
     }, 
     "comment": "a comment" 
    } 
    ], 
    "status": "appended", 
    "code": { 
    "coding": [ 
     { 
     "code": "Report01" 
     } 
    ] 
    }, 
    "subject": { 
    "reference": "#1" 
    }, 
    "effectiveDateTime": "2017-03-22T22:00:28-05:00", 
    "issued": "2017-03-22T22:00:28.070-05:00", 
    "result": [ 
    { 
     "reference": "#2" 
    } 
    ] 
} 

最初のステップは、解析され、第二のステップは、エンコードおよび印刷

DiagnosticReport report = parser.parseResource(DiagnosticReport.class, json); 
String encodeJSON = parser.encodeResourceToString(report); 
System.out.println(encodeJSON); 

され、結果が異なるためテキストタグで観察は表示されません

{ 
    "resourceType": "DiagnosticReport", 
    "text": { 
    "status": "generated", 
    "div": "<div xmlns=\"http://www.w3.org/1999/xhtml\"><p><b>Narrative A</b></p></div>" 
    }, 
    "contained": [ 
    { 
     "resourceType": "Patient", 
     "id": "1" 
    }, 
    { 
     "resourceType": "Observation", 
     "id": "2", 
     "meta": { 
     "lastUpdated": "2017-03-22T22:00:28.089-05:00" 
     }, 
     "comment": "a comment" 
    } 
    ], 
    "status": "appended", 
    "code": { 
    "coding": [ 
     { 
     "code": "Report01" 
     } 
    ] 
    }, 
    "subject": { 
    "reference": "#1" 
    }, 
    "effectiveDateTime": "2017-03-22T22:00:28-05:00", 
    "issued": "2017-03-22T22:00:28.070-05:00", 
    "result": [ 
    { 
     "reference": "#2" 
    } 
    ] 
} 

私は私のソフトウェアによって生成されたDiagnosticReportを持っていると私はJSONファイルでそれを完全に印刷する必要があるので、私はこれをしようとしています。

ありがとうございました!

答えて

2

メタデータやlastUpdatedを持つことは合法的ではありません。両方を禁止する不変量があります。理想的には、解析ソフトウェアが例外をスローする必要がありますが、シリアライザが存在しないと思われるコンテンツのシリアライズに問題があることはあまりにも驚くべきことではありません。

dstu3またはdstu2

でdom-1とdom-4を参照してください。
関連する問題