java-@JsonProperty无法按预期工作
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了java-@JsonProperty无法按预期工作,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含3450字,纯文字阅读大概需要5分钟。
内容图文
![java-@JsonProperty无法按预期工作](/upload/InfoBanner/zyjiaocheng/659/af213a69df2a4e95992961dc9952f9cd.jpg)
使用Spring RestTemplate使用静态Web服务时出现以下异常
com.fasterxml.jackson.databind.exc.UnrecognizedPropertyException: Unrecognized field "IMP-SourceTxnId" (class com.model.ResponseBaseParameters) not marked as ignorable (4 known properties: , "sourceTxnId", "incommTxnId", "responseCode", "responseText"])
at [Source: sun.net.www.protocol.http.HttpURLConnection$HttpInputStream@2f2ddd7c; line: 1, column: 130] (through reference chain: com.incomm.ife.model.rogers.RogersTransactionResponse["responseBaseParameters"]->com.incomm.ife.model.rogers.ResponseBaseParameters["IMP-SourceTxnId"])
at com.fasterxml.jackson.databind.exc.UnrecognizedPropertyException.from(UnrecognizedPropertyException.java:79)
at com.fasterxml.jackson.databind.DeserializationContext.reportUnknownProperty(DeserializationContext.java:555)
at com.fasterxml.jackson.databind.deser.std.StdDeserializer.handleUnknownProperty(StdDeserializer.java:708)
at com.fasterxml.jackson.databind.deser.BeanDeserializerBase.handleUnknownProperty(BeanDeserializerBase.java:1159)
at com.fasterxml.jackson.databind.deser.BeanDeserializer.deserializeFromObject(BeanDeserializer.java:315)
at com.fasterxml.jackson.databind.deser.BeanDeserializer.deserialize(BeanDeserializer.java:121)
at com.fasterxml.jackson.databind.deser.SettableBeanProperty.deserialize(SettableBeanProperty.java:449)
at com.fasterxml.jackson.databind.deser.impl.MethodProperty.deserializeAndSet(MethodProperty.java:98)
at com.fasterxml.jackson.databind.deser.BeanDeserializer.deserializeFromObject(BeanDeserializer.java:295)
at com.fasterxml.jackson.databind.deser.BeanDeserializer.deserialize(BeanDeserializer.java:121)
at com.fasterxml.jackson.databind.ObjectMapper._readMapAndClose(ObjectMapper.java:2888)
at com.fasterxml.jackson.databind.ObjectMapper.readValue(ObjectMapper.java:2094)
at org.springframework.http.converter.json.MappingJackson2HttpMessageConverter.readInternal(MappingJackson2HttpMessageConverter.java:123)
... 54 more
响应参数为
{
"responseBaseParameters":
{
"responseCode": "32",
"responseText": "Invalid Request",
"incommTxnId": null,
"IMP-SourceTxnId": "551932ba-6af4-44f9-ab98-db5bc96e962b"
}
}
我的POJO课是
public class ResponseBaseParameters {
private String responseCode;
private String responseText;
private String incommTxnId;
@JsonProperty("IMP-SourceTxnId")
private String sourceTxnId;
public String getResponseCode() {
return responseCode;
}
public void setResponseCode(String responseCode) {
this.responseCode = responseCode;
}
public String getResponseText() {
return responseText;
}
public void setResponseText(String responseText) {
this.responseText = responseText;
}
public String getIncommTxnId() {
return incommTxnId;
}
public void setIncommTxnId(String incommTxnId) {
this.incommTxnId = incommTxnId;
}
public String getSourceTxnId() {
return sourceTxnId;
}
public void setSourceTxnId(String sourceTxnId) {
this.sourceTxnId = sourceTxnId;
}
}
请就我为什么收到此错误的任何见解.谢谢
解决方法:
“ REST API”有许多实现,并且它们彼此冲突.很多时间后,我使用以下配置解决了该问题:
import com.fasterxml.jackson.annotation.JsonProperty;
...
@JsonProperty("cep")
private String cep;
必须具有该软件包的JsonProperty而不是org.codehaus …
<dependency>
<groupId>com.sun.jersey</groupId>
<artifactId>jersey-client</artifactId>
<version>1.19</version>
<scope>test</scope>
</dependency>
总结:jersey客户端1,jackson json属性,并删除所有其他jaxrc库.
Obs:我之所以使用杰克逊(Jackson)是因为已经提供了该容器,但是,如果它对您有用,那么您可以测试其他组合.
内容总结
以上是互联网集市为您收集整理的java-@JsonProperty无法按预期工作全部内容,希望文章能够帮你解决java-@JsonProperty无法按预期工作所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。