Tag: json

Java Jackson – 意外的令牌(START_ARRAY),预期为VALUE_STRING

嗨,我试图在java中使用jackson反序列化json数据。 我面临一个错误如下:意外的令牌(START_ARRAY),预期的VALUE_STRING:需要包含类型ID的JSON字符串(对于附件的子类型)这是我使用的代码。 请让我知道如何解决此问题。 提前致谢。 ObjectMapper mapper = new ObjectMapper(); mapper.enableDefaultTyping(); Audio audio = new Audio(2,2,”www.google.com”,”HelloWorld”); List link = new ArrayList(); link.add(audio); try { String jsonDataString= mapper.writerWithDefaultPrettyPrinter().writeValueAsString(link); System.out.println(mapper.writerWithDefaultPrettyPrinter().writeValueAsString(link)); Attachment f1 = new Attachment(); f1 = mapper.readValue(jsonDataString,Attachment.class); } catch (JsonProcessingException e) { // TODO Auto-generated catch block e.printStackTrace(); } JSON: [[ “Audio”, { “url” : “www.google.com”, “title” […]

在BigQuery API中为ViewDefinition指定SQL方言

有两个用于操作BigQuery实体的API(数据集,表,视图等)…… 旧的(已弃用的)API:com.google.api.services.bigquery 新API:com.google.cloud.bigquery 在旧的API中,View类有一个布尔标志,指定关联的查询是使用传统SQL还是标准SQL。 通过以下方法访问该标志: getUseLegacySql setUseLegacySql 新API引入了ViewDefinition类,但它没有布尔标志。 如何为ViewDefinition指定SQL方言?

序列化列表与json的manytoone&onetomany关系

我有课程菜单,这是一个自我与自我与多人和onetomany关系。 package models; import java.util.*; import javax.persistence.*; import play.db.ebean.*; import play.data.format.*; import play.data.validation.*; import static play.data.validation.Constraints.*; import javax.validation.*; import org.codehaus.jackson.annotate.JsonBackReference; import org.codehaus.jackson.annotate.JsonIgnore; import org.codehaus.jackson.annotate.JsonManagedReference; import com.avaje.ebean.*; import play.i18n.Messages; @Entity public class Menu extends Model { @Id @GeneratedValue(strategy = GenerationType.AUTO) public Long id; @Required @MinLength(4) @MaxLength(30) public String name; public String url; @Transient public boolean hasChild() […]

JSONObject.toString()返回OutOfMemoryError

我有一个Android应用程序。 首先,应用程序执行同步过程。 在此过程中,服务器向设备发送一个JSON对象作为String,通过它可以构建可用的问卷。 GetQuestionnairesResponse.java: public class GetQuestionnairesResponse extends ResponseHandler { public GetQuestionnairesResponse(String result, AsyncRequest request) { super(result, request); } @Override public void handleResponse() { DataSyncActivity caller = (DataSyncActivity) request.getCaller(); BackgroundManager bckMng = BackgroundManager.getInstance(caller); PreferencesManager preference = PreferencesManager.getInstance(null); boolean status = true; int numOfWrongJsonVer = 0; int totalNumOfQuestionnaires = 0; // Handle data from server // […]

Tomcat 7 Server不会加载类:ClassNotFoundException

SEVERE: A child container failed during start java.util.concurrent.ExecutionException: org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Catalina].StandardHost[localhost].StandardContext[/Employee_12_30_AngularJS]] at java.util.concurrent.FutureTask.report(Unknown Source) at java.util.concurrent.FutureTask.get(Unknown Source) at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:1123) at org.apache.catalina.core.StandardHost.startInternal(StandardHost.java:800) at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150) at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1559) at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1549) at java.util.concurrent.FutureTask.run(Unknown Source) at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source) at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) at java.lang.Thread.run(Unknown Source) Caused by: org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Catalina].StandardHost[localhost].StandardContext[/Employee_12_30_AngularJS]] at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:154) … 6 more […]

Autobean和XSS问题

