Class SpringComponentInjector
- java.lang.Object
-
- org.apache.wicket.injection.Injector
-
- org.apache.wicket.spring.injection.annot.SpringComponentInjector
-
- All Implemented Interfaces:
org.apache.wicket.application.IComponentInstantiationListener
,org.apache.wicket.IBehaviorInstantiationListener
public class SpringComponentInjector extends org.apache.wicket.injection.Injector implements org.apache.wicket.application.IComponentInstantiationListener, org.apache.wicket.IBehaviorInstantiationListener
IComponentInstantiationListener
that injects component and behavior properties annotated withSpringBean
annotations. To install in yourapplication.init() callgetComponentInstantiationListeners().add(new SpringComponentInjector(this));
Only Wicket
Component
s andBehavior
s are automatically injected, other classes such asSession
,Model
, and any other POJO can be injected by callingInjector.get().inject(this)
in their constructor.- Author:
- Igor Vaynberg (ivaynberg), Justin Lee
-
-
Constructor Summary
Constructors Constructor Description SpringComponentInjector(org.apache.wicket.protocol.http.WebApplication webapp)
Constructor used when spring application context is declared in the spring standard way and can be located throughWebApplicationContextUtils.getRequiredWebApplicationContext(ServletContext)
.SpringComponentInjector(org.apache.wicket.protocol.http.WebApplication webapp, org.springframework.context.ApplicationContext ctx)
ConstructorSpringComponentInjector(org.apache.wicket.protocol.http.WebApplication webapp, org.springframework.context.ApplicationContext ctx, boolean wrapInProxies)
Constructor
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description void
inject(Object object)
void
onInstantiation(org.apache.wicket.behavior.Behavior behavior)
void
onInstantiation(org.apache.wicket.Component component)
static void
setDefaultContext(org.apache.wicket.protocol.http.WebApplication webapp, org.springframework.context.ApplicationContext context)
Set the default context for the given webapp.
-
-
-
Constructor Detail
-
SpringComponentInjector
public SpringComponentInjector(org.apache.wicket.protocol.http.WebApplication webapp)
Constructor used when spring application context is declared in the spring standard way and can be located throughWebApplicationContextUtils.getRequiredWebApplicationContext(ServletContext)
.- Parameters:
webapp
- wicket web application
-
SpringComponentInjector
public SpringComponentInjector(org.apache.wicket.protocol.http.WebApplication webapp, org.springframework.context.ApplicationContext ctx)
Constructor- Parameters:
webapp
- wicket web applicationctx
- spring's application context
-
SpringComponentInjector
public SpringComponentInjector(org.apache.wicket.protocol.http.WebApplication webapp, org.springframework.context.ApplicationContext ctx, boolean wrapInProxies)
Constructor- Parameters:
webapp
- wicket web applicationctx
- spring's application contextwrapInProxies
- whether or not wicket should wrap dependencies with specialized proxies that can be safely serialized. in most cases this should be set to true.
-
-
Method Detail
-
inject
public void inject(Object object)
- Specified by:
inject
in classorg.apache.wicket.injection.Injector
-
onInstantiation
public void onInstantiation(org.apache.wicket.Component component)
- Specified by:
onInstantiation
in interfaceorg.apache.wicket.application.IComponentInstantiationListener
-
onInstantiation
public void onInstantiation(org.apache.wicket.behavior.Behavior behavior)
- Specified by:
onInstantiation
in interfaceorg.apache.wicket.IBehaviorInstantiationListener
-
setDefaultContext
public static void setDefaultContext(org.apache.wicket.protocol.http.WebApplication webapp, org.springframework.context.ApplicationContext context)
Set the default context for the given webapp.- Parameters:
webapp
- web applicationcontext
- context to use as default if non is explicitely specified for the injector
-
-