Hi,

I updated the github project to use tomcat-jasper-el:8.0.0-RC3 (found here [1]).

Now the maven project compiles and passes all tests out of the box (without 
resorting to build tomcat aside).


[1] https://repository.apache.org/content/repositories/orgapachetomcat-080/


----------------------------------------
> From: kal...@hotmail.com
> To: users@tomcat.apache.org
> Subject: RE: Using EL expressions in an ObjectFactory
> Date: Mon, 16 Sep 2013 16:34:20 +0200
>
> I found the problem:
>
> I was using javax.el:javax.el-api:3.0.0 as EL api jar... now, if I use the 
> el-api provided by tomcat, everything works fine.
>
> Xavier
>
> ----------------------------------------
>> Subject: Re: Using EL expressions in an ObjectFactory
>> From: dmik...@gopivotal.com
>> Date: Mon, 16 Sep 2013 10:05:14 -0400
>> To: users@tomcat.apache.org
>>
>> On Sep 16, 2013, at 9:43 AM, Xavier Dury <kal...@hotmail.com> wrote:
>>
>>> I built tomcat from trunk (rev 1523639) and I'm having the same issue I had 
>>> with glassfish EL implementation when using overloaded methods:
>>>
>>> javax.el.ELException: Cannot convert ./ of type class java.lang.String to 
>>> class java.net.URI
>>> at org.apache.el.lang.ELSupport.coerceToType(ELSupport.java:482)
>>> at 
>>> org.apache.el.ExpressionFactoryImpl.coerceToType(ExpressionFactoryImpl.java:48)
>>> at javax.el.ELContext.convertToType(ELContext.java:473)
>>> at 
>>> org.apache.el.lang.EvaluationContext.convertToType(EvaluationContext.java:155)
>>> at javax.el.ELUtil.invokeConstructor(ELUtil.java:261)
>>> at javax.el.StaticFieldELResolver.invoke(StaticFieldELResolver.java:203)
>>> at javax.el.CompositeELResolver.invoke(CompositeELResolver.java:256)
>>> at org.apache.el.parser.AstFunction.getValue(AstFunction.java:138)
>>> at org.apache.el.ValueExpressionImpl.getValue(ValueExpressionImpl.java:188)
>>> at javax.el.ELProcessor.getValue(ELProcessor.java:129)
>>> at javax.el.ELProcessor.eval(ELProcessor.java:115)
>>> at 
>>> org.apache.naming.factory.ExpressionFactoryTest.elImplementationShouldWork(ExpressionFactoryTest.java:43)
>>>
>>> So I guess it's normal behaviour, isn't it?
>>
>> No. Your example works fine for me, rev# 1523651.
>>
>> public class ElFileTest {
>> @Test
>> public void testElAndFile() throws IOException {
>> ELProcessor proc = new ELProcessor();
>> proc.getELManager().importClass("java.io.File");
>> File f = (File) proc.eval("File('./')");
>> Assert.assertEquals(new File("./").getCanonicalPath(), f.getCanonicalPath());
>> }
>> }
>>
>> Dan
>>
>>>
>>> I don't think EL spec does mandate implementations to make their best 
>>> effort to find a suitable method when invoking overloaded methods.
>>>
>>> Xavier
>>>
>>> ----------------------------------------
>>>> Subject: Re: Using EL expressions in an ObjectFactory
>>>> From: dmik...@gopivotal.com
>>>> Date: Mon, 16 Sep 2013 07:48:33 -0400
>>>> To: users@tomcat.apache.org
>>>>
>>>> On Sep 16, 2013, at 3:03 AM, Xavier Dury <kal...@hotmail.com> wrote:
>>>>
>>>>> Hi,
>>>>>
>>>>> I switched to org.apache.tomcat:tomcat-jasper-el:8.0.0-RC1 as javax.el 
>>>>> 3.0 implementation and tested with the following code:
>>>>>
>>>>> ELProcessor processor = new ELProcessor();
>>>>> processor.getELManager().importClass("java.io.File");
>>>>> processor.eval("File('./')");
>>>>>
>>>>> but I get the following error:
>>>>>
>>>>> javax.el.ELException: Function ':File' not found
>>>>> at org.apache.el.parser.AstFunction.getValue(AstFunction.java:136)
>>>>> at 
>>>>> org.apache.el.ValueExpressionImpl.getValue(ValueExpressionImpl.java:188)
>>>>> at javax.el.ELProcessor.getValue(ELProcessor.java:129)
>>>>> at javax.el.ELProcessor.eval(ELProcessor.java:115)
>>>>> at 
>>>>> org.apache.naming.factory.ExpressionFactoryTest.elImplementationShouldWork(ExpressionFactoryTest.java:43)
>>>>>
>>>>> Are methods importClass, importStatic and importPackage on ELManager 
>>>>> already implemented in apache EL?
>>>>
>>>> Sorry, I don't think I was clear enough in my last response. This does not 
>>>> work with Tomcat 8.0.0-RC1, but has been fixed (see the bug I referenced 
>>>> earlier). You'll need to either build and use Tomcat trunk or wait until 
>>>> the next RC release is available.
>>>>
>>>> Dan
>>>>
>>>>>
>>>>> Regards,
>>>>>
>>>>> Xavier
>>>>>
>>>>> ----------------------------------------
>>>>>> Subject: Re: Using EL expressions in an ObjectFactory
>>>>>> From: dmik...@gopivotal.com
>>>>>> Date: Fri, 13 Sep 2013 15:38:29 -0400
>>>>>> To: users@tomcat.apache.org
>>>>>>
>>>>>> On Sep 13, 2013, at 3:27 AM, Xavier Dury <kal...@hotmail.com> wrote:
>>>>>>
>>>>>>> When I try the following:
>>>>>>>
>>>>>>> ELProcessor processor = new ELProcessor();
>>>>>>> processor.getELManager().importClass("java.io.File");
>>>>>>> processor.eval("File('./')");
>>>>>>>
>>>>>>> I get javax.el.ELException: java.lang.IllegalArgumentException: Cannot 
>>>>>>> convert ./ of type class java.lang.String to class java.net.URI.
>>>>>>>
>>>>>>> I'm using glassfish javax.el 3.0 implementation for my tests. Maybe the 
>>>>>>> problem comes from this specific implementation.
>>>>>>
>>>>>> Yes, that would be the problem. I've noticed the same behavior 
>>>>>> w/GlassFish's EL 3.0 implementation. Try building Tomcat trunk and using 
>>>>>> it's implementation or using the next Tomcat 8 RC when it's available. 
>>>>>> Neither should have that problem.
>>>>>>
>>>>>> Dan
>>>>>>
>>>>>>
>>>>>>>
>>>>>>> ----------------------------------------
>>>>>>>> Subject: Re: Using EL expressions in an ObjectFactory
>>>>>>>> From: dmik...@gopivotal.com
>>>>>>>> Date: Thu, 12 Sep 2013 17:10:21 -0400
>>>>>>>> To: users@tomcat.apache.org
>>>>>>>>
>>>>>>>> On Sep 12, 2013, at 7:58 AM, Xavier Dury <kal...@hotmail.com> wrote:
>>>>>>>>
>>>>>>>>> Ok,
>>>>>>>>>
>>>>>>>>> I fixed the styling and the documentation. If anything else must be 
>>>>>>>>> changed, don't hesitate.
>>>>>>>>
>>>>>>>> In your docs, you state the following remark...
>>>>>>>>
>>>>>>>> "Try to avoid overloaded methods/constructors as much as possible in 
>>>>>>>> EL 3.0 expression as the ELProcessor will use the first one it will 
>>>>>>>> find by reflection."
>>>>>>>>
>>>>>>>> Can you clarify what you mean by this? There was a problem in RC-1 
>>>>>>>> that sounds similar, but it's been fixed.
>>>>>>>>
>>>>>>>> https://issues.apache.org/bugzilla/show_bug.cgi?id=55483
>>>>>>>>
>>>>>>>> Is this a problem in trunk? Point being, if you're seeing an issue 
>>>>>>>> with EL 3.0, we should try to fix it.
>>>>>>>>
>>>>>>>> Dan
>>>>>>>>
>>>>>>>>
>>>>>>>>> ----------------------------------------
>>>>>>>>>> Date: Thu, 12 Sep 2013 12:01:26 +0100
>>>>>>>>>> From: ma...@apache.org
>>>>>>>>>> To: users@tomcat.apache.org
>>>>>>>>>> Subject: Re: Using EL expressions in an ObjectFactory
>>>>>>>>>>
>>>>>>>>>> On 12/09/2013 11:49, Xavier Dury wrote:
>>>>>>>>>>> Hi,
>>>>>>>>>>>
>>>>>>>>>>> I implemented a simple ExpressionFactory @
>>>>>>>>>>> https://github.com/kalgon/expression-factory.
>>>>>>>>>>>
>>>>>>>>>>> I would love to see this ExpressionFactory next to
>>>>>>>>>>> org.apache.naming.factory.BeanFactory in tomcat.
>>>>>>>>>>
>>>>>>>>>> No objections in principle.
>>>>>>>>>>
>>>>>>>>>> Haven't looked at the new code in detail. A few initial observations:
>>>>>>>>>> - I'm assuming this is a contribution as per section 5 of the Apache
>>>>>>>>>> License, version 2.0
>>>>>>>>>> - There is no documentation
>>>>>>>>>> - Tomcat code standards use 4 spaces for indents, not tabs
>>>>>>>>>> - Some @Override markers look to be missing
>>>>>>>>>>
>>>>>>>>>> Mark
>>>>>>>>>>
>>>>>>>>>> ---------------------------------------------------------------------
>>>>>>>>>> To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org
>>>>>>>>>> For additional commands, e-mail: users-h...@tomcat.apache.org
>>>>>>>>>>
>>>>>>>>> ---------------------------------------------------------------------
>>>>>>>>> To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org
>>>>>>>>> For additional commands, e-mail: users-h...@tomcat.apache.org
>>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> ---------------------------------------------------------------------
>>>>>>>> To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org
>>>>>>>> For additional commands, e-mail: users-h...@tomcat.apache.org
>>>>>>>>
>>>>>>> ---------------------------------------------------------------------
>>>>>>> To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org
>>>>>>> For additional commands, e-mail: users-h...@tomcat.apache.org
>>>>>>>
>>>>>>
>>>>>>
>>>>>> ---------------------------------------------------------------------
>>>>>> To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org
>>>>>> For additional commands, e-mail: users-h...@tomcat.apache.org
>>>>>>
>>>>> ---------------------------------------------------------------------
>>>>> To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org
>>>>> For additional commands, e-mail: users-h...@tomcat.apache.org
>>>>>
>>>>
>>>>
>>>> ---------------------------------------------------------------------
>>>> To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org
>>>> For additional commands, e-mail: users-h...@tomcat.apache.org
>>>>
>>> ---------------------------------------------------------------------
>>> To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org
>>> For additional commands, e-mail: users-h...@tomcat.apache.org
>>>
>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org
>> For additional commands, e-mail: users-h...@tomcat.apache.org
>>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org
> For additional commands, e-mail: users-h...@tomcat.apache.org
>                                         
---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org
For additional commands, e-mail: users-h...@tomcat.apache.org

Reply via email to