Как получить изображение или JS из JAR на сервере в JSF (для пользовательского компонента) - PullRequest
0 голосов
/ 02 августа 2011

Я сделал пользовательский компонент JSF (он выглядит как выпадающий список (icefaces selectonemenu)), но он использует пару изображений (png) и немного javascript. Я делаю jar все, поэтому разработчики используют его как jar, скопированный в папку web-inf / lib. Изображение и js предназначены только для этого пользовательского компонента, поэтому я не могу заставить их поместить это изображение и js в его проект, он должен быть в МОЕМ jar.

Я все раздражаю, и это работает почти великолепно, только изображение и JS, я не заставляю их работать. Я не знаю, как ссылаться на них, находясь в банке. Я мог бы заставить их работать, пока они являются частью приложения, но не являются частью фляги. Как я должен сделать, чтобы получить их, например, в моем коде codedebegin?

Я использую JSF со льдом 1.8

Заранее спасибо !!

1 Ответ

1 голос
/ 02 августа 2011

Если вы уже используете JSF 2.0, он должен работать без проблем, когда вы используете аннотацию @ResourceDependency или @ResourceDependencies, которая может разрешать ресурсы на основе в папке JAR /META-INF/resources.

В JSF 1.x лучше всего создать собственный «сервлет ресурса», который сопоставляется с определенным шаблоном URL, например, /com.nahiko.resources/* и просто передает ресурсы из пути к классам в ответ HTTP. Базовый стартовый пример:

String path = "/META-INF/resources" + request.getPathInfo();
InputStream input = getClass().getResourceAsStream(path);
OutputStream output = response.getOutputStream();
// ...

Документируйте в вашем JAR, что этот сервлет должен быть отображен. Или, если вы нацелены на контейнер Servlet 3.0, просто добавьте аннотацию @WebServlet для автоматической регистрации.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...