我用websphere v9beta(支持JAX-RS 2.0)实现restful,下面这段代码
@GET
@Path("/getJson1")
@Produces(MediaType.APPLICATION_JSON)
public JSONObject getJSON1() {
String input = "This is input";
String output = "This is output";
JSONObject outputJsonObj = new JSONObject();
outputJsonObj.put("input", input);
outputJsonObj.put("output", output);
return outputJsonObj;
}
如果用import com.ibm.json.java.JSONObject实现JsonObject是运行正常的,但是如果用import org.json.JSONObject来实现就会报如下的错
[ERROR ] Problem with writing the data, class org.json.JSONObject, ContentType: application/json
[WARNING ] Interceptor for HelloResource1 has thrown exception, unwinding now
No serializer found for class org.json.JSONObject and no properties discovered to create BeanSerializer (to avoid exception, disable SerializationFeature.FAIL_ON_EMPTY_BEANS) )
按理说org.json跟通用啊?为什么websphere上运行会有这样的问题?
------解决思路----------------------
我喜欢用javax.json包的
<dependency>
<groupId>org.glassfish</groupId>
<artifactId>javax.json</artifactId>
<version>1.0.4</version>
</dependency>
------解决思路----------------------
因为javax是oracle控制的吧 而glassfish是oracle下的技术验证版 开源jee容器