Почему DTD работает в Mozilla 1.7.1 и не работает в FireFox 1.5?
Приветствую вас, уважаемые.
Только начинаю осваивать программирование под Mozill'а и вот во что уперся. Пробую реализовать приложение XULNote из обучающего курса на xulplanet.com В основном xul файле присутствует конструкция:
<!DOCTYPE window [ <!ENTITY % xulnoteDTD SYSTEM "chrome://xulnote/locale/xulnote.dtd"> %xulnoteDTD; ]>
И FireFox ругается на неё следующим образом:
Ошибка синтаксического анализа XML: ошибка обработки ссылки на внешнюю сущность Адрес: chrome://xulnote/content/xulnote.xul Строка номер 6, символ 1: %xulnoteDTD; ^
Всё вышеперечисленное прекрасно работает в Mozilla 1.7.1
Посоветуейте, пожалуйста, как адаптировать код к Firefox.
Заранее благодарен, Вячеслав
Проблема в chrome-адресе: chrome://xulnote/...
Посмотрите вот эту тему: http://xpoint.ru/forums/programming/XUL/thread/32396.xhtml
Владимир, попробовал открыть dtd'шку по прямой ссылке - пустая страница. Значит проблема в ссылке. Странно, в Mozillе всё подхватывается.
chrome://xulnote
?
Делал всё по туториалу, а именно:
- Создал внутри FireFox 'овой Chrome директории (у меня: C:\Program Files\Mozilla Firefox\chrome ) папку xulnote со следующей структурой:
xulnote |
|
+-- content
| +xulnote
| +- contents.rdf
| +- xulnote.css
| +- xulnote.js
| +- xulnote.xul
+-- locale
|
+en-us
| +xulonote
| +contents.rdf
| +xulnote.dtd
|
+ru-ru
|
+xulonote
|
+contents.rdf
+xulnote.dtd
- Далее в файле C:\Program Files\Mozilla Firefox\chrome\installed-chrome.txt Добавил следующие строчки:
content,install,url,resource:/chrome/xulnote/content/xulnote/
locale,install,url,resource:/chrome/xulnote/locale/ru-RU/xulnote/
locale,install,url,resource:/chrome/xulnote/locale/en-US/xulnote/
Вот так. Т.к. у меня FireFox 1.5 попробую последовать совету из ветки "Помогите новичку", Но буду благодарен за замечания по текущей реализации. Что не так может быть?
С уважением, Вячеслав.
PS: пойду реализовывать последнюю надежду, из ветки "помогите новичку"
Выяснилось, что дело было в именах entity — Gecko 1.8 не позволяет в них двоеточия, а Gecko 1.7 позволял. Кроме того installed-chrome.txt больше нет, вместо этого создается файл xulnote.manifest с таким содержанием:
content xulnote xulnote/content/xulnote/ xpcnativewrappers=yes locale xulnote en-US xulnote/locale/en-US/xulnote/
Хотя неправильно, конечно, устанавливать свое приложение прямо в каталог chrome Firefox'а. Надо было бы оформить его как расширение...