This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.
Pages: [1] 2
1
Web Server - Ask For Help / Re: Memory Issues
« on: June 09, 2009, 02:46:38 PM »
Follow-up -
I just have determined that the leak appears to be caused by the latest Replicate. I will follow up with CapeSoft.
FYI for those who use both.
I just have determined that the leak appears to be caused by the latest Replicate. I will follow up with CapeSoft.
FYI for those who use both.
2
Web Server - Ask For Help / Memory Issues
« on: June 09, 2009, 01:02:48 PM »
Anyone seeing these kinds of memory issues? It looks like memory leaking. I don't remember ever seeing the usage so high.
First off, I'm using Process Explorer to view memory in concert with the task manager.
In an older web server application (4.31 - one of the PR releases early on), memory would start around 20MB, jump up to about 60-70MB and stay there. Fine. Has been running for months without issue.
An updated site now with 4.32 - the memory starts at 20MB, but after a few days, jumps to 400-420MB. This is private bytes memory from process explorer.
So - made a test - simple site with a login form. Setup a javascript refresh on that page for 5 seconds and ran two instances under IE. It's been running for only 30 minutes and the memory usage is up to 180MB already.
Monitoring the web server window, I can see only two session ID's - so no new sessions are being created.
As I write this, the physical memory use approached 230MB and then dropped to 170MB, HOWEVER, the private bytes is climbing (which indicates memory was paged out since physical ran out). From Process Explorer's help file:
Private Bytes represents the amount of private virtual memory a process has allocated and is the value that will rise of a process exhibiting a memory leak bug.
So.... sounds like a memory leak. We've had older web servers running for months with no memory problems - so something in the newer releases.
TIA for anyone's help.
First off, I'm using Process Explorer to view memory in concert with the task manager.
In an older web server application (4.31 - one of the PR releases early on), memory would start around 20MB, jump up to about 60-70MB and stay there. Fine. Has been running for months without issue.
An updated site now with 4.32 - the memory starts at 20MB, but after a few days, jumps to 400-420MB. This is private bytes memory from process explorer.
So - made a test - simple site with a login form. Setup a javascript refresh on that page for 5 seconds and ran two instances under IE. It's been running for only 30 minutes and the memory usage is up to 180MB already.
Monitoring the web server window, I can see only two session ID's - so no new sessions are being created.
As I write this, the physical memory use approached 230MB and then dropped to 170MB, HOWEVER, the private bytes is climbing (which indicates memory was paged out since physical ran out). From Process Explorer's help file:
Private Bytes represents the amount of private virtual memory a process has allocated and is the value that will rise of a process exhibiting a memory leak bug.
So.... sounds like a memory leak. We've had older web servers running for months with no memory problems - so something in the newer releases.
TIA for anyone's help.
3
Web Server - Ask For Help / Problem: Always Redirect To Secure Site - redirects to port 0
« on: June 03, 2009, 09:03:26 AM »
Hi
As per the documentation for secure sites, I created another webserver object and set the port to 80 and clicked "Always Redirect To Secure Site" with the same WebHandler.
Works - except that it redirects to https://blahblah.com:0 for port 0.
After going through the NT code - found out you need to set _RedirectToHttpsPort to the port to redirect to.
Added an embed right after the webserver object _AlwaysRedirect is set to 1 in the WebServer procedure to set _RedirectToHttpsPort to 443 and now it works.
Want to make sure this is the proper way to do this and would appreciate the documentation be updated to reflect this. I could not find anything further in the docs or forum either.
Version 4.32
As per the documentation for secure sites, I created another webserver object and set the port to 80 and clicked "Always Redirect To Secure Site" with the same WebHandler.
Works - except that it redirects to https://blahblah.com:0 for port 0.
After going through the NT code - found out you need to set _RedirectToHttpsPort to the port to redirect to.
Added an embed right after the webserver object _AlwaysRedirect is set to 1 in the WebServer procedure to set _RedirectToHttpsPort to 443 and now it works.
Want to make sure this is the proper way to do this and would appreciate the documentation be updated to reflect this. I could not find anything further in the docs or forum either.
Version 4.32
4
Web Server - Ask For Help / Re: Is there any way to display login screen on timeout automatically
« on: February 02, 2009, 04:38:22 PM »
Hi Alex, I do that now using javascript and a timer. When it expires, it forces the location to the login page. Also shows the countdown in a span on all my pages when logged in.
Do a search for "countdown javascript".
Do a search for "countdown javascript".
5
Web Server - Ask For Help / Re: Suggestion: allow hooking for busy.
« on: January 30, 2009, 11:08:39 AM »
I just moved showbusy out of the object, added a call to it within browseTable, and within the global sv function (all.js).
Works like a champ for what I need. Added some free modal dialog scripts, and now I have a "Please Wait..." show up along with disabling the page. I've got some filters that could take many seconds to process (specialized sort orders too) - that's why the need (a busy indicator image just didn't work for me).
Whatever later on that will work similarly and easy to implement - that would be cool. (Probably the prepending the template-entered javascript).
Thanks for whatever you can - appreciate all the hard work into this product.
Cheers!
Works like a champ for what I need. Added some free modal dialog scripts, and now I have a "Please Wait..." show up along with disabling the page. I've got some filters that could take many seconds to process (specialized sort orders too) - that's why the need (a busy indicator image just didn't work for me).
Whatever later on that will work similarly and easy to implement - that would be cool. (Probably the prepending the template-entered javascript).
Thanks for whatever you can - appreciate all the hard work into this product.
Cheers!
6
Web Server - Ask For Help / Re: Suggestion: allow hooking for busy.
« on: January 30, 2009, 09:38:40 AM »
Hi Bruce, thanks for the changes! Help quite a bit...
Ok. Now this works great when I use the sort header on the browse. Calls browseTable.sort, which calls browseTable.sv and calls browseTable.showbusy. Then hidebusy gets called when the response is returned.
HOWEVER, I'm using a form with fields that reset the browse below it (filtering mechanism). The problem here is that each field's onchange event calls sv - which of course does not call showbusy. OK, so I add javascript code in the template for that field's onchange to show the busy manually. Now the sv call gets overwritten with my own onchange code plus nextfocus() call. Now this does not call sv, which of course, doesn't do a ajax request, thereby just not working.
I'm also wondering why you have showbusy within an object, whereas hidebusy outside it. There should only be one element for busy, regardless of the number of browses on a page.
Perhaps this can be moved out of the object. And then the call to showbusy within the public sv call. You could also delay showbusy with a timer - no response after .5 to 1 second - call showbusy. For those really quick requests, don't show it.
Another option is to prepend the template set onchange code for the field to the existing code you generate instead of replacing it.
For now, I'm going to try a few things - all of which require changes to nettalk source at some point.
Thanks!
Ok. Now this works great when I use the sort header on the browse. Calls browseTable.sort, which calls browseTable.sv and calls browseTable.showbusy. Then hidebusy gets called when the response is returned.
HOWEVER, I'm using a form with fields that reset the browse below it (filtering mechanism). The problem here is that each field's onchange event calls sv - which of course does not call showbusy. OK, so I add javascript code in the template for that field's onchange to show the busy manually. Now the sv call gets overwritten with my own onchange code plus nextfocus() call. Now this does not call sv, which of course, doesn't do a ajax request, thereby just not working.
I'm also wondering why you have showbusy within an object, whereas hidebusy outside it. There should only be one element for busy, regardless of the number of browses on a page.
Perhaps this can be moved out of the object. And then the call to showbusy within the public sv call. You could also delay showbusy with a timer - no response after .5 to 1 second - call showbusy. For those really quick requests, don't show it.
Another option is to prepend the template set onchange code for the field to the existing code you generate instead of replacing it.
For now, I'm going to try a few things - all of which require changes to nettalk source at some point.
Thanks!
Hi,
I've moved that code into it's own function for PR30 as you suggest.
Incidentally the location of the graphic is governed by CSS, so you can change it if you like.
cheers
Bruce
7
Web Server - Ask For Help / Suggestion: allow hooking for busy.
« on: January 28, 2009, 01:41:31 PM »
Hi,
I have a few browses that take a few seconds to "refresh" when using the buttons (first/last/next) and some other reset controls (from a form). The busy indicator does show, however, it's in the lower right - IMO, bad place since the user doesn't know what's going on and isn't paying attention there. Plus they can do other things.
I need to hook in my own busy handling that disables the form and shows a more pronounced "please wait". I noticed the js call for showbusy, and where it gets hidden (in the GreenAll function). I've done this in my own forms, just now ones that are nt template driven.
I can probably hook in my own function for showbusy, but not really for GreenAll unless I replace the function.
Please consider taking the code within GreenAll() to hide the busy graphic to a separate function. Perhaps hidebusy?
I will booger up the nettalk code for now, but hate to do that.
I'm on 4.31 pr28.
Thanks.
I have a few browses that take a few seconds to "refresh" when using the buttons (first/last/next) and some other reset controls (from a form). The busy indicator does show, however, it's in the lower right - IMO, bad place since the user doesn't know what's going on and isn't paying attention there. Plus they can do other things.
I need to hook in my own busy handling that disables the form and shows a more pronounced "please wait". I noticed the js call for showbusy, and where it gets hidden (in the GreenAll function). I've done this in my own forms, just now ones that are nt template driven.
I can probably hook in my own function for showbusy, but not really for GreenAll unless I replace the function.
Please consider taking the code within GreenAll() to hide the busy graphic to a separate function. Perhaps hidebusy?
I will booger up the nettalk code for now, but hate to do that.
I'm on 4.31 pr28.
Thanks.
8
Web Server - Share Knowledge / Re: Downloading any file and forcing the browser to show "save file"
« on: December 11, 2008, 01:07:27 PM »
Hi Bruce,
I'm on 4.29 - but apparently you are aware of this already based on other topics on content-disposition. I won't upgrade until things stabilize anyhow.
Did you include a way to change content-disposition in later builds? For that matter - any way of changing the actual header?
Thanks.
Dave
I'm on 4.29 - but apparently you are aware of this already based on other topics on content-disposition. I won't upgrade until things stabilize anyhow.
Did you include a way to change content-disposition in later builds? For that matter - any way of changing the actual header?
Thanks.
Dave
Hi
yes, I think you'll find an example of this in the FileDownload example.
cheers
Bruce
9
Web Server - Share Knowledge / Downloading any file and forcing the browser to show "save file"
« on: December 05, 2008, 09:20:00 AM »
Just wanted to share this. Basically wanted a way to server up ANY file and have the user save/open it.
Basically, you have to send a different header than what NT sends.
Create a new web page, and set the header to other. Uncheck Send Header.
Then put the code below under Processed Code, Priority 500 (must be 500, before calling the header routine).
Obviously, you have to setup lFilename as the full filename to download - remember security issues too. (I get the filename using GetValue, validate the login and location of the file is ok).
lCT is the content type - set to x-download
lFN is the filename only
FYI - The 'content-disposition' header tag is what causes the dialog box to show up on the browser, allowing the user to save or open the file.
You could also modify the content type and remove the disposition based on the extension of the file.
You might want to add other header tags to deal with caching, dates, etc - but this appears to work for me at this time the way it is.
BRUCE: It would be VERY COOL to setup utility functions to change/add header tags before sending the header out. Take a look at the header() function within PHP.
Also - unchecking the "Send HTTP Header" doesn't work - that's why the code above has to be at priority 500.
Hope this helps to other people....
Cheers!
Basically, you have to send a different header than what NT sends.
Create a new web page, and set the header to other. Uncheck Send Header.
Then put the code below under Processed Code, Priority 500 (must be 500, before calling the header routine).
Code: [Select]
! set our content type
lCT = 'application/x-download'
! send custom header
packet = 'HTTP/1.0 200 OK<13,10>' & |
'Content-Type: ' & CLIP(lCT) & '<13,10>' & |
'Content-Disposition: attachment; filename=' & CLIP(lFN) & '<13,10>' & |
'<13,10>'
do sendpacket
! send it
p_web._SendFile(lFileName,NET:NoHeader)
! return without footer
return
Obviously, you have to setup lFilename as the full filename to download - remember security issues too. (I get the filename using GetValue, validate the login and location of the file is ok).
lCT is the content type - set to x-download
lFN is the filename only
FYI - The 'content-disposition' header tag is what causes the dialog box to show up on the browser, allowing the user to save or open the file.
You could also modify the content type and remove the disposition based on the extension of the file.
You might want to add other header tags to deal with caching, dates, etc - but this appears to work for me at this time the way it is.
BRUCE: It would be VERY COOL to setup utility functions to change/add header tags before sending the header out. Take a look at the header() function within PHP.
Also - unchecking the "Send HTTP Header" doesn't work - that's why the code above has to be at priority 500.
Hope this helps to other people....
Cheers!
10
Web Server - Ask For Help / Re: Using jquery with Nettalk or suppressing nettalks js for a page.
« on: March 08, 2008, 11:03:15 AM »
Hi Bruce...
It's hard to tell what's in conflict directly since all.js has the combined javascript. At first I thought it was prototype, and there's definitely work around for that (not to mention jQuery has it's own namespace). Basically I get two errors - one on a jQuery(window).bind and one on a jQuery(document).ready call. I do realize the browse needs the functionality, but these pages are simple (that's all I need jQuery for). It does work locally without the webserver.
I did gather it was the HtmlCommonScripts - I'll take a look at the .site local part to see how that goes.
BTW, I'm really impressed with NT - I have easily setup AJAX on one of may pages to respond with a JSON response. I don't have the need for XML for this - so I whipped up a GROUP to JSON converter. Very slick and fast (obviously no XML parsing) in preliminary testing. It handles the JSONP callback requests as well - so even robust enough to handle as a public web service. jQuery handles these ajax requests very nicely too (I would imagine prototype is equally the same). It was very easy to setup the response page procedure. Cool. I'm afraid to see what's next.
Dave
It's hard to tell what's in conflict directly since all.js has the combined javascript. At first I thought it was prototype, and there's definitely work around for that (not to mention jQuery has it's own namespace). Basically I get two errors - one on a jQuery(window).bind and one on a jQuery(document).ready call. I do realize the browse needs the functionality, but these pages are simple (that's all I need jQuery for). It does work locally without the webserver.
I did gather it was the HtmlCommonScripts - I'll take a look at the .site local part to see how that goes.
BTW, I'm really impressed with NT - I have easily setup AJAX on one of may pages to respond with a JSON response. I don't have the need for XML for this - so I whipped up a GROUP to JSON converter. Very slick and fast (obviously no XML parsing) in preliminary testing. It handles the JSONP callback requests as well - so even robust enough to handle as a public web service. jQuery handles these ajax requests very nicely too (I would imagine prototype is equally the same). It was very easy to setup the response page procedure. Cool. I'm afraid to see what's next.
Dave
11
Web Server - Ask For Help / Using jquery with Nettalk or suppressing nettalks js for a page.
« on: March 07, 2008, 02:39:47 PM »
I have a specifc page that needs jQuery and I'm having conflict issues.
First, has anyone gotten jQuery to work with NT? I've already used jQuery.noConflict().
Second, is there a way to tell nettalk NOT to include it's standard javascript and not use it? IOW, I can control what's being served?
TIA
Dave
First, has anyone gotten jQuery to work with NT? I've already used jQuery.noConflict().
Second, is there a way to tell nettalk NOT to include it's standard javascript and not use it? IOW, I can control what's being served?
TIA
Dave
12
Web Server - Ask For Help / Re: requestreferer Property not working in IE6/7 - ok in FF
« on: February 01, 2008, 11:42:41 AM »
Bruce,
That may be the case in the example, but I'm going from a page to a memory form with a link in the page. Not from a browse to a table form.
I'm using the GenerateForm embed (1 Start).
Thanks
Dave
That may be the case in the example, but I'm going from a page to a memory form with a link in the page. Not from a browse to a table form.
I'm using the GenerateForm embed (1 Start).
Thanks
Dave
13
Web Server - Ask For Help / Re: requestreferer Property not working in IE6/7 - ok in FF
« on: January 29, 2008, 11:21:10 AM »
Update:
I tried using the Save/Cancel buttons with NO URL's - but they go back to the page name only, which does not include any of the passed values (?'blah=blah&blah2=blah2')
Also, if you setup a URL on Save to be the same page as the form (so multiple ones can be submitted) and leave the URL on Cancel blank - the cancel button still sends you to the URL on Save instead of to the "referrer".
So what I did is simply save off the Whole URL as a session value, used that session value in the page to save off (if the first time to the form) the "referrer".
Since all my pages have the same page header (web source) - I just embedded the code below at the beginning of that procedure.
I'd still like to see the requestreferer property work ok under ie, if that is possible.
Cheers.
I tried using the Save/Cancel buttons with NO URL's - but they go back to the page name only, which does not include any of the passed values (?'blah=blah&blah2=blah2')
Also, if you setup a URL on Save to be the same page as the form (so multiple ones can be submitted) and leave the URL on Cancel blank - the cancel button still sends you to the URL on Save instead of to the "referrer".
So what I did is simply save off the Whole URL as a session value, used that session value in the page to save off (if the first time to the form) the "referrer".
Since all my pages have the same page header (web source) - I just embedded the code below at the beginning of that procedure.
Code: [Select]
! ALWAYS save off whole url that came in to a session variable. That way some forms can use it to go back.
! we have to use two ssvs
p_web.SetSessionValue('mywholeurl',p_web.GetSessionValue('mywholeurlnew')) ! get prior one - this is the real deal
p_web.SetSessionValue('mywholeurlnew',p_web.WholeURL)
I'd still like to see the requestreferer property work ok under ie, if that is possible.
Cheers.
14
Web Server - Ask For Help / requestreferer Property not working in IE6/7 - ok in FF
« on: January 29, 2008, 10:29:43 AM »
Hello all,
I've got a memory form and at the GenerateForm embed - I grab the requestreferer from the webhandler.
I subsequently use this for a button to go back to the page that was originally shown. This form also can be submitted a few times such that that doing a back won't cut it.
This works fine under firefox. I monitor the referrer with debug statements and can see it come in correctly.
HOWEVER, with IE6 and IE7 - the requestreferer is ALWAYS the main index page. So when the user click the button, he goes back to the main page (not what I want).
Anyone else having issues like this? I'd like to be able to go back to the page that came to this form without having to setup values on every page coming to this form.
Thanks!
Dave
I've got a memory form and at the GenerateForm embed - I grab the requestreferer from the webhandler.
I subsequently use this for a button to go back to the page that was originally shown. This form also can be submitted a few times such that that doing a back won't cut it.
This works fine under firefox. I monitor the referrer with debug statements and can see it come in correctly.
HOWEVER, with IE6 and IE7 - the requestreferer is ALWAYS the main index page. So when the user click the button, he goes back to the main page (not what I want).
Anyone else having issues like this? I'd like to be able to go back to the page that came to this form without having to setup values on every page coming to this form.
Thanks!
Dave
15
Web Server - Share Knowledge / Re: My Projects
« on: January 09, 2008, 07:29:36 AM »
Devan,
Thanks a bunch. I can't wait to play with this framework. If I come up with anything on my end, I'll be sure to share too.
Cheers!
Dave
Thanks a bunch. I can't wait to play with this framework. If I come up with anything on my end, I'll be sure to share too.
Cheers!
Dave
Pages: [1] 2