Использование CSS в составных компонентах в JAR - PullRequest
1 голос
/ 28 июля 2011

Я создал составной компонент в JSF2.Я прекрасно работаю.

Я хотел бы создать его как JAR для будущего использования.

Я следовал инструкциям здесь .

Однако, когда этоЧто касается CSS, браузер ссылается на местоположение относительно проекта, который использует jar, а не на местоположение Jar!

Я определил его так:

<h:outputStylesheet library="css" name="component.css" target="head" />

и я получаю это исключение: GET <a href="http://localhost:8080/MY" rel="nofollow">http://localhost:8080/MY</a>_APPLICATION/resources/component.css 404 (Not Found)

Он ищет его относительно проектов, а не проекта Jar!

Как я могу сделать это относительно проекта JAR?

EDITED

Дерево JAR:

META-INF
 --resource
   -- components
      myComp.xhtml
      components.css
   -- img
   -- scripts 
 --components.taglib.xml
 --faces.config.xml

Война - это обычный динамический проект:

WEB-INF
--lib
  myJar.jar
-- web.xml
-- faces-config.xml
testComp.xhtml

Ответы [ 2 ]

6 голосов
/ 28 июля 2011

Ваша структура каталогов JAR должна быть:

META-INF
 --resources
   -- components
        myComp.xhtml
   -- css                <-- The library defined in the stylesheet
        components.css   <-- A stylesheet resource in the library
   -- img
   -- scripts 
 --components.taglib.xml
 --faces.config.xml

Поскольку вы указываете имя библиотеки как css в теге h:outputStylesheet с именем ресурса как component.css, файл должен бытьприсутствует в каталоге с именем css, расположенном в каталоге META-INF/resources файла JAR.

Кроме того, рассмотрите возможность использования имени библиотеки, которое не обязательно конфликтует с другими именами, если вы собираетесь разрешить другим разработчикамиспользуйте свой JAR.

1 голос
/ 28 июля 2011

AFAIK, ресурс должен находиться в том же каталоге, что и составной компонент. Вы пытались поместить CSS в ту же библиотеку?

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