yes then all the call to that method must be of a generic type.
cant be raw
i dont know what are we going to do in wicket i think we should decide it
should we just where we dont care about generic delete/not use the <?> and
then
supresswarning?
johan
On Wed, May 14, 2008 at 9:45 PM, Igor Vaynberg <[EMAIL PROTECTED]>
wrote:
> so i just implemented IAuthorizationStrategy and on this line in my class:
>
> public boolean isInstantiationAuthorized(Class< ? extends Component>
> componentClass)
>
> i get: Component is a raw type. References to generic type
> Component<T> should be parameterized
>
> so that means we have to change our sig to <? extends Component<?>>
> but then we are back to the problem described in this thread.
>
> generics suck.
>
> -igor
>
> On Wed, May 14, 2008 at 12:12 AM, Johan Compagner <[EMAIL PROTECTED]>
> wrote:
> > I dont think that user gets a warning if a param is of raw type. But
> > we have a warning there.
> > The problem is that for example MarkupContainer.add(Component) or
> > IVisitor.visit(Component) i dont care what component is put in
> > generified or not.
> > In add it really doesnt matter because we dont do anything with it.
> > With visitor it is different because the user could use it inside the
> > method. But it should be useable without warnings for generified and
> > none generfied components..
> >
> >
> > On 5/14/08, Igor Vaynberg <[EMAIL PROTECTED]> wrote:
> >> if we have a signature that accepts a raw type, will that also cause a
> >> warning in user's code?
> >>
> >> also having those suppress annotations practically _everywhere_ will be
> >> annoying
> >>
> >> -igor
> >>
> >>
> >> On Tue, May 13, 2008 at 11:56 PM, Johan Compagner <[EMAIL PROTECTED]
> >
> >> wrote:
> >> > I dont care, because i cant do any thing with the ? The only thing it
> >> > enforces is that it must now be a generic class which is annoying.
> Not
> >> > to mention that in that area eclipse and javac accept different
> >> > things....
> >> >
> >> > So or we in wicket dont use <?> any where and have supress warning
> >> > everywhere for that or we do use it and then suddenly it is in my
> eyes
> >> > restricted to much.
> >> >
> >> >
> >> >
> >> > On 5/14/08, Sebastiaan van Erk <[EMAIL PROTECTED]> wrote:
> >> > > Johan Compagner wrote:
> >> > > > yes thats the reason
> >> > > >
> >> > > > you are calling the method add with a generified component but
> that
> >> > > > container itself is not generified
> >> > > >
> >> > > > i dont like this about generics expecially the onces like this:
> >> > > >
> >> > > > add(MarkupContainer<?> container)
> >> > > >
> >> > > > then suddenly a none generified component cant be added...
> >> > > > thats really stupid <?> should mean anything.. including none
> >> generics
> >> > >
> >> > > No, that's not correct. For example, List<?> is much more
> restrictive
> >> > > than a raw List (which is a List<Object>). To a raw list you can
> add an
> >> > > instance of any type whatever, i.e., list.add(new Object()). But in
> >> > > List<?> the ? is a wildcard which says it could be any type there,
> >> i.e.,
> >> > > it could be a List<Integer>. But you can't add a new Object() to a
> >> > > List<Integer>!
> >> > >
> >> > > Thus MarkupContainer<?> means "MarkupContainer parameterized by
> some
> >> > > unknown type", and *not* MarkupContainer parameterized by Object,
> which
> >> > > is what the raw type means.
> >> > >
> >> > > Regards,
> >> > > Sebastiaan
> >> > >
> >> > > > johan
> >> > > >
> >> > > >
> >> > > > On Tue, May 13, 2008 at 5:55 PM, Stefan Simik
> >> <[EMAIL PROTECTED]>
> >> > > > wrote:
> >> > > >
> >> > > >> I have one idea,
> >> > > >>
> >> > > >> the reason of the warnigs is, that parent of AjaxPagingNavigator
> is
> >> > > >> PagingNavigator,
> >> > > >> which has parent Panel ---> that is not parameterized.
> >> > > >>
> >> > > >> The same problem is with LoopItem, which extends the
> >> > > >> WebMarkupContainer ---> that is not parameterized.
> >> > > >>
> >> > > >> ? could this be the reason ?
> >> > > >>
> >> > > >>
> >> > > >>
> >> > > >>
> >> > > >>
> >> > > >>
> >> > > >> Stefan Simik wrote:
> >> > > >>> Mhmm, it is meaningful ;) I will know in future, thx
> >> > > >>>
> >> > > >>> One of the last occuring warning is, when working with
> >> > > >>> MarkupContainer#add(...) or #addOrReplace(...) method.
> >> > > >>>
> >> > > >>> Example: I have a simple AjaxPagingNavigator, to which I add a
> >> simple
> >> > > >>> ListView
> >> > > >>>
> >> -----------------------------------------------------------------------
> >> > > >>> ListView<Integer> menu = new ListView<Integer>("id", numbers){
> >> > > >>> //....populate metods
> >> > > >>> }
> >> > > >>> add(menu); //warning here
> >> > > >>>
> >> > > >>> The warning says:
> >> > > >>> "Type safety: The method add(Component...) belongs to the raw
> type
> >> > > >>> MarkupContainer.
> >> > > >>> References to generic type MarkupContainer<T> should be
> >> parameterized"
> >> > > >>>
> >> > > >>> I cannot find out, what's the warning reason, because ListView
> self
> >> is
> >> > > >>> parameterized.
> >> > > >>>
> >> > > >>>
> >> > > >> --
> >> > > >> View this message in context:
> >> > > >>
> >> > >
> >>
> http://www.nabble.com/Using-generics-with-some-non-generic-classes-in-Wicket-tp17208928p17212015.html
> >> > > >> Sent from the Wicket - User mailing list archive at Nabble.com.
> >> > > >>
> >> > > >>
> >> > > >>
> >> ---------------------------------------------------------------------
> >> > > >> To unsubscribe, e-mail: [EMAIL PROTECTED]
> >> > > >> For additional commands, e-mail: [EMAIL PROTECTED]
> >> > > >>
> >> > > >>
> >> > > >
> >> > >
> >> >
> >> > ---------------------------------------------------------------------
> >> > To unsubscribe, e-mail: [EMAIL PROTECTED]
> >> > For additional commands, e-mail: [EMAIL PROTECTED]
> >> >
> >> >
> >>
> >> ---------------------------------------------------------------------
> >> To unsubscribe, e-mail: [EMAIL PROTECTED]
> >> For additional commands, e-mail: [EMAIL PROTECTED]
> >>
> >>
> >
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: [EMAIL PROTECTED]
> > For additional commands, e-mail: [EMAIL PROTECTED]
> >
> >
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>
>