Java 找不到媒体类型为application/xml+;fhir

Java 找不到媒体类型为application/xml+;fhir,java,jboss,jaxb,jax-rs,resteasy,Java,Jboss,Jaxb,Jax Rs,Resteasy,我正在编写一个REST服务来使用来自HL7FHIR客户端的XML。HL7 FHIR标准规定内容类型必须为:application/xml+FHIR 以下是代码片段: @Path("/DecisionSupportServiceModule") public class DSSModuleResource { private String namingProviderURL = null; private static final String OUTPUT_PARAMETERS

我正在编写一个REST服务来使用来自HL7FHIR客户端的XML。HL7 FHIR标准规定内容类型必须为:application/xml+FHIR

以下是代码片段:

@Path("/DecisionSupportServiceModule")
public class DSSModuleResource {

    private String namingProviderURL = null;
    private static final String OUTPUT_PARAMETERS1 = "outputParameters1";
    private final String CONSUMER_ID = "CONSUMER_ID";

    public DSSModuleResource() {
        namingProviderURL = FHIRMiscHelper.getNamingProviderURL();
    }

    @POST()
    @Path("/{id}/$evaluate")
    @Consumes("application/xml+fhir")
    @Produces("application/xml+fhir")
    public GuidanceResponse evaluate(@PathParam("id") String km_name,
        Parameters parameters) {
当我向服务发送请求时,我收到以下错误:

14:50:39309警告[org.jboss.resteasy.core.SynchronousDispatcher]执行POST/DecisionSupportServiceModule/CDImmunizations/$evaluate:org.jboss.resteasy.plugins.providers.jaxb.JAXBUnmarshalException失败:找不到媒体类型的JAXBContextFinder:application/xml+fhir

但是,当我将代码更改为使用
Content-Type=application/xml
时,一切都正常工作

为了尝试解决这个问题,我实现了一个定制的MessageBodyReader/Writer来对客户机来回发送JAX-B消息进行封送/解封。当使用“application/xml+fhir”时,也会出现同样的错误。所以我被卡住了。以前有人见过这个问题吗?如果有,有解决办法吗?谢谢你的帮助

我的环境如下:

  • JBoss-6.1.0.Final
  • RESTEasy 2.2.1.GA
  • Java版本:1.6.0_38,太阳微系统公司

  • 它应该是
    应用程序/fhir+xml
    。xml的
    xml
    必须位于该文件的末尾。谢谢