springmvc打印,调试有值,返回值为空

  记录一个今天遇到的奇葩问题。

  问题描述:

        后台采用springmvc作为后端服务;

        在后台中,前台进入一个请求,启动一个http线程,该线程启动一个新的线程作为http请求;

        需要将这两个线程做一下同步,然后返回到前端;

       线程同步我采用的是  thread.join(),通过final地址块传值;

       出现的问题是: 调试,打印都有值,也做了线程同步,但是返回到的前端页面值一直为空,纠结了许久;

问题分析:

      初次分析应该是线程同步的问题,于是我分别在主线程与子线程做了休眠处理,未果;

     其次,我考虑到可能是springmvc异步请求的问题,但是异步请求的问题,我已经忘得差不多了,联网查看了相关的帖子,排除;

    最后,我考虑到是不是代码同步的问题,于是将原来的ArrayList,String[]  分别用concurrent包下的 concurrentHashMap替代,未果;

  之后,我又在各个代码块进行打印,打印值均正常,但是返回到前端的值为空;

问题解决:

    千算万算,我没料想到阿里巴巴的fastJson竟然解析不了 xml.

   我想xml总归也是一个字符串而已,我想可能是因为 xml的内容中,包含了 \ 转义字符,使得json解析的过程异常退出了。  但是这个错误又不是运行时异常,因此没有给info与 error打印输出。(也可能是我项目中没有配置日志的原因)。 

  总之,记录一下这个奇葩问题把。  因为我都不知道怎么组织语言上网搜索相关的帖子。哈哈哈。 

发布了323 篇原创文章 · 获赞 153 · 访问量 11万+

猜你喜欢

转载自blog.csdn.net/qq_36285943/article/details/90301316