2010-04-19 62 views
0

我正在使用RestEasy庫來執行JAX-RS Web服務。我沒有在我的服務方法中實例化JAXBContext。有沒有辦法讓JAX-RS在它返回的XML中包含「<?xml version ...?>」標題字符串?下面是從我的代碼示例服務方法:JAX-RS和JAXB_ENCODING

@GET 
@Path("/patients/{patient_id}/diagnoses/portal_edits") 
@Produces({ MediaType.APPLICATION_JSON, MediaType.APPLICATION_XML }) 
public Response getDiagnosisPortalEdits(@Context final UriInfo info, 
             @PathParam("practice_id") final int practiceId, 
             @PathParam("patient_id") final long patientId) { 
    logger.info(SERVICE_NAME + ".getDiagnosisPortalEdits: " + info.getPath()); 

    final DiagnosisPortalEdits diagnosisPortalEdits = new DiagnosisPortalEdits(); 

    diagnosisPortalEdits.getDiagnosisPortalEdits().addAll(DefaultDiagnosisPortalEditService.doLoadForPatientId(practiceId, 
      patientId)); 
    return Response.ok(diagnosisPortalEdits).build(); 
} 

回答

1

添加以下注釋到類:

@XmlHeader("<?xml version=\"1.0\" encoding=\"UTF-8\"?>")