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 with SpringBean
annotations.
To install in yourapplication.init() call
getComponentInstantiationListeners().add(new SpringComponentInjector(this));
Only Wicket Component
s and Behavior
s are automatically injected, other classes
such as Session
, Model
, and any other POJO can be injected by calling
Injector.get().inject(this)
in their constructor.
- Author:
- Igor Vaynberg (ivaynberg), Justin Lee
-
Constructor Summary
ConstructorsConstructorDescriptionSpringComponentInjector
(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(jakarta.servlet.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
Modifier and TypeMethodDescriptionvoid
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.Methods inherited from class org.apache.wicket.injection.Injector
bind, get, inject
-
Constructor Details
-
SpringComponentInjector
Constructor used when spring application context is declared in the spring standard way and can be located throughWebApplicationContextUtils.getRequiredWebApplicationContext(jakarta.servlet.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 Details
-
inject
- Specified by:
inject
in classorg.apache.wicket.injection.Injector
-
onInstantiation
- Specified by:
onInstantiation
in interfaceorg.apache.wicket.application.IComponentInstantiationListener
-
onInstantiation
- 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
-