Java RestfulService不返回JSONArray

时间:2018-09-21 10:03:45

标签: java

我尝试从我的RestService取回JSONArray:

@GET
@Path("alleMitarbeiterJSON")
public JSONArray alleMitarbeiterJSON() {


    JSONArray jsonArray = new JSONArray();

    try {
        Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
        Connection con = DriverManager.getConnection(verbindungsUrl);
        if (con != null) {

            cs = con.prepareCall("{call sp_Auswertung(?)}");
            cs.setString(1, "MA");
            ResultSet rs = cs.executeQuery();

            while (rs.next()) {
                int total_rows = rs.getMetaData().getColumnCount();
                for (int i = 0; i < total_rows; i++) {
                    JSONObject obj = new JSONObject();
                    obj.put(rs.getMetaData().getColumnLabel(i + 1).toLowerCase(), rs.getObject(i + 1));
                    jsonArray.put(obj);

                }
            }

            rs.close();
            cs.close();
            con.close();


            System.out.println(jsonArray.toString());
        }
    } catch (Exception e) {
        e.printStackTrace();
    }
    return jsonArray;

}

如果我采用sysout,则一切正常-正确的数据。 但是,如果我尝试在JS中发出警报,则在控制台中会出现以下错误:

  

java.lang.IllegalArgumentException:错误的参数数量[...]   org.eclipse.yasson.internal.Marshaller.serializeRoot(Marshaller.java:118)   在org.eclipse.yasson.internal.Marshaller.marshall(Marshaller.java:76)   在org.eclipse.yasson.internal.JsonBinding.toJson(JsonBinding.java:98)

0 个答案:

没有答案