zoukankan      html  css  js  c++  java
  • Atitti 跨语言异常的转换抛出 java js

    Atitti 跨语言异常的转换抛出 java js

     

    异常的转换,直接反序列化为json对象e对象即可。。

     Js、没有完整的e机制,可以参考java的实现一个stack层次机制的e对象即可。。

     

    抛出RuntimeException vs 还是e.cause;

    应该抛出完整e,因为runtimeE可能还有一些说明。。

     

    那如何捕获异常,可以判断,如果是RuntimeException,那么捕获他的cause就可。。

     

     function convert2jsEx(data)

    {

    if(typeof data=="string")

    {

    try{

      data = eval(  "(" + data + ")"   );

    }catch(e)

    {

    //alert(e);

    //yaosh puton str zeu return;

    if(e instanceof ReferenceError)

    return;

    //return e;

    }

      

      

    }

     

      if(data["@type"]!=null && data["@type"]=="java.lang.RuntimeException")

      { 

     throw data.cause;

      }

     else   if(data["@type"]!=null && data["@type"]=="java.lang.Exception")

      {

    throw data.cause;

      }

      else if(data["stackTrace"]!=null)

       {

     

      throw data;

      }  

     else  if(data["xdebug_message"]!=null)  

       {

    //  if(data.xdebug_message!=null)

      logx(data.xdebug_message);

      throw data.xdebug_message;

      }

      else

     return false;

    }

     

    作者:: 绰号:老哇的爪子 ( 全名::Attilax Akbar Al Rapanui 阿提拉克斯 阿克巴 阿尔 拉帕努伊 ) 

    汉字名:艾提拉(艾龙)   EMAIL:1466519819@qq.com

    转载请注明来源: http://www.cnblogs.com/attilax/

    Atiend

     

     

  • 相关阅读:
    OBS直播和相关操作
    计算机信息安全易错题目整理3
    计算机信息安全易错题目整理1
    LeetCode SQL题目(第一弹)
    操作系统及安全复习笔记
    网络安全web部分
    《算法分析与设计基础》考前复习提纲
    兼容新旧浏览器的flex写法
    特效背景粒子插件particles.js
    前端工程师必备的几个实用网站
  • 原文地址:https://www.cnblogs.com/attilax/p/6080557.html
Copyright © 2011-2022 走看看