[Seasar-user:2436] Re: [S2JSF] Myfaces1.0.9 のJSCookMenu利用時の挙動について
Naotaka Yoshikawa
nao
2005年 7月 27日 (水) 11:32:25 JST
吉川です。
Shinpei Ohtani (2005/07/26 10:52):
> 大谷(shot)です。
>
> 解決策とかでなくて、申し訳ないのですが
> このMyfaces1.0.9のJSCookMenuが上手く動かないのは
> MyFacesのMLでも結構問題になっているようです。
> (さらっと見たことがある程度ですが・・・^^;JIRAにもあがってたかな?)
>
>
> 一度、見てみてはいかがでしょうか?
情報有難うございます。
早速JIRAを見てみた所、下記が該当するような感じです。
http://issues.apache.org/jira/browse/MYFACES-196
NightlyでFixしたとのことですので、下記のビルドで試した所、
奇数番目のメニューが表示されない現象は、改善されていました。
http://cvs.apache.org/builds/myfaces/nightly/myfaces-20050725.zip
よって、この件は、MyFacesの次回リリースを待つことにします。
それまでは、「m:rendered="false"」でダミーメニューを作ることにします。
ひがさんへ
今回の件は、MyFaces側の修正で回避できそうですのでS2JSF側の調査は、
よいと思います。ご協力ありがとうございました。
ただ、上記のNightlyでも下記の件
([Seasar-user:2279])は、発生しています。
こちらの方は、どこかで対応して頂けたら有難いです。
>>taneさんの件というと、[Seasar-user:2279]のことですよね?
>>同様のエラーは、MyFaces1.0.9でも出ています。
>>ERROR org.apache.myfaces.custom.navmenu.NavigationMenuUtils - Invalid
>>child with id _id20of component with id : hoge : must be
>>UINavigationMenuItem or UINavigationMenuItems, is of type :
>>org.seasar.jsf.component.UIText
>>
>>これも、少し調べたのですが、どうも、spanタグにMyfacesの
>>拡張タグ(x:UINavigationMenuItem)を指定してネストさせた場合に、
>>S2JSFは、UITextを返すようですが、MyFacesは、UINavigationMenuItem or
>>UINavigationMenuItemsを期待しているために
>>このようなエラーを吐くようです。
>>以下が該当ソースの抜粋です。
>>---------------------------------------------------------------
>>org.apache.myfaces.custom.navmenu.NavigationMenuUtils
>> public static List getNavigationMenuItemList(UIComponent uiComponent)
>> {
>> List list = new ArrayList(uiComponent.getChildCount());
>> for(Iterator children = uiComponent.getChildren().iterator();
>>children.hasNext();)
>> {
>> UIComponent child = (UIComponent)children.next();
>> if(child instanceof UINavigationMenuItem)
>> {
>> ........
>> } else
>> if(child instanceof UISelectItems)
>> {
>> ........
>> } else
>> {
>> FacesContext facesContext = FacesContext.getCurrentInstance();
>> log.error("Invalid child with id " + child.getClientId(facesContext) +
>> "of component with id : " + uiComponent.getClientId(facesContext) +
>> " : must be UINavigationMenuItem or UINavigationMenuItems, is of
>>type : " +
>> (child != null ? child.getClass().getName() : "null"));
>> }
>> }
>>
>> return list;
>> }
>>---------------------------------------------------------------
>>
以上 よろしくお願いします。
--
+++++++++++++++++++++++++++++++++++++++
Name : Naotaka Yoshikawa
Seasar-user メーリングリストの案内