Done. I removed JUEL (and MyFaces CODI), for now, from classpath as well as web.xml.
FYI, with respect to writeup, how to use Juel with TomEE/OpenWebBeans, I used instructions at the following URL: http://tandraschko.blogspot.de/2012/08/increase-your-jsf-application.html Before and after removing JUEL (and MyFaces CODI), I have been getting the following exception in the server log: Nov 17, 2012 12:35:49 PM org.apache.tomee.catalina.OpenEJBContextConfig processAnnotationsFile SEVERE: OpenEJBContextConfig.processAnnotationsFile: failed. java.util.regex.PatternSyntaxException: Illegal/unsupported escape sequence near index 3 C:\Users\Public\NetBeansProjects\mcms\build\web\WEB-INF\classes ^ Does this mean that I should do as Jose recommended to me earlier...add any/all JARs to tomee /lib folder? I am deploying via NetBeans 7.2's Deploy option against TomEE. Should I deploy the generated WAR file, manually, by dropping WAR file in tomee webapps folder instead? On Sat, Nov 17, 2012 at 12:31 PM, Mark Struberg <strub...@yahoo.de> wrote: > Hi Howard! > > cross-posting to openejb-dev which is the community behind TomEE. > > Juel is an Expression Language library which parses the EL expressions and > invokes the various registered ELResolvers until one of them feels > responsible. > > TomEE (like glassfish) contains plain tomcat which has an own EL library > in jasper-el. > Please remove juel for now. We will add it back later. also comment out > the expression factory context-param in your web.xml. > > I'm not sure if that helps, but via remote I can only to give you tips > until we found the problem. > > > PS: TODO we gonna write up a documentation about how to use JUEL with > TomEE. > > > > ----- Original Message ----- > > From: "Howard W. Smith, Jr." <smithh032...@gmail.com> > > To: MyFaces Discussion <users@myfaces.apache.org> > > Cc: > > Sent: Saturday, November 17, 2012 5:49 PM > > Subject: Re: MyFaces 2.1.9 / Glassfish 3.1.2.2: Migrating to CDI > Managed Beans > > > > Okay, I downloaded TomEE 1.5 plus, and trying to start the app. > > > > I have the following in my web.xml: > > > > <context-param> > > > > <param-name>org.apache.myfaces.EXPRESSION_FACTORY</param-name> > > > > <param-value>de.odysseus.el.ExpressionFactoryImpl</param-value> > > </context-param> > > > > The error(s) below leads me to believe that I may need to remove JUEL > 2.2.5 > > from my web app. Please confirm/advise. > > > > Nov 17, 2012 11:37:24 AM org.apache.catalina.loader.WebappClassLoader > > validateJarFile > > INFO: > > > validateJarFile(C:\Users\Public\NetBeansProjects\mcms\build\web\WEB-INF\lib\juel-2.2.5.jar) > > - jar not loaded. See Servlet Spec 2.3, section 9.7.2. Offending class: > > javax/el/Expression.class > > Nov 17, 2012 11:37:24 AM > org.apache.tomee.catalina.TomEEClassLoaderEnricher > > validateJarFile > > WARNING: jar > > > 'C:\Users\Public\NetBeansProjects\mcms\build\web\WEB-INF\lib\transaction-api-1.1.jar' > > contains offending class: javax.transaction.Transaction. It will be > ignored. > > > > > > Nov 17, 2012 11:37:33 AM org.apache.openejb.cdi.CdiAppContextsService > > lazyStartSessionContext > > WARNING: Could NOT lazily initialize session context because of null > > RequestContext > > Nov 17, 2012 11:37:33 AM > org.apache.myfaces.webapp.AbstractFacesInitializer > > initFaces > > SEVERE: An error occured while initializing MyFaces: No > > javax.el.ExpressionFactory found. Please provide <context-param> in > > web.xml: org.apache.myfaces.EXPRESSION_FACTORY > > javax.faces.FacesException: No javax.el.ExpressionFactory found. Please > > provide <context-param> in web.xml: org.apache.myfaces.EXPRESSION_FACTORY > > at > > > org.apache.myfaces.webapp.FaceletsInitilializer.initContainerIntegration(FaceletsInitilializer.java:42) > > > > > > > > > > On Sat, Nov 17, 2012 at 11:22 AM, Gerhard Petracek < > > gerhard.petra...@gmail.com> wrote: > > > >> hi jose, > >> > >> just fyi: > >> with tomee you don't need weld, because you get openwebbeans > >> out-of-the-box. > >> > >> regards, > >> gerhard > >> > >> http://www.irian.at > >> > >> Your JSF/JavaEE powerhouse - > >> JavaEE Consulting, Development and > >> Courses in English and German > >> > >> Professional Support for Apache MyFaces > >> > >> > >> > >> 2012/11/17 José Luis Cetina <maxtorz...@gmail.com> > >> > >> > Hi let me tell you my experience. > >> > I migrate from managedbeans + mojarra + glassfish to myfaces + WELD + > >> TomEE > >> > and now I'm so happy to did so. > >> > > >> > Now my app use: > >> > -Apache TomEE 1.5 > >> > -Apache MyFaces > >> > -Apache CODI > >> > -Primefaces 3.4.2 > >> > -Primefaces Mobile > >> > -Primefaces Extensions 0.6.1 > >> > -PrettyFaces 3.3.3 > >> > -OpenJPA 2.2 > >> > -EJB > >> > -JdbcRealm for login (my own query for login using any tables in my > > mysql > >> > database). > >> > -WELD > >> > -And all the excellent Apache stuff > >> > Etc... > >> > > >> > And I'm so happy with this change, the this are more easy to > > config, use > >> > more standards, is very very fast, use myfaces and with this you can > >> forget > >> > speed issues. > >> > > >> > This project is a maven project, in netbeans 7.2. > >> > > >> > If you need some example project I can send you a simple example. > >> > > >> > I enhance my jpa entities so easy with maven plugin, run in every IDE > > and > >> > other stuff that are excellents > >> > > >> > Seriously if have the opportunity and time to migrate do it now you > > will > >> be > >> > happy. > >> > > >> > And one tip maybe you don't need CODI at the beginning. CODI can > > help in > >> > many things like type-safe navigations, security, validations, > >> prerenders > >> > events and so on. > >> > > >> > Al most forget to tell you the easy Way for drop your jars in lib > > folder > >> > and with this decrease your war size, I remember in glassfish > > sometimes > >> it > >> > wasn't easy. > >> > > >> > I recommend you to be alert for changes and fixes in TomEE, because > > they > >> > fix issues and update in they trunk svn everyday. > >> > > >> > Please suscribe to TomEE mailing lists. Rommain is a great commiter > > guy > >> who > >> > help immediately with other people. > >> > > >> > I hope this experience can help you. > >> > > >> > SCJA. Jose Luis Cetina > >> > maxtorzito > >> > El 17/11/2012 06:06, "Mark Struberg" > > <strub...@yahoo.de> escribió: > >> > > >> > > Hi! > >> > > > >> > > If you look for docs, here they are: > >> > > > >> > > http://tomee.apache.org/documentation.html > >> > > > >> > > LieGrue, > >> > > strub > >> > > > >> > > > >> > > > >> > > > >> > > > >> > > > >> > > > >> > > >________________________________ > >> > > > From: "Howard W. Smith, Jr." > > <smithh032...@gmail.com> > >> > > >To: Mark Struberg <strub...@yahoo.de> > >> > > >Cc: MyFaces Discussion <users@myfaces.apache.org> > >> > > >Sent: Saturday, November 17, 2012 1:02 PM > >> > > >Subject: Re: MyFaces 2.1.9 / Glassfish 3.1.2.2: Migrating to > > CDI > >> > Managed > >> > > Beans > >> > > > > >> > > > > >> > > >Great, thanks Mark. I did download TomEE, and looking at > > examples > >> > > (referenced on same page as TomEE downloads) and I'm looking > > at this > >> > guide > >> > > below to ensure I am injecting beans correctly. > >> > > > > >> > > > > >> > > > >> http://docs.jboss.org/weld/reference/1.0.0/en-US/html/injection.html > >> > > > > >> > > > > >> > > > > >> > > >On Sat, Nov 17, 2012 at 6:50 AM, Mark Struberg > > <strub...@yahoo.de> > >> > wrote: > >> > > > > >> > > >If you have troubles starting tomee then don't hesitate > > to ping us via > >> > > IRC on irc.freenode.net in channel #openejb (tomee s hosted > > there). > >> > > >> > >> > > >>LieGrue, > >> > > >>strub > >> > > >> > >> > > >> > >> > > >> > >> > > >>>________________________________ > >> > > >> > >> > > >>> From: "Howard W. Smith, Jr." > > <smithh032...@gmail.com> > >> > > >>>To: MyFaces Discussion > > <users@myfaces.apache.org>; Mark Struberg < > >> > > strub...@yahoo.de> > >> > > >>>Sent: Saturday, November 17, 2012 12:06 PM > >> > > >>>Subject: Re: MyFaces 2.1.9 / Glassfish 3.1.2.2: > > Migrating to CDI > >> > > Managed Beans > >> > > >> > >> > > >>> > >> > > >>> > >> > > >>>Mark, > >> > > >>> > >> > > >>> > >> > > >>>Thank you for the response. > >> > > >>> > >> > > >>> > >> > > >>>1. Yes, I did add an 'empty' beans.xml to > > WEB-INF as advised by many > >> > > places on the internet, and the app starts up successfully. I did > > 'not' > >> > > have beans.xml added to META-INF, since all of my code is in the > > web > >> app > >> > (I > >> > > created no JARs of my own). I just added beans.xml to META-INF > > (while > >> > > beans.xhtml already exists in WEB-INF), attempted to start > > glassfish, > >> > and I > >> > > get the following error: > >> > > >>> > >> > > >>> > >> > > >>>INFO: WELD-000900 1.1.8 (Final) > >> > > >>>SEVERE: Exception while invoking class > >> org.glassfish.weld.WeldDeployer > >> > > load method > >> > > >>>java.lang.NullPointerException > >> > > >>>at > >> > > > >> > > >> > > > org.glassfish.weld.BeanDeploymentArchiveImpl.handleEntry(BeanDeploymentArchiveImpl.java:504) > >> > > >>>at > >> > > > >> > > >> > > > org.glassfish.weld.BeanDeploymentArchiveImpl.collectJarInfo(BeanDeploymentArchiveImpl.java:482) > >> > > >>>at > >> > > > >> > > >> > > > org.glassfish.weld.BeanDeploymentArchiveImpl.populate(BeanDeploymentArchiveImpl.java:422) > >> > > >>> > >> > > >>> > >> > > >>>I'm sure the error above means that my web app > > does not need 'empty' > >> > > beans.xml in META-INF (and WEB-INF), so I will remove beans.xml > > from > >> > > META-INF. > >> > > >>> > >> > > >>> > >> > > >>>2. Yes, all CDI beans (accessed via EL) have @Named > > annotation, and > >> I > >> > > am using @Inject along with Qualifiers (for classes that extend > >> ancestor > >> > > classes). Below are notes from what I did/completed yesterday for > > this > >> > > migration: > >> > > >>> > >> > > >>> > >> > > >>>Migrate from JSF Managed Beans to CDI Managed Beans > >> > > >>> > >> > > >>> > >> > > >>>Replace > >> > > >>>javax.faces.bean.ManagedBean > >> > > >>>with > >> > > >>>javax.inject.Named > >> > > >>> > >> > > >>> > >> > > >>>replace > >> > > >>>javax.faces.bean.ManagedProperty > >> > > >>>with > >> > > >>>javax.inject.Inject > >> > > >>> > >> > > >>> > >> > > >>>replace > >> > > >>>javax.faces.bean.SessionScoped > >> > > >>>with > >> > > >>>javax.enterprise.context.SessionScoped > >> > > >>> > >> > > >>> > >> > > >>>replace > >> > > >>>javax.faces.bean.ApplicationScoped > >> > > >>>with > >> > > >>>javax.enterprise.context.ApplicationScoped > >> > > >>> > >> > > >>> > >> > > >>>replace > >> > > >>>@ManagedBean(name = > >> > > >>>with > >> > > >>>@Named( > >> > > >>> > >> > > >>> > >> > > >>>replace > >> > > >>>@ManagedProperty("#{.*}") > >> > > >>>with > >> > > >>>@Inject > >> > > >>> > >> > > >>> > >> > > >>>Migrated applicationScopeBean from JSF > > ApplicationScoped managed > >> bean > >> > > to EJB @Singleton with @Startup (please disregard this, since the > > last > >> > > thing I did with this was to migrate it to CDI applicationscoped > >> instead > >> > of > >> > > EJB singleton and startup) > >> > > >>> > >> > > >>> > >> > > >>>Added CDI Qualifier called @Descendant for all > > descendants of > >> Address, > >> > > EmailAddress, Phone, and PointOfContact controllers > >> > > >>> > >> > > >>> > >> > > >>>Replace > >> > > > >> > >>>> FacesContext.getCurrentInstance().getExternalContext().getSessionMap() > >> > > >>> > >> > > >>> > >> > > >>>with @Inject and private instance variable > >> > > >>> > >> > > >>> > >> > > >>> > >> > > >>> > >> > > >>>3. Honestly, I was hoping not to have to migrate to > > another > >> container > >> > > like Tomcat or TomEE, since I only have little/limited experience > > with > >> > > those containers (as I attempted to migrate to Tomcat 7.0.32, 1 > > or 2 > >> > weeks > >> > > ago, but too much was involved and I couldn't even get the > > web app to > >> > > start). I am open to trying TomEE, hopefully, as a last-and-final > >> > option. :) > >> > > >>> > >> > > >>> > >> > > >>> > >> > > >>>On Sat, Nov 17, 2012 at 5:04 AM, Mark Struberg > > <strub...@yahoo.de> > >> > > wrote: > >> > > >>> > >> > > >>>Hi Howard! > >> > > >>>> > >> > > >>>> > >> > > >>>>JUEL is an Expression Language implementation. It > > has nothing to do > >> > > with CDI apart from CDI providing an ELResolver. JUEL is much > > faster > >> than > >> > > the EL interpreter in glassfish, so this is fine. > >> > > >>>> > >> > > >>>>For your beans getting recognized in EL > > expressions: > >> > > >>>> > >> > > >>>>1.) Do you have a META-INF/beans.xml in all your > > jars/classpaths > >> > which > >> > > contain CDI beans? This files can be empty, they just act as > > marker > >> > files. > >> > > For the webapp you might add one to WEB-INF/beans.xml. > >> > > >>>> > >> > > >>>> > >> > > >>>>2.) Do your CDI beans you access via EL have a > > @Named annotation? > >> > > >>>>This is needed to make them available for > > ELResolvers. > >> > > >>>> > >> > > >>>>3.) glassfish has a few nasty integration issues > > when it comes to > >> > > pluggin in different container parts. Can you try your app on > >> tomee-1.5? > >> > > [1]. It comes with the latest MyFaces out of the box! > >> > > >>>> > >> > > >>>>LieGrue, > >> > > >>>>strub > >> > > >>>> > >> > > >>>> > >> > > >>>>[1] http://tomee.apache.org/downloads.html > >> > > >>>> > >> > > >>>> > >> > > >>>> > >> > > >>>>----- Original Message ----- > >> > > >>>>> From: "Howard W. Smith, Jr." > > <smithh032...@gmail.com> > >> > > >>>>> To: MyFaces Discussion > > <users@myfaces.apache.org> > >> > > >>>>> Cc: > >> > > >>>>> Sent: Saturday, November 17, 2012 10:35 AM > >> > > >>>>> Subject: MyFaces 2.1.9 / Glassfish 3.1.2.2: > > Migrating to CDI > >> > > Managed Beans > >> > > >>>>> > >> > > >>>>> Web application details: > >> > > >>>>> JSF 2.1, MyFaces 2.1.9, PrimeFaces 3.4.1 (or > > 3.5-SNAPSHOT), > >> > Glassfish > >> > > >>>>> 3.1.2.2 (build 5), JUEL 2.2.5 > >> > > >>>>> > >> > > >>>>> From server log: > >> > > >>>>> INFO: WELD-000900 1.1.8 (Final) > >> > > >>>>> > >> > > >>>>> Yesterday, I started migrating from JSF > > Managed Beans to CDI > >> > Managed > >> > > Beans. > >> > > >>>>> I referred to Chapter 28 (CDI) of > > Oracle's Java EE 6 > >> > > >>>>> > > Tutorial<http://docs.oracle.com/javaee/6/tutorial/doc/giwhb.html > >> > >as > >> > > >>>> > >> > > >>>>> well as many other pages I found on the > > internet. > >> > > >>>>> > >> > > >>>>> Finally, the app starts, as I think I > > completed most steps > >> > necessary > >> > > to > >> > > >>>>> migrate to CDI managed beans, but now it > > seems as though my beans > >> > > are not > >> > > >>>>> accessible from facelets. As per > >> > > >>>>> > > MYFACES-3104<https://issues.apache.org/jira/browse/MYFACES-3104 > >> >, > >> > > >>>>> I am already using *JUEL 2.2.5* (that is > > working well with JSF > >> > > Managed > >> > > >>>>> Beans in production), so I already had * > >> > > >>>>> org.apache.myfaces.EXPRESSION_FACTORY* set > > in web.xml, as well as > >> > > >>>>> *org.apache.myfaces.SUPPORT_JSP_AND_FACES_EL > >> > > >>>>> *to *false*, and the last thing I did was > > add the following to > >> > > web.xml: > >> > > >>>> > >> > > >>>>> > >> > > >>>>> <context-param> > >> > > >>>>> > >> > > >>>>> > >> > > > <param-name>org.apache.myfaces.annotation.SCAN_PACKAGES</param-name> > >> > > >>>>> > > <param-value>pf,jsf.users,jsf.orders</param-value> > >> > > >>>>> </context-param> > >> > > >>>>> > >> > > >>>>> Which are just a 'few' of the > > packages that contained beans > >> > > referenced > >> > > >>>>> by > >> > > >>>>> the initial page of the app (login.xhtml). > >> > > >>>>> > >> > > >>>>> My questions: > >> > > >>>>> > >> > > >>>>> 1. Can someone please advise me of > > blog/tutorials that list > >> > > any/all > >> > > >>>> > >> > > >>>>> steps necessary to migrate MyFaces 2.1.9 > > / Glassfish 3.1.2.2 > >> web > >> > > app from > >> > > >>>>> JSF Managed Beans to CDI? > >> > > >>>>> 2. I am not using MyFaces CODI or > > OpenWebBeans (yet). I've > >> seen > >> > > >>>> > >> > > >>>>> OpenWebBeans recommended with MyFaces > > Core (2.1.7+) for > >> > > performance > >> > > >>>>> reasons, and in PrimeFaces forum, > > I've seen MyFaces Core and > >> > > MyFaces CODI > >> > > >>>>> used together by some people. If I should > > use MyFaces CODI or > >> > > OpenWebBeans, > >> > > >>>>> please reply with > > blog/tutorial/instruction URLs. > >> > > >>>>> > >> > > >>>>> My next steps will probably be any/all of > > the following: > >> > > >>>>> > >> > > >>>>> 1. Remove JUEL 2.2.5 from the project, > > and see if I can > >> > > successfully get > >> > > >>>> > >> > > >>>>> my pages to render via CDI > >> > > >>>>> 2. Add MyFaces CODI (need to search for a > > good set of > >> > > instructions on > >> > > >>>>> how to do so) > >> > > >>>>> 3. Add OpenWebBeans (same as above, need > > good set of > >> > instructions) > >> > > >>>> > >> > > >>>>> > >> > > >>>>> Please confirm/advise. If you need any more > > details from me (for > >> > > example, > >> > > >>>>> for me to reply with my web.xml), then > > please let me know. > >> > > >>>>> > >> > > >>>>> Thanks, > >> > > >>>>> Howard > >> > > >>>>> > >> > > >>>> > >> > > >>> > >> > > >>> > >> > > >>> > >> > > >> > >> > > > > >> > > > > >> > > > > >> > > > >> > > >> > > >