Available: | Confluence 2.2 and later |
Deprecated: | Confluence 2.10 - use the new Component Module Type instead |
We recommend that you use the new plugin module type, rather than the old-style Spring Component described below. Confluence still supports the earlier module type, but the new OSGi-based plugin framework fixes a number of bugs and limitations experienced by the old-style plugin modules.
A Spring module allows you to use standard Spring XML configuration tags.
A Spring module appears in atlassian-plugin.xml
like this:
1 2<spring name="Space Cleaner Job" key="spaceCleanerJob" class="org.springframework.scheduling.quartz.JobDetailBean"> ... any standard spring configuration goes here... </spring>
The above is equivalent to the following configuration in applicationContext.xml
:
1 2<bean id="spaceCleanerJob" class="org.springframework.scheduling.quartz.JobDetailBean"> ... </bean>
If you declare a Spring component that refers to another Spring component, you must ensure the referred component is declared first. For example:
1 2<spring name="Bean A" key="beanA" class="org.springframework.transaction.interceptor.TransactionProxyFactoryBean"> ... </spring> <spring name="Bean B" key="beanB" alias="soapServiceDelegator" class="org.springframework.aop.framework.ProxyFactoryBean"> <property name="target"> <ref local="beanA"/> </property> ... </spring>
Notice that beanB
refers to beanA
and that beanA
is declared before beanB. If you don't do it in this order, Confluence will complain that beanA
does not exist.
Component Module
Writing Confluence Plugins
Installing a Plugin
Rate this page: