On 29/07/2013 22:56, Nick Williams wrote:
> 
> On Jul 29, 2013, at 3:53 PM, Jeremy Boynes wrote:
> 
>> This is what lies under the syntactic sugar, and causes no warnings in
>> javac or IDEA (and I presume Eclipse). Should we stick to it?
> 
> I would say no. This is why generics exist, so that you don't have to write 
> code like that.

+1.

It occurs to me that this might have been better as an explicit method
on the ServletContext rather than as a special attribute. Given the J2EE
view on backwards compatibility, this isn't to change but it is
something to keep an eye out for in future specs.

Mark


> 
>>
>> Index: java/org/apache/catalina/startup/WebappServiceLoader.java
>> ===================================================================
>> --- java/org/apache/catalina/startup/WebappServiceLoader.java (revision
>> 1508175)
>> +++ java/org/apache/catalina/startup/WebappServiceLoader.java (working copy)
>> @@ -82,10 +82,11 @@
>>
>>         // if the ServletContext has ORDERED_LIBS, then use that to
>> specify the
>>         // set of JARs from WEB-INF/lib that should be used for loading
>> services
>> -        List<String> orderedLibs = (List<String>)
>> context.getAttribute(ServletContext.ORDERED_LIBS);
>> +        List<?> orderedLibs = (List<?>)
>> context.getAttribute(ServletContext.ORDERED_LIBS);
>>         if (orderedLibs != null) {
>>             // handle ordered libs directly, ...
>> -            for (String lib : orderedLibs) {
>> +            for (Object o : orderedLibs) {
>> +                String lib = (String) o;
>>                 URL jarUrl = context.getResource(LIB + lib);
>>                 if (jarUrl == null) {
>>                     // should not happen, just ignore
>>
>>
>>
>> On Mon, Jul 29, 2013 at 12:40 PM, Mark Thomas <ma...@apache.org> wrote:
>>
>>> On 29/07/2013 21:04, Nick Williams wrote:
>>>> On Jul 29, 2013, at 2:02 PM, Jeremy Boynes wrote:
>>>>
>>>>> This flags as a warning for me in IDEA without the suppression. Isn't
>>> this
>>>>> an unchecked cast (Object to List<String>)?
>>>
>>> It is an unchecked cast but there is no way to avoid the cast so there
>>> is no point the IDE flagging it as there is nothing the developer can do
>>> to fix it. Eclipse added an option (Ignore unavoidable generic type
>>> problems) not to flag issues such as this as of a recent(ish) version.
>>>
>>>> Yes, that's an unchecked cast. The @SuppressWarnings was not unnecessary.
>>>
>>> Yes, it is unchecked cast. However, the warning is pointless and
>>> shouldn't have been generated in the first place.
>>>
>>> The Tomcat 8 code base should not exhibit any warnings with the defined
>>> Eclipse settings [1]. Ditto for FindBugs and Checkstyle with the
>>> provided configurations.
>>>
>>> The intention is to add additional checks over time although we haven't
>>> added any for a while.
>>>
>>> Mark
>>>
>>>
>>> http://svn.apache.org/viewvc/tomcat/trunk/res/ide-support/eclipse/java-compiler-errors-warnings.txt?view=annotate
>>>
>>>
>>>>
>>>> N
>>>>
>>>>>
>>>>>
>>>>> On Mon, Jul 29, 2013 at 11:38 AM, <ma...@apache.org> wrote:
>>>>>
>>>>>> Author: markt
>>>>>> Date: Mon Jul 29 18:38:08 2013
>>>>>> New Revision: 1508171
>>>>>>
>>>>>> URL: http://svn.apache.org/r1508171
>>>>>> Log:
>>>>>> Remove unnecessary @SuppressWarnings
>>>>>>
>>>>>> Modified:
>>>>>>
>>> tomcat/trunk/java/org/apache/catalina/startup/WebappServiceLoader.java
>>>>>>
>>>>>> Modified:
>>>>>> tomcat/trunk/java/org/apache/catalina/startup/WebappServiceLoader.java
>>>>>> URL:
>>>>>>
>>> http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/startup/WebappServiceLoader.java?rev=1508171&r1=1508170&r2=1508171&view=diff
>>>>>>
>>>>>>
>>> ==============================================================================
>>>>>> ---
>>> tomcat/trunk/java/org/apache/catalina/startup/WebappServiceLoader.java
>>>>>> (original)
>>>>>> +++
>>> tomcat/trunk/java/org/apache/catalina/startup/WebappServiceLoader.java
>>>>>> Mon Jul 29 18:38:08 2013
>>>>>> @@ -82,7 +82,6 @@ public class WebappServiceLoader<T> {
>>>>>>
>>>>>>        // if the ServletContext has ORDERED_LIBS, then use that to
>>>>>> specify the
>>>>>>        // set of JARs from WEB-INF/lib that should be used for loading
>>>>>> services
>>>>>> -        @SuppressWarnings("unchecked")
>>>>>>        List<String> orderedLibs = (List<String>)
>>>>>> context.getAttribute(ServletContext.ORDERED_LIBS);
>>>>>>        if (orderedLibs != null) {
>>>>>>            // handle ordered libs directly, ...
>>>>>>
>>>>>>
>>>>>>
>>>>>> ---------------------------------------------------------------------
>>>>>> To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
>>>>>> For additional commands, e-mail: dev-h...@tomcat.apache.org
>>>>>>
>>>>>>
>>>>
>>>>
>>>> ---------------------------------------------------------------------
>>>> To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
>>>> For additional commands, e-mail: dev-h...@tomcat.apache.org
>>>>
>>>
>>>
> 
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
> For additional commands, e-mail: dev-h...@tomcat.apache.org
> 


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org

Reply via email to