Предупреждение Vaadin: версия виджета 6.7.2 не соответствует версии темы - PullRequest
3 голосов
/ 02 декабря 2011

Я довольно долго разрабатывал на 6.7.2, а вчера заметил странно выглядящую версию моего приложения.Я пошел к отладочной версии и нашел это:

Starting Vaadin client side engine. Widgetset: Xinco
Widget set is built on version: 6.7.2
Warning: widgetset version 6.7.2 does not seem to match theme version
Starting application xincovaadin-1652339780
Vaadin application servlet version: 6.7.2
Application version: NONVERSIONED
inserting load indicator
Making UIDL Request with params: init
Server visit took 30ms
JSON parsing took 0ms
Assuming CSS loading is not complete, postponing render phase. (.v-loading-indicator height == 0)

Как я могу это исправить?Я попытался восстановить свои виджеты без удачи.Строка 11 выше повторяется много раз.

См .: https://vaadin.com/forum/-/message_boards/view_message/953384

Редактировать:

Из Firebug:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta content="text/html; charset=utf-8" http-equiv="Content-Type">
<style type="text/css">
<link href="/xinco/VAADIN/themes/xinco/favicon.ico" type="image/vnd.microsoft.icon" rel="shortcut icon">
<link href="/xinco/VAADIN/themes/xinco/favicon.ico" type="image/vnd.microsoft.icon" rel="icon">
<title>Xinco</title>
<link rel="stylesheet" type="text/css" href="/xinco/VAADIN/themes/xinco/styles.css">
<link rel="stylesheet" href="http://localhost:8084/xinco/VAADIN/widgetsets/Xinco/easyuploads.css">
<link rel="stylesheet" href="http://localhost:8084/xinco/VAADIN/widgetsets/Xinco/expandingtextarea/expandingtextarea.css">
<link rel="stylesheet" href="http://localhost:8084/xinco/VAADIN/widgetsets/Xinco/stepper/stepper.css">
</head>
<body class="v-generated-body v-ff v-ff8 v-ff80 v-gecko v-win" scroll="auto">
<script type="text/javascript">
<iframe id="__gwt_historyFrame" src="javascript:false" style="position:absolute;width:0;height:0;border:0;overflow:hidden;" tabindex="-1">
<script src="/xinco/VAADIN/widgetsets/Xinco/Xinco.nocache.js?1323124855776" language="javascript">
<script src="http://localhost:8084/xinco/VAADIN/widgetsets/Xinco/swfupload.js" language="javascript">
<script defer="defer">
<script type="text/javascript">
<script type="text/javascript">
<div id="xincovaadin-1652339780" class="v-app v-theme-xinco v-app-Xinco">
<noscript>You have to enable javascript in your browser to use an application built with Vaadin.</noscript>
<iframe id="Xinco" src="javascript:''" style="position: absolute; width: 0pt; height: 0pt; border: medium none;" tabindex="-1">
</body>
</html>

Это то, что я вижу, когда смотрю на страницу источника:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<style type="text/css">html, body {height:100%;margin:0;}</style><link rel="shortcut icon" type="image/vnd.microsoft.icon" href="/xinco/VAADIN/themes/xinco/favicon.ico" /><link rel="icon" type="image/vnd.microsoft.icon" href="/xinco/VAADIN/themes/xinco/favicon.ico" /><title>Xinco</title>
</head>
<body scroll="auto" class="v-generated-body">
<script type="text/javascript">
//<![CDATA[
if(!vaadin || !vaadin.vaadinConfigurations) {
 if(!vaadin) { var vaadin = {}} 
vaadin.vaadinConfigurations = {};
if (!vaadin.themesLoaded) { vaadin.themesLoaded = {}; }
vaadin.debug = true;
document.write('<iframe tabIndex="-1" id="__gwt_historyFrame" style="position:absolute;width:0;height:0;border:0;overflow:hidden;" src="javascript:false"></iframe>');
document.write("<script language='javascript' src='/xinco/VAADIN/widgetsets/Xinco/Xinco.nocache.js?1323183529006'><\/script>");
}
vaadin.vaadinConfigurations["xincovaadin-1652339780"] = {appUri:'/xinco/vaadin', standalone: true, themeUri:"/xinco/VAADIN/themes/xinco", versionInfo : {vaadinVersion:"6.7.2",applicationVersion:"NONVERSIONED"},"comErrMsg": {"caption":"Communication problem","message" : "Take note of any unsaved data, and <u>click here<\/u> to continue.","url" : null},"authErrMsg": {"caption":"Authentication problem","message" : "Take note of any unsaved data, and <u>click here<\/u> to continue.","url" : null}};
//]]>
</script>
<script type="text/javascript">
//<![CDATA[
if(!vaadin.themesLoaded['xinco']) {
var stylesheet = document.createElement('link');
stylesheet.setAttribute('rel', 'stylesheet');
stylesheet.setAttribute('type', 'text/css');
stylesheet.setAttribute('href', '/xinco/VAADIN/themes/xinco/styles.css');
document.getElementsByTagName('head')[0].appendChild(stylesheet);
vaadin.themesLoaded['xinco'] = true;
}
//]]>
</script>
<script type="text/javascript">
//<![CDATA[
setTimeout('if (typeof Xinco == "undefined") {alert("Failed to load the widgetset: /xinco/VAADIN/widgetsets/Xinco/Xinco.nocache.js?1323183529006")};',15000);
//]]>
</script>
<div id="xincovaadin-1652339780" class="v-app v-theme-xinco v-app-Xinco" ><div class="v-app-loading"></div></div>
<noscript>You have to enable javascript in your browser to use an application built with Vaadin.</noscript></body>
</html>

Исходный код можно скачать с здесь .Проект является проектом NetBeans.

Ответы [ 2 ]

4 голосов
/ 05 декабря 2011

Какую тему вы используете? Предполагая, что это пользовательская тема, сообщения об ошибках исчезнут, если вы используете тему по умолчанию?

Также убедитесь, что:

  • Вы очистили свой проект и сервер приложений и перестроили проект
  • В вашем каталоге WEB-INF / lib нет двух разных версий Vaadin JAR
  • Вы не скопировали каталог тем из старого JAR Vaadin в каталог VAADIN / themes
  • Ваша (предполагаемая) пользовательская тема не наследует старую тему
  • Если вы проверяете загруженные файлы CSS в вашем браузере (Firebug пригодился, когда я попробовал это сделать), styles.css (или один из styles.css ') включает следующую начальную часть:

    .v-theme-version: после { содержание: "6_7_2"; } .v-theme-version-6_7_2 { дисплей: нет; }

Единственный способ, которым мне удалось создать эту ошибку, - унаследовать пользовательскую тему от темы другой версии Vaadin.

Обновление: Я проверил ваш проект, и я думаю, что знаю, что не так. При отображении сервлета в файле web.xml следует читать / VAADIN / * вместо / vaadin / *. Это должно работать без этих изменений, если вы копируете темы из вашего vaadin.jar в VAADIN / themes в вашем проекте. Обычно вы также должны копировать наборы виджетов Vaadin, но так как вы используете собственный набор виджетов, вам не нужно это делать.

Источник: https://vaadin.com/book/-/page/application.environment.html#section.web.web-xml

0 голосов
/ 05 декабря 2011

Вы извлекли папку VAADIN/themes из vaadin.jar, чтобы она обслуживалась статически?В этом случае вам нужно обновить этот каталог содержимым Vaadin 6.7.2.

В качестве альтернативы, вы создали папку в разделе VAADIN / themes с тем же именем, что и используемая вами тема Vaadin?

...