Hi, OK, this implies that some .taglib.xml file wants to create a tag with a handler-class of com.sun.facelets.tag.TagHandler or a subclass of it.
Try to search for handler-class definitions in your .taglib.xml files and replace any references to com.sun.facelets to javax.faces.view.facelets. Regards, Jakob 2010/7/26 Cédric Durmont <cdurm...@gmail.com> > Here it is : > (note : ficho.util.SetCharacterEncodingFilter is part of my app. It > does what the name implies !) > > javax.faces.FacesException: java.lang.NoClassDefFoundError: > com/sun/facelets/tag/TagHandler > at > org.apache.myfaces.shared_impl.context.ExceptionHandlerImpl.wrap(ExceptionHandlerImpl.java:241) > at > org.apache.myfaces.shared_impl.context.ExceptionHandlerImpl.handle(ExceptionHandlerImpl.java:156) > at > org.apache.myfaces.lifecycle.LifecycleImpl.executePhase(LifecycleImpl.java:191) > at > org.apache.myfaces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:118) > at javax.faces.webapp.FacesServlet.service(FacesServlet.java:189) > at > org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:487) > at > org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1093) > at > org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl._doFilterImpl(TrinidadFilterImpl.java:247) > at > org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl.doFilter(TrinidadFilterImpl.java:157) > at > org.apache.myfaces.trinidad.webapp.TrinidadFilter.doFilter(TrinidadFilter.java:92) > at > org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084) > at > ficho.util.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:182) > at > org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084) > at > org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:360) > at > org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216) > at > org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:181) > at > org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:726) > at > org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:405) > at > org.mortbay.jetty.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:206) > at > org.mortbay.jetty.handler.HandlerCollection.handle(HandlerCollection.java:114) > at > org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152) > at org.mortbay.jetty.Server.handle(Server.java:324) > at > org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:505) > at > org.mortbay.jetty.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:828) > at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:514) > at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:211) > at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:380) > at > org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:395) > at > org.mortbay.thread.BoundedThreadPool$PoolThread.run(BoundedThreadPool.java:450) > Caused by: java.lang.NoClassDefFoundError: com/sun/facelets/tag/TagHandler > at java.lang.ClassLoader.defineClass1(Native Method) > at java.lang.ClassLoader.defineClassCond(ClassLoader.java:632) > at java.lang.ClassLoader.defineClass(ClassLoader.java:616) > at > java.security.SecureClassLoader.defineClass(SecureClassLoader.java:141) > at java.net.URLClassLoader.defineClass(URLClassLoader.java:283) > at java.net.URLClassLoader.access$000(URLClassLoader.java:58) > at java.net.URLClassLoader$1.run(URLClassLoader.java:197) > at java.security.AccessController.doPrivileged(Native Method) > at java.net.URLClassLoader.findClass(URLClassLoader.java:190) > at > org.mortbay.jetty.webapp.WebAppClassLoader.loadClass(WebAppClassLoader.java:366) > at > org.mortbay.jetty.webapp.WebAppClassLoader.loadClass(WebAppClassLoader.java:337) > at java.lang.Class.forName0(Native Method) > at java.lang.Class.forName(Class.java:247) > at > org.apache.myfaces.shared_impl.util.ClassUtils.classForName(ClassUtils.java:178) > at > org.apache.myfaces.view.facelets.util.ReflectionUtil.forName(ReflectionUtil.java:67) > at > org.apache.myfaces.view.facelets.compiler.TagLibraryConfig$LibraryHandler.createClass(TagLibraryConfig.java:474) > at > org.apache.myfaces.view.facelets.compiler.TagLibraryConfig$LibraryHandler.endElement(TagLibraryConfig.java:372) > at > com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.endElement(AbstractSAXParser.java:601) > at > com.sun.org.apache.xerces.internal.impl.dtd.XMLNSDTDValidator.endNamespaceScope(XMLNSDTDValidator.java:263) > at > com.sun.org.apache.xerces.internal.impl.dtd.XMLDTDValidator.handleEndElement(XMLDTDValidator.java:2028) > at > com.sun.org.apache.xerces.internal.impl.dtd.XMLDTDValidator.endElement(XMLDTDValidator.java:901) > at > com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanEndElement(XMLDocumentFragmentScannerImpl.java:1782) > at > com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:2938) > at > com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:648) > at > com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.next(XMLNSDocumentScannerImpl.java:140) > 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 javax.xml.parsers.SAXParser.parse(SAXParser.java:198) > at > org.apache.myfaces.view.facelets.compiler.TagLibraryConfig.create(TagLibraryConfig.java:631) > at > org.apache.myfaces.view.facelets.compiler.TagLibraryConfig.loadImplicit(TagLibraryConfig.java:662) > at > org.apache.myfaces.view.facelets.compiler.Compiler.initialize(Compiler.java:93) > at > org.apache.myfaces.view.facelets.compiler.Compiler.compileViewMetadata(Compiler.java:125) > at > org.apache.myfaces.view.facelets.impl.DefaultFaceletFactory._createViewMetadataFacelet(DefaultFaceletFactory.java:311) > at > org.apache.myfaces.view.facelets.impl.DefaultFaceletFactory.getViewMetadataFacelet(DefaultFaceletFactory.java:394) > at > org.apache.myfaces.view.facelets.impl.DefaultFaceletFactory.getViewMetadataFacelet(DefaultFaceletFactory.java:376) > at > org.apache.myfaces.view.facelets.FaceletViewDeclarationLanguage._getViewMetadataFacelet(FaceletViewDeclarationLanguage.java:1898) > at > org.apache.myfaces.view.facelets.FaceletViewDeclarationLanguage.access$000(FaceletViewDeclarationLanguage.java:127) > at > org.apache.myfaces.view.facelets.FaceletViewDeclarationLanguage$FaceletViewMetadata.createMetadataView(FaceletViewDeclarationLanguage.java:2132) > at > org.apache.myfaces.lifecycle.RestoreViewExecutor.execute(RestoreViewExecutor.java:161) > at > org.apache.myfaces.lifecycle.LifecycleImpl.executePhase(LifecycleImpl.java:171) > ... 26 more > Caused by: java.lang.ClassNotFoundException: > com.sun.facelets.tag.TagHandler > at java.net.URLClassLoader$1.run(URLClassLoader.java:202) > at java.security.AccessController.doPrivileged(Native Method) > at java.net.URLClassLoader.findClass(URLClassLoader.java:190) > at java.lang.ClassLoader.loadClass(ClassLoader.java:307) > at java.lang.ClassLoader.loadClass(ClassLoader.java:248) > at > org.codehaus.plexus.classworlds.realm.ClassRealm.loadRealmClass(ClassRealm.java:174) > at > org.codehaus.plexus.classworlds.strategy.DefaultStrategy.loadClass(DefaultStrategy.java:67) > at > org.codehaus.plexus.classworlds.strategy.ForeignStrategy.loadClass(ForeignStrategy.java:39) > at > org.codehaus.plexus.classworlds.realm.ClassRealm.loadClass(ClassRealm.java:201) > at > org.codehaus.plexus.classworlds.strategy.DefaultStrategy.loadClass(DefaultStrategy.java:73) > at > org.codehaus.plexus.classworlds.realm.ClassRealm.loadClass(ClassRealm.java:201) > at > org.mortbay.jetty.webapp.WebAppClassLoader.loadClass(WebAppClassLoader.java:375) > at > org.mortbay.jetty.webapp.WebAppClassLoader.loadClass(WebAppClassLoader.java:337) > ... 71 more > > 2010/7/26 Jakob Korherr <jakob.korh...@gmail.com>: > > Nope, this did not change. > > > > Can you provide the whole stacktrace for the Exception you're getting? > > > > java.lang.NoClassDefFoundError: com/sun/facelets/tag/TagHandler > > Caused by: > > java.lang.ClassNotFoundException - com.sun.facelets.tag.TagHandler > > > > Regards, > > Jakob > > > > > > 2010/7/26 Cédric Durmont <cdurm...@gmail.com> > > > >> Nope, no imports of com.sun.facelets in the code. > >> Does the namespace in *.xhtml files has to change ? > >> > >> > >> Regards, > >> Cedric > >> > >> 2010/7/26 Jakob Korherr <jakob.korh...@gmail.com>: > >> > Hi Cédric, > >> > > >> > Does your app internally use some facelets-1 stuff? These are the > classes > >> in > >> > package com.sun.facelets. > >> > > >> > If so, you'll have to change the imports to javax.faces.view.facelets. > >> > > >> > Regards, > >> > Jakob > >> > > >> > 2010/7/26 Cédric Durmont <cdurm...@gmail.com> > >> > > >> >> Hi Jakob, > >> >> > >> >> When I remove facelets from pom.xml and the view handler in web.xml > as > >> >> you said, I have this error : > >> >> > >> >> java.lang.NoClassDefFoundError: com/sun/facelets/tag/TagHandler > >> >> Caused by: > >> >> java.lang.ClassNotFoundException - com.sun.facelets.tag.TagHandler > >> >> > >> >> I have compared my pom.xml to the ones Matthias gave, but found > >> >> nothing relevant. I disabled Tomahawk 1.1.9 though, as it's not > >> >> guaranteed to be compatible with MyFaces 2... Still does not work... > >> >> trinidad-demo does work on my machine, and I tried to get my pom.xml > >> >> and web.xml as close as possible from the ones found in the component > >> >> showcase. But trinidad-demo uses jsp, not facelets... > >> >> > >> >> Regards, > >> >> Cedric > >> >> > >> >> > >> >> 2010/7/24 Jakob Korherr <jakob.korh...@gmail.com>: > >> >> > Hi, > >> >> > > >> >> > Actually I don't know what the problem with trinidad is, but from > >> looking > >> >> at > >> >> > your pom, you can remove the faceletes-dependency, because facelets > >> are > >> >> > integrated in MyFaces core 2.0.1. > >> >> > > >> >> > So just remove: > >> >> > > >> >> > <dependency> > >> >> > <groupId>com.sun.facelets</groupId> > >> >> > <artifactId>jsf-facelets</artifactId> > >> >> > <version>1.1.15</version> > >> >> > </dependency> > >> >> > > >> >> > and also remove the facelets view-handler entry in your > >> faces-config.xml. > >> >> > > >> >> > Maybe this will also solve your problem with trinidad. > >> >> > > >> >> > Regards, > >> >> > Jakob > >> >> > > >> >> > 2010/7/23 Matthias Wessendorf <mat...@apache.org> > >> >> > > >> >> >> do you mind to "compare" yours against our demo's pom ? > >> >> >> > >> >> >> > >> >> >> base file: > >> >> >> > >> >> >> > >> >> > >> > https://svn.apache.org/repos/asf/myfaces/trinidad/trunk/trinidad-examples/pom.xml > >> >> >> > >> >> >> for the actual problem: > >> >> >> > >> >> >> > >> >> > >> > https://svn.apache.org/repos/asf/myfaces/trinidad/trunk/trinidad-examples/trinidad-demo/pom.xml > >> >> >> > >> >> >> Thx! > >> >> >> M > >> >> >> > >> >> >> On Fri, Jul 23, 2010 at 4:20 PM, Cédric Durmont < > cdurm...@gmail.com> > >> >> >> wrote: > >> >> >> > Thanks for looking into it, Matthias ! > >> >> >> > Sadly, it doesn't work with MyFaces 2.0.1. > >> >> >> > I guess something must be wrong in my pom.xml. Here is its > >> dependency > >> >> >> > section (I removed non relevant entries) : > >> >> >> > > >> >> >> > <!-- Project dependencies --> > >> >> >> > <dependencies> > >> >> >> > <dependency> > >> >> >> > <groupId>org.apache.myfaces.core</groupId> > >> >> >> > <artifactId>myfaces-api</artifactId> > >> >> >> > <version>${myfaces.version}</version> > >> >> >> > <scope>compile</scope> > >> >> >> > </dependency> > >> >> >> > <dependency> > >> >> >> > <groupId>org.apache.myfaces.core</groupId> > >> >> >> > <artifactId>myfaces-impl</artifactId> > >> >> >> > <version>${myfaces.version}</version> > >> >> >> > <scope>compile</scope> > >> >> >> > </dependency> > >> >> >> > <!-- Apache Trinidad --> > >> >> >> > <dependency> > >> >> >> > <groupId>org.apache.myfaces.trinidad</groupId> > >> >> >> > <artifactId>trinidad-api</artifactId> > >> >> >> > <version>${trinidad.version}</version> > >> >> >> > <scope>compile</scope> > >> >> >> > </dependency> > >> >> >> > <dependency> > >> >> >> > <groupId>org.apache.myfaces.trinidad</groupId> > >> >> >> > <artifactId>trinidad-impl</artifactId> > >> >> >> > <version>${trinidad.version}</version> > >> >> >> > <scope>compile</scope> > >> >> >> > </dependency> > >> >> >> > > >> >> >> > <dependency> > >> >> >> > <groupId>javax.servlet</groupId> > >> >> >> > <artifactId>jstl</artifactId> > >> >> >> > <version>1.2</version> > >> >> >> > <scope>runtime</scope> > >> >> >> > </dependency> > >> >> >> > <dependency> > >> >> >> > <groupId>tomcat</groupId> > >> >> >> > <artifactId>servlet-api</artifactId> > >> >> >> > <version>5.5.23</version> > >> >> >> > <scope>provided</scope> > >> >> >> > </dependency> > >> >> >> > <dependency> > >> >> >> > <groupId>taglibs</groupId> > >> >> >> > <artifactId>standard</artifactId> > >> >> >> > <version>1.1.2</version> > >> >> >> > </dependency> > >> >> >> > <dependency> > >> >> >> > <groupId>org.apache.myfaces.tomahawk</groupId> > >> >> >> > <artifactId>tomahawk</artifactId> > >> >> >> > <version>1.1.9</version> > >> >> >> > </dependency> > >> >> >> > <dependency> > >> >> >> > <groupId>com.sun.facelets</groupId> > >> >> >> > <artifactId>jsf-facelets</artifactId> > >> >> >> > <version>1.1.15</version> > >> >> >> > </dependency> > >> >> >> > <dependency> > >> >> >> > <groupId>com.oracle</groupId> > >> >> >> > <artifactId>ojdbc12</artifactId> > >> >> >> > <version>9.0</version> > >> >> >> > </dependency> > >> >> >> > <dependency> > >> >> >> > <groupId>rome</groupId> > >> >> >> > <artifactId>rome</artifactId> > >> >> >> > <version>0.9</version> > >> >> >> > </dependency> > >> >> >> > <dependency> > >> >> >> > <groupId>javax.el</groupId> > >> >> >> > <artifactId>el-api</artifactId> > >> >> >> > <version>1.0</version> > >> >> >> > <scope>provided</scope> > >> >> >> > </dependency> > >> >> >> > <dependency> > >> >> >> > <groupId>org.eclipse.persistence</groupId> > >> >> >> > <artifactId>eclipselink</artifactId> > >> >> >> > <version>2.0.1</version> > >> >> >> > <scope>compile</scope> > >> >> >> > </dependency> > >> >> >> > <dependency> > >> >> >> > <groupId>org.eclipse.persistence</groupId> > >> >> >> > <artifactId>javax.persistence</artifactId> > >> >> >> > <version>2.0.0</version> > >> >> >> > <scope>compile</scope> > >> >> >> > </dependency> > >> >> >> > </dependencies> > >> >> >> > > >> >> >> > <properties> > >> >> >> > <trinidad.version>2.0.0.3-SNAPSHOT</trinidad.version> > >> >> >> > <myfaces.version>2.0.1</myfaces.version> > >> >> >> > </properties> > >> >> >> > > >> >> >> > 2010/7/23 Matthias Wessendorf <mat...@apache.org>: > >> >> >> >> Hi Cédric, > >> >> >> >> > >> >> >> >> I just checked and our demo works fine with MyFaces 2.0.1 > >> >> >> >> > >> >> >> >> cd $TINIDAD_HOME/trinidad-examples/trinidad-demo > >> >> >> >> mvn clean jetty:run -PjettyConfig > >> >> >> >> > >> >> >> >> -Matthias > >> >> >> >> > >> >> >> >> But yeah, a small migration document would be great :) > >> >> >> >> > >> >> >> >> > >> >> >> >> > >> >> >> >> On Fri, Jul 23, 2010 at 3:19 PM, Matthias Wessendorf < > >> >> mat...@apache.org> > >> >> >> wrote: > >> >> >> >>> Hey Cédric, > >> >> >> >>> > >> >> >> >>> thanks for trying Trinidad2 and MyFaces2. > >> >> >> >>> > >> >> >> >>> Let me double check on my side. > >> >> >> >>> > >> >> >> >>> BTW. I hope to get to a 2.0.0-beta release, of Trinidad, next > >> week > >> >> >> >>> > >> >> >> >>> -Matthias > >> >> >> >>> > >> >> >> >>> On Fri, Jul 23, 2010 at 3:15 PM, Cédric Durmont < > >> cdurm...@gmail.com > >> >> > > >> >> >> wrote: > >> >> >> >>>> Hello, > >> >> >> >>>> > >> >> >> >>>> I'm trying to switch my app from myfaces 1.2.8 / Trinidad > 1.2.13 > >> to > >> >> >> >>>> myfaces 2.0.0 / Trinidad 2.0.0.3-SNAPSHOT. I was already > using > >> >> >> >>>> facelets (1.1.15) > >> >> >> >>>> I haven't found any relevant documentation on that subject > >> online, > >> >> so > >> >> >> >>>> I basically changed version numbers in my pom.xml > >> >> >> >>>> > >> >> >> >>>> Switching from myfaces 1.2.8 to myfaces 2.0.0 seems to work > well > >> >> (my > >> >> >> >>>> app still runs fine) > >> >> >> >>>> But if I try to switch to trinidad 2 (alpha, alpha2 or > >> snapshot), I > >> >> >> >>>> have this message for every actionListener in my code : > >> >> >> >>>> > >> >> >> >>>> javax.el.ELException: /somePage.xhtml: The class > >> >> 'com.acme.someBean' > >> >> >> >>>> does not have the property 'doSomething' > >> >> >> >>>> > >> >> >> >>>> Of course, the property exists (the application runs fine > with > >> >> >> >>>> Trinidad 1.2.x). Did I miss something ? Parameters in web.xml > / > >> >> >> >>>> faces-config.xml ? version of facelets / el-api ? > >> >> >> >>>> > >> >> >> >>>> Any hint is welcome, I'm stuck ! > >> >> >> >>>> > >> >> >> >>>> Regards, > >> >> >> >>>> Cedric Durmont > >> >> >> >>>> > >> >> >> >>> > >> >> >> >>> > >> >> >> >>> > >> >> >> >>> -- > >> >> >> >>> Matthias Wessendorf > >> >> >> >>> > >> >> >> >>> blog: http://matthiaswessendorf.wordpress.com/ > >> >> >> >>> sessions: http://www.slideshare.net/mwessendorf > >> >> >> >>> twitter: http://twitter.com/mwessendorf > >> >> >> >>> > >> >> >> >> > >> >> >> >> > >> >> >> >> > >> >> >> >> -- > >> >> >> >> Matthias Wessendorf > >> >> >> >> > >> >> >> >> blog: http://matthiaswessendorf.wordpress.com/ > >> >> >> >> sessions: http://www.slideshare.net/mwessendorf > >> >> >> >> twitter: http://twitter.com/mwessendorf > >> >> >> >> > >> >> >> > > >> >> >> > >> >> >> > >> >> >> > >> >> >> -- > >> >> >> Matthias Wessendorf > >> >> >> > >> >> >> blog: http://matthiaswessendorf.wordpress.com/ > >> >> >> sessions: http://www.slideshare.net/mwessendorf > >> >> >> twitter: http://twitter.com/mwessendorf > >> >> >> > >> >> > > >> >> > > >> >> > > >> >> > -- > >> >> > Jakob Korherr > >> >> > > >> >> > blog: http://www.jakobk.com > >> >> > twitter: http://twitter.com/jakobkorherr > >> >> > work: http://www.irian.at > >> >> > > >> >> > >> > > >> > > >> > > >> > -- > >> > Jakob Korherr > >> > > >> > blog: http://www.jakobk.com > >> > twitter: http://twitter.com/jakobkorherr > >> > work: http://www.irian.at > >> > > >> > > > > > > > > -- > > Jakob Korherr > > > > blog: http://www.jakobk.com > > twitter: http://twitter.com/jakobkorherr > > work: http://www.irian.at > > > -- Jakob Korherr blog: http://www.jakobk.com twitter: http://twitter.com/jakobkorherr work: http://www.irian.at