Как упаковать файлы javascript в приложение с портлетами - PullRequest
1 голос
/ 28 октября 2011

Я написал простой портлет, который использует jquery и flot. Мне нужно оставить опцию открытой, чтобы развернуть портет в стандартном портальном контейнере, таком как JBoss, а также перейти к существующему продукту, который использует собственный набор портлетов, Struts, Dojo.

Чтобы попытаться сохранить свою работу автономной, я сохранил все свои файлы js в подкаталоге относительно моего jsp, поэтому мой тег выглядит следующим образом:

<script language="javascript" type="text/javascript" src="javascript/flot/jquery.flot.js"></script>

Относительный путь правильный, но не найден в существующем контейнере портала. Я подозреваю, что его существующая инфраструктура javascript, dojo, устанавливает базовый путь всего приложения, поэтому моя спецификация относительного пути не связана с "." Если я укажу абсолютный путь и переместу мои js-файлы, это сработает.

<script language="javascript" type="text/javascript" src="/AppTopLevel/javascript/flot/jquery.flot.js"></script>

Я не хочу этого делать, хотя / AppTopLevel будет отличаться при развертывании автономного приложения.

Существует ли стандартный способ упаковки файлов javascript, относящихся к jsps, в приложении с портлетами, чтобы они работали в различных контейнерах портала и страницах, написанных другими пользователями, которые могут использовать конфликтующие библиотеки и пути?

1 Ответ

0 голосов
/ 02 ноября 2011

Поможет ли вам <% = request.getContextPath ()%>?

...