tomcat-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Pid <...@pidster.com>
Subject Re: Why @WebServlet annotation is not processed when web.xml is version 2.5?
Date Wed, 18 Apr 2012 09:42:06 GMT
On 18/04/2012 09:15, maria petrova wrote:
> Hi,
> 
> Thanks for the clarification. I agree that the specification is not
> absolutely clear on this matter in the given extract.
> Anyway, I simply would like to ask you, as Tomcat experts, for hints or
> ideas how to configure my Tomcat to make it pass the Servlet 3.0 CTS.
> I know that Tomcat 7.x regularly covers the complete Servlet 3.0 CTS and
> probably there is a hidden property that I’m missing?

Set 3.0 as the version in web.xml for apps using Servlet 3.0 features?
Alternatively you could, of course, set the hidden system property:

 -Dorg.apache.catalina.alwaysPassServlet30CTS=true


p


> Thanks and regards,
> Maria
> 
> На 17 април 2012, 22:22, Pid <pid@pidster.com> написа:
> 
>> On 17/04/2012 13:48, maria petrova wrote:
>>> Hi,
>>>
>>>
>>> We’ve embedded Tomcat 7.0.26 in our product and we are currently trying
>>> to cover Servlet 3.0 CTS with it.  We’ve encountered the following
>>> problem with one of the tests.
>>>
>>> Though the version of the web deployment descriptor of the test
>>> application is 2.5, there is a servlet annotated with *@WebServlet
>>> *annotation and requests to this servlet are responded with 404 Not
>>> Found. When I change the version of the web.xml to 3.0 everything works
>>> just fine.
>>>
>>>
>>> In Chapter /“*1.6.2 Regarding Processing annotations*”/ in the Servlet
>>> 3.0 Specification it is said that:
>>>
>>> /“The version of the descriptor MUST not affect which annotations you
>>> scan for in a web application.”/
>>
>> It also says:
>>
>> "An implementation of a particular version of the specification MUST
>> scan for all annotations supported in that configuration, unless
>> metadata-complete is specified."
>>
>> So I ask "which configuration?" - interpreting it to mean that Servlet
>> 3.0 supports the WebServlet annotation etc, and 2.5 does not, because
>> that annotation is not present in 2.5.
>>
>>
>> p
>>
>>> So my understanding is that the application should be processed for
>>> Servlet 3.0 specific annotations regardless of the version of the
>>> deployment descriptor.
>>>
>>>
>>> As far as I’m aware, each new Tomcat release successfully covers Servlet
>>> 3.0 CTS, so I’m wondering if I’ve missed some configuration on Tomcat
>> side?
>>>
>>> Any hints or ideas are highly appreciated.
>>>
>>>
>>> Thanks!
>>>
>>> Maria
>>>
>>>
>>> P.S. The issue is easily reproducible with clean Tomcat 7.0.26
>>> installation and the attached simple test applications. They differ only
>>> in the web.xml’s version and only /AnnotTest_30/AnnotServlet is
>>> correctly responded, while /AnnotTest_25/AnnotServlet gets 404 response.
>>>
>>>
>>>
>>>
>>> ---------------------------------------------------------------------
>>> To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
>>> For additional commands, e-mail: users-help@tomcat.apache.org
>>
>>
>> --
>>
>> [key:62590808]
>>
>>
> 


-- 

[key:62590808]


Mime
View raw message