工作,我希望能夠調用我的API與帖子內容傑克遜功能ACCEPT_SINGLE_VALUE_AS_ARRAY不會與註釋
{
"property1" : "value1",
"property2" : "value2"
}
OR
[{
"property1" : "value1",
"property2" : "value2"
}]
爲此,我註釋的Java類與
@JsonFormat(with = JsonFormat.Feature.ACCEPT_SINGLE_VALUE_AS_ARRAY)
public class MyClass {
private String porperty1;
private String property2;
public MyClass() {
super();
// TODO Auto-generated constructor stub
}
public MyClass(String porperty1, String property2) {
super();
this.porperty1 = porperty1;
this.property2 = property2;
}
public String getPorperty1() {
return porperty1;
}
public void setPorperty1(String porperty1) {
this.porperty1 = porperty1;
}
public String getProperty2() {
return property2;
}
public void setProperty2(String property2) {
this.property2 = property2;
}
}
servlet內部我有這樣的api
Response myAPI(Collection<MyClass> reqs, @Context HttpServletResponse httpResponse, @Context SecurityContext securityContext) {
}
但我不斷收到第一個請求類型的內部服務器錯誤500。
我試着將jackson = annotations版本從2.6.0更新到2.7.0,但它似乎並沒有在任何工作。
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-annotations</artifactId>
<version>2.7.0</version>
</dependency>
注意:我在我的POM中還有其他傑克遜依賴項,例如, jackson-databind和jackson-core,它們仍然指向2.6.4(而jackson-dataformat-xml指向2.6.3)。我無法更新這些版本。考慮到我正在嘗試更高版本的jackson-annotations,會有什麼問題嗎?
jackson-databind包含註釋配置的實現。更新jackson-annotations artifact本身並不會對你有所幫助。這種配置可能沒有實現在類型級別工作;如果我有時間,我將不得不查看代碼。 –
好的,即使在將「jackson-databind」更新爲2.7之後,我仍然看到相同的錯誤。對於req#2,一切正常,但請求#1,我得到HTTP 500錯誤。 – Tintin
你有沒有試過更新到最新版本的傑克遜?那將是2.9.2。如果問題在該版本中仍然存在,那麼我將不得不假定此配置尚未實現在Type級別工作。爲什麼不在Github上爲jackson-databind進行回購問題? –