关于java.lang.reflect.InvocationTargetException

  今天遇到java.lang.reflect.InvocationTargetException错误,卡了好一会儿,报错代码

  

try {
            Class<?> c= Class.forName("com.csdhsm.chat.server.handler." + handlerName);
            Class<?>[] arg=new Class[]{SocketRequest.class,SocketResponse.class};
            Method method=c.getMethod(action,arg);
            Logger.getLogger(Logger.class).info("实例化处理器" + handlerName);
            method.invoke(c.newInstance(), new Object[]{request,response});
        } catch (Exception e) {
            e.printStackTrace();
        } 

  错误锁定在 method.invoke(c.newInstance(), new Object[]{request,response}); 这句话,我一直是以为反射出了什么错,后来google之后才发现是Method 这个方法里面出了错误,如果想要看到里面的错误,需要这样做

try {
            Method method = obj.getClass().getMethod(methodName);
            method.invoke(obj);
        } catch(NoSuchMethodException e) {
            throw new RequestNotFoundException(
                    "无法找到方法:" + methodName, e);
        } catch(InvocationTargetException e) {
            Throwable t = e.getCause();
            t.printStackTrace();
            throw new ObjectFactoryException(t);
        } catch(Exception e) {
            e.printStackTrace();
            throw new ObjectFactoryException(e);
        }
重点在Throwable t = e.getCause(); 这句话。

参考链接 http://www.oschina.net/question/86510_14830
时间: 2024-10-09 09:51:37

关于java.lang.reflect.InvocationTargetException的相关文章

java.lang.reflect.invocationtargetexception

bout Sotirios-Efstathios Maneas Sotirios-Efstathios (Stathis) Maneas is a postgraduate student at the Department of Informatics and Telecommunications of The National and Kapodistrian University of Athens. His main interests include distributed syste

org.apache.struts2.json.JSONException: java.lang.reflect.InvocationTargetException异常解决

org.apache.struts2.json.JSONException: java.lang.reflect.InvocationTargetException org.apache.struts2.json.JSONWriter.bean(JSONWriter.java:246) org.apache.struts2.json.JSONWriter.processCustom(JSONWriter.java:178) org.apache.struts2.json.JSONWriter.p

含有Date类型属性的实体类转化为JSONArray时报net.sf.json.JSONException: java.lang.reflect.InvocationTargetException

当我们通过session传递数据的时候我通常是: 直接在DAO里从数据库取出含Date类型的数据,而且通常不会将java.sql.Date转为java.util.Date. 这时候前台和后台都不会有任何问题,所以我们以为这样是正常的操作. 但是当我们用JSON传递数据的时候就会发现控制台会报一下错误信息: net.sf.json.JSONException: java.lang.reflect.InvocationTargetException 这时候我们可以再DAO里将java.sql.Dat

session.createQuery()不执行和java.lang.reflect.InvocationTargetException

今天写SSH的工程的时候,执行到一个DAO中的Query query = session.createQuery(hql)的时候,没有成功执行,直接跳到了finally,然后前台报了500和java.lang.reflect.InvocationTargetException的错误. 代码如下: package dao; import java.util.List; import model.AccountInfo; import org.hibernate.HibernateException

json解析异常 - net.sf.json.JSONException: java.lang.reflect.InvocationTargetException

注:在项目中, 我使用原生的ajax请求数据的时候, JSONObject没能帮我解析, 当却不给我报错, 我是在junit单元测试中测试的时候, 发现的.发现好多时候, 特别是通过ajax请求, 不给我们报错,很郁闷, 特别是ie, 有些问题, 得借助FireFox的返回结果分析. 当然, FireFox有时也没报错. 异常栈: net.sf.json.JSONException: java.lang.reflect.InvocationTargetException at net.sf.js

json数据转换异常:net.sf.json.JSONException: java.lang.reflect.InvocationTargetException

1 //存储Product对象的集合是从,Product是从mysql数据库中查询并添加的 2 ArrayList<Product> list = new ArrayList<Product>(); 3 4 //设置响应对象编码 5 response.setCharacterEncoding("utf-8"); 6 response.setContentType("text/html;charset=utf-8"); 7 8 //将list集

HTTP Status 500 - java.lang.reflect.InvocationTargetException

type Exception report message java.lang.reflect.InvocationTargetException description The server encountered an internal error that prevented it from fulfilling this request. exception java.lang.RuntimeException: java.lang.reflect.InvocationTargetExc

错误: java.lang.reflect.InvocationTargetException

错误: java.lang.reflect.InvocationTargetException    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) 

ajax请求json数据异常:nested exception is net.sf.json.JSONException: java.lang.reflect.InvocationTargetException] with root cause

ajax请求json数据异常:nested exception is net.sf.json.JSONException: java.lang.reflect.InvocationTargetException] with root cause 1.异常原因:所请求的json数据中包含java.util.date数据类型,但是在后台并没有将其格式转换 2.解决方法:添加工具类DateJsonValueProcessor import java.text.SimpleDateFormat; imp

mavne install 报错org.apache.maven.surefire.util.SurefireReflectionException: java.lang.reflect.InvocationTargetException

maven install 报错 org.apache.maven.surefire.util.SurefireReflectionException: java.lang.reflect.InvocationTargetException; nested exception is java.lang.reflect.InvocationTargetException: nulljava.lang.reflect.InvocationTargetException at sun.reflect.