com.supermap.services.rest.encoders
类 XMLEncoder
- java.lang.Object
-
- com.supermap.services.rest.encoders.Encoder
-
- com.supermap.services.rest.encoders.XMLEncoder
-
- 所有已实现的接口:
- javax.ws.rs.ext.MessageBodyWriter
@Provider public class XMLEncoder extends Encoder implements javax.ws.rs.ext.MessageBodyWriter
Java 对象的 XML 序列化器。
-
-
构造器概要
构造器 构造器和说明 XMLEncoder()
构造函数。
-
方法概要
方法 限定符和类型 方法和说明 protected java.util.List<MediaType>
createSupportedMediaTypes()
创建支持的媒体类型列表。protected javax.xml.transform.Transformer
createTransformer()
获取 XML 转换器。long
getSize(java.lang.Object arg0, java.lang.Class arg1, java.lang.reflect.Type arg2, java.lang.annotation.Annotation[] arg3, javax.ws.rs.core.MediaType arg4)
确定要写入的对象序列化之后的长度。boolean
isWriteable(java.lang.Class arg0, java.lang.reflect.Type arg1, java.lang.annotation.Annotation[] arg2, javax.ws.rs.core.MediaType arg3)
判断本表述生成器是否支持指定媒体类型的表述。Representation
toRepresentation(MediaType mediaType, java.lang.Object resourceObj)
将一个 Java 对象序列化为表述。void
writeTo(java.lang.Object arg0, java.lang.Class arg1, java.lang.reflect.Type arg2, java.lang.annotation.Annotation[] arg3, javax.ws.rs.core.MediaType arg4, javax.ws.rs.core.MultivaluedMap arg5, java.io.OutputStream arg6)
生成指定媒体类型的 HTTP 响应。-
从类继承的方法 com.supermap.services.rest.encoders.Encoder
getSupportedMediaTypes, isEncodeAllow
-
-
-
-
方法详细资料
-
isWriteable
public boolean isWriteable(java.lang.Class arg0, java.lang.reflect.Type arg1, java.lang.annotation.Annotation[] arg2, javax.ws.rs.core.MediaType arg3)
判断本表述生成器是否支持指定媒体类型的表述。
- 指定者:
isWriteable
在接口中javax.ws.rs.ext.MessageBodyWriter
- 参数:
arg0
- 要生成表述的对象。arg1
- 指定的媒体类型。arg2
- 注记数组,资源中有这些注记的方法返回要写入的对象。arg3
- 预期响应的媒体类型。- 返回:
- 如果本表述生成器支持指定的媒体类型,则返回 true,否则返回 false。
-
getSize
public long getSize(java.lang.Object arg0, java.lang.Class arg1, java.lang.reflect.Type arg2, java.lang.annotation.Annotation[] arg3, javax.ws.rs.core.MediaType arg4)
确定要写入的对象序列化之后的长度。在生成 HTTP 响应之前被调用。
- 指定者:
getSize
在接口中javax.ws.rs.ext.MessageBodyWriter
- 参数:
arg0
- 要生成表述的对象。arg1
- 要生成表述的对象对应的 Java 类。arg2
- 要生成表述的对象的类型。arg3
- 注记数组,资源中有这些注记的方法返回要写入的对象。arg4
- HTTP 请求体的媒体类型。- 返回:
- 要写入的对象的长度。
-
writeTo
public void writeTo(java.lang.Object arg0, java.lang.Class arg1, java.lang.reflect.Type arg2, java.lang.annotation.Annotation[] arg3, javax.ws.rs.core.MediaType arg4, javax.ws.rs.core.MultivaluedMap arg5, java.io.OutputStream arg6) throws java.io.IOException, javax.ws.rs.WebApplicationException
生成指定媒体类型的 HTTP 响应。
- 指定者:
writeTo
在接口中javax.ws.rs.ext.MessageBodyWriter
- 参数:
arg0
- 要生成表述的对象。arg1
- 要生成表述的对象对应的 Java 类。arg2
- 要生成表述的对象的类型。arg3
- 注记数组,资源中有这些注记的方法返回要写入的对象。arg4
- HTTP 响应的媒体类型。arg5
- HTTP 响应的消息头。arg6
- HTTP 响应。- 抛出:
java.io.IOException
- 当读写过程出错时。javax.ws.rs.WebApplicationException
- 当 HTTP 响应出错时。
-
createSupportedMediaTypes
protected java.util.List<MediaType> createSupportedMediaTypes()
创建支持的媒体类型列表。
XMLEncoder 支持两种 XML 媒体类型,即 application/xml 和 text/xml。用户扩展一个 Encoder 时,需要指定该 Encoder 支持将格式化的对象转换为什么媒体类型的表述。
- 指定者:
createSupportedMediaTypes
在类中Encoder
- 返回:
- 媒体类型列表。
-
toRepresentation
public Representation toRepresentation(MediaType mediaType, java.lang.Object resourceObj)
将一个 Java 对象序列化为表述。
- 指定者:
toRepresentation
在类中Encoder
- 参数:
mediaType
- 表述的格式,即媒体类型。resourceObj
- 欲序列化的 Java 对象。- 返回:
- Java 对象的 XML 格式表述。
-
createTransformer
protected javax.xml.transform.Transformer createTransformer() throws java.io.IOException
获取 XML 转换器。该转换器实例可以处理来自不同源的 XML,并将转换输出写入各种接收器。
- 返回:
- XML 转换器
- 抛出:
java.io.IOException
- 读写过程出错则抛出该异常。
-
-