Add-on http://vaadin.com/addon/springvaadinintegration
Documentation http://vaadin.xpoft.ru/
SpringVaadinIntegration 4.0.x
SpringVaadinIntegration 3.2.x
SpringVaadinIntegration 3.1.x
SpringVaadinIntegration 3.x
SpringVaadinIntegration 2.x
SpringVaadinIntegration 1.x
You should use "transient" attribute for ApplicationContext and other's context's beans.
@Autowired
private transient ApplicationContext applicationContext;
- Vaadin 8.x support
- Vaadin 7.6 support
- Vaadin 7.3 support
- Vaadin 7.2 support
- Update libraries versions: Spring Framework, slf4j, apache shiro, maven
- Session scoped UI hasn't supported anymore :-(
Vaadin 7.2.x -> SpringVaadinIntegration 3.x Vaadin 7.1.x -> SpringVaadinIntegration 2.x Vaadin 7.0.x -> SpringVaadinIntegration 1.x
- Add initial OSGI support. Thx to vladimirfx.
- Add ability to initialize the plugin in a separate method. Thx to cmjartan.
- Vaadin 7.1 support
Vaadin 7.1.x -> SpringVaadinIntegration 2.x Vaadin 7.0.x -> SpringVaadinIntegration 1.x
- Add servlet config parameter "contextConfigLocation". Path to Spring configuration.
- Session scoped UI improvements.
- Add custom UI providers support (servlet "UIProvider" property). Thx to mpilone.
- Now you can use @Scope("session") for UI, instead of @PreserveOnRefresh. Bean with "prototype" scope it's the same as class without @PreserveOnRefresh (create new instance for each new page). Other types of scope will store UI in the session and it'll be reused.
- VaadinMessageSource. Use VaadinSession instead of UI
- ShiroSecurityNavigator. Add @RequiresAuthentication, @RequiresGuest, @RequiresUser support.
- NPE fix in DiscoveryNavigator. Thx to mpilone.
- Add portlet support (SpringVaadinPortlet). Thx to matthiasgasser.
- Vaadin 7.0.0
- Vaadin 7.0.0.beta10 Vaadin changes. Now UI.getContent() return instance of Component. Replace: DiscoveryNavigator navigator = new DiscoveryNavigator(this, getContent()); With: DiscoveryNavigator navigator = new DiscoveryNavigator(this, this);
- Add @RequiresPermissions support
- Add Apache Shiro support. Simple check for roles.
- String VaadinView.scope renamed to boolean VaadinView.cached. Be careful.
- Vaadin 7.0.0.beta6
- replace AspectJ with static access to the application context. Now you can remove 'context:spring-configured/'
- add view scopes: prototype (default) and ui
- Vaadin 7.0.0.beta5
- Java 6.0 support
fix caching
- Simplify DiscoveryNavigator. It uses Spring Root Context to autowiring Vaadin Views, and AspectJ for non-managed classes.
- You should add 'context:spring-configured/' to your spring config. See sample project.
- Now serialization & deserialization work perfect.
- Vaadin 7.0.0.beta4 support
- Enhanced SystemMessages bean support. Now you can use localized messages! Simple & quick. See sample project.
- Use can use VaadinMessageSource, it's more simple way to use Spring MessageSource
- Add SystemMessages bean support. Now you can use Spring Beans as source for SystemMessages.
- Vaadin 7.0.0.beta3
- Improve DiscoveryNavigator (cache, performance). Now you should set "basePackage" in DiscoveryNavigator constuctor. Multi-jars, enhanced scanning already supported.
- Fix serialization.
- DiscoveryNavigator. Migrate from WebApplicationContext to ApplicationContext
- Add Vaadin 7.0.0.beta2 support
- Custom DescoveryNavigator
Default. Add all view-beans from root package:
DiscoveryNavigator navigator = new DiscoveryNavigator(applicationContext, UI.getCurrent().getPage().getCurrent(), display);
navigator.navigateTo(UI.getCurrent().getPage().getFragment());
Disable add view-beans to Navigator. You can do it manual.
DiscoveryNavigator navigator = new DiscoveryNavigator(applicationContext, UI.getCurrent().getPage().getCurrent(), display, false);
navigator.addBeanView("view1", MyView.class);
navigator.navigateTo(UI.getCurrent().getPage().getFragment());
or you can manual discover beans in a package
navigator.discoveryViews("ru.xpoft.vaadin.test");
you can exclude some packages
navigator.discoveryViews("ru.xpoft.vaadin.test", new String[] {"ru.xpoft.vaadin.test.one", "ru.xpoft.vaadin.test.two"})
- Autowiring UI
- DiscoveryNavigator