站内搜索: 请输入搜索关键词

当前页面: 开发资料首页JSP 专题Eclipse中使用JSP标记时的问题解决!

Eclipse中使用JSP标记时的问题解决!

摘要: Eclipse中使用JSP标记时的问题解决!
环境:Eclipse3+Lomboz3+EMF2.0.0+GEF2.0.1+TomcatPlugin3

在保存带有<%@ taglib xxxx... 的JSP页面和修改时会出现两种错误:

1.!ENTRY org.eclipse.ui 2 0 十月 17, 2004 15:00:12.187
!MESSAGE Save Failed
!STACK 0
java.lang.NoClassDefFoundError
at com.objectlearn.jasper.LombozOptions.getTldLocationsCache(LombozOptions.java:184)
at org.apache.jasper.JspCompilationContext.getTldLocation(JspCompilationContext.java:523)
at org.apache.jasper.compiler.Parser.parseTaglibDirective(Parser.java:418)
at org.apache.jasper.compiler.Parser.parseDirective(Parser.java:484)
at org.apache.jasper.compiler.Parser.parseElements(Parser.java:1548)
at org.apache.jasper.compiler.Parser.parse(Parser.java:127)
at com.objectlearn.jasper.LombozParserController.parse(LombozParserController.java:387)
at com.objectlearn.jasper.LombozParserController.parse(LombozParserController.java:188)
at com.objectlearn.jasper.LombozParserController.parse(LombozParserController.java:156)
at com.objectlearn.jasper.LombozJspC.parseInternal(LombozJspC.java:179)
at com.objectlearn.jasper.LombozJspC.parse(LombozJspC.java:124)
at com.objectlearn.jdt.j2ee.core.Project.parseJSP(Project.java:754)
at com.objectlearn.jdt.j2ee.editor.JspEditor.parseDocument(JspEditor.java:264)
at com.objectlearn.jdt.j2ee.editor.JspContentOutlinePage$ContentProvider.inputChanged(JspContentOutlinePage.java:160)
at org.eclipse.jface.viewers.ContentViewer.setInput(ContentViewer.java:234)
at org.eclipse.jface.viewers.StructuredViewer.setInput(StructuredViewer.java:1059)
at com.objectlearn.jdt.j2ee.editor.JspContentOutlinePage.setViewerInput(JspContentOutlinePage.java:319)
at com.objectlearn.jdt.j2ee.editor.JspContentOutlinePage.setInput(JspContentOutlinePage.java:293)
at com.objectlearn.jdt.j2ee.editor.JspEditor.doSave(JspEditor.java:178)
at org.eclipse.ui.internal.EditorManager$12.run(EditorManager.java:1160)
at org.eclipse.ui.internal.EditorManager$10.run(EditorManager.java:1015)
at org.eclipse.jface.operation.ModalContext.runInCurrentThread(ModalContext.java:303)
at org.eclipse.jface.operation.ModalContext.run(ModalContext.java:253)
at org.eclipse.jface.window.ApplicationWindow$1.run(ApplicationWindow.java:588)
at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:69)
at org.eclipse.jface.window.ApplicationWindow.run(ApplicationWindow.java:585)
at org.eclipse.ui.internal.WorkbenchWindow.run(WorkbenchWindow.java:1653)
at org.eclipse.ui.internal.EditorManager.runProgressMonitorOperation(EditorManager.java:1021)
at org.eclipse.ui.internal.EditorManager.savePart(EditorManager.java:1165)
at org.eclipse.ui.internal.WorkbenchPage.savePart(WorkbenchPage.java:2539)
at org.eclipse.ui.internal.WorkbenchPage.saveEditor(WorkbenchPage.java:2551)
at org.eclipse.ui.internal.SaveAction.run(SaveAction.java:69)
at org.eclipse.jface.action.Action.runWithEvent(Action.java:881)
at org.eclipse.ui.commands.ActionHandler.execute(ActionHandler.java:141)
at org.eclipse.ui.internal.commands.Command.execute(Command.java:132)
at org.eclipse.ui.internal.keys.WorkbenchKeyboard.executeCommand(WorkbenchKeyboard.java:471)
at org.eclipse.ui.internal.keys.WorkbenchKeyboard.press(WorkbenchKeyboard.java:889)
at org.eclipse.ui.internal.keys.WorkbenchKeyboard.processKeyEvent(WorkbenchKeyboard.java:930)
at org.eclipse.ui.internal.keys.WorkbenchKeyboard.filterKeySequenceBindings(WorkbenchKeyboard.java:548)
at org.eclipse.ui.internal.keys.WorkbenchKeyboard.access$2(WorkbenchKeyboard.java:496)
at org.eclipse.ui.internal.keys.WorkbenchKeyboard$1.handleEvent(WorkbenchKeyboard.java:261)
at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:82)
at org.eclipse.swt.widgets.Display.filterEvent(Display.java:740)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:795)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:820)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:805)
at org.eclipse.swt.widgets.Control.sendKeyEvent(Control.java:1734)
at org.eclipse.swt.widgets.Control.sendKeyEvent(Control.java:1730)
at org.eclipse.swt.widgets.Control.WM_CHAR(Control.java:3067)
at org.eclipse.swt.widgets.Control.windowProc(Control.java:2970)
at org.eclipse.swt.widgets.Display.windowProc(Display.java:3338)
at org.eclipse.swt.internal.win32.OS.DispatchMessageW(Native Method)
at org.eclipse.swt.internal.win32.OS.DispatchMessage(OS.java:1467)
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:2429)
at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:1377)
at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:1348)
at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:254)
at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:141)
at org.eclipse.ui.internal.ide.IDEApplication.run(IDEApplication.java:96)
at org.eclipse.core.internal.runtime.PlatformActivator$1.run(PlatformActivator.java:335)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:273)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:129)
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.core.launcher.Main.basicRun(Main.java:183)
at org.eclipse.core.launcher.Main.run(Main.java:644)
at org.eclipse.core.launcher.Main.main(Main.java:628)

