gpt4 book ai didi

Java REST Spring 3.2.3 apache cxf 2.7.5 生成 XML 正常,但无法生成 JSON

转载 作者:行者123 更新时间:2023-12-01 04:35:41 25 4
gpt4 key购买 nike

关于我的配置:

Spring 3.2.3(带有java类配置)和

apache cxf 2.7.5 

我尝试让 spring/cxf 工作,但无法生成 JSON 数据。

我收到此错误 “未找到响应类照片的消息正文编写器。”

当我从 MediaType.APPLICATION_JSON 切换到 MediaType.APPLICATION_XML 时,它可以工作!有办法解决我的问题吗?

在这两种情况下,wadl 都正常工作 (localhost/photoservice-1.0.0-SNAPSHOT/rest/photoservice?_wadl)

这个非常基本的项目的骨架在这里:https://github.com/wooxorg/sandbox

package org.woox.photoservice.webservice;  
import javax.inject.Inject;
import javax.ws.rs.Consumes;
import javax.ws.rs.GET;
import javax.ws.rs.Path;
import javax.ws.rs.Produces;
import javax.ws.rs.core.MediaType;
import org.woox.photoservice.model.Photo;
import org.woox.photoservice.service.PhotoServiceImpl;

@Path("/photo")
public class PhotoServiceWS {

@Inject
private PhotoServiceImpl photoService;

@Produces({MediaType.APPLICATION_JSON})
@Consumes({MediaType.APPLICATION_JSON})
@GET
@Path("/get")
public Photo getPhoto() {
return photoService.getPhoto();
}
}


package org.woox.photoservice.service;
import org.springframework.stereotype.Service;
import org.woox.photoservice.model.Photo;

@Service
public class PhotoServiceImpl {

public Photo getPhoto() {
Photo myPhoto = new Photo();
myPhoto.setTitle("title");
return myPhoto;
}

}

package org.woox.photoservice.model;
public class Photo {

private String title;

public String getTitle() {
return title;
}

public void setTitle(String title) {
this.title = title;
}

}

非常感谢您的帮助:)

最佳答案

我只能猜测您的类路径中没有所需的序列化器。将这些 jaxkson-core-asljackson-mapper-asljackson-jaxrs 添加到您的类路径中,我相信这应该可以解决问题。

关于Java REST Spring 3.2.3 apache cxf 2.7.5 生成 XML 正常,但无法生成 JSON,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17401872/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com