/ / vaadin `Erreur de communication: vérifier la correspondance des servlets` - java, servlets, vaadin

vaadin `erreur de communication: vérifier les servlets mappage` - java, servlets, vaadin

J'ai écrit une application simple en utilisant vaadin.

@Title("PMC")
@Component("pmcVaadin")
@Scope("prototype")
public class PmcUi extends UI {

@Autowired
private ContentLayout contentLayout;

@Autowired
private TabContent tabs;

@Override
protected void init(VaadinRequest request) {
VerticalLayout mainLayout = new VerticalLayout();
//        mainLayout.addComponent(contentLayout.getContent());
mainLayout.addComponent(tabs.createTab("Projects", "Developers"));
mainLayout.setSizeFull();
setContent(mainLayout);
}

}

Onglets - mon TabContent composant, étendu de TabSheet. Mais quand je clique sur l’onglet, j’ai une erreur:

Communication problem Take note of any unsaved data, and click here or press ESC to continue. *UIDL could not be read from server. Check servlets mappings. Error code: 404*

ma web.xml ressemble à ça

    <?xml version="1.0"?>
<web-app xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
version="2.5">

<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>
classpath:/pmc-web-context.xml
</param-value>
</context-param>

<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>

<servlet>
<servlet-name>another-pmc-servlet</servlet-name>
<servlet-class>ru.xpoft.vaadin.SpringVaadinServlet</servlet-class>
<init-param>
<param-name>beanName</param-name>
<param-value>pmcVaadin</param-value>
</init-param>
</servlet>

<servlet>
<servlet-name>pmc-servlet</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<init-param>
<param-name>contextConfigLocation</param-name>
<param-value></param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>

<servlet-mapping>
<servlet-name>another-pmc-servlet</servlet-name>
<url-pattern>/VAADIN/*</url-pattern>
</servlet-mapping>

<servlet-mapping>
<servlet-name>pmc-servlet</servlet-name>
<url-pattern>/JSP/*</url-pattern>
</servlet-mapping>

<servlet>
<servlet-name>jsp</servlet-name>
<servlet-class>org.apache.jasper.servlet.JspServlet</servlet-class>
</servlet>

<servlet-mapping>
<servlet-name>jsp</servlet-name>
<url-pattern>/WEB-INF/jsp/*</url-pattern>
</servlet-mapping>

</web-app>

Et j'ai accès à la page en utilisant l'URL http://localhost:8080/pmc-web/VAADIN.

Réponses:

0 pour la réponse № 1

Afin de résoudre le problème, j’ai ajouté le mappeur pour /* vaadin servlet.

<servlet-mapping>
<servlet-name>another-pmc-servlet</servlet-name>
<url-pattern>/*</url-pattern>
</servlet-mapping>