Struts2 не находит файлы HTML

Я использую Struts2 с плагином соглашения. Я знаю, как заставить его находить бездействующие файлы JSP, но я не могу заставить его отображать бездействующие файлы HTML. У меня есть целый набор файлов HTML, сгенерированных javadoc, которые я хочу отобразить в своем файле WAR (который является документацией WAR для фактического приложения).

Я поместил все файлы HTML в папку WEB-INF/content. Когда я удаляю .html из ссылок, файл найден, но я не собираюсь делать это для сотен файлов javadoc.

Как заставить его отображать index.html, review-summary.html и т. д.?


person Gary Kephart    schedule 28.10.2015    source источник
comment
Где те файлы? Что вы получаете, пытаясь получить к ним доступ, 404?   -  person Andrea Ligios    schedule 29.10.2015
comment
Вам не нужно ничего делать: тип результата зависит от расширения файла. Поддерживаемые расширения: jsp,ftl,vm,html,html.(sic) struts. apache.org/docs/convention-plugin.html Если это общедоступный документ Javadoc, вы также можете переместить его в общедоступное место. Примечание: похоже, они написали html дважды, когда это должно быть, конечно, htm и html.   -  person Quaternion    schedule 29.10.2015
comment
Но у них разные соглашения, javadoc использует имена CamelCase и такие соглашения, как -. Кто-нибудь еще может поэкспериментировать... что вы пробовали и каковы результаты?   -  person Quaternion    schedule 29.10.2015
comment
Я предоставил дополнительную информацию выше.   -  person Gary Kephart    schedule 06.11.2015


Ответы (1)


Если вам действительно нужно получить доступ к этим файлам через действие, вам нужно установить html как расширение действия. Для этого используйте константу struts.action.extension.

<constant name="struts.action.extension" value="action,html,htm,,"/>

НО, если эти файлы являются статическими ресурсами, почему вы вообще хотите получить к ним доступ через действия? Вытащите их из WEB-INF и получите к ним прямой доступ.

person Aleksandr M    schedule 06.11.2015
comment
Так что лучше было бы разместить эти файлы на верхнем уровне, а не в WEB-INF/content? Плагин соглашения не управляет ни одним из файлов, которые не находятся в разделе WEB-INF/content? - person Gary Kephart; 09.11.2015
comment
К файлам в web-inf нельзя получить доступ напрямую, плагин соглашения S2 не имеет значения. - person Aleksandr M; 10.11.2015