UIProvider stacktrace

I created a Vaadin project with Maven archetype (using Netbeans).
Than I tried switching Servlet API from 2.4 to 3.0 with changes in attached web.xml

Now I get following stacktrace on project startup:


SEVERE: Servlet.service() for servlet [MyVaadinUI]
 in context with path 
[/BrazzoVaadin] threw exception
 [com.vaadin.server.ServiceException: com.vaadin.server.ServiceException: 
No UIProvider has been added and there is no "UI" init parameter.] with root cause
com.vaadin.server.ServiceException: No UIProvider has been added and there is no "UI" init parameter.
	at com.vaadin.server.ServletPortletHelper.checkUiProviders(ServletPortletHelper.java:179)
	at com.vaadin.server.VaadinService.onVaadinSessionStarted(VaadinService.java:740)
	at com.vaadin.server.VaadinService.createAndRegisterSession(VaadinService.java:699)
	at com.vaadin.server.VaadinService.doFindOrCreateVaadinSession(VaadinService.java:655)
	at com.vaadin.server.VaadinService.findOrCreateVaadinSession(VaadinService.java:596)
	at com.vaadin.server.VaadinService.findVaadinSession(VaadinService.java:479)
	at com.vaadin.server.VaadinService.handleRequest(VaadinService.java:1323)
	at com.vaadin.server.VaadinServlet.service(VaadinServlet.java:236)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:728)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:222)
	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:123)
	at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472)
	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:171)
	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:99)
	at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:953)
	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)
	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:408)
	at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1023)
	at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:589)
	at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:310)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
	at java.lang.Thread.run(Thread.java:724)

I already tried adding ‘UI’ or ‘UIProvider’ init-param in web.xml providing my UI class (which extends com.vaadin.ui.UI) but then I get error that my class doesn’t extend UIProvider.

How can I fix my setup ?

TIA

Sorry, forgot to attach web.xml…
13089.xml (903 Bytes)

For the “UI” (or “ui”) parameter you need to give the fully qualified class name of your UI class - the application should find the UI if you add this init parameter correctly.

Alternatively, you can use a custom UIProvider class, but that should not be necessary unless you want to customize UI class selection and instantiation e.g. based on the device type (mobile vs. desktop).

Thanks for replying, got it working again. Seems I made a silly mistake in my web.xml indeed…