2016-09-29 9:15 GMT+02:00 Xavier Dury <[email protected]>: > Indeed, @Named != named... got it! :-) > > But I still fail to understand _where_ the workaround for 'javax...' is > actually implemented: > > nowhere cause it introduces other issues in EL so the workaround is only a workaround not a nasty way to get a feature.
> 1) if it is implemented in OWB then why is > 'elContext.addELResolver(beanManager.getELResolver());' > not working? I would expect the returned el resolver to contain the > workaround. > 2) if it is implemented elsewhere (TomEE for example), I don't understand > why as this requirement comes from the CDI spec and should be implemented > in OWB... so back to (1) > > I am stuck in an infinite loop ;-) > > > > > From: Romain Manni-Bucau <[email protected]> > Sent: Thursday, September 29, 2016 8:54 AM > To: [email protected] > Subject: Re: OpenEJB and EL > > 2016-09-29 8:32 GMT+02:00 Xavier Dury <[email protected]>: > > > @Mark > > > > thanks, it works when adding any other qualifier! > > > > btw, do you think it would hurt to qualify the built-in conversation bean > > with @Named("javax.enterprise.context.conversation") in OWB? That way I > > could inject the built-in with @Inject @Named("javax.enteprise. > context.conversation") > > and expose it via @Produces @Named("conversation") without resorting to > > some extra qualifier. > > > > @Romain > > > > I was wondering where exactly is your hacky el resolver implemented? If > > the "javax.enterprise.context.conversation" name is a requirement coming > > from the CDI spec, then I would suppose it is implemented in OWB (in the > > resolver you get from the BeanManager) but as my tests with OEJB+OWB > fail, > > I suppose it is not there (or not enabled in some way). On the contrary, > if > > the requirement comes from the java EE spec, then I suppose it is > > implemented in TomEE and that would explain why my tests fail. > > > > > The name is built it in openwebbeans: > https://github.com/apache/openwebbeans/blob/trunk/ > webbeans-impl/src/main/java/org/apache/webbeans/component/ > ConversationBean.java#L54 > > The spec states: > > "The container provides a built-in bean with bean type Conversation, scope > @RequestScoped, and qualifier@Default, named > javax.enterprise.context.conversation." > > So no qualifier @Named but a Bean<?> name (no comment ;)) > > > > Xavier > > > > > > > > > > From: Mark Struberg <[email protected]> > > Sent: Thursday, September 29, 2016 12:12 AM > > To: [email protected] > > Subject: Re: OpenEJB and EL > > > > @Default is always assumed when you don't add a specific Qualifier other > > than @Named and @Any. > > > > Xavier, can you please add any random qualifier? E.g. @Destroyed. > > > > This will stop CDI from complaining but EL should work. > > > > LieGrue, > > strub > > > > > > > > > > > > > On Thursday, 29 September 2016, 0:04, Xavier Dury <[email protected]> > > wrote: > > > > https://gist.github.com/kalgon/fbf529dc9c9764c115433cfb2f0f82bf > > > > OpenEjbElTest.java > gist.github.com > property= > > > > > > > > OpenEjbElTest.java > > gist.github.com > > property= > > > > > > > > > > > > From: Xavier Dury <[email protected]> > > > Sent: Wednesday, September 28, 2016 11:54 PM > > > To: [email protected] > > > Subject: Re: OpenEJB and EL > > > > > > No, I didn't add the @Default to the @Produces method. > > > > > > I verified: > > > > > > @RequestScoped > > > public class ConversationWrapper { > > > > > > private @Inject Conversation conv; > > > > > > @Produces > > > @Dependent > > > @Named("conv") > > > public Conversation getConv() { > > > return conv; > > > } > > > } > > > > > > result: > > > > > > Caused by: javax.enterprise.inject.AmbiguousResolutionException: There > > is more > > > than one Bean with type javax.enterprise.context. > ConversationQualifiers: > > > [@javax.enterprise.inject.Default()] > > > for injection into Field Injection Point, field name : conv, Bean > Owner > > : > > > [ConversationWrapper, WebBeansType:MANAGED, Name:null, API > > > Types:[java.lang.Object,eg.ConversationWrapper], > > > Qualifiers:[javax.enterprise.inject.Default,javax. > > enterprise.inject.Any]] > > > found beans: > > > ConversationImpl, WebBeansType:CONVERSATION, > > > Name:javax.enterprise.context.conversation, API > > > Types:[java.lang.Object,org.apache.webbeans.conversation. > > ConversationImpl,javax.enterprise.context.Conversation], > > > Qualifiers:[javax.enterprise.inject.Default,javax. > enterprise.inject.Any] > > from > > > jar:file:/C:/Users/xavier/.m2/repository/org/apache/ > > openwebbeans/openwebbeans-impl/1.6.3/openwebbeans-impl- > > 1.6.3.jar!/org/apache/webbeans/conversation/ConversationImpl.class > > > Conversation, WebBeansType:PRODUCERMETHOD, Name:conv, API > > > Types:[java.lang.Object,javax.enterprise.context.Conversation], > > > Qualifiers:[javax.enterprise.inject.Default,javax. > > enterprise.inject.Any,javax.inject.Named] > > > from > > > file:/D:/development/workspaces/openejb-el/target/test-classes/eg/ > > ConversationWrapper.class > > > > > > > > > > > > > > > From: Romain Manni-Bucau <[email protected]> > > > Sent: Wednesday, September 28, 2016 11:47 PM > > > To: [email protected] > > > Subject: Re: OpenEJB and EL > > > > > > Conversation, WebBeansType:PRODUCERMETHOD, Name:conv, API > > > Types:[java.lang.Object,javax.enterprise.context.Conversation], > > > Qualifiers:[javax.enterprise.inject.Default,javax. > > > enterprise.inject.Any,javax.inject.Named] from file:/D:/development/ > > > workspaces/openejb-el/target/test-classes/eg/ConversationWrapper.class > > > > > > Why is there @Default there? producer should only have the @Named you > set > > > > > > > > > Romain Manni-Bucau > > > @rmannibucau <https://twitter.com/rmannibucau> | Blog > > > > Romain Manni-Bucau (@rmannibucau) | Twitter > twitter.com > The latest Tweets from Romain Manni-Bucau (@rmannibucau). ASF / Java(EE) / > Angular. LinkedIn: https://t.co/dX7XMGjbBi. JavaEE Factory: > https://t.co/0VnvWwbedt . Blog ... > > > > > > > > Romain Manni-Bucau (@rmannibucau) | Twitter > > twitter.com > > The latest Tweets from Romain Manni-Bucau (@rmannibucau). ASF / Java(EE) > / > > Angular. LinkedIn: https://t.co/dX7XMGjbBi. JavaEE Factory: > > https://t.co/0VnvWwbedt . Blog ... > > > > > > > > > > > > Romain Manni-Bucau (@rmannibucau) | Twitter > > > twitter.com > > > The latest Tweets from Romain Manni-Bucau (@rmannibucau). ASF / > Java(EE) > > / > > > Angular. LinkedIn: https://t.co/dX7XMGjbBi. JavaEE Factory: > > > https://t.co/0VnvWwbedt . Blog ... > > > > > > > > > > > > Romain Manni-Bucau (@rmannibucau) | Twitter > > > twitter.com > > > The latest Tweets from Romain Manni-Bucau (@rmannibucau). ASF / > Java(EE) > > / > > > Angular. LinkedIn: https://t.co/dX7XMGjbBi. JavaEE Factory: > > > https://t.co/0VnvWwbedt . Blog ... > > > <https://blog-rmannibucau.rhcloud.com> | Old Wordpress Blog > > > > > > > > > RBlog: the RManniBucau v2 Blog > > > blog-rmannibucau.rhcloud.com > > > RBlog: Romain Manni-Bucau Blog about Java, JavaEE, TomEE, Angular, Open > > Source, > > > Code and geeky topics... > > > <http://rmannibucau.wordpress.com> | Github > > > <https://github.com/rmannibucau> | > > > > > > > > > [old blog] new RManniBucau().blog() > > > rmannibucau.wordpress.com > > > New blog on: https://blog-rmannibucau.rhcloud.com/ > > > LinkedIn <https://www.linkedin.com/in/rmannibucau> | Tomitriber > > > <http://www.tomitribe.com> | JavaEE Factory > > > <https://javaeefactory-rmannibucau.rhcloud.com> > > > > > > 2016-09-28 23:45 GMT+02:00 Xavier Dury <[email protected]>: > > > > > >> It seems that to inject the conversation in > > > ConversationWrapper.conversation, > > >> OWB does consider both the build-in conversation bean and the > produced > > one > > >> from... ConversationWrapper.getConv(). > > >> > > >> I tried something like that: > > >> > > >> @RequestScoped > > >> public class ConversationWrapper { > > >> > > >> private @Inject > > > @Named("javax.enterprise.context.conversation") > > >> Conversation conv; > > >> > > >> @Produces > > >> @Dependent > > >> @Named("conv") > > >> public Conversation getConv() { > > >> return conv; > > >> } > > >> } > > >> > > >> But it gives the following error: > > >> > > >> Caused by: javax.enterprise.inject.UnsatisfiedResolutionException: > Api > > >> type [javax.enterprise.context.Conversation] is not found with the > > >> qualifiers > > >> Qualifiers: [@javax.inject.Named(value=javax.enterprise.context. > > >> conversation)] > > >> for injection into Field Injection Point, field name : conv, Bean > > Owner : > > >> [ConversationWrapper, WebBeansType:MANAGED, Name:null, API > > >> Types:[eg.ConversationWrapper,java.lang.Object], > > >> Qualifiers:[javax.enterprise.inject.Default,javax. > > enterprise.inject.Any]] > > >> > > >> > > >> > > >> > > >> From: Xavier Dury <[email protected]> > > >> Sent: Wednesday, September 28, 2016 11:34 PM > > >> To: [email protected] > > >> Subject: Re: OpenEJB and EL > > >> > > >> Got the same result with 'conv': > > >> > > >> Caused by: javax.enterprise.inject.AmbiguousResolutionException: > > There is > > >> more than one Bean with type > > > javax.enterprise.context.ConversationQualifiers: > > >> [@javax.enterprise.inject.Default()] > > >> for injection into Field Injection Point, field name : conversation, > > Bean > > >> Owner : [ConversationAliaser, WebBeansType:MANAGED, Name:null, API > > >> Types:[java.lang.Object,eg.ConversationAliaser], > > >> Qualifiers:[javax.enterprise.inject.Default,javax. > > enterprise.inject.Any]] > > >> found beans: > > >> Conversation, WebBeansType:PRODUCERMETHOD, Name:conv, API > > >> Types:[java.lang.Object,javax.enterprise.context.Conversation], > > >> Qualifiers:[javax.enterprise.inject.Default,javax. > > >> enterprise.inject.Any,javax.inject.Named] from file:/D:/development/ > > >> workspaces/openejb-el/target/test-classes/eg/ > ConversationWrapper.class > > >> ConversationImpl, WebBeansType:CONVERSATION, > > > Name:javax.enterprise.context.conversation, > > >> API Types:[org.apache.webbeans.conversation.ConversationImpl, > > >> javax.enterprise.context.Conversation,java.lang.Object], > > >> Qualifiers:[javax.enterprise.inject.Default,javax. > > enterprise.inject.Any] > > >> from jar:file:/C:/Users/xavier/.m2/repository/org/apache/ > > >> openwebbeans/openwebbeans-impl/1.6.3/openwebbeans-impl- > > >> 1.6.3.jar!/org/apache/webbeans/conversation/ConversationImpl.class > > >> > > >> > > >> > > >> > > >> > > >> > > >> > > >> From: Romain Manni-Bucau <[email protected]> > > >> Sent: Wednesday, September 28, 2016 11:29 PM > > >> To: [email protected] > > >> Cc: Mark Struberg > > >> Subject: Re: OpenEJB and EL > > >> > > >> missing @Named("conv")? > > >> > > >> > > >> Romain Manni-Bucau > > >> @rmannibucau <https://twitter.com/rmannibucau> | Blog > > >> > > >> > > >> > > >> Romain Manni-Bucau (@rmannibucau) | Twitter > > >> twitter.com > > >> The latest Tweets from Romain Manni-Bucau (@rmannibucau). ASF / > > Java(EE) / > > >> Angular. LinkedIn: https://t.co/dX7XMGjbBi. JavaEE Factory: > > >> https://t.co/0VnvWwbedt . Blog ... > > >> > > >> > > >> > > >> Romain Manni-Bucau (@rmannibucau) | Twitter > > >> twitter.com > > >> The latest Tweets from Romain Manni-Bucau (@rmannibucau). ASF / > > Java(EE) / > > >> Angular. LinkedIn: https://t.co/dX7XMGjbBi. JavaEE Factory: > > >> https://t.co/0VnvWwbedt . Blog ... > > >> <https://blog-rmannibucau.rhcloud.com> | Old Wordpress Blog > > >> > > >> > > >> RBlog: the RManniBucau v2 Blog > > >> blog-rmannibucau.rhcloud.com > > >> RBlog: Romain Manni-Bucau Blog about Java, JavaEE, TomEE, Angular, > Open > > >> Source, Code and geeky topics... > > >> <http://rmannibucau.wordpress.com> | Github <https://github.com/ > > >> rmannibucau> | > > >> > > >> > > >> [old blog] new RManniBucau().blog() > > >> rmannibucau.wordpress.com > > >> New blog on: https://blog-rmannibucau.rhcloud.com/ > > >> LinkedIn <https://www.linkedin.com/in/rmannibucau> | Tomitriber > > >> <http://www.tomitribe.com> | JavaEE Factory > > >> <https://javaeefactory-rmannibucau.rhcloud.com> > > >> > > >> 2016-09-28 23:27 GMT+02:00 Xavier Dury <[email protected]>: > > >> > > >> > > > >> > Caused by: javax.enterprise.inject.AmbiguousResolutionException: > > There > > >> is > > >> > more than one Bean with type javax.enterprise.context. > > >> ConversationQualifiers: > > >> > [@javax.enterprise.inject.Default()] > > >> > for injection into Field Injection Point, field name : > conversation, > > >> Bean > > >> > Owner : [ConversationAliaser, WebBeansType:MANAGED, Name:null, API > > >> > Types:[eg.ConversationAliaser,java.lang.Object], > > >> > Qualifiers:[javax.enterprise.inject.Default,javax. > > >> enterprise.inject.Any]] > > >> > found beans: > > >> > Conversation, WebBeansType:PRODUCERMETHOD, Name:conversation, API > > >> > Types:[javax.enterprise.context.Conversation,java.lang.Object], > > >> > Qualifiers:[javax.enterprise.inject.Default,javax. > > >> > enterprise.inject.Any,javax.inject.Named] from > file:/D:/development/ > > >> > workspaces/openejb-el/target/test-classes/eg/ > > ConversationWrapper.class > > >> > ConversationImpl, WebBeansType:CONVERSATION, > > >> Name:javax.enterprise.context.conversation, > > >> > API Types:[org.apache.webbeans.conversation.ConversationImpl, > > >> > javax.enterprise.context.Conversation,java.lang.Object], > > >> > > > > Qualifiers:[javax.enterprise.inject.Default,javax. > enterprise.inject.Any] > > >> > from jar:file:/C:/Users/xavier/.m2/repository/org/apache/ > > >> > openwebbeans/openwebbeans-impl/1.6.3/openwebbeans-impl- > > >> > 1.6.3.jar!/org/apache/webbeans/conversation/ConversationImpl.class > > >> > > > >> > > > >> > > > >> > > > >> > > > >> > > > >> > > > >> > From: Mark Struberg <[email protected]> > > >> > Sent: Wednesday, September 28, 2016 11:20 PM > > >> > To: [email protected] > > >> > Subject: Re: OpenEJB and EL > > >> > > > >> > +1 > > >> > > > >> > means > > >> > > > >> > @RequestScoped > > >> > > > >> > public class ConversationWrapper { > > >> > private @Inject Conversation conv; > > >> > > > >> > @Produces > > >> > @Dependent > > >> > @Named("conv") > > >> > > > >> > public Conversation getConv() { > > >> > return conv; > > >> > } > > >> > } > > >> > > > >> > > > >> > > > >> > > > >> > On Wednesday, 28 September 2016, 23:10, Romain Manni-Bucau < > > >> > [email protected]> wrote: > > >> > > > >> > > > >> > > > > >> > > > > >> > >a producer allows to get a shorter/more elegant naming like > > > #{conv.id} > > >> > if you @Produces @Named("conv") ;) > > >> > > > > >> > > > > >> > > > > >> > >Romain Manni-Bucau > > >> > >@rmannibucau | Blog | Old Wordpress Blog | Github | LinkedIn | > > >> > Tomitriber | JavaEE Factory > > >> > > > > >> > >2016-09-28 23:01 GMT+02:00 Mark Struberg > > > <[email protected]>: > > >> > > > > >> > >Oh boy, sorry for you. You did hit a blank spot in the CDI spec. > > >> > >> > > >> > >>Problem is that the EE umbrella spec, the EL spec and the CDI > > > spec > > >> > contradict each other. > > >> > >> > > >> > >>The Weld guys solved this by introducing a Javax class. But > > > that takes > > >> > away the whole javax.* tree for the EL. That's just not good as it > > >> > contradicts the EL spec. > > >> > >> > > >> > >>Could you please try the following > > >> > >> > > >> > >>@RequestScoped > > >> > >>@Named("conversation") > > >> > >>public class ConversationWrapper { > > >> > >> private @Inject Conversation conv; > > >> > >> > > >> > >> public Conversation get() { > > >> > >> return conv; > > >> > >> } > > >> > >>} > > >> > >> > > >> > >>And in the EL just use #{conversation.get.id} > > >> > >> > > >> > >>LieGrue, > > >> > >>strub > > >> > >> > > >> > >> > > >> > >> > > >> > >> > > >> > >> > > >> > >>> On Wednesday, 28 September 2016, 22:12, Xavier Dury < > > >> > [email protected]> wrote: > > >> > >>> > I really don't understand how something like > > > <f:param > > >> > >>> name="cid" > > >> > >>> value="#{javax.enterprise. > > > context.conversation.id}"/> actually > > >> > >>> works... something must be made to make the EL processor > > > accept that > > >> > invalid > > >> > >>> bean name. > > >> > >>> > > >> > >>> Making a producer which @Produces @Named Conversation > > > conflicts with > > >> > the > > >> > >>> built-in bean from OWB (with WebBeanType.CONVERSATION)... > > >> > >>> > > >> > >>> ... so, I have done the following for my tests but I feel > > > a bit > > >> > ashamed because > > >> > >>> I can't imagine there is no better solution than this > > > ;-) > > >> > >>> > > >> > >>> public class ConversationAliaser { > > >> > >>> public class Javax { > > >> > >>> public Enterprise getEnterprise() {return > > > new Enterprise();} > > >> > >>> > > >> > >>> } > > >> > >>> public class Enterprise { > > >> > >>> public Context getContext() {return new > > > Context();} > > >> > >>> } > > >> > >>> public class Context { > > >> > >>> public Conversation getConversation() > > > {return conversation;} > > >> > >>> > > >> > >>> } > > >> > >>> @Inject > > >> > >>> private Conversation conversation; > > >> > >>> @Produces @ApplicationScoped > > > @Named("javax") > > >> > >>> public Javax javax() {return new Javax();} > > >> > >>> } > > >> > >>> > > >> > >>> But that works! > > >> > >>> > > >> > >>> Xavier > > >> > >>> > > >> > >>> > > >> > >>> > > >> > >>> From: Xavier Dury <[email protected]> > > >> > >>> Sent: Wednesday, September 28, 2016 8:42 PM > > >> > >>> To: [email protected] > > >> > >>> Subject: Re: OpenEJB and EL > > >> > >>> > > >> > >>> Hmmm... I guess I'll have to @Produces @Named the > > > conversation if I > > >> > want to > > >> > >>> use it in ELs. I don't know if something like > > >> > >>> #{applicationScope['javax. enterprise.context. > > >> > conversation'].transient} > > >> > >>> would work? > > >> > >>> > > >> > >>> I remember back in my JSP days that, sometimes, I had to > > > use > > >> something > > >> > like > > >> > >>> ${requestScope['javax.servlet. > > > forward.request_uri']} instead of > > >> > >>> plain ${javax.servlet.forward. request_uri}. > > >> > >>> > > >> > >>> Xavier > > >> > >>> > > >> > >>> > > >> > >>> From: Romain Manni-Bucau <[email protected]> > > >> > >>> Sent: Wednesday, September 28, 2016 6:54 PM > > >> > >>> To: [email protected] > > >> > >>> Subject: Re: OpenEJB and EL > > >> > >>> > > >> > >>> hmm, wonder if it is linked to the value you try to > > > evaluate (which > > >> > doesn't > > >> > >>> respect EL spec even if in CDI spec - don't ask > > > please ;)).. See > > >> > >>> https://issues.jboss.org/ browse/CDITCK-462 / > > >> > > > >> > > > >> > System Dashboard - JBoss Issue Tracker > > >> > issues.jboss.org > > >> > Atlassian JIRA Project Management Software > > > (v6.4.11#64026-sha1:78f6ec4) > > >> > About JIRA; Report a problem; Powered by a free Atlassian JIRA open > > >> source > > >> > license for Red Hat ... > > >> > >>> http://lists.jboss.org/ pipermail/cdi-dev/2015- > > > January/006009.html > > >> > > > >> > > > >> > lists.jboss.org Mailing Lists > > >> > lists.jboss.org > > >> > lists.jboss.org Mailing Lists: Welcome! Below is a listing of all > > the > > >> > public mailing lists on lists.jboss.org. Click on a list name to > get > > >> more > > >> > information ... > > >> > >>> > > >> > >>> > > >> > >>> > > >> > >>> > > >> > >>> Romain Manni-Bucau > > >> > >>> @rmannibucau <https://twitter.com/ rmannibucau> | > > > Blog > > >> > >>> > > >> > >>> > > >> > >>> > > >> > >>> Romain Manni-Bucau (@rmannibucau) | Twitter > > >> > >>> twitter.com > > >> > >>> The latest Tweets from Romain Manni-Bucau (@rmannibucau). > > > ASF / > > >> > Java(EE) / > > >> > >>> Angular. LinkedIn: https://t.co/dX7XMGjbBi. JavaEE > > > Factory: > > >> > >>> https://t.co/0VnvWwbedt . Blog ... > > >> > >>> <https://blog-rmannibucau. rhcloud.com> | Old > > > Wordpress Blog > > >> > >>> <http://rmannibucau.wordpress. com> | Github > > >> > >>> <https://github.com/ rmannibucau> | > > >> > >>> LinkedIn <https://www.linkedin.com/in/ rmannibucau> > > > | Tomitriber > > >> > >>> <http://www.tomitribe.com> | JavaEE Factory > > >> > >>> <https://javaeefactory- rmannibucau.rhcloud.com> > > >> > >>> > > >> > >>> 2016-09-28 18:17 GMT+02:00 Xavier Dury > > > <[email protected]>: > > >> > >>> > > >> > >>>> Hi Romain, > > >> > >>>> > > >> > >>>> I tried with org.apache.tomcat:tomcat- > > > jasper-el:8.5.5 but it does > > >> > not > > >> > >>>> parse my expression until I change > > > ".transient" by > > >> > >>> ".isTransient()" and > > >> > >>>> then it gives the same error: javax.el. > > > PropertyNotFoundException: > > >> > >>>> ELResolver cannot handle a null base Object with > > > identifier > > >> > >>> 'javax'. > > >> > >>>> > > >> > >>>> Does the EL context need something else than adding > > > the > > >> > >>>> BeanManager.getELResolver() to be able to resolve > > > some implicit > > >> > objects? I > > >> > >>>> don't understand why it works with ri-1.0. > > >> > >>>> > > >> > >>>> Xavier > > >> > >>>> > > >> > >>>> > > >> > >>>> From: Romain Manni-Bucau > > > <[email protected]> > > >> > >>>> Sent: Wednesday, September 28, 2016 4:02 PM > > >> > >>>> To: [email protected] > > >> > >>>> Subject: Re: OpenEJB and EL > > >> > >>>> > > >> > >>>> Hi Xavier > > >> > >>>> > > >> > >>>> On the phone so hard to give you a link bit try > > > using tomcat el > > >> impl > > >> > of > > >> > >>>> tomcat 8.5 > > >> > >>>> > > >> > >>>> Le 28 sept. 2016 15:29, "Xavier Dury" > > > <[email protected]> > > >> > >>> a écrit : > > >> > >>>> > > >> > >>>> > Hi, > > >> > >>>> > > > >> > >>>> > I am using OpenEJB for my tests and need > > > support for EL > > >> > expressions in > > >> > >>> my > > >> > >>>> > own code. > > >> > >>>> > > > >> > >>>> > By default, if I do something like this (pay > > > attention to the > > >> > >>>> expression): > > >> > >>>> > > > >> > >>>> > ExpressionFactory factory = beanManager. > > > wrapExpressionFactory( > > >> > >>>> > ExpressionFactory.newInstance( )); > > >> > >>>> > StandardELContext elContext = new > > > StandardELContext(factory); > > >> > >>>> > elContext.addELResolver( > > > beanManager.getELResolver()); > > >> > >>>> > ValueExpression expression = > > > factory.createValueExpression( > > >> > elContext, > > >> > >>>> > "#{javax.enterprise.context. > > > conversation.transient}", > > >> > >>> Boolean.class); > > >> > >>>> > expression.getValue(elContext) ; > > >> > >>>> > > > >> > >>>> > and only add org.apache.tomee:openejb-core: > > > 7.0.1 to my project > > >> > then I > > >> > >>>> get > > >> > >>>> > javax.el.ELException: Unable to find > > > ExpressionFactory of type: > > >> > >>>> > org.apache.el. ExpressionFactoryImpl > > >> > >>>> > > > >> > >>>> > if I add org.glassfish:javax.el:3.0.0 then I > > > get javax.el. > > >> > >>>> PropertyNotFoundException: > > >> > >>>> > ELResolver cannot handle a null base Object > > > with identifier > > >> > >>> 'javax' > > >> > >>>> > > > >> > >>>> > if I switch the EL library to > > > com.sun.el:el-ri:1.0 (+ > > >> > >>> META-INF/javax.el. > > >> > >>>> ExpressionFactory > > >> > >>>> > < com.sun.el. ExpressionFactoryImpl) then my > > > expression can be > > >> > >>> evaluated > > >> > >>>> > but I can't use any new feature of 3.0 > > > (like lambdas) > > >> > >>>> > > > >> > >>>> > So, either my dependencies are wrong or I am > > > not correctly > > >> > >>> initializing > > >> > >>>> my > > >> > >>>> > factory. > > >> > >>>> > > > >> > >>>> > Does anybody have an idea? > > >> > >>>> > > > >> > >>>> > Thanks, > > >> > >>>> > > > >> > >>>> > Xavier > > >> > >>>> > > >> > >>>> > > >> > >>> > > >> > >> > > >> > > > > >> > > > > >> > > > > >> > > > >> > > > >> > > >> > > > > > > > > >
