Jersey 2客户端-如何获取JAXBContext

Jersey 2客户端-如何获取JAXBContext,jaxb,jersey-2.0,jersey-client,Jaxb,Jersey 2.0,Jersey Client,我可以在上找到Jersey 2文档,但找不到关于重用其JAXBContext的文档 我希望能够在不发出HTTP请求的情况下封送/解封送实体(例如,在类路径上解封送一些XML文件,为数据库I/O封送/解封送数据,等等) 如何获取Jersey 2客户端已经在使用的JAXBContext实例?我还没有弄清楚如何获取JAXBContext,但我已经弄清楚了如何重用它: client.target(“file:///path/to/resource") .register((ClientRequestFi

我可以在上找到Jersey 2文档,但找不到关于重用其JAXBContext的文档

我希望能够在不发出HTTP请求的情况下封送/解封送实体(例如,在类路径上解封送一些XML文件,为数据库I/O封送/解封送数据,等等)


如何获取Jersey 2客户端已经在使用的
JAXBContext
实例?

我还没有弄清楚如何获取
JAXBContext
,但我已经弄清楚了如何重用它:

client.target(“file:///path/to/resource")
.register((ClientRequestFilter)requestContext->
requestContext.abortWith(Response.ok()
.entity(新的FileInputStream(path.get(requestContext.getUri())
.toFile())
.build())
.request()
.get(Planet.class);
类似的s可用于从数据库等返回字符串或输入流,或用于写入文件系统或数据库。

import org.glassfish.jersey.jaxb.internal.AbstractJaxbProvider;
导入javax.ws.rs.WebApplicationException;
导入javax.ws.rs.core.MediaType;
导入javax.ws.rs.core.MultivaluedMap;
导入javax.xml.bind.JAXBContext;
导入javax.xml.bind.JAXBException;
导入java.io.IOException;
导入java.io.InputStream;
导入java.io.OutputStream;
导入java.lang.annotation.annotation;
导入java.lang.reflect.Type;
公共类JaxbContextStore{
私有JaxbProvider JaxbProvider=new JaxbProvider();
公共JAXBContext getStoredJaxbContext(类类型)抛出jaxbeexception{
返回jaxbProvider.getStoredJaxbContext(类型);
}
私有静态类JaxbProvider扩展了AbstractJaxbProvider{
公共JaxbProvider(){
超级(空);
}
@凌驾
公共JAXBContext getStoredJaxbContext(类类型)抛出jaxbeexception{
返回super.getStoredJaxbContext(类型);
}
@凌驾
公共布尔值可读取(类类型、类型genericType、注释[]注释、MediaType MediaType){
抛出新的UnsupportedOperationException();
}
@凌驾
公共对象readFrom(类类型、类型genericType、注释[]注释、MediaType MediaType、多值Map HttpHeader、InputStream entityStream)引发IOException、WebApplicationException{
抛出新的UnsupportedOperationException();
}
@凌驾
公共布尔值可写(类类型、类型genericType、注释[]注释、MediaType MediaType){
抛出新的UnsupportedOperationException();
}
@凌驾
public void writeTo(对象o、类类型、类型genericType、注释[]注释、MediaType MediaType、多值Map httpHeaders、OutputStream entityStream)引发IOException、WebApplicationException{
抛出新的UnsupportedOperationException();
}
}
}