DOJO не работает под Tomcat 5.x? - PullRequest
0 голосов
/ 01 апреля 2012

У меня есть JSP, который использует DOJO Datepicker. Он отлично работает на моем ноутбуке, где у меня установлен Netbeans6.9 / tomcat 6.x. Однако, когда я загружаю его в свой хостинг, DOJO Datepicker не отображается, в то время как остальная часть страницы отображается нормально!

Мое веб-приложение разработано с использованием Java Struts2.

Я сравнил исходный код между двумя средами (локальной и удаленной). И я заметил, что это не влияет на удаленную страницу. Где на локальной странице это переводится в некоторую конфигурацию DOJO.

Удаленная страница:

<head>
<title>Profile</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link href="MainLayout.css" rel="stylesheet" type="text/css">
</head>

Локальная страница:

<head>
   <title>Contract Profile</title>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    <link href="MainLayout.css" rel="stylesheet" type="text/css">
    <script language="JavaScript" type="text/javascript">
// Dojo configuration
djConfig = {
    isDebug: false,
    bindEncoding: "UTF-8"
      ,baseRelativePath: "/sm/struts/dojo/"
      ,baseScriptUri: "/sm/struts/dojo/"
     ,parseWidgets : false

};
</script>

<script language="JavaScript" type="text/javascript"
    src="/sm/struts/dojo/struts_dojo.js"></script>

<script language="JavaScript" type="text/javascript"
    src="/sm/struts/ajax/dojoRequire.js"></script>
<link rel="stylesheet" href="/sm/struts/xhtml/styles.css" type="text/css"/>

<script language="JavaScript" src="/sm/struts/utils.js" type="text/javascript"> </script>
<script language="JavaScript" src="/sm/struts/xhtml/validation.js" type="text/javascript"></script>
<script language="JavaScript" src="/sm/struts/css_xhtml/validation.js" type="text/javascript"></script>
</head> 

Кроме того, FireBug выдает объекту dojo не определенное сообщение при удаленной загрузке страницы. Это явные признаки того, что он не ведет себя одинаково.

Но вопрос в том, что мне делать, так оно и есть? Ваша помощь очень ценится, потому что я действительно теряю сознание.

1 Ответ

0 голосов
/ 01 апреля 2012

«dojo не определено» означает, что dojo не загружен.

Перейдите на вкладку сети в firebug и найдите полный путь для dojo.js

http://mydomain.com/contextPath/static/dojo/dojo.js

Скорее всего, это будетбыть красным, что означает, что firefox не может загрузить ресурс.

Возможно, проблема в следующем:

  • Файлы dojo находятся по другому пути.ContextPaths могут отличаться в вашей среде разработки и рабочей среде, и вы жестко закодировали ее для своей среды разработки.
  • Ваш сценарий сборки, который создает файл war, не включал JavaScript dojo и полностью отсутствует в рабочей среде.окружающая среда.
...