Ian,
>This is the error I am getting below even though weather_xml has been
>defined in the application.cfm page
>
>i.e. <CFSET APPLICATION.weather_xml =XMLParse(cfhttp.FileContent)>
>
>ERROR IS
>----
>Element WEATHER_XML is undefined in APPLICATION.
>----
>
>My application.cfm page is
>
>----
><cfset Application.TimeStamp="#TimeFormat(now(), 'hh:mm:ss')#">
>
><CFIF (APPLICATION.TimeStamp EQ "") OR (DateDiff("n",
>APPLICATION.TimeStamp, TimeFormat(NOW(), "hh:mm:s")) GT 20)> <CFSET
>APPLICATION.TimeStamp = CreateTime(TimeFormat(NOW(), "hh"),
>TimeFormat(NOW(), "mm"), TimeFormat(NOW(), "s"))>
>
><cfhttp url="http://feeds.bbc.co.uk/weather/feeds/rss/5day/id/3314.xml"
>method="GET" resolveurl="No"></cfhttp>
><CFSET APPLICATION.weather_xml =XMLParse(cfhttp.FileContent)>
>
></CFIF>
The way that logic reads, the Application.TimeStamp will always be "less
than" 20 the first time the application is loaded--so your CFHTTP tag will
never run.
Change the code to something like:
<cfif
not structKeyExists(Application, "TimeStamp")
or
(dateDiff("n", Application.TimeStamp, now()) gt 20)>
<cfset Application.TimeStamp = now() />
<cfhttp
url="http://feeds.bbc.co.uk/weather/feeds/rss/5day/id/3314.xml"
method="GET" resolveurl="No"></cfhttp>
<cfset Application.weather_xml = xmlParse(cfhttp.FileContent) />
</cfif>
There's no need to convert your Application.TimeStamp variable to any
specific formatting--you can just set it to now().
-Dan
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~|
Adobe® ColdFusion® 8 software 8 is the most important and dramatic release to
date
Get the Free Trial
http://ad.doubleclick.net/clk;160198600;22374440;w
Archive:
http://www.houseoffusion.com/groups/CF-Talk/message.cfm/messageid:295321
Subscription: http://www.houseoffusion.com/groups/CF-Talk/subscribe.cfm
Unsubscribe:
http://www.houseoffusion.com/cf_lists/unsubscribe.cfm?user=11502.10531.4