/* * DesktopApplication1View.java */ package desktopapplication1; import application.Action; import application.ResourceMap; import application.SingleFrameApplication; import application.FrameView; import application.TaskMonitor; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import javax.swing.Timer; import javax.swing.Icon; import javax.swing.JDialog; import javax.swing.JFrame; /** * The application's main frame. */ public class DesktopApplication1View extends FrameView { public DesktopApplication1View(SingleFrameApplication app) { super(app); initComponents(); // status bar initialization - message timeout, idle icon and busy animation, etc ResourceMap resourceMap = getResourceMap(); int messageTimeout = resourceMap.getInteger("StatusBar.messageTimeout"); messageTimer = new Timer(messageTimeout, new ActionListener() { public void actionPerformed(ActionEvent e) { statusMessageLabel.setText(""); } }); messageTimer.setRepeats(false); int busyAnimationRate = resourceMap.getInteger("StatusBar.busyAnimationRate"); for (int i = 0; i < busyIcons.length; i++) { busyIcons[i] = resourceMap.getIcon("StatusBar.busyIcons[" + i + "]"); } busyIconTimer = new Timer(busyAnimationRate, new ActionListener() { public void actionPerformed(ActionEvent e) { busyIconIndex = (busyIconIndex + 1) % busyIcons.length; statusAnimationLabel.setIcon(busyIcons[busyIconIndex]); } }); idleIcon = resourceMap.getIcon("StatusBar.idleIcon"); statusAnimationLabel.setIcon(idleIcon); progressBar.setVisible(false); // connecting action tasks to status bar via TaskMonitor TaskMonitor taskMonitor = new TaskMonitor(getApplication().getContext()); taskMonitor.addPropertyChangeListener(new java.beans.PropertyChangeListener() { public void propertyChange(java.beans.PropertyChangeEvent evt) { String propertyName = evt.getPropertyName(); if ("started".equals(propertyName)) { if (!busyIconTimer.isRunning()) { statusAnimationLabel.setIcon(busyIcons[0]); busyIconIndex = 0; busyIconTimer.start(); } progressBar.setVisible(true); progressBar.setIndeterminate(true); } else if ("done".equals(propertyName)) { busyIconTimer.stop(); statusAnimationLabel.setIcon(idleIcon); progressBar.setVisible(false); progressBar.setValue(0); } else if ("message".equals(propertyName)) { String text = (String)(evt.getNewValue()); statusMessageLabel.setText((text == null) ? "" : text); messageTimer.restart(); } else if ("progress".equals(propertyName)) { int value = (Integer)(evt.getNewValue()); progressBar.setVisible(true); progressBar.setIndeterminate(false); progressBar.setValue(value); } } }); } @Action public void showAboutBox(ActionEvent e) { if (aboutBox == null) { JFrame mainFrame = DesktopApplication1.getApplication().getMainFrame(); aboutBox = new DesktopApplication1AboutBox(mainFrame); aboutBox.setLocationRelativeTo(mainFrame); } DesktopApplication1.getApplication().show(aboutBox); } /** This method is called from within the constructor to * initialize the form. * WARNING: Do NOT modify this code. The content of this method is * always regenerated by the Form Editor. */ // private void initComponents() { mainPanel = new javax.swing.JPanel(); jButton1 = new javax.swing.JButton(); menuBar = new javax.swing.JMenuBar(); javax.swing.JMenu fileMenu = new javax.swing.JMenu(); javax.swing.JMenuItem exitMenuItem = new javax.swing.JMenuItem(); javax.swing.JMenu helpMenu = new javax.swing.JMenu(); javax.swing.JMenuItem aboutMenuItem = new javax.swing.JMenuItem(); statusPanel = new javax.swing.JPanel(); javax.swing.JSeparator statusPanelSeparator = new javax.swing.JSeparator(); statusMessageLabel = new javax.swing.JLabel(); statusAnimationLabel = new javax.swing.JLabel(); progressBar = new javax.swing.JProgressBar(); javax.swing.ActionMap actionMap = application.Application.getInstance(desktopapplication1.DesktopApplication1.class).getContext().getActionMap(DesktopApplication1View.class, this); jButton1.setAction(actionMap.get("řčšřčšřřčšř")); // NOI18N org.jdesktop.layout.GroupLayout mainPanelLayout = new org.jdesktop.layout.GroupLayout(mainPanel); mainPanel.setLayout(mainPanelLayout); mainPanelLayout.setHorizontalGroup( mainPanelLayout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING) .add(mainPanelLayout.createSequentialGroup() .add(142, 142, 142) .add(jButton1) .addContainerGap(185, Short.MAX_VALUE)) ); mainPanelLayout.setVerticalGroup( mainPanelLayout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING) .add(mainPanelLayout.createSequentialGroup() .add(74, 74, 74) .add(jButton1) .addContainerGap(152, Short.MAX_VALUE)) ); application.ResourceMap resourceMap = application.Application.getInstance(desktopapplication1.DesktopApplication1.class).getContext().getResourceMap(DesktopApplication1View.class); fileMenu.setText(resourceMap.getString("fileMenu.text")); // NOI18N exitMenuItem.setAction(actionMap.get("quit")); // NOI18N fileMenu.add(exitMenuItem); menuBar.add(fileMenu); helpMenu.setText(resourceMap.getString("helpMenu.text")); // NOI18N aboutMenuItem.setAction(actionMap.get("showAboutBox")); // NOI18N helpMenu.add(aboutMenuItem); menuBar.add(helpMenu); statusAnimationLabel.setHorizontalAlignment(javax.swing.SwingConstants.LEFT); org.jdesktop.layout.GroupLayout statusPanelLayout = new org.jdesktop.layout.GroupLayout(statusPanel); statusPanel.setLayout(statusPanelLayout); statusPanelLayout.setHorizontalGroup( statusPanelLayout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING) .add(statusPanelSeparator, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, 400, Short.MAX_VALUE) .add(statusPanelLayout.createSequentialGroup() .addContainerGap() .add(statusMessageLabel) .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED, 230, Short.MAX_VALUE) .add(progressBar, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE) .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED) .add(statusAnimationLabel) .addContainerGap()) ); statusPanelLayout.setVerticalGroup( statusPanelLayout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING) .add(statusPanelLayout.createSequentialGroup() .add(statusPanelSeparator, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 2, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE) .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) .add(statusPanelLayout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE) .add(statusMessageLabel) .add(statusAnimationLabel) .add(progressBar, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)) .add(3, 3, 3)) ); setComponent(mainPanel); setMenuBar(menuBar); setStatusBar(statusPanel); }// @application.Action public void řčšřčšřřčšř() { // put your action code here } // Variables declaration - do not modify private javax.swing.JButton jButton1; private javax.swing.JPanel mainPanel; private javax.swing.JMenuBar menuBar; private javax.swing.JProgressBar progressBar; private javax.swing.JLabel statusAnimationLabel; private javax.swing.JLabel statusMessageLabel; private javax.swing.JPanel statusPanel; // End of variables declaration private final Timer messageTimer; private final Timer busyIconTimer; private final Icon idleIcon; private final Icon[] busyIcons = new Icon[15]; private int busyIconIndex = 0; private JDialog aboutBox; } ----- Classpath: --------------------------------------------- bootPath: ClassPath[Entry[jar:file:/C:/Program%20Files/Java/jdk1.6.0_02/jre/lib/resources.jar!/], Entry[jar:file:/C:/Program%20Files/Java/jdk1.6.0_02/jre/lib/rt.jar!/], Entry[jar:file:/C:/Program%20Files/Java/jdk1.6.0_02/jre/lib/sunrsasign.jar!/], Entry[jar:file:/C:/Program%20Files/Java/jdk1.6.0_02/jre/lib/jsse.jar!/], Entry[jar:file:/C:/Program%20Files/Java/jdk1.6.0_02/jre/lib/jce.jar!/], Entry[jar:file:/C:/Program%20Files/Java/jdk1.6.0_02/jre/lib/charsets.jar!/], Entry[file:/C:/Program%20Files/Java/jdk1.6.0_02/jre/classes/], Entry[jar:file:/C:/Program%20Files/Java/jdk1.6.0_02/jre/lib/ext/dnsns.jar!/], Entry[jar:file:/C:/Program%20Files/Java/jdk1.6.0_02/jre/lib/ext/localedata.jar!/], Entry[jar:file:/C:/Program%20Files/Java/jdk1.6.0_02/jre/lib/ext/sunjce_provider.jar!/], Entry[jar:file:/C:/Program%20Files/Java/jdk1.6.0_02/jre/lib/ext/sunmscapi.jar!/], Entry[jar:file:/C:/Program%20Files/Java/jdk1.6.0_02/jre/lib/ext/sunpkcs11.jar!/]] classPath: ClassPath[Entry[jar:file:/D:/ide/nb6.0/java1/modules/ext/appframework-0.50.jar!/], Entry[jar:file:/D:/ide/nb6.0/java1/modules/ext/swing-worker.jar!/], Entry[jar:file:/D:/ide/nb6.0/platform7/modules/ext/swing-layout-1.0.2.jar!/]] sourcePath: ClassPath[Entry[file:/D:/testing_NB/6.0/DesktopApplication1/src/], Entry[file:/D:/testing_NB/6.0/DesktopApplication1/build/generated/wsclient/], Entry[file:/D:/testing_NB/6.0/DesktopApplication1/build/generated/wsimport/client/]] ----- Original exception --------------------------------------------- java.lang.NullPointerException at com.sun.tools.javac.comp.Check.validateAnnotation(Check.java:1754) at com.sun.tools.javac.comp.Check.validateAnnotation(Check.java:1680) at com.sun.tools.javac.comp.Check.validateAnnotations(Check.java:1674) at com.sun.tools.javac.comp.Attr.visitMethodDef(Attr.java:650) at com.sun.tools.javac.tree.JCTree$JCMethodDecl.accept(JCTree.java:643) at com.sun.tools.javac.comp.Attr.attribTree(Attr.java:370) at com.sun.tools.javac.comp.Attr.attribStat(Attr.java:407) at com.sun.tools.javac.comp.Attr.attribClassBody(Attr.java:2710) at com.sun.tools.javac.comp.Attr.attribClass(Attr.java:2641) at com.sun.tools.javac.comp.Attr.attribClass(Attr.java:2575) at com.sun.tools.javac.main.JavaCompiler.attribute(JavaCompiler.java:1045) at com.sun.tools.javac.main.JavaCompiler.attribute(JavaCompiler.java:1021) at com.sun.tools.javac.api.JavacTaskImpl.analyze(JavacTaskImpl.java:427) at com.sun.tools.javac.api.JavacTaskImpl.analyze(JavacTaskImpl.java:407) at org.netbeans.api.java.source.JavaSource.moveToPhase(JavaSource.java:1165) at org.netbeans.api.java.source.CompilationController.toPhase(CompilationController.java:82) at org.netbeans.modules.profiler.utils.SourceUtils$4.run(SourceUtils.java:352) at org.netbeans.modules.profiler.utils.SourceUtils$4.run(SourceUtils.java:350) at org.netbeans.api.java.source.JavaSource.runUserActionTask(JavaSource.java:563) at org.netbeans.modules.profiler.utils.SourceUtils.isInstanceOf(SourceUtils.java:347) at org.netbeans.modules.profiler.utils.SourceUtils.isTest(SourceUtils.java:190) at org.netbeans.modules.profiler.utils.SourceUtils.isRunnable(SourceUtils.java:198) at org.netbeans.modules.profiler.j2se.J2SEProjectTypeProfiler.isFileObjectSupported(J2SEProjectTypeProfiler.java:109) at org.netbeans.modules.profiler.actions.AntActions$1.enable(AntActions.java:94) at org.netbeans.modules.profiler.actions.FileSensitiveAction.refresh(FileSensitiveAction.java:41) at org.netbeans.modules.profiler.actions.ProjectSensitiveAction.resultChanged(ProjectSensitiveAction.java:153) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at org.openide.util.WeakListenerImpl$ProxyListener.invoke(WeakListenerImpl.java:427) at $Proxy6.resultChanged(Unknown Source) at org.openide.util.lookup.SimpleProxyLookup.checkLookup(SimpleProxyLookup.java:89) at org.openide.util.lookup.SimpleProxyLookup.access$000(SimpleProxyLookup.java:36) at org.openide.util.lookup.SimpleProxyLookup$ProxyResult.checkResult(SimpleProxyLookup.java:161) at org.openide.util.lookup.SimpleProxyLookup$ProxyResult.allItems(SimpleProxyLookup.java:241) at org.openide.actions.SaveAsAction.resultChanged(SaveAsAction.java:139) at org.openide.actions.SaveAsAction.propertyChange(SaveAsAction.java:189) at java.beans.PropertyChangeSupport.firePropertyChange(PropertyChangeSupport.java:339) at java.beans.PropertyChangeSupport.firePropertyChange(PropertyChangeSupport.java:276) at org.netbeans.core.windows.RegistryImpl.doFirePropertyChange(RegistryImpl.java:292) at org.netbeans.core.windows.RegistryImpl.tryFireChanges(RegistryImpl.java:265) at org.netbeans.core.windows.RegistryImpl.selectedNodesChanged(RegistryImpl.java:211) at org.netbeans.core.windows.RegistryImpl.topComponentActivated(RegistryImpl.java:148) at org.netbeans.core.windows.WindowManagerImpl.notifyRegistryTopComponentActivated(WindowManagerImpl.java:968) at org.netbeans.core.windows.Central.setActiveMode(Central.java:208) at org.netbeans.core.windows.Central.userActivatedMode(Central.java:1737) at org.netbeans.core.windows.view.DefaultView.userActivatedModeView(DefaultView.java:593) at org.netbeans.core.windows.view.ui.TabbedHandler$ActivationManager.handleActivation(TabbedHandler.java:464) at org.netbeans.core.windows.view.ui.TabbedHandler$ActivationManager.eventDispatched(TabbedHandler.java:411) at java.awt.Toolkit$SelectiveAWTEventListener.eventDispatched(Toolkit.java:2360) at java.awt.Toolkit$ToolkitEventMulticaster.eventDispatched(Toolkit.java:2252) at java.awt.Toolkit$ToolkitEventMulticaster.eventDispatched(Toolkit.java:2251) at java.awt.Toolkit.notifyAWTEventListeners(Toolkit.java:2210) at java.awt.Component.dispatchEventImpl(Component.java:4308) at java.awt.Container.dispatchEventImpl(Container.java:2116) at java.awt.Component.dispatchEvent(Component.java:4240) at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4322) at java.awt.LightweightDispatcher.processMouseEvent(Container.java:3983) at java.awt.LightweightDispatcher.dispatchEvent(Container.java:3916) at java.awt.Container.dispatchEventImpl(Container.java:2102) at java.awt.Window.dispatchEventImpl(Window.java:2429) at java.awt.Component.dispatchEvent(Component.java:4240) at java.awt.EventQueue.dispatchEvent(EventQueue.java:599) at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:273) at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:183) at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:173) at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:168) at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:160) at java.awt.EventDispatchThread.run(EventDispatchThread.java:121)