Динамическое меню JSF
От: fellow.sufferer Россия  
Дата: 15.08.05 12:27
Оценка:
Кто-нидь занимался задачей динамического формирования меню (JSF) в завсимости от прав авторизованного пользователя? Можете дать советы по граблям?
... << RSDN@Home 1.1.4 beta 7 rev. 447>>
Re: Динамическое меню JSF
От: Аноним  
Дата: 15.08.05 12:48
Оценка:
Здравствуйте, fellow.sufferer, Вы писали:

FS>Кто-нидь занимался задачей динамического формирования меню (JSF) в завсимости от прав авторизованного пользователя? Можете дать советы по граблям?


И что здесь сложного??
Re[2]: Динамическое меню JSF
От: fellow.sufferer Россия  
Дата: 15.08.05 13:47
Оценка: -2 :)
Здравствуйте, <Аноним>, Вы писали:

А>И что здесь сложного??


Ты не устал, пока ответ писал?
... << RSDN@Home 1.1.4 beta 7 rev. 447>>
Re[3]: Динамическое меню JSF
От: Аноним  
Дата: 15.08.05 14:13
Оценка:
Здравствуйте, fellow.sufferer, Вы писали:

FS>Ты не устал, пока ответ писал?


Нет

У нас меню с задачами для пользователя сейчас представляет собой обычное дерево.
Вскоре планируется напсать в виде горизонтального меню.
Re[4]: Динамическое меню JSF
От: fellow.sufferer Россия  
Дата: 16.08.05 06:46
Оценка:
Здравствуйте, <Аноним>, Вы писали:

А>У нас меню с задачами для пользователя сейчас представляет собой обычное дерево.

А>Вскоре планируется напсать в виде горизонтального меню.

Мои поздравления... А зачем ты мне это пишешь?
... << RSDN@Home 1.1.4 beta 7 rev. 447>>
Re[5]: Динамическое меню JSF
От: Аноним  
Дата: 16.08.05 07:22
Оценка:
Здравствуйте, fellow.sufferer, Вы писали:

Если создавать меню как какую-то компоненту JSF
и само меню представляет собой набор java скриптов
скорее всего грабли будут связаны именно с ними.
Также возможно проблемы с кодировкой.

Вот с такими граблями мы столкнулись.
Re[6]: Динамическое меню JSF
От: fellow.sufferer Россия  
Дата: 16.08.05 08:53
Оценка:
Здравствуйте, <Аноним>, Вы писали:

А>Здравствуйте, fellow.sufferer, Вы писали:


А>Если создавать меню как какую-то компоненту JSF

А>и само меню представляет собой набор java скриптов
А>скорее всего грабли будут связаны именно с ними.
А>Также возможно проблемы с кодировкой.

Спасибо. Для меня по приоритетам: создавать свой компонент = крайний вариант.
Если есть что-нибудь, чем можешь поделиться — буду до крайности благодарен..
А получить на выходе охота систему авторизации/аутентификации на jaas с ролями/правами в базе, динамическим построением менюшки, в зависимости от заданных прав...
При этом не прописывать в каждом пункте меню скриплетов типа: "если роль пользователя = 1, то отобразить, иначе.." и тд...

ох
... << RSDN@Home 1.1.4 beta 7 rev. 447>>
Re[7]: Динамическое меню JSF
От: Аноним  
Дата: 16.08.05 11:01
Оценка:
Здравствуйте, fellow.sufferer, Вы писали:

FS>Спасибо. Для меня по приоритетам: создавать свой компонент = крайний вариант.

FS>Если есть что-нибудь, чем можешь поделиться — буду до крайности благодарен..
FS>А получить на выходе охота систему авторизации/аутентификации на jaas с ролями/правами в базе, динамическим построением менюшки, в зависимости от заданных прав...
FS>При этом не прописывать в каждом пункте меню скриплетов типа: "если роль пользователя = 1, то отобразить, иначе.." и тд...

Давай раскажу как у меня это работает. Мож кто нибудь покритикует.

Настроен JBOSS с JAAS авторизации/аутентификации. Роли и пользователи в базе.
Есть компонента на JSF которая может рисовать в нтмл дерево
Есть класс котрый возвращает нтмл код для рисования дерева.

В зависимости от параметров которые приходят к компоненте соответственно строиться дерево с задачами
которые разрешены для данного пользователя.

Если не писать компоненту которая генерит какой-либо нтмл код для представления меню, то как
будет осуществляться навигация? Ведь стандартная компонента commandLink
генерит прибль. такой код
<a href="#" onclick="document.forms['_id2']['_id2:_idcl'].value='_id2:_id3'; document.forms['_id2'].submit(); return false;">

т.е. в этом коде присутсвуют определенные параметры которые генерит сам JSF движок которые потом анализируются в
и определяется что там произошло.

Может обычная таблица с наименованиями пунктов и с отступами в зависимости от вложенности.
Re[8]: Динамическое меню JSF
От: fellow.sufferer Россия  
Дата: 16.08.05 11:29
Оценка:
Здравствуйте, <Аноним>, Вы писали:

