将 InputStreamCache 转换为 POJO
Converting InputStreamCache to POJO
我正在尝试将 JSON
格式的 InputStreamCache
响应转换为 Apache Camel 中的 POJO,如下所示:
<convertBodyTo type="com.temp.MyPojo"/>
但是,我遇到了以下异常:
No body available of type: model.so.response.MyResponse but has value:
org.apache.camel.converter.stream.InputStreamCache@3a689bf8 of type:
org.apache.camel.converter.stream.InputStreamCache on: Message: [Body is
instance of org.apache.camel.StreamCache]. Caused by: No type converter
available to convert from type:
org.apache.camel.converter.stream.InputStreamCache to the required type:
model.so.response.MyResponse with value
org.apache.camel.converter.stream.InputStreamCache@3a689bf8.
Exchange[Message: [Body is instance of org.apache.camel.StreamCache]].
Caused by: [org.apache.camel.NoTypeConversionAvailableException - No type
converter available to convert from type:
org.apache.camel.converter.stream.InputStreamCache to the required type:
model.so.response.MyResponse with value
org.apache.camel.converter.stream.InputStreamCache@3a689bf8]
有什么方法可以使用 convertBodyTo 组件直接将 StreamCache
有效负载转换为 POJO?我不想写一个显式转换器。
注意:我知道 unmarshal
组件。我想确认使用 convertBodyTo
是否可以实现相同的功能。
您需要添加 camel-jackson 作为依赖项,因为如果您打开它,它能够从 JSon 有效负载转换为 POJO。
请参阅http://camel.apache.org/json将 Jackson 与 Camel 的类型转换器集成
部分
我正在尝试将 JSON
格式的 InputStreamCache
响应转换为 Apache Camel 中的 POJO,如下所示:
<convertBodyTo type="com.temp.MyPojo"/>
但是,我遇到了以下异常:
No body available of type: model.so.response.MyResponse but has value:
org.apache.camel.converter.stream.InputStreamCache@3a689bf8 of type:
org.apache.camel.converter.stream.InputStreamCache on: Message: [Body is
instance of org.apache.camel.StreamCache]. Caused by: No type converter
available to convert from type:
org.apache.camel.converter.stream.InputStreamCache to the required type:
model.so.response.MyResponse with value
org.apache.camel.converter.stream.InputStreamCache@3a689bf8.
Exchange[Message: [Body is instance of org.apache.camel.StreamCache]].
Caused by: [org.apache.camel.NoTypeConversionAvailableException - No type
converter available to convert from type:
org.apache.camel.converter.stream.InputStreamCache to the required type:
model.so.response.MyResponse with value
org.apache.camel.converter.stream.InputStreamCache@3a689bf8]
有什么方法可以使用 convertBodyTo 组件直接将 StreamCache
有效负载转换为 POJO?我不想写一个显式转换器。
注意:我知道
unmarshal
组件。我想确认使用 convertBodyTo
是否可以实现相同的功能。
您需要添加 camel-jackson 作为依赖项,因为如果您打开它,它能够从 JSon 有效负载转换为 POJO。
请参阅http://camel.apache.org/json将 Jackson 与 Camel 的类型转换器集成
部分