According to Macromedia's CFMX References on Using
UDFs effectively:
"Consider the following techniques for making your
functions available to your ColdFusion pages:
If you consistently call a small number of UDFs,
consider putting their definitions on the
Application.cfm page.
If you call UDFs in only a few of your application
pages, do not include their definitions in
Application.cfm.
If you use many UDFs, put their definitions on one or
more ColdFusion pages that contain only UDFs. You can
include the UDF definition page in any page that calls
the UDFs. "
I agree with everything it states, and I think it
might help more if CFMX predefines a UDF library path
such as UDFlib under CFMX installation instead of an
arbitrary directory, I can see several benefits of
this approach:
consistency -- especially helpful for large
development environment;
easier for reuse -- across applications/projects
(this one is similar to CFMODULE's dot notation
method, I love it)
And I don't see any downside of it. Thanks.
DL
--- Matthew Walker <[EMAIL PROTECTED]> wrote:
> These two cfmx UDFs from cflib.org may help:
>
>
> <cfscript>
> function DSNExists(DSN) {
> var factory =
>
createObject("java","coldfusion.server.ServiceFactory");
> var DSNs =
> factory.getDataSourceService().getNames();
> return
> yesNoFormat(listFindNoCase(arrayToList(DSNs),
> DSN));
> }
> </cfscript>
>
>
> <!---
> Verifies a DSN is working.
>
> @param dsn Name of a DSN you want to verify.
> (Required)
> @return Returns a Boolean.
> @author Ben Forta ([EMAIL PROTECTED])
> @version 1, October 15, 2002
> --->
> <CFFUNCTION NAME="VerifyDSN" RETURNTYPE="boolean">
> <CFARGUMENT NAME="dsn" TYPE="string"
> REQUIRED="yes">
>
> <!--- initialize variables --->
> <CFSET var dsService="">
> <!--- Try/catch block, throws errors if bad DSN
> --->
> <CFSET var result="true">
>
>
> <CFTRY>
> <!--- Get "factory" --->
> <CFOBJECT ACTION="CREATE"
> TYPE="JAVA"
>
> CLASS="coldfusion.server.ServiceFactory"
> NAME="factory">
> <!--- Get datasource service --->
> <CFSET
> dsService=factory.getDataSourceService()>
> <!--- Validate DSN --->
> <CFSET result=dsService.verifyDatasource(dsn)>
>
> <!--- If any error, return FALSE --->
> <CFCATCH TYPE="any">
> <CFSET result="false">
> </CFCATCH>
> </CFTRY>
>
> <CFRETURN result>
> </CFFUNCTION>
>
> > -----Original Message-----
> > From: Li Chunshen (Don) [mailto:[EMAIL PROTECTED]]
> > Sent: Wednesday, 1 January 2003 11:37 a.m.
> > To: CF-Talk
> > Subject: Request Time
> >
> >
> > specs: CFMX on WinXP Pro; remote datasources on
> Win2k
> > Pro.
> >
> > Requestimeout set to 40 seconds via CF admin
> (server
> > has been rebooted, my friend). Expect cf server
> to
> > throw requestimeout msg, better, gracefully,
> > regardless of the types of request. Problem, when
> > trying to connect to an unavailable remote
> datasource
> > (who can garanttee it's always available?),
> instead
> > of 40 seconds timeout, CFMX keeps on trying and
> trying
> > though asked otherwise, what's going on? With
> CF5, an
> > undocumented tag of Is_CFdatasource takes care of
> the
> > problem very well. Thanks.
> >
> > DL
> >
> >
> >
> >
> >
> > __________________________________________________
> > Do you Yahoo!?
> > Yahoo! Mail Plus - Powerful. Affordable. Sign up
> now.
> > http://mailplus.yahoo.com
> >
>
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~|
Archives: http://www.houseoffusion.com/cf_lists/index.cfm?forumid=4
Subscription:
http://www.houseoffusion.com/cf_lists/index.cfm?method=subscribe&forumid=4
FAQ: http://www.thenetprofits.co.uk/coldfusion/faq
Signup for the Fusion Authority news alert and keep up with the latest news in
ColdFusion and related topics. http://www.fusionauthority.com/signup.cfm