showForm - java.lang.reflect.InvocationTargetException

时间:2016-09-02 12:37:52

标签: codenameone invocationtargetexception

我有一个应用程序,我几天前工作 - 应用程序正在运行。 当我昨天尝试工作时,初始屏幕之一给我一个错误

java.lang.reflect.InvocationTargetException

当我调用s.showForm(" Main",null)

我正在使用win10和netbeans 8,最新的Codenameone插件 - 只是重新安装以防万一。

我不确定是什么可以解决这个问题。

谢谢你的消息

功能代码:

public void autologin(final StateMachine s,Form f)
{
    common.log("Login Auto Login");
    autologin=true;


    Hashtable hUserDetails = new Hashtable();        
    Hashtable hLoginDetails = new Hashtable();

    hUserDetails = common.readHashtable(constant.getStoreUserDetails());
    hLoginDetails = common.readHashtable(constant.getStoreLoginDetails());

        if ( hUserDetails!= null && hLoginDetails != null )
        {
            common.log("Login Check for sessionToken : " + hLoginDetails.get("sessionToken".toString()) );
            String SavedSessionToken = hLoginDetails.get("sessionToken".toString()).toString(); 
            common.log("SavedSessionToken : " + SavedSessionToken );
            if ( SavedSessionToken.length() > 1  )
            {   
                common.log("Login execute userLogin");
                common.log("Call UserLogin user : "+hUserDetails.get("username").toString());
                common.log("Call UserLogin pass:  "+ hUserDetails.get("password").toString());
                UserLogin( s, hUserDetails.get("username").toString(), hUserDetails.get("password").toString(),1);

            }else{
                common.log("Login sessionToken not found - show Main");
                s.showForm("Main",null);
            }

        }else{
            common.log("Login hUserDetails - null; redirect to Main");
            try{
                s.showForm("Main",null);
            }catch (Exception e ){
                common.log("autologin showForm Exception "+e );            
            }

        }

}        

错误消息

    java.lang.reflect.InvocationTargetException
  at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
  at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
  at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
  at java.lang.reflect.Method.invoke(Method.java:498)
  at com.codename1.impl.javase.Executor$1$1.run(Executor.java:100)
  at com.codename1.ui.Display.processSerialCalls(Display.java:1148)
  at com.codename1.ui.Display.mainEDTLoop(Display.java:965)
  at com.codename1.ui.RunnableWrapper.run(RunnableWrapper.java:120)
  at com.codename1.impl.CodenameOneThread.run(CodenameOneThread.java:176)
Caused by: java.lang.NullPointerException
  at userclasses.StateMachine.postMain(StateMachine.java:221)
  at generated.StateMachineBase.postShow(StateMachineBase.java:1844)
  at com.codename1.ui.util.UIBuilder.postShowImpl(UIBuilder.java:2598)
  at com.codename1.ui.util.UIBuilder.showForm(UIBuilder.java:2516)
  at com.codename1.ui.util.UIBuilder.showForm(UIBuilder.java:2561)
  at userclasses.Login.autologin(Login.java:249)
  at userclasses.StateMachine.postSplash(StateMachine.java:539)
  at generated.StateMachineBase.postShow(StateMachineBase.java:1820)
  at com.codename1.ui.util.UIBuilder.postShowImpl(UIBuilder.java:2598)
  at com.codename1.ui.util.UIBuilder.showForm(UIBuilder.java:2516)
  at com.codename1.ui.util.UIBuilder.showForm(UIBuilder.java:2561)
  at generated.StateMachineBase.startApp(StateMachineBase.java:66)
  at generated.StateMachineBase.<init>(StateMachineBase.java:31)
  at generated.StateMachineBase.<init>(StateMachineBase.java:118)
  at userclasses.StateMachine.<init>(StateMachine.java:53)
  at com.degmorinc.app.Degmor.DegmorIncSupport.start(DegmorIncSupport.java:20)
  ... 9 more
Java Result: 1

0 个答案:

没有答案