Wow, is about all I can say at the moment.  Ask and ye shall receive.

Thanks so very much.  I can see I'll be busy this weekend.

Thank you!!


> -----Original Message-----
> From: Scott Cadillac [mailto:[EMAIL PROTECTED]] 
> Sent: Friday, February 07, 2003 12:35 PM
> To: [EMAIL PROTECTED]
> Subject: Re: Witango-Talk: User Woes
> 
> 
> Hi Jamileh,
> 
> The special reserved Local$httpHeader variable allows you 
> control to a large degree the HTTP Response Header the 
> precedes your HTML output. Witango v5 gives even more control 
> and features with regards to Headers.
> 
> The HTTP Response Header is what tells the browser what is 
> being loaded, such as file type and when to expire the file. 
> Here is a quick little lesson I found on www.google.com that 
> might help you get started.
> 
> http://www.oreilly.com/catalog/httppr/chapter/http_pkt.html
> 
> Here is a basic example I use for all my Witango apps to 
> immediately expire my TAF file page content:
> 
> <@ASSIGN Local$httpHeader VALUE="Content-Type:
> text/html<@CRLF>Cache-Control: no-cache, max-age=0, must-revalidate,
> proxy-revalidate<@CRLF>Pragma: 
> no-cache<@CRLF><@USERREFERENCECOOKIE><@CRLF>">
> 
> You can assign this variable just about anywhere in a TAF 
> file I believe - but it's good practice to do it before any 
> output just in case you are using PUSH in a TAF.
> 
> Keep in mind that when you write to the Local$httpHeader in 
> Witango, that it overwrites the default HTTP Header Response 
> from Witango/IIS so you MUST include the 
> <@USERREFERENCECOOKIE> metatag with your assignment - else it 
> can break the user session.
> 
> To see your HTTP headers in action, you can use a proxy trace 
> tool or the Fake tools I have on my web-site at:
> 
> http://xml-extra.net/webpage.xmlx?node=6
> 
> FakeBrowser allows you to see your Witango HTTP Response 
> Headers when requesting a file to view, and FakeServer allows 
> you to see incoming HTTP Request Headers to a Server from a browser.
> 
> I also found a more advanced trace tool at the following URL, 
> which also traces SOAP Service calls, as well as normal HTTP 
> (the SOAP protocol is just HTTP with some extensions afterall):
> 
> http://www.pocketsoap.com/yatt/
> 
> This is what you see when you open www.witango.com with FakeBrowser:
> 
> ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> HTTP/1.0 200 OK
> Server: Microsoft-IIS/5.0
> Content-Location: http://www.witango.com/default.html
> Date: Fri, 07 Feb 2003 18:22:39 GMT
> Content-Type: text/html
> Accept-Ranges: bytes
> Last-Modified: Wed, 07 Aug 2002 13:30:23 GMT
> ETag: "801395163ec21:8a9"
> Content-Length: 751
> 
> <html>
> 
>  <head>
>   <LINK REL="SHORTCUT ICON" 
> HREF="http://www.witango.com/WinEditor.ico";>
>   <meta http-equiv="content-type" 
> content="text/html;charset=X-MAC-ROMAN">
>   <meta name="generator" content="WithImagination Pty Ltd">
>   <title>Welcome to Witango</title>
>  </head>
> 
> ..... more HTML......
> 
> ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> 
> Notice the 2 carriage-returns after the HTTP Header? This is 
> what separates the Header from the output content (in this case HTML).
> 
> There is a very wide range of possible HTTP properties to use 
> and can allow you to do all sorts of things like force file 
> downloads and automatic redirects. I have found this 
> knowledge to be invaluable.
> 
> The attached screen-shot shows the YATT trace tool with my 
> HTTP Request Header from my browser and then the subsequent 
> HTTP Response from the server below.
> 
> Hope this helps. Cheers....
> 
> Scott Cadillac
> VP, Research and Development
> Plus International Corp.
> 403-281-6090
> [EMAIL PROTECTED]
> http://www.plusinternational.com
> 
> Does your company have an Enterprise Information Portal? 
> Check out Salsa at www.plusinternational.com/flash/salsa.htm
> 
> ----- Original Message -----
> From: "Wilcox, Jamileh" <[EMAIL PROTECTED]>
> To: <[EMAIL PROTECTED]>
> Sent: Friday, February 07, 2003 10:37 AM
> Subject: RE: Witango-Talk: User Woes
> 
> 
> Scott - thanks for the explanation of the difference in 
> Refresh; I didn't realize that.
> 
> I would love to learn a lot more about caching and expiring 
> content with headers; I've read what's in the Tango 
> documentation but that's not enough info to help much if ya 
> don't have the background knowledge.  Any suggestions  for 
> further reading?
> 
> Thanks.     j
> 
> > -----Original Message-----
> > From: Scott Cadillac [mailto:[EMAIL PROTECTED]]
> > Sent: Thursday, February 06, 2003 5:52 PM
> > To: [EMAIL PROTECTED]
> > Subject: Re: Witango-Talk: User Woes
> >
> >
> > Hi Jamileh,
> >
> > Here's a tip that is usually helpful:
> >
> > In most versions of MSIE, using the "Refresh" button from 
> the toolbar 
> > triggers MSIE to reload the latest 'cached' content from the 
> > "Temporary Internet Files" folder on the user's computer. Typically 
> > MSIE will determine cache rules on it's own and usually 
> errors on the 
> > side of caution and cache things longer than usual.
> >
> > But....if you right-click on your page and choose "Refresh" 
> from the 
> > popup context menu, it will usually override this and get 
> the latest 
> > content (that has not expired yet) from your LAN proxy 
> cache (if you 
> > have one). I find this a bit more helpful, because most 
> proxies will 
> > expire content when they are supposed to.
> >
> > Learning everything you can about expiring your TAF output via the 
> > Local$httpHeader is very important with dynamic applications.
> >
> >
> > As for your CSV thing, try putting the <@assign name="httpHeader" 
> > .....> tag on the very first line of the last Results 
> Window in your 
> > TAF - and on the same line put <@PURGERESULTS> and your CSV output 
> > variable afterwards. This will eliminate any garbage spaces 
> and such.
> >
> > Oh, and turn debugging off in the file.
> >
> > Hope this helps. Cheers.....
> >
> >
> > ----- Original Message -----
> > From: "Wilcox, Jamileh" <[EMAIL PROTECTED]>
> > To: <[EMAIL PROTECTED]>
> > Sent: Thursday, February 06, 2003 3:37 PM
> > Subject: RE: Witango-Talk: User Woes
> >
> >
> > Phil  -  would having him hit Refresh in his browser do the same 
> > thing? (That would be easier over the phone than changing IE 
> > settings).
> >
> > On the csv problem, in the WriteFile.taf, I'm doing this:
> >
> > <@assign name="httpHeader" scope="local" value="Content-Type: <@var
> > local$filetype><@crlf>Content-Disposition: attachment; 
> > filename=<@dq><@var 
> > local$IncomingRFName><@dq><@crlf><@userreferencecookie><@crlf>">
> >
> >
> > Thank you!!
> >
> >
> > > -----Original Message-----
> > > From: Phil Wade [mailto:[EMAIL PROTECTED]]
> > > Sent: Thursday, February 06, 2003 4:23 PM
> > > To: [EMAIL PROTECTED]
> > > Subject: Re: Witango-Talk: User Woes
> > >
> > >
> > > Jamileh,
> > > Try turning the cache in IE to check for changes "every
> > visit to the
> > > page". This is in the settings of "Temporary Internet files".  IE 
> > > defaults to automatic, but it has been my experience that
> > with highly
> > > dynamic sites, IE does not always see changes to pages
> > immediately if
> > > set to automatic.  Your system may be logging him on and
> > the browser
> > > is returning the error that is now cached in his browser. 
>  You can 
> > > also control this on the server by expiring the content faster.
> > >
> > > With your csv issue, are you modifying the http header?
> > >
> > > Phil
> > >
> > > On 7/2/03 9:12 AM, "Wilcox, Jamileh"
> > <[EMAIL PROTECTED]> wrote:
> > >
> > > > Another oddball case (it's one of THOSE days).
> > > >
> > > > I've got a user (PC technician) who swears he gets an
> > > "invalid login"
> > > > message when he puts his username into this application,
> > > even at the
> > > > 'forgot password' prompt.  I can put in his username and
> > > password and
> > > > get logged in just fine; the app mailed him a new 
> password when I 
> > > > tried the 'forgot password' with his username.
> > > >
> > > > He also swears that he's cutting and pasting the 
> username & reset 
> > > > password directly from the email, which is what I'm doing.
> > > Of course,
> > > > he was typing the info in when I was on the phone with him.
> > > >
> > > > I've been on the phone with him, and he's been very 
> helpful.  He 
> > > > thinks maybe it's named pipes in SQL, or cookies in his
> > browser, or
> > > > because the browser is sending his username as a token to
> > > the server,
> > > > or ... (he's learning Cold Fusion, can you tell?)
> > > >
> > > > Can anyone think of *any* possibility that I should check
> > > before I go
> > > > across campus to his office and cut & paste the %#$^~! 
> fields in 
> > > > myself? I'm not very familiar with the logs, but I don't
> > > see anything
> > > > in them that would even touch on this.
> > > >
> > > > Thanks.     j
> > > >
> > > >
> > >
> > 
> ______________________________________________________________________
> > > > __
> > > > TO UNSUBSCRIBE: send a plain text/US ASCII email to
> > > [EMAIL PROTECTED]
> > > >               with unsubscribe witango-talk in the message body
> > >
> > > ______________________________________________________________
> > > __________
> > > TO UNSUBSCRIBE: send a plain text/US ASCII email to 
> > > [EMAIL PROTECTED]
> > >                 with unsubscribe witango-talk in the message body
> > >
> >
> > ______________________________________________________________
> > __________
> > TO UNSUBSCRIBE: send a plain text/US ASCII email to 
> > [EMAIL PROTECTED]
> >                 with unsubscribe witango-talk in the message body
> >
> > ______________________________________________________________
> > __________
> > TO UNSUBSCRIBE: send a plain text/US ASCII email to 
> > [EMAIL PROTECTED]
> >                 with unsubscribe witango-talk in the message body
> >
> 
> ______________________________________________________________
> __________
> TO UNSUBSCRIBE: send a plain text/US ASCII email to 
> [EMAIL PROTECTED]
>                 with unsubscribe witango-talk in the message body
> 
> ______________________________________________________________
> __________
> TO UNSUBSCRIBE: send a plain text/US ASCII email to 
> [EMAIL PROTECTED]
>                 with unsubscribe witango-talk in the message body
> 

________________________________________________________________________
TO UNSUBSCRIBE: send a plain text/US ASCII email to [EMAIL PROTECTED]
                with unsubscribe witango-talk in the message body

Reply via email to