Web services 如何使用Pentaho(水壶)正确使用JAX-RS(RESTEasy)

Web services 如何使用Pentaho(水壶)正确使用JAX-RS(RESTEasy),web-services,rest,pentaho,resteasy,kettle,Web Services,Rest,Pentaho,Resteasy,Kettle,我想通过HTTP POST请求将数据(表employees)发送到我的API服务,并将其保存到数据库中 一段代码: @POST @Consumes({ "application/json" }) @Produces(MediaType.TEXT_PLAIN) @Path("/full/json") public Response recieveDataFJson(Employee employee) { System.out.println("Recieved employee with

我想通过HTTP POST请求将数据(表employees)发送到我的API服务,并将其保存到数据库中

一段代码:

@POST
@Consumes({ "application/json" })
@Produces(MediaType.TEXT_PLAIN)
@Path("/full/json")
public Response recieveDataFJson(Employee employee) {
    System.out.println("Recieved employee with name: " + employee.getName());
    return Response.ok("works").build();
}
我使用JSON输出项来准备发送到服务的数据,但我认为问题在于Pentaho以以下格式发送JSON:

{"Employee":[{"name":"mike"}]}
但服务只是在等待:

{"name":"mike"}
我试图删除初始标记,但发送项目为:

{"":[{"name":"mike"}]}
我的服务没有身份验证,URL是正确的

我能做什么,或者有其他更有效的方法吗?

我找到了一种解决问题的“棘手”方法:

在pentaho:

将表数据传递给JSON并以纯文本形式发送

在职:

以纯文本形式接收请求,然后将字符串解析为JSON,将JSON解析为JAVA对象:

JSONObject jsnobject = new JSONObject(recievedString);
            ObjectMapper mapper = new ObjectMapper();
            SimpleDateFormat format = new SimpleDateFormat("yy/MM/dd HH:mm:ss.SSS");
            mapper.setDateFormat(format);
            JSONArray jsonArray = jsnobject.getJSONArray("Employee");
            for (int i = 0; i < jsonArray.length(); i++) {
                JSONObject jsonObject = jsonArray.getJSONObject(i);
                Employee employee = mapper.readValue(jsonObject.toString(),
                        Employee.class); = new NegocioBean();
                    negocioBean.aplicarReglas(factOrdenesTransporte);
            }
JSONObject jsnobject=新的JSONObject(receivedstring);
ObjectMapper mapper=新的ObjectMapper();
SimpleDataFormat格式=新的SimpleDataFormat(“yy/MM/dd HH:MM:ss.SSS”);
setDateFormat(格式);
JSONArray JSONArray=jsnobject.getJSONArray(“员工”);
for(int i=0;i
我找到了解决问题的“棘手”方法:

在pentaho:

将表数据传递给JSON并以纯文本形式发送

在职:

以纯文本形式接收请求,然后将字符串解析为JSON,将JSON解析为JAVA对象:

JSONObject jsnobject = new JSONObject(recievedString);
            ObjectMapper mapper = new ObjectMapper();
            SimpleDateFormat format = new SimpleDateFormat("yy/MM/dd HH:mm:ss.SSS");
            mapper.setDateFormat(format);
            JSONArray jsonArray = jsnobject.getJSONArray("Employee");
            for (int i = 0; i < jsonArray.length(); i++) {
                JSONObject jsonObject = jsonArray.getJSONObject(i);
                Employee employee = mapper.readValue(jsonObject.toString(),
                        Employee.class); = new NegocioBean();
                    negocioBean.aplicarReglas(factOrdenesTransporte);
            }
JSONObject jsnobject=新的JSONObject(receivedstring);
ObjectMapper mapper=新的ObjectMapper();
SimpleDataFormat格式=新的SimpleDataFormat(“yy/MM/dd HH:MM:ss.SSS”);
setDateFormat(格式);
JSONArray JSONArray=jsnobject.getJSONArray(“员工”);
for(int i=0;i
您可以修改Pentaho的请求数据吗?我的意思是,更改Pentaho发送的JSON。是的,但我没有找到确切的方法告诉Pentaho如何编写JSON,只需编辑一些参数即可修改Pentaho的请求数据?我的意思是,更改Pentaho发送的JSON。是的,但我没有找到确切告诉Pentaho如何编写JSON的方法,只是编辑一些参数