我在后端有一个Spring应用程序,在前端有一个GWT应用程序。 当用户登录时,”index.jsp”将用户信息输出为javascript变量。 我使用AutoBeanFactory将用户信息编码和解码为json。 因为用户可以注册并且用户信息存储在数据库中,所以我尝试通过转义JSP页面中的用户信息来遵循OWASP XSS预防备忘单 。 我正在使用esapi库进行编码。 服务器端代码如下所示: public static String serializeUserToJson(CustomUser user) { String json; AppUserProxy appUserProxy = appUserFactory.appuser().as(); appUserProxy.setFirstname(encoder.encodeForHTML(user.getFirstname())); appUserProxy.setLastname(encoder.encodeForHTML(user.getLastname())); AutoBean bean = appUserFactory.appuser(appUserProxy); json = AutoBeanCodex.encode(bean).getPayload(); return json; } 我尝试使用encodeForHTML和encodeForJavaScript() 。 这适用于普通字符但是只要我使用Umlaute字符(ü,ä,ö)我遇到问题。 如果我使用encodeforHTML()函数,javascript变量看起来像这样(注意firstname有一个ü): var data = {‘user’:'{“email”:”john.doe@gmail.com”,”lastname”:”Doe”,”firstname”:”Über”}’}; 使用Autobean进行解码工作正常,但字符ü未正确显示但HTML转义了一个( Über )。 当我使用encodeForJavaScript()函数时,输出如下: var data = {‘user’:'{“email”:”john.doe@gmail.com”,”lastname”:”Doe”,”firstname”:”\\xDCber”}’}; 当我尝试解码JSON字符串时,我遇到了一个奇怪的问题。 在开发模式/托管模式下,解码工作正常,并且正确显示变音符号。 但是,只要我在生产模式下运行代码,我就会得到一个未被捕获的exception: java.lang.IllegalArgumentException: Error parsing JSON: […]

将progressDialog添加到JSON Parser类并返回MainActivity的方法

我有一个JSONparser类来获取和发送数据到服务器工作正常,但在没有wifi连接测试这个过程需要更长的时间。 是否可以将进程Dialog放入我的类中,因为我将这个类称为每个需要发送或接收数据的活动。 我尝试了一些不同的事情,例如在任务之前和之后应用设置LinearLayout的可见性,如: loading.setVisibility(View.VISIBLE); /// DO TASK loading.setVisibility(View.GONE); 但屏幕只是冻结并加载数据。 我已经尝试在HTTP请求开始时添加processDialog,并在任务完成时再次删除它但我得到一个空引用错误。 我觉得错误可能在于课程本身,因为我是Java的新手,我现在才真正了解基础,所以只是学习。 这是我的JSONParser类 public class JSONParser { static InputStream is = null; static JSONObject jObj = null; static String json = “”; static String root = “**MY SERVER**”; private View loading = null; public JSONParser() { } public JSONObject makeHttpRequest(String url, String method, List params) { […]

从Java中的HTTP POST请求中读取JSON消息

我是Java和客户端 – 服务器编程的新手。 我正在使用嵌入式Jetty,我正在尝试将JSON字符串发送到某个地址( http:// localhost:7070 / json ),然后在该地址中显示JSON字符串。 我尝试了以下代码,但我得到的只是null。 嵌入式Jetty代码: public static void main(String[] args) throws Exception { Server server = new Server(7070); ServletContextHandler handler = new ServletContextHandler(server, “/json”); handler.addServlet(ExampleServlet.class, “/”); server.start(); } 用于发送Http POST的客户端function: public static void sendHttp(){ HttpClient httpClient = HttpClientBuilder.create().build(); //Use this instead try { HttpPost request = new HttpPost(“http://localhost:7070/json”); JSONObject […]

如何在JAVA或Android中加密和解密UTF-8?

我使用此算法在android中加密和解密数据。 但是当使用utf-8字符时..显示此错误:[加密]数据不对齐块大小。 我使用此算法进行加密和解密: https ://snipt.net/raw/ee573b6957b7416f28aa560ead71c3a2/ ? nice 我的代码: HttpClient client = new DefaultHttpClient(); HttpPost post = new HttpPost(ServerIP.frooshgah_URL); List nameValuePairs = new ArrayList(); JSONObject json = new JSONObject(); try { json.put(“UserId”, “0s”); json.put(“N_frooshgah”, N_frooshgah); json.put(“N_masol”, N_masol); json.put(“N_makan”, N_makan); json.put(“address”, address); json.put(“tel”, tel); json.put(“time_baz”, time_baz); json.put(“time_baste”, time_baste); json.put(“tavzihat”, tavzihat); json.put(“tag”, tag); json.put(“categori”, “پوشاک”); json.put(“city”, city); json.put(“lat”, […]

如何为键是可变的JSON字符串创建一个java类?

响应 array ( 0 => array ( ‘time_start’ => 1252652400, ‘time_stop’ => 1252911600, ‘stats’ => array ( 6002306163363 => array ( ‘id’ => 6002306163363, ‘impressions’ => ‘6713’, ‘clicks’ => ‘7’, ‘spent’ => ‘593’, ‘actions’ => ‘1’, ), ), ), ) 数据显示在rest / ads.getAdGroupStats的facebook api中。 我无法将stats部分转换为Java类,其中6002306163363是一个变量,同样可以有更多的映射。 以下是三个广告123456,23456,34567的完整结果。 [ { “time_start”: 0, “time_stop”: 1285224928, “stats”: { “123456”: […]