Community
Participate
Working Groups
What steps will reproduce the problem? 1. Start Eclipse with WTP 2. Open dynamic web project with JSF 2.0 and Facelets 3. An exception appears in the Error Log. Please let me know if more information is needed. -- Error Details -- Date: Mon Sep 13 10:49:46 CEST 2010 Message: Error initializing facelet registry entry Severity: Error Product: Eclipse 1.3.0.20100617-0521 (org.eclipse.epp.package.jee.product) Plugin: org.eclipse.jst.jsf.facelet.core Session Data: eclipse.buildId=I20100608-0911 java.version=1.6.0_14 java.vendor=Sun Microsystems Inc. BootLoader constants: OS=win32, ARCH=x86, WS=win32, NL=de_DE Framework arguments: -product org.eclipse.epp.package.jee.product Command-line arguments: -os win32 -ws win32 -arch x86 -product org.eclipse.epp.package.jee.product -debug -consoleLog Exception Stack Trace: org.eclipse.emf.ecore.resource.Resource$IOWrappedException: Feature 'span' not found. (file:///C:/DEV/ECLIPSE360.ECA/com/sun/faces/metadata/taglib/facelets_jsf_core.taglib.xml, 453, 52) at org.eclipse.emf.ecore.xmi.impl.XMLLoadImpl.handleErrors(XMLLoadImpl.java:83) at org.eclipse.emf.ecore.xmi.impl.XMLLoadImpl.load(XMLLoadImpl.java:191) at org.eclipse.emf.ecore.xmi.impl.XMLResourceImpl.doLoad(XMLResourceImpl.java:180) at org.eclipse.emf.ecore.resource.impl.ResourceImpl.load(ResourceImpl.java:1494) at org.eclipse.jst.jsf.facelet.core.internal.registry.taglib.TagModelLoader.loadFromInputStream(TagModelLoader.java:100) at org.eclipse.jst.jsf.facelet.core.internal.registry.taglib.JarFileFaceletTaglibLocator.processJar(JarFileFaceletTaglibLocator.java:237) at org.eclipse.jst.jsf.facelet.core.internal.registry.taglib.JarFileFaceletTaglibLocator.start(JarFileFaceletTaglibLocator.java:126) at org.eclipse.jst.jsf.facelet.core.internal.registry.taglib.JarFileFaceletTaglibLocator.start(JarFileFaceletTaglibLocator.java:1) at org.eclipse.jst.jsf.facelet.core.internal.registry.taglib.ProjectTaglibDescriptor$1.run(ProjectTaglibDescriptor.java:82) at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42) at org.eclipse.jst.jsf.facelet.core.internal.registry.taglib.ProjectTaglibDescriptor.initialize(ProjectTaglibDescriptor.java:71) at org.eclipse.jst.jsf.facelet.core.internal.registry.taglib.ProjectTaglibDescriptor.getTagLibraries(ProjectTaglibDescriptor.java:117) at org.eclipse.jst.jsf.facelet.core.internal.registry.FaceletTagRegistry.initialize(FaceletTagRegistry.java:155) at org.eclipse.jst.jsf.facelet.core.internal.registry.FaceletTagRegistry.getAllTagLibraries(FaceletTagRegistry.java:110) at org.eclipse.jst.jsf.facelet.core.internal.registry.FaceletTagRegistry.getTagLibrary(FaceletTagRegistry.java:201) at org.eclipse.jst.jsf.facelet.core.internal.metadata.FaceletNamespaceMetaDataLocator.locateMetaDataModelProviders(FaceletNamespaceMetaDataLocator.java:53) at org.eclipse.jst.jsf.common.metadata.internal.DomainLoadingStrategy.locateMetaDataSourceInstances(DomainLoadingStrategy.java:143) at org.eclipse.jst.jsf.common.metadata.internal.DomainLoadingStrategy.load(DomainLoadingStrategy.java:55) at org.eclipse.jst.jsf.common.metadata.internal.MetaDataModel.load(MetaDataModel.java:93) at org.eclipse.jst.jsf.common.metadata.internal.MetaDataModelManager.loadMetadata(MetaDataModelManager.java:147) at org.eclipse.jst.jsf.common.metadata.internal.MetaDataModelManager.getModel(MetaDataModelManager.java:90) at org.eclipse.jst.jsf.common.metadata.query.TaglibDomainMetaDataQueryHelper.getMDModel(TaglibDomainMetaDataQueryHelper.java:205) at org.eclipse.jst.jsf.common.metadata.query.TaglibDomainMetaDataQueryHelper.getModel(TaglibDomainMetaDataQueryHelper.java:90) at org.eclipse.jst.jsf.common.metadata.query.TaglibDomainMetaDataQueryHelper.getEntities(TaglibDomainMetaDataQueryHelper.java:123) at org.eclipse.jst.jsf.common.metadata.query.TaglibDomainMetaDataQueryHelper.getEntity(TaglibDomainMetaDataQueryHelper.java:101) at org.eclipse.jst.jsf.common.metadata.query.TaglibDomainMetaDataQueryHelper.getTrait(TaglibDomainMetaDataQueryHelper.java:254) at org.eclipse.jst.jsf.designtime.internal.jsp.JSPModelProcessor$SymbolContribAggregator.create(JSPModelProcessor.java:775) at org.eclipse.jst.jsf.designtime.internal.jsp.JSPModelProcessor$SymbolContribAggregator.access$0(JSPModelProcessor.java:768) at org.eclipse.jst.jsf.designtime.internal.jsp.JSPModelProcessor.processSymbolContrib(JSPModelProcessor.java:532) at org.eclipse.jst.jsf.designtime.internal.jsp.JSPModelProcessor.processAttributes(JSPModelProcessor.java:522) at org.eclipse.jst.jsf.designtime.internal.jsp.JSPModelProcessor.recurseChildNodes(JSPModelProcessor.java:504) at org.eclipse.jst.jsf.designtime.internal.jsp.JSPModelProcessor.recurseChildNodes(JSPModelProcessor.java:505) at org.eclipse.jst.jsf.designtime.internal.jsp.JSPModelProcessor.refreshInternal(JSPModelProcessor.java:490) at org.eclipse.jst.jsf.designtime.internal.jsp.JSPModelProcessor.access$3(JSPModelProcessor.java:472) at org.eclipse.jst.jsf.designtime.internal.jsp.JSPModelProcessor$RefreshRunnable.run(JSPModelProcessor.java:445) at org.eclipse.core.internal.resources.Workspace.run(Workspace.java:1975) at org.eclipse.jst.jsf.designtime.internal.jsp.JSPModelProcessor.runOnCurrentThread(JSPModelProcessor.java:409) at org.eclipse.jst.jsf.designtime.internal.jsp.JSPModelProcessor.refresh(JSPModelProcessor.java:361) at org.eclipse.jst.jsf.designtime.internal.symbols.JSPTagVariableSymbolSourceProvider.getSymbols(JSPTagVariableSymbolSourceProvider.java:62) at org.eclipse.jst.jsf.designtime.context.DTJSPExternalContext.doGetMapForScope(DTJSPExternalContext.java:87) at org.eclipse.jst.jsf.designtime.context.AbstractDTExternalContext.getMapForScope(AbstractDTExternalContext.java:46) at org.eclipse.jst.jsf.designtime.context.AbstractDTExternalContext.getRequestMap(AbstractDTExternalContext.java:64) at org.eclipse.jst.jsf.designtime.el.DefaultDTVariableResolver.resolveVariable(DefaultDTVariableResolver.java:67) at org.eclipse.jst.jsf.designtime.internal.symbols.ConfigBasedDTVariableResolver.resolveVariable(ConfigBasedDTVariableResolver.java:108) at org.eclipse.jst.jsf.designtime.resolver.SymbolContextResolver.getVariable(SymbolContextResolver.java:61) at org.eclipse.jst.jsf.core.internal.contentassist.el.SymbolResolveUtil.getSymbolForVariable(SymbolResolveUtil.java:56) at org.eclipse.jst.jsf.core.internal.contentassist.el.ContentAssistParser$PrefixVisitor.getSymbolInfo(ContentAssistParser.java:169) at org.eclipse.jst.jsf.core.internal.contentassist.el.ContentAssistParser.getSymbolInfo(ContentAssistParser.java:82) at org.eclipse.jst.jsf.ui.internal.jspeditor.JSPSourceUtil.determineSymbolInfo(JSPSourceUtil.java:103) at org.eclipse.jst.jsf.ui.internal.jspeditor.JSFELHover.getHoverRegion(JSFELHover.java:65) at org.eclipse.jst.jsf.ui.internal.jspeditor.JSFELHover.getHoverRegion(JSFELHover.java:50) at org.eclipse.wst.sse.ui.internal.taginfo.BestMatchHover.getHoverRegion(BestMatchHover.java:118) at org.eclipse.jface.text.TextViewerHoverManager.computeInformation(TextViewerHoverManager.java:140) at org.eclipse.jface.text.AbstractInformationControlManager.doShowInformation(AbstractInformationControlManager.java:1120) at org.eclipse.jface.text.AbstractHoverInformationControlManager$MouseTracker.mouseHover(AbstractHoverInformationControlManager.java:519) at org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java:201) at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84) at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1053) at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:4066) at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3657) at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:2629) at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2593) at org.eclipse.ui.internal.Workbench.access$4(Workbench.java:2427) at org.eclipse.ui.internal.Workbench$7.run(Workbench.java:670) at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332) at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:663) at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149) at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:115) at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196) at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:110) at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:79) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:369) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:179) 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.eclipse.equinox.launcher.Main.invokeFramework(Main.java:619) at org.eclipse.equinox.launcher.Main.basicRun(Main.java:574) at org.eclipse.equinox.launcher.Main.run(Main.java:1407) Caused by: org.eclipse.emf.ecore.xmi.FeatureNotFoundException: Feature 'span' not found. (file:///C:/DEV/ECLIPSE360.ECA/com/sun/faces/metadata/taglib/facelets_jsf_core.taglib.xml, 453, 52) at org.eclipse.emf.ecore.xmi.impl.XMLHandler.handleFeature(XMLHandler.java:1777) at org.eclipse.emf.ecore.xmi.impl.XMLHandler.processElement(XMLHandler.java:1023) at org.eclipse.emf.ecore.xmi.impl.XMLHandler.startElement(XMLHandler.java:1001) at org.eclipse.emf.ecore.xmi.impl.XMLHandler.startElement(XMLHandler.java:712) at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.startElement(AbstractSAXParser.java:501) at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanStartElement(XMLDocumentFragmentScannerImpl.java:1359) at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:2747) at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:648) at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:510) at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:807) at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:737) at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:107) at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1205) at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:522) at javax.xml.parsers.SAXParser.parse(SAXParser.java:395) at org.eclipse.emf.ecore.xmi.impl.XMLLoadImpl.load(XMLLoadImpl.java:181) ... 78 more
(In reply to comment #0) > What steps will reproduce the problem? > 1. Start Eclipse with WTP > 2. Open dynamic web project with JSF 2.0 and Facelets > 3. An exception appears in the Error Log. Are you adding the JSF 2.0 Facet AND the Facelets facet on the project? If so, please note that the Facelets facet should not be added and is not required to get the JSF 2.0 features. Please re-open the bug if this is not true. I have not been able to recreate this issue.
I received the following stack trace this morning when opening a workspace with 2 projects. One was JSF 2.0 the other JSF 1.2 neither uses facelets as far as I know. I am using Version: 3.7.0 Build id: I20110310-1119 with added plugins that I am working on. org.eclipse.emf.ecore.resource.Resource$IOWrappedException: Feature 'span' not found. (file:///C:/OEPE/tools-eclipse/k2/indigo/dev-eclipse/com/sun/faces/metadata/taglib/facelets_jsf_core.taglib.xml, 453, 52) at org.eclipse.emf.ecore.xmi.impl.XMLLoadImpl.handleErrors(XMLLoadImpl.java:83) at org.eclipse.emf.ecore.xmi.impl.XMLLoadImpl.load(XMLLoadImpl.java:191) at org.eclipse.emf.ecore.xmi.impl.XMLResourceImpl.doLoad(XMLResourceImpl.java:231) at org.eclipse.emf.ecore.resource.impl.ResourceImpl.load(ResourceImpl.java:1497) at org.eclipse.jst.jsf.facelet.core.internal.registry.taglib.TagModelLoader.loadFromInputStream(TagModelLoader.java:100) at org.eclipse.jst.jsf.facelet.core.internal.registry.taglib.JarFileFaceletTaglibLocator.processJar(JarFileFaceletTaglibLocator.java:237) at org.eclipse.jst.jsf.facelet.core.internal.registry.taglib.JarFileFaceletTaglibLocator.access$2(JarFileFaceletTaglibLocator.java:215) at org.eclipse.jst.jsf.facelet.core.internal.registry.taglib.JarFileFaceletTaglibLocator$1.changed(JarFileFaceletTaglibLocator.java:149) at org.eclipse.jst.jsf.common.internal.resource.AbstractJarLocator.fireChangeEvent(AbstractJarLocator.java:58) at org.eclipse.jst.jsf.common.internal.resource.DefaultJarLocator$1.acceptEvent(DefaultJarLocator.java:104) at org.eclipse.jst.jsf.common.internal.resource.DefaultJarLocator$1.acceptEvent(DefaultJarLocator.java:1) at org.eclipse.jst.jsf.common.internal.resource.AbstractLifecycleListener.fireLifecycleEvent(AbstractLifecycleListener.java:101) at org.eclipse.jst.jsf.common.internal.resource.ClasspathEntryLifecycleListener$1.handlePackageFragmentRoot(ClasspathEntryLifecycleListener.java:145) at org.eclipse.jst.jsf.common.internal.resource.ClasspathEntryLifecycleListener$1.visit(ClasspathEntryLifecycleListener.java:96) at org.eclipse.jst.jsf.common.internal.resource.ClasspathEntryLifecycleListener$DeltaAcceptor.accept(ClasspathEntryLifecycleListener.java:205) at org.eclipse.jst.jsf.common.internal.resource.ClasspathEntryLifecycleListener$DeltaAcceptor.accept(ClasspathEntryLifecycleListener.java:209) at org.eclipse.jst.jsf.common.internal.resource.ClasspathEntryLifecycleListener$DeltaAcceptor.accept(ClasspathEntryLifecycleListener.java:209) at org.eclipse.jst.jsf.common.internal.resource.ClasspathEntryLifecycleListener.handlePostChangeEvent(ClasspathEntryLifecycleListener.java:79) at org.eclipse.jst.jsf.common.internal.resource.ClasspathEntryLifecycleListener.elementChanged(ClasspathEntryLifecycleListener.java:72) at org.eclipse.jdt.internal.core.DeltaProcessor$4.run(DeltaProcessor.java:1661) at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42) at org.eclipse.jdt.internal.core.DeltaProcessor.notifyListeners(DeltaProcessor.java:1651) at org.eclipse.jdt.internal.core.DeltaProcessor.firePostChangeDelta(DeltaProcessor.java:1485) at org.eclipse.jdt.internal.core.DeltaProcessor.fire(DeltaProcessor.java:1461) at org.eclipse.jdt.internal.core.DeltaProcessor.resourceChanged(DeltaProcessor.java:2073) at org.eclipse.jdt.internal.core.DeltaProcessingState.resourceChanged(DeltaProcessingState.java:470) at org.eclipse.core.internal.events.NotificationManager$1.run(NotificationManager.java:291) at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42) at org.eclipse.core.internal.events.NotificationManager.notify(NotificationManager.java:285) at org.eclipse.core.internal.events.NotificationManager.broadcastChanges(NotificationManager.java:149) at org.eclipse.core.internal.resources.Workspace.broadcastPostChange(Workspace.java:395) at org.eclipse.core.internal.resources.Workspace.endOperation(Workspace.java:1496) at org.eclipse.core.internal.resources.Workspace.run(Workspace.java:2319) at org.eclipse.jdt.internal.core.JavaModelOperation.runOperation(JavaModelOperation.java:793) at org.eclipse.jdt.core.JavaCore.setClasspathContainer(JavaCore.java:4921) at oracle.eclipse.tools.weblogic.j2eelib.LibraryModuleContainer.refresh(LibraryModuleContainer.java:260) at oracle.eclipse.tools.weblogic.j2eelib.LibraryModuleContainer.refresh(LibraryModuleContainer.java:218) at oracle.eclipse.tools.weblogic.j2eelib.LibraryModuleContainer.handleRegistryChangedEvent(LibraryModuleContainer.java:205) at oracle.eclipse.tools.weblogic.j2eelib.internal.SharedLibraryRegistryListener.registryChanged(SharedLibraryRegistryListener.java:19) at oracle.eclipse.tools.weblogic.j2eelib.LibraryModuleRegistry.notifyListeners(LibraryModuleRegistry.java:320) at oracle.eclipse.tools.weblogic.j2eelib.LibraryModuleRegistry.add(LibraryModuleRegistry.java:260) at oracle.eclipse.tools.weblogic.j2eelib.LibraryModulesSvc.registerLibraryModule(LibraryModulesSvc.java:236) at oracle.eclipse.tools.weblogic.j2eelib.LibraryModulesSvc.registerLibraryModule(LibraryModulesSvc.java:174) at oracle.eclipse.tools.weblogic.j2eelib.LibraryModulesSvc.registerLibraryModules(LibraryModulesSvc.java:103) at oracle.eclipse.tools.weblogic.internal.WlsRuntimeLifecycleListener.handleEvent(WlsRuntimeLifecycleListener.java:86) at oracle.eclipse.tools.weblogic.WlsRuntimeSpy$EventType$1.run(WlsRuntimeSpy.java:84) Caused by: org.eclipse.emf.ecore.xmi.FeatureNotFoundException: Feature 'span' not found. (file:///C:/OEPE/tools-eclipse/k2/indigo/dev-eclipse/com/sun/faces/metadata/taglib/facelets_jsf_core.taglib.xml, 453, 52) at org.eclipse.emf.ecore.xmi.impl.XMLHandler.handleFeature(XMLHandler.java:1777) at org.eclipse.emf.ecore.xmi.impl.XMLHandler.processElement(XMLHandler.java:1023) at org.eclipse.emf.ecore.xmi.impl.XMLHandler.startElement(XMLHandler.java:1001) at org.eclipse.emf.ecore.xmi.impl.XMLHandler.startElement(XMLHandler.java:712) at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.startElement(AbstractSAXParser.java:501) at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanStartElement(XMLDocumentFragmentScannerImpl.java:1363) at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:2755) at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:648) at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:511) at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:808) at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:737) at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:119) at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1205) at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:522) at javax.xml.parsers.SAXParser.parse(SAXParser.java:395) at org.eclipse.emf.ecore.xmi.impl.XMLLoadImpl.load(XMLLoadImpl.java:181) ... 44 more
For review
I hit this again and was able to break on the exception. The error is when loading com/sun/faces/metadata/taglib/facelets_jsf_core.taglib.xml from glassfish.jsf_1.0.0.0_2-0-4.jar The tld has many sections that are improperly escaped. The first is at line 453 colum 52 as suggested by the exception. <attribute> <description> <p class="changed_added_2_0">Evaluates to Collection<String>. This is a space separated list of client ids of components that will participate in the "execute" portion of the Request Processing Lifecycle. If a literal is specified the identifiers must be space delimited. Any of the keywords "@this", "@form", "@all", "@none" may be specified in the identifier list. If not specified, the default value of ---> "@this" is assumed. <span ---> class="changed_modified_2_0_rev_a">For example, <code>@this clientIdOne clientIdTwo</code>.</span></p> </description> ... Notice that the span tag in the description text is not escaped. This tld is full of such instances.
To reproduce, some or all of the following is necessary: - at workspace startup - facelet XHTML file open in Web Page Editor - separate pallete view open - at least one other JSF project open in workspace
This is due to invalid XML in the Glassfish JSF JAR (see http://java.net/jira/browse/GLASSFISH-14509). We log the error and move on to the next JAr entry; there is nothing more we can do.
The Glassfish JAR is not valid (HTML tags in the description element need to be escaped). We log the issue and move on, there is no more we can do.