added warnings regarding accidental usage of @Configurable on a managed bean (SPR-7216)
This commit is contained in:
parent
3d3f8f3219
commit
53ed9b282b
|
@ -2959,6 +2959,16 @@ public class Account {
|
|||
|
||||
</bean></programlisting>
|
||||
|
||||
<note>
|
||||
<para>Do not activate <interfacename>@Configurable</interfacename>
|
||||
processing through the bean configurer aspect unless you really
|
||||
mean to rely on its semantics at runtime. In particular, make sure
|
||||
that you do not use <interfacename>@Configurable</interfacename>
|
||||
on bean classes which are registered as regular Spring beans with
|
||||
the container: You would get double initialization otherwise, once
|
||||
through the container and once through the aspect.</para>
|
||||
</note>
|
||||
|
||||
<section id="aop-configurable-testing">
|
||||
<title>Unit testing <interfacename>@Configurable</interfacename>
|
||||
objects</title>
|
||||
|
|
|
@ -553,6 +553,17 @@ public void doSomething() {
|
|||
and must not expect any arguments. If the method needs to interact with
|
||||
other objects from the Application Context, then those would typically
|
||||
have been provided through dependency injection.</para>
|
||||
|
||||
<note>
|
||||
<para>Make sure that you are not initializing multiple instances
|
||||
of the same @Scheduled annotation class at runtime, unless you do
|
||||
want to schedule callbacks to each such instance. Related to this,
|
||||
make sure that you do not use @Configurable on bean classes which
|
||||
are annotated with @Scheduled and registered as regular Spring beans
|
||||
with the container: You would get double initialization otherwise,
|
||||
once through the container and once through the @Configurable aspect,
|
||||
with the consequence of each @Scheduled method being invoked twice.</para>
|
||||
</note>
|
||||
</section>
|
||||
|
||||
<section id="scheduling-annotation-support-async">
|
||||
|
|
Loading…
Reference in New Issue