myfaces-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "William Hoover" <whoo...@nemours.org>
Subject RE: [Trinidad] How to add a custom JavaScript resource script
Date Wed, 23 May 2007 15:22:10 GMT
Danny,
 
Thanks for your help! I noticed that the new LibraryScriptlet(String libraryName, String[]
functions) passes the script directly into the libraryName. Would I just replace "YourScript"
with the actual js functions (i.e. "function(){...}") or would I use an identifier for the
library name and pass in the function names as a String array?
 
Thanks,
Will
 
-----Original Message-----
From: Danny Robinson [mailto:dannyjrobinson@gmail.com]
Sent: Wednesday, May 23, 2007 10:12 AM
To: MyFaces Discussion
Subject: Re: [Trinidad] How to add a custom JavaScript resource script


The simplest route I found was the following:

Copy your YourScript.js to META-INF/adf/jsLibs in your custom component jar.

Then in your renderer add the following code.  This will cause your script to be added only
once the first time your component is used in a page. 

    @Override
    protected void findTypeConstants(Type type)
    {

        super.findTypeConstants(type);
        scriptLib = new LibraryScriptlet("YourScript", null);

    }
    
    @Override
    protected void encodeAll(FacesContext context, RenderingContext arc, UIComponent component,
FacesBean bean) throws IOException
    {

        // output the popup javascript library
        scriptLib.outputScriptlet(context, arc);

        ...do your encoding here

    }
    
    private Scriptlet scriptLib;

Regards,

Danny


On 5/23/07, William Hoover < whoover@nemours.org> wrote: 

I was wondering if anyone knows how to add a js resource in Trinidad? I have a custom component
that needs to render a script. I noticed that there is a org.apache.myfaces.trinidadinternal.renderkit.core.xhtml.XhtmlUtils
class that has the writeLibImport(FacesContext context, RenderingContext arc, Object libURL)
and addLib(FacesContext context, RenderingContext arc, Object libKey) methods. Is this the
correct approach? Is there a better way to add the script without referring to a implicit
URL? Can the org.apache.myfaces.trinidadinternal.renderkit.core.xhtml.jsLibs.AliasedScriptlet
class be used to accomplish this?




-- 
Chordiant Software Inc.
www.chordiant.com 

Mime
View raw message