2.!ENTRY org.eclipse.ui 2 0 十月 17, 2004 14:42:58.734
!MESSAGE Save Failed
!STACK 0
org.eclipse.jface.util.Assert$AssertionFailedException: Assertion failed: ContentViewer must have a content provider when input is set.
at org.eclipse.jface.util.Assert.isTrue(Assert.java:168)
at org.eclipse.jface.viewers.ContentViewer.setInput(ContentViewer.java:229)
at org.eclipse.jface.viewers.StructuredViewer.setInput(StructuredViewer.java:1059)
at com.objectlearn.jdt.j2ee.editor.JspContentOutlinePage.setViewerInput(JspContentOutlinePage.java:319)
at com.objectlearn.jdt.j2ee.editor.JspContentOutlinePage.setInput(JspContentOutlinePage.java:293)
at com.objectlearn.jdt.j2ee.editor.JspEditor.doSave(JspEditor.java:178)
at org.eclipse.ui.internal.EditorManager$12.run(EditorManager.java:1160)
at org.eclipse.ui.internal.EditorManager$10.run(EditorManager.java:1015)
at org.eclipse.jface.operation.ModalContext.runInCurrentThread(ModalContext.java:303)
at org.eclipse.jface.operation.ModalContext.run(ModalContext.java:253)
at org.eclipse.jface.window.ApplicationWindow$1.run(ApplicationWindow.java:588)
at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:69)
at org.eclipse.jface.window.ApplicationWindow.run(ApplicationWindow.java:585)
at org.eclipse.ui.internal.WorkbenchWindow.run(WorkbenchWindow.java:1653)
at org.eclipse.ui.internal.EditorManager.runProgressMonitorOperation(EditorManager.java:1021)
at org.eclipse.ui.internal.EditorManager.savePart(EditorManager.java:1165)
at org.eclipse.ui.internal.WorkbenchPage.savePart(WorkbenchPage.java:2539)
at org.eclipse.ui.internal.WorkbenchPage.saveEditor(WorkbenchPage.java:2551)
at org.eclipse.ui.internal.SaveAction.run(SaveAction.java:69)
at org.eclipse.jface.action.Action.runWithEvent(Action.java:881)
at org.eclipse.ui.commands.ActionHandler.execute(ActionHandler.java:141)
at org.eclipse.ui.internal.commands.Command.execute(Command.java:132)
at org.eclipse.ui.internal.keys.WorkbenchKeyboard.executeCommand(WorkbenchKeyboard.java:471)
at org.eclipse.ui.internal.keys.WorkbenchKeyboard.press(WorkbenchKeyboard.java:889)
at org.eclipse.ui.internal.keys.WorkbenchKeyboard.processKeyEvent(WorkbenchKeyboard.java:930)
at org.eclipse.ui.internal.keys.WorkbenchKeyboard.filterKeySequenceBindings(WorkbenchKeyboard.java:548)
at org.eclipse.ui.internal.keys.WorkbenchKeyboard.access$2(WorkbenchKeyboard.java:496)
at org.eclipse.ui.internal.keys.WorkbenchKeyboard$1.handleEvent(WorkbenchKeyboard.java:261)
at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:82)
at org.eclipse.swt.widgets.Display.filterEvent(Display.java:740)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:795)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:820)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:805)
at org.eclipse.swt.widgets.Control.sendKeyEvent(Control.java:1734)
at org.eclipse.swt.widgets.Control.sendKeyEvent(Control.java:1730)
at org.eclipse.swt.widgets.Control.WM_CHAR(Control.java:3067)
at org.eclipse.swt.widgets.Control.windowProc(Control.java:2970)
at org.eclipse.swt.widgets.Display.windowProc(Display.java:3338)
at org.eclipse.swt.internal.win32.OS.DispatchMessageW(Native Method)
at org.eclipse.swt.internal.win32.OS.DispatchMessage(OS.java:1467)
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:2429)
at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:1377)
at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:1348)
at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:254)
at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:141)
at org.eclipse.ui.internal.ide.IDEApplication.run(IDEApplication.java:96)
at org.eclipse.core.internal.runtime.PlatformActivator$1.run(PlatformActivator.java:335)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:273)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:129)
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.core.launcher.Main.basicRun(Main.java:183)
at org.eclipse.core.launcher.Main.run(Main.java:644)
at org.eclipse.core.launcher.Main.main(Main.java:628)

在网上找了一大圈,未果。最后,将原来使用的Lomboz3替换成Lomboz3.0.1问题得到解决.

很奇怪的是这个project是一个tomcat项目而非lomboz项目,这也证明Lomboz会干扰Tomcat项目,寻找答案中。

↑返回目录
前一篇: 图解利用Eclipse3+Sysdeo Tomcat plugin编辑和调试JSP(1)
后一篇: 图解利用Eclipse3+Lomboz3+Tomcat开发JSP --3.一个JSTL实例