А>Давай раскажу как у меня это работает. Мож кто нибудь покритикует.


А>Настроен JBOSS с JAAS авторизации/аутентификации. Роли и пользователи в базе.

А>Есть компонента на JSF которая может рисовать в нтмл дерево
До этого места все замечтательно..

А>Есть класс котрый возвращает нтмл код для рисования дерева.

а эт не надо... если в жаве собственно тобой генится хтмл, терятся смысл использования жсф как такового!

А>Если не писать компоненту которая генерит какой-либо нтмл код для представления меню, то как будет осуществляться навигация? Ведь стандартная компонента commandLink

А>Может обычная таблица с наименованиями пунктов и с отступами в зависимости от вложенности.

строить дерево меню... элементы дерева — бины с полями "ссылка", "надпись" и тд...
строить однажды для сессии и пользовать в отображении

то есть меню выглядит на странице что-то вроде:
            <af:menuTree var="node" 
                         value="#{menuTree.model}" >
                  <f:facet name="nodeStamp">
                    <af:commandMenuItem text="#{node.label}"
                                        action="#{node.view}"/>
                  </f:facet>
             </af:menuTree>


в менюАдаптере:
 public MenuModel getModel() throws IntrospectionException
  {
    if (_model == null)
    {
      ViewIdPropertyMenuModel model = 
                             new ViewIdPropertyMenuModel(getInstance(),
                                                         getViewIdProperty());

и тд...

а построение меню:
  public TreeModel getModel() throws IntrospectionException
  {
    if (_model == null)
    {
            луукАп принципала;
            выборка дозволенных пунктов;
            
            создание соответствующих инстансов
       DemoMenuItem p1 = new DemoMenuItem(); 
       DemoMenuItem p2 = new DemoMenuItem(); 
       DemoMenuItem p3 = new DemoMenuItem(); 
       DemoMenuItem p4 = new DemoMenuItem(); 
             .....
             где DemoMenuItem - бин менюшного элемента
        
            построение дерева:
       List<DemoMenuItem> pages = new ArrayList<DemoMenuItem>();
       pages.add(p1);
       pages.add(p2);
       pages.add(p3);
             p3.setChildren(..(List)..);
             p3.setChildren(..(List)..);
         и тд..
             
      _model = new ChildPropertyTreeModel(pages, getChildProperty());
    }
    return _model;
  }


я еще не реализовал эту затею, надеюсь получится и тогда "нормальный" код выложу
... << RSDN@Home 1.1.4 beta 7 rev. 447>>
Re[9]: Динамическое меню JSF
От: Аноним  
Дата: 16.08.05 11:46
Оценка:
Здравствуйте, fellow.sufferer, Вы писали:

А>>Есть класс котрый возвращает нтмл код для рисования дерева.

FS>а эт не надо... если в жаве собственно тобой генится хтмл, терятся смысл использования жсф как такового!
При создании своей изощренной компоненты для JSF все равно надо писать нтмл код
который будет рисовать твою компонету. Ну да ладно.

А как будет открываться новый уровень в меню??? Или меню будет рисоваться полностью открытым?
Re[10]: Динамическое меню JSF
От: Dimonizhe  
Дата: 16.08.05 12:58
Оценка:
Здравствуйте, Аноним, Вы писали:

А>Здравствуйте, fellow.sufferer, Вы писали:


А>При создании своей изощренной компоненты для JSF все равно надо писать нтмл код


Бббббб...брателло!!!
Вспоминаем основы МВС )

Компонент должен сам правильно отрисовывать хтмл и иметь возможность настройки отрисовки

А>А как будет открываться новый уровень в меню??? Или меню будет рисоваться полностью открытым?



ессно, компонент меню принимает в себы модель меню и сам его сворачивает/разворачивает.
Re[11]: Динамическое меню JSF
От: Аноним  
Дата: 16.08.05 13:14
Оценка:
Здравствуйте, Dimonizhe, Вы писали:

А>>При создании своей изощренной компоненты для JSF все равно надо писать нтмл код


D>Бббббб...брателло!!!

D>Вспоминаем основы МВС )

D>Компонент должен сам правильно отрисовывать хтмл и иметь возможность настройки отрисовки

Я об этом писал выше насчет собственной компоненты.
Хотя fellow.sufferer почему-то сказал что это некрасиво.


А>>А как будет открываться новый уровень в меню??? Или меню будет рисоваться полностью открытым?

D>ессно, компонент меню принимает в себы модель меню и сам его сворачивает/разворачивает.

Насчет модели это понятно. КАк это будет реализовано в нтмл коде и с помощью чего вот что интересно??
Re: Динамическое меню JSF
От: GrolfCry  
Дата: 17.08.05 03:23
Оценка: -1
Здравствуйте, fellow.sufferer, Вы писали:

FS>Кто-нидь занимался задачей динамического формирования меню (JSF) в завсимости от прав авторизованного пользователя? Можете дать советы по граблям?

А чо вы паритесь вот здесь уже все написано — Struts Menu
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.