Thanks to all of you who offered help. I tried adding a script directly to the template as suggested by Colin and IT WORKED.
best wishes michael > In my Layout/default.vm I have a reference to both a CSS file and > global.js > > <SCRIPT SRC = "$context_path/javascripts/global.js"></SCRIPT> > <link href="$context_path/stylesheets/foo.css" rel="stylesheet" > type="text/css"> > > Furthermore when I have javascript specific to a template I include it > at the top of *that* template. > > Works for us. > > /c > > > You might not even need the class, I think most if not all of the > methods that are added are now in the standard TemplatePageAttributes > (although I haven't specifically checked). > > Cheers, > > Scott > -- > Scott Eade > Backstage Technologies Pty. Ltd. > http://www.backstagetech.com.au > .Mac Chat/AIM: seade at mac dot com > >> From: "Marc Lustig" <[EMAIL PROTECTED]> >> Reply-To: "Turbine Users List" <[EMAIL PROTECTED]> Date: >> Sat, 14 Dec 2002 03:07:09 +0100 >> To: "Turbine Users List" <[EMAIL PROTECTED]> >> Subject: AW: AW: adding Javascript >> >> Michael, >> >> I use >> >> $page.setScript("JavaScript", >> "text/javascript",$content.getURI("resources/global.js")) >> >> and this class: >> >> package de.geoconnect.audiotex.turbineext; >> >> import org.apache.turbine.util.template.TemplatePageAttributes; >> import org.apache.turbine.util.RunData; >> import org.apache.ecs.html.Script; >> import org.apache.ecs.html.Link; >> import org.apache.ecs.html.Style; >> >> public class ExtTemplatePageAttributes extends TemplatePageAttributes >> { private RunData data = null; >> >> /** >> * Default constructor. The init method must be called before use */ >> public ExtTemplatePageAttributes() >> { >> super(); >> } >> >> /** >> * Construct a new instance with the given RunData object. >> * >> * @param data a RunData instance >> */ >> public ExtTemplatePageAttributes(RunData data) >> { >> super(data); >> this.data = data; >> } >> >> /** >> * Initialise this instance with the given RunData object. >> * (ApplicationTool method) >> * >> * @param data Assumed to be a RunData instance >> */ >> public void init(Object data) >> { >> super.init(data); >> >> // we blithely cast to RunData as the runtime error thrown >> // if data is null or not RunData is appropriate. >> this.data = (RunData)data; >> } >> >> /** >> * Refresh method - does nothing >> */ >> public void refresh() >> { >> // empty >> } >> >> /** >> * Adds a LINK to a javascript file to the HEAD of the page. >> * >> * @param url A String. >> * @return A TemplatePageAttributesEx (self). >> */ >> public TemplatePageAttributes setScript(String url) >> { >> data.getPage().getHead().addElement(new Script().setSrc(url) >> .setType("text/javascript").setLanguage("JavaScript")); >> return this; >> } >> public TemplatePageAttributes setScript(String lang, String type, >> String url) >> { >> data.getPage().getHead().addElement(new Script() >> .setLanguage(lang).setType(type).setSrc(url)); >> return this; >> } >> /** >> * Adds a LINK to a CSS stylesheet to the HEAD of the page, allowing >> the * media type to be specified. >> * >> * @param url The value for the <code>href</code> attribute. >> * @param media The value for the <code>media</code> attribute. * >> @return a <code>TemplatePageAttributes</code> (self). >> */ >> public TemplatePageAttributes setStyleSheet(String url, String media) >> { >> data.getPage().getHead().addElement(new >> Link().setRel("stylesheet") >> .setType("text/css").setMedia(media).setHref(url)); >> return this; >> } >> >> // /** >> // * Adds a STYLE element to the HEAD of the page. >> // * >> // * @param styleText The content of the style element. >> // * @param media The value for the <code>media</code> attribute. >> // * @return a <code>TemplatePageAttributes</code> (self). >> // */ >> // public TemplatePageAttributes setStyleElement(String styleText, > String >> media) >> // { >> // Style style = new Style("text/css", styleText); >> // style.setMedia(media); >> // data.getPage().getHead().addElement(style); >> // return this; >> // } >> >> /** >> * Adds a STYLE element to the HEAD of the page with the provided >> content. >> * >> * @param styleText The contents of the <code>style</code> tag. * >> @return a <code>TemplatePageAttributes</code> (self). >> */ >> public TemplatePageAttributes setStyle(String styleText) >> { >> data.getPage().getHead().addElement(new Style("text/css", >> styleText)); >> return this; >> } >> >> } >> >> >> You have to register the class in your TR.props. >> >> Marc >> >> >> >> >>> -----Urspr�ngliche Nachricht----- >>> Von: michael shek sia lim [mailto:[EMAIL PROTECTED]] >>> Gesendet: Samstag, 14. Dezember 2002 01:20 >>> An: [EMAIL PROTECTED] >>> Betreff: Re: AW: adding Javascript >>> >>> >>> The discussion in the link below does not seem to be conclusive. Is >>> there any other solution to Javascript used in conjunction with >>> Velocity? >>> >>> cheers >>> michael >>> >>> >>> >>> >>> >>>> Hi, >>>> it is described in the list archive. >>>> Start here for example: >>>> >>> http://www.mail-archive.com/[email protected]/msg07518.html >>>> >>>> Marc >>>> >>>> >>>>> -----Urspr�ngliche Nachricht----- >>>>> Von: michael shek sia lim [mailto:[EMAIL PROTECTED]] >>>>> Gesendet: Freitag, 13. Dezember 2002 14:30 >>>>> An: [EMAIL PROTECTED] >>>>> Betreff: adding Javascript >>>>> >>>>> >>>>> Dear All, >>>>> >>>>> If a javascript is to be added to my Turbine application, where can >>>>> I find the <head> </head> pair in the setup so that I can achieve >>>>> what I intend to do? >>>>> >>>>> cheers >>>>> michael >>>>> >>>>> >>>>> >>>>> >>>>> -- >>>>> To unsubscribe, e-mail: >>>>> <mailto:[EMAIL PROTECTED]> >>>>> For additional commands, e-mail: >>>>> <mailto:[EMAIL PROTECTED]> >>>>> >>>> >>>> >>>> -- >>>> To unsubscribe, e-mail: >>>> <mailto:[EMAIL PROTECTED]> For additional >>>> commands, e-mail: <mailto:[EMAIL PROTECTED]> >>> >>> >>> >>> >>> -- >>> To unsubscribe, e-mail: >> <mailto:[EMAIL PROTECTED]> >> For additional commands, e-mail: >> <mailto:[EMAIL PROTECTED]> >> >> >> -- >> To unsubscribe, e-mail: > <mailto:[EMAIL PROTECTED]> >> For additional commands, e-mail: > <mailto:[EMAIL PROTECTED]> >> > > > -- > To unsubscribe, e-mail: > <mailto:[EMAIL PROTECTED]> > For additional commands, e-mail: > <mailto:[EMAIL PROTECTED]> > > > > -- > To unsubscribe, e-mail: > <mailto:[EMAIL PROTECTED]> For additional > commands, e-mail: <mailto:[EMAIL PROTECTED]> -- To unsubscribe, e-mail: <mailto:[EMAIL PROTECTED]> For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>
