Estoy usando Apache CXF para hacer una aplicación sencilla y relajante. Tengo una clase de cliente que publica un objeto JSON en el servidor y el servidor devuelve un JSON después de alguna manipulación. pero cuando ejecuto el código me saleNo se encontró ningún escritor de cuerpo del mensaje: JSON: Apache CXF: RestFul Webservices
"org.apache.cxf.interceptor.Fault: .No message body writer has been found for class:
class org.codehaus.jettison.json.JSONObject, ContentType : application/json."
Mi código de cliente:
public class Client {
public static void main(String[] args) {
try{
URI uri = new URI("http://localhost:8022/RestDemo");
WebClient client = WebClient.create(uri);
String ret = client.path("rest").path("server").path("welcome").accept(MediaType.TEXT_PLAIN).get(String.class);
System.out.println(ret);
JSONObject json = new JSONObject();
json.put("name", "ronaldo");
json = client.path("rest").path("server").path("op").type(MediaType.APPLICATION_JSON).accept(MediaType.APPLICATION_JSON).post(json, JSONObject.class);
System.out.println(json);
System.out.println(json.has("reverse")?json.getString("reverse"):"dont have");
}catch(Exception e){
System.out.println("e"+e.getLocalizedMessage());
e.printStackTrace();
}
}
}
por favor ayuda.
El problema es que cada vez que ejecuto el código me sale la excepción "No message body writer for org.codehaus.jettison.json". No soy un programador experto y esta es la primera vez que tengo servicios tranquilos. ¿Cxf admite el objeto json de una manera que he usado en mi código? He usado el framework de jersey que permite este tipo de códigos sin ningún error y tampoco mencioné ningún proveedor en mi web.xml. Tenga en cuenta que preferiría una solución que no sea de primavera. – Sikorski