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