才开始学习jsp,自己写了一个通过jsp操作Oracle的程序(实质是照着书本例子抄的),代码应该没有问题。通过tomcat部署的时候,Myeclipse提示错误如下:
Problems occurred when invoking code from plug-in: "org.eclipse.jface".
查看了error log 具体如下:Problems occurred when invoking code from plug-in: "org.eclipse.jface".java.lang.NullPointerException
at com.genuitec.eclipse.ast.deploy.core.ui.dialog.DeploymentLabelProvider.getColumnText(Unknown Source)
at org.eclipse.jface.viewers.TableColumnViewerLabelProvider.update(TableColumnViewerLabelProvider.java:70)
at org.eclipse.jface.viewers.ViewerColumn.refresh(ViewerColumn.java:135)
at org.eclipse.jface.viewers.AbstractTableViewer.doUpdateItem(AbstractTableViewer.java:386)
at org.eclipse.jface.viewers.StructuredViewer$UpdateItemSafeRunnable.run(StructuredViewer.java:466)
at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:37)
at org.eclipse.core.runtime.Platform.run(Platform.java:857)
at org.eclipse.ui.internal.JFaceUtil$1.run(JFaceUtil.java:46)
at org.eclipse.jface.util.SafeRunnable.run(SafeRunnable.java:199)
at org.eclipse.jface.viewers.StructuredViewer.updateItem(StructuredViewer.java:2026)
at org.eclipse.jface.viewers.AbstractTableViewer.createItem(AbstractTableViewer.java:264)
at org.eclipse.jface.viewers.AbstractTableViewer.internalRefreshAll(AbstractTableViewer.java:741)
at org.eclipse.jface.viewers.AbstractTableViewer.internalRefresh(AbstractTableViewer.java:633)
at org.eclipse.jface.viewers.AbstractTableViewer.internalRefresh(AbstractTableViewer.java:620)
at org.eclipse.jface.viewers.AbstractTableViewer$2.run(AbstractTableViewer.java:576)
at org.eclipse.jface.viewers.StructuredViewer.preservingSelection(StructuredViewer.java:1368)
at org.eclipse.jface.viewers.StructuredViewer.preservingSelection(StructuredViewer.java:1330)
at org.eclipse.jface.viewers.CheckboxTableViewer.preservingSelection(CheckboxTableViewer.java:295)
at org.eclipse.jface.viewers.AbstractTableViewer.inputChanged(AbstractTableViewer.java:574)
at org.eclipse.jface.viewers.ContentViewer.setInput(ContentViewer.java:251)
at org.eclipse.jface.viewers.StructuredViewer.setInput(StructuredViewer.java:1606)
at com.genuitec.eclipse.ast.deploy.core.ui.dialog.DeploymentManagerDialog.updateDeploymentsViewerForProject(Unknown Source)
at com.genuitec.eclipse.ast.deploy.core.ui.dialog.DeploymentManagerDialog.handleProjectsComboBoxModified(Unknown Source)
at com.genuitec.eclipse.ast.deploy.core.ui.dialog.DeploymentManagerDialog$1.modifyText(Unknown Source)
at org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java:166)
at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:66)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:938)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:962)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:943)
at org.eclipse.swt.widgets.Combo.wmCommandChild(Combo.java:2327)
at org.eclipse.swt.widgets.Control.WM_COMMAND(Control.java:3801)
at org.eclipse.swt.widgets.Control.windowProc(Control.java:3675)
at org.eclipse.swt.widgets.Display.windowProc(Display.java:4351)
at org.eclipse.swt.internal.win32.OS.CallWindowProcW(Native Method)
at org.eclipse.swt.internal.win32.OS.CallWindowProc(OS.java:2179)
at org.eclipse.swt.widgets.Combo.callWindowProc(Combo.java:282)
at org.eclipse.swt.widgets.Control.windowProc(Control.java:3760)
at org.eclipse.swt.widgets.Combo.windowProc(Combo.java:2045)
at org.eclipse.swt.widgets.Display.windowProc(Display.java:4364)
at org.eclipse.swt.internal.win32.OS.DispatchMessageW(Native Method)
at org.eclipse.swt.internal.win32.OS.DispatchMessage(OS.java:2265)
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3291)
at org.eclipse.jface.window.Window.runEventLoop(Window.java:820)
at org.eclipse.jface.window.Window.open(Window.java:796)
at com.genuitec.eclipse.ast.deploy.core.ui.action.DeploymentMgmtActionDelegate.runWithEvent(Unknown Source)
at org.eclipse.ui.internal.PluginAction.runWithEvent(PluginAction.java:246)
at org.eclipse.ui.internal.WWinPluginAction.runWithEvent(WWinPluginAction.java:229)
at org.eclipse.jface.action.ActionContributionItem.handleWidgetSelection(ActionContributionItem.java:546)
at org.eclipse.jface.action.ActionContributionItem.access$2(ActionContributionItem.java:490)
at org.eclipse.jface.action.ActionContributionItem$6.handleEvent(ActionContributionItem.java:443)
at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:66)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:938)
at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:3682)
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3293)
at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:2389)
at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2353)
at org.eclipse.ui.internal.Workbench.access$4(Workbench.java:2219)
at org.eclipse.ui.internal.Workbench$4.run(Workbench.java:466)
at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:289)
at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:461)
at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149)
at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:106)
at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:169)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:106)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:76)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:363)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:176)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:508)
at org.eclipse.equinox.launcher.Main.basicRun(Main.java:447)
at org.eclipse.equinox.launcher.Main.run(Main.java:1173)
at org.eclipse.equinox.launcher.Main.main(Main.java:1148)
小白不知道这个问题如何解决,请大家帮帮忙!先谢谢了!PS:有一点困惑想咨询大家一下,写程序的时候如何对待API呢,比如操作数据库用到了statement接口,查看API时,是一个挨着一个看方法呢,还是只看方法大概介绍,然后等下次用到了再查方法呢?目前的学习方法就是敲书本上的例子,然后自己调试程序,求分享学习方法!
myeclipsetomcat

解决方案 »

  1.   

    记得刚开始学 web 时候经常碰到 NullPointerException 这个异常
      

  2.   

    代码应该没有问题的话楼主看下你的 tomcat 开启是否正确,一般就是 tomcat 的原因了,记得有一次我 tomcat 默认是开着的,然后又打开一次,也出现这种异常。
      

  3.   

    有没有选择正确的tomcat部署?  不行的话,全删了,重来
      

  4.   

    应该没有问题吧,我没有用myeclipse自带的tomcat,用的tomcat6.0,jdk什么的都是对的路径,在浏览器中输入localhost:8080也有界面,应该没有问题吧!
      

  5.   

    您所谓的开启是指服务和Myeclipse中启动tomcat?这两个都是开着的!
      

  6.   

    您所谓的开启是指服务和Myeclipse中启动tomcat?这两个都是开着的!必须关掉一个,两个开着会出现这种情况的。
      

  7.   

    您所谓的开启是指服务和Myeclipse中启动tomcat?这两个都是开着的!必须关掉一个,两个开着会出现这种情况的。
    就是这个问题,已经调试好了,多谢!
      

  8.   

    多谢各位的回答,问题已经解决了,是在Myeclipse中开启服务器的话,就不用在Window的服务中专门再开启tomcat的服务了,多谢大家的细心解答!
    还有一点是 虽然口口声声说着代码是没有问题的,但是在程序正常运行的时候还是出了点小问题,是自己敲错了拼写,以后还要多细心才行!再次对大家的帮助表示感谢!