Назад | Перейти на главную страницу

Сервер Ubuntu и исключение Tomcat 6 WebApp SecurityUtil

Я выполняю чистую установку Сервер Ubuntu 9.10 с Tomcat 6, установленным из установки Ubuntu. Когда я загружаю веб-приложение через Tomcat Manager, и оно запускается автоматически при загрузке с /etc/init.d/tomcat6 start мои библиотеки библиотек в моих веб-приложениях WebContent/WEB-INF/lib выбросить исключение.

Я использую Проект РИМ для моего RSS-канала, который отлично работает на моем локальном сервере tomcat, который я тестирую через Eclipse. Однако, когда я запускаю его на Ubuntu Tomcat, я получаю исключение ServletException:

javax.servlet.ServletException: Could not initialize class com.sun.syndication.feed.synd.SyndFeedImpl
    org.apache.catalina.security.SecurityUtil.execute(SecurityUtil.java:294)
    org.apache.catalina.security.SecurityUtil.doAsPrivilege(SecurityUtil.java:162)

Я предполагаю, что мне нужно изменить один из файлов в /etc/tomcat6/policy.d/, который создает файл /var/cache/tomcat6/catalina.policy. Но я не знаю, что менять. Помогите, пожалуйста!

Хорошо, у меня есть кое-что, что работает.

Я отредактировал /etc/tomcat6/policy.d/01system.policy и добавил внизу:

// Grant WebApps All Permission
grant codeBase "file:/var/lib/tomcat6/webapps/-" {
    permission java.security.AllPermission;
};

Сейчас это работает, но не уверен, что это правильно.

Вы можете полностью отключить диспетчер безопасности для Tomcat.

редактировать /etc/default/tomcat6 и установить TOMCAT6_SECURITY к нет.

TOMCAT6_SECURITY=no

(Убедитесь, что строка не прокомментирована)

Однако убедитесь, что вы понимаете последствия этого.