The documentation on @Lookup annotation reads:

When used with component scanning or any other mechanism that filters out abstract beans, provide stub implementations of your lookup methods to be able to declare them as concrete classes.

However it looks like it's possible to define an abstract class, annotated with @Component, with an abstract @Lookup-annotated method, and have Spring replace it with a concrete implementation. So this limitation doesn't seem to hold any longer.

Comment From: pivotal-issuemaster

@urisimchoni Please sign the Contributor License Agreement!

Click here to manually synchronize the status of this Pull Request.

See the FAQ for frequently asked questions.

Comment From: pivotal-issuemaster

@urisimchoni Thank you for signing the Contributor License Agreement!

Comment From: quaff

Confirmed.

Comment From: jhoeller

I've revised the section a bit differently, turning it into recommendations and still referring to potential use of stub methods - but not in the context of component scanning anymore, good catch there! And thanks for the pull request, in any case...