Yes, I'm using 1.0.9, the latest from CVS.  It looks like 1.0.9 started using 
the AddResource interface to have the javascripts & styles automatically added. 
 If you look at the links they generate, they go to:

/faces/myFacesExtensionResource/navmenu.NavigationMenuItem/1112283493000/jscookmenu/JSCookMenu.js

Or a similar link, which I assume gets handled by the faces extension resource 
filter.  However, the images (based on looking in 
/src/components/org/apache/myfaces/custom/navmenu/resources/jscookmenu/ThemeOffice/theme.js)
 are being looked for in a context-relative location:

var cmThemeOfficeBase = 'jscookmenu/ThemeOffice/'; 
...
itemRight: '<img alt="" src="' + cmThemeOfficeBase + 'blank.gif">',
...

I don't see how these can be resolved without having 
jscookmenu/ThemeOffice/*.gif in a relative location.  

Note that I'm even getting this with the 1.0.9 RC2 examples war file.  Image 
not found place-holders in the nav menu.

-----Original Message-----
From: Aaron Bartell [mailto:[EMAIL PROTECTED] 
Sent: Thursday, March 31, 2005 1:46 PM
To: MyFaces Discussion
Subject: Re: Jscookmenu - ThemeOffice - Images not displaying?

What version of MyFaces are you using?  I had the same problem when I went to 
MyFaces 1.0.9.  When I went back to 1.0.7 and everything was back to normal. 

Take a look at the <head>...</head> section of the page produced by MyFaces 
that has a jsCookMenu on it - do you see a bunch of extra style sheets and 
javascript links that you didn't specify in your JSP? (that is what I saw in my 
pages after upgrading to 1.0.9)


HTH
Aaron Bartell

Neal Haggard wrote:

>I realized when I saw the subject come up that I really have two questions.  
>The question I asked in my last note being a bit more pressing.  The other 
>question is I'm seeing the styles & the javascript is rendering for the 
>jscookMenu, however the internal images that the javascript loads on the right 
>hand side of the sub-child elements are not rendering.  I get the image not 
>found placeholder (the infamous red 'X').  Is there something else I need to 
>add to my Extensions Filter configuration to let that work? 
>
>-----Original Message-----
>From: Neal Haggard [mailto:[EMAIL PROTECTED]
>Sent: Thursday, March 31, 2005 1:11 PM
>To: MyFaces Discussion
>Subject: Jscookmenu - ThemeOffice - Images not displaying?
>
>I'm attempting to use the jscookmenu as an actionmenu in a table, to allow 
>table actions per row.  When I click on the link in the second column (to call 
>#{selectContactBean.overview}, it properly chooses the correct row from the 
>dataTable, but when choosing the #{selectContactBean.overview} action from the 
>x:jscookMenu, it does not.  Any ideas why this isn't working, and more 
>importantly how I can fix it so I can do this?
>
>Here's a snippet of my JSP:
>
><h:dataTable value="#{selectContactBean.myContacts}" 
>   var="contact"
>   binding="#{selectContactBean.contactTable}">
>  <h:column>
>    <x:jscookMenu layout="hbr" theme="ThemeOffice" >
>      <x:navigationMenuItem id="showActions" 
> icon="#{resources['actions.showActions.image']}" itemLabel=" ">
>        <x:navigationMenuItem id="overview" 
> icon="#{resources['actions.overview.image']}"                     
>         itemLabel="#{resources['actions.overview.txt']}" 
> action="#{selectContactBean.overview}"/>
>        <x:navigationMenuItem id="copy" 
> icon="#{resources['actions.copy.image']}" 
>         itemLabel="#{resources['actions.copy.txt']}" action="copy" />
>        <x:navigationMenuItem id="delete" 
> icon="#{resources['actions.delete.image']}" 
>         itemLabel="#{resources['actions.delete.txt']}" action="delete" />
>        <x:navigationMenuItem id="summary" split="true" 
> icon="#{resources['actions.summary.image']}" 
>         itemLabel="#{resources['actions.summary.txt']}" action="summary" />
>      </x:navigationMenuItem>
>    </x:jscookMenu>
>  </h:column>
>  <h:column>
>    <f:facet name="header">
>      <h:outputText value="#{resources['column.contacts.contact.txt']}" />
>    </f:facet>
>       <h:commandLink action="#{selectContactBean.overview}">
>      <h:outputText value="#{contact.name}" />
>       </h:commandLink>
>  </h:column>
></h:dataTable>
>
>Here's a piece of my selectContactBean:
>
>/**
> * Handle retrieving & selecting contacts from a user's contacts.
> */
>public class SelectContactBean extends AbstractBaseBean {
>    /** UIData object so we can see what row was selected. */
>    private UIData contactTable;
>
>    /**
>     * Get the contact table
>     * 
>     * @return Returns the contactTable.
>     */
>    public UIData getContactTable() {
>        return contactTable;
>    }
>
>    /**
>     * Set the contact table.
>     * 
>     * @param contactTable The contactTable to set.
>     */
>    public void setContactTable(UIData contactTable) {
>        this.contactTable = contactTable;
>    }
>
>    /**
>     * Get a list of the user's contacts.
>     * 
>     * @return A List holding all the contacts for the current user.
>     */
>    public List getMyContacts() {
>        return getVisit().getUser().getContacts();
>    }
>
>    /**
>     * Get the contact that was selected and, if successful, navigate to the
>     * overview page for that contact.
>     * 
>     * @return Navigation outcome string
>     */
>    public String overview() {
>        return getContact();
>    }
>
>    /**
>     * Use the contactTable UI component to get the selected contact. Verify
>     * they are still in the datastore and set the contact as the current
>     * contact.
>     * 
>     * @return Navigation outcome string
>     */
>    public String getContact() {
>        FacesContext facesContext = getFacesContext();
>        
>        // Get the selected row as a Contact
>        Contact contact = (Contact) contactTable.getRowData();
>
>        // Set the current contact on our visit
>        getVisit().setCurrentContact(contact);
>
>        // Success
>        return Constants.SUCCESS_OUTCOME;
>    }
>}
>
>  
>

Reply via email to