Java で最初のアプリを作成しましたが (既に C# と Python でプログラミングしていました)、デバッガーのメッセージが非常にユーザーフレンドリーではないため、理解できない問題があります。;-)
デバッガーの出力は次のようになります。
debug: スレッド "AWT-EventQueue-0" での例外 java.lang.NullPointerException at Kwestionariusz.MainWindow.jButton1ActionPerformed(MainWindow.java:176) at Kwestionariusz.MainWindow.access$100(MainWindow.java:14) at Kwestionariusz.MainWindow$2. actionPerformed(MainWindow.java:72) で javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2018) で javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2341) で javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel) .java:402) で javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:259) で javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:252) で java.awt.Component.processMouseEvent(Component. java:6505) javax.swing.JComponent で。processMouseEvent(JComponent.java:3321) で java.awt.Component.processEvent(Component.java:6270) で java.awt.Container.processEvent(Container.java:2229) で java.awt.Component.dispatchEventImpl(Component.java) :4861) で java.awt.Container.dispatchEventImpl(Container.java:2287) で java.awt.Component.dispatchEvent(Component.java:4687) で java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4832) で java .awt.LightweightDispatcher.processMouseEvent(Container.java:4492) で java.awt.LightweightDispatcher.dispatchEvent(Container.java:4422) で java.awt.Container.dispatchEventImpl(Container.java:2273) で java.awt.Window で。 dispatchEventImpl(Window.java:2719) で java.awt.Component.dispatchEvent(Component.java:4687) で java.awt.EventQueue.dispatchEventImpl(EventQueue.java:703) で java.awt.EventQueue.access$000(EventQueue.java:102) で java.awt.EventQueue$3.run(EventQueue.java:662) で java.awt.EventQueue$3.run(EventQueue.java:660) で java.security.AccessController。 java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76) の doPrivileged(ネイティブ メソッド) java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:87) の java.awt.EventQueue$4.run(EventQueue.java) :676) で java.awt.EventQueue$4.run(EventQueue.java:674) で java.security.AccessController.doPrivileged(Native Method) で java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76) で java. awt.EventQueue.dispatchEvent(EventQueue.java:673) で java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:244) で java.awt.EventDispatchThread で。java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:151) での pumpEventsForFilter(EventDispatchThread.java:163) java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:147) での:139) java.awt.EventDispatchThread.run(EventDispatchThread.java:97) ビルド成功 (合計時間: 16 秒)
それはおそらくこのアクションで何かです:
if (("".equals(login) ) || ("".equals(password)) || ("".equals(accountType)))
{}
else
{
Users user;
user = (Users) db.createNamedQuery("Users.findByLoginAndType")
.setParameter("login", login)
.setParameter("company", accountBool)
.getSingleResult();
if (password.equals(user.getPassword()))
{
JFrame appWindow;
appWindow = new AppWindow();
this.setVisible(false);
appWindow.setVisible(true);
}
}
どこ:
@NamedQuery(name = "Users.findByLoginAndType", query = "SELECT u FROM Users u WHERE u.login = :login AND u.company = :companyBool LIMIT 1")