Spring integration

I write simple servlet to integrate Vaadin 7 with Spring.

  • as feature, autowiring views.


https://github.com/xpoft/spring-vaadin

Hi,
this artifact is missing :confused:

It’s ok now.

Hello, please post a complete example project using this servlet.

Thanks

Hi,

I was able to perform the integration the same way you put in the github. But after loading the UI and refreshing the page (F5), the following exception comes up:


java.lang.IllegalStateException: UI id has already been defined
	at com.vaadin.ui.UI.doInit(UI.java:981)
	at com.vaadin.server.VaadinSession.createUI(VaadinSession.java:1028)
	at com.vaadin.server.AbstractCommunicationManager.handleBrowserDetailsRequest(AbstractCommunicationManager.java:2476)
	at com.vaadin.server.VaadinServlet.service(VaadinServlet.java:352)
	at com.vaadin.server.VaadinServlet.service(VaadinServlet.java:258)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
	at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:235)
	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
	at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:190)
	at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:92)
	at org.jboss.web.tomcat.security.SecurityContextEstablishmentValve.process(SecurityContextEstablishmentValve.java:126)
	at org.jboss.web.tomcat.security.SecurityContextEstablishmentValve.invoke(SecurityContextEstablishmentValve.java:70)
	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
	at org.jboss.web.tomcat.service.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:158)
	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:330)
	at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:829)
	at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:598)
	at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
	at java.lang.Thread.run(Thread.java:662)

Have you face this issue?

Thanks.

Hi,
it works fine, thanks !

Here is a simple sample application, type

mvn clean install tomcat7:run-war-only

to run, then go to http://localhost:8080
12546.zip (5.58 KB)

Thank you for this. This is very, very handy. It was exactly what I was looking for and planning to do myself.
Too bad it cannot be compiled on 1.6

Here you are.

https://github.com/xpoft/spring-vaadin/tree/sample

Go to http://locahost:9090

You can’t use “session” scope for UI. Only “request” scope.
If you want to save state between refreshes, try this
Creating an application that preserves state on refresh
.

Vaadin 7.0.0.beta2 is already supported!

Vaadin 7.0.0.beta3 supported

Just as addition, I have updated the spring vaadin7 integration of the dellroad-stuff to beta3. While not complete, it might already be useful. See
here
for details.

Works, perfect. Thanks

New feature. You can use Spring Bean as source for Vaadin SystemMessages.


Example

I published library in
Vaadin Directory
. Please, use Vaadin repo.

  • Vaadin 7.0.0.beta4 support
  • Enhanced SystemMessages bean support. Now you can use localized messages! Simple & quick. See sample project.

Hi, Alexander.
Seems that version 1.4.7 causes a Nullpointerexception with vaadin Beta 4:


java.lang.NullPointerException
	ru.xpoft.vaadin.SpringUIProvider.getUIClass(SpringUIProvider.java:38)
	com.vaadin.server.BootstrapHandler.handleRequest(BootstrapHandler.java:129)
	com.vaadin.server.AbstractCommunicationManager.handleOtherRequest(AbstractCommunicationManager.java:2414)
	com.vaadin.server.VaadinServlet.service(VaadinServlet.java:344)
	com.vaadin.server.VaadinServlet.service(VaadinServlet.java:215)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
	org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:311)
	org.springframework.security.web.access.intercept.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:116)
	org.springframework.security.web.access.intercept.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:83)
	org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:323)
	org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:113)
	org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:323)
	org.springframework.security.web.session.SessionManagementFilter.doFilter(SessionManagementFilter.java:101)
	org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:323)
	org.springframework.security.web.authentication.AnonymousAuthenticationFilter.doFilter(AnonymousAuthenticationFilter.java:113)
	org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:323)
	org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter.doFilter(SecurityContextHolderAwareRequestFilter.java:54)
	org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:323)
	org.springframework.security.web.savedrequest.RequestCacheAwareFilter.doFilter(RequestCacheAwareFilter.java:45)
	org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:323)
	org.springframework.security.web.authentication.ui.DefaultLoginPageGeneratingFilter.doFilter(DefaultLoginPageGeneratingFilter.java:91)
	org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:323)
	org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java:182)
	org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:323)
	org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:105)
	org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:323)
	org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:87)
	org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:323)
	org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:173)
	org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:237)
	org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:167)

BTW, thx for the great add on

Do you have ‘context:spring-configured/’ in your spring config?

oupssss. I missed this one.

thx!

I absolutely love your add-on and am using it in my application but please consider some more documentation when you change your API. I have to spend alot of time figuring out what changed and why it changed everytime I try to upgrade.