views:

18

answers:

2

I am writing a warm-up script for a SharePoint server. The idea is to call stsadm and then open an html file containing iframes which touch all the key web pages in my portal.

So far so good. The problem is that each time the script is run, a new browser window is opened and I end up with a screen full of browsers.

The first idea was to close the browser after 10 minutes or so. This would be easy to do except that Javascript is disabled when an html file is opened from the file system. I then thought I might be able to open the file and set it in a named window (target) which would be reused each time the script runs but I haven't found any way to do this.

Does anyone have any ideas? Either to force JS to run or to set the window name or another solution?

Thanks.

+1  A: 

Have you considered using wget to touch those web pages instead?

http://www.gnu.org/software/wget/

Using wget could be as simple as replacing your "start" command with:

wget http://srv
wget http://srv:12345/default.aspx
wget http://srv/de/Seiten/Favoriten.aspx
wget http://srv/de/Seiten/Benutzeranweisungen.aspx
Jakob Kruse
A: 

My solution is to create a simple web site outside of SharePoint and stuff the html file there. I can call it and JS is allowed.

It would still interest me to hear of any other solutions though...

Here is my code:

warmup.cmd:

date /t >> warmuplog.txt
time /t >> warmuplog.txt
echo Start warmup >> warmuplog.txt
"C:\Program Files\Common Files\Microsoft Shared\web server extensions\12\BIN\stsadm.exe"
start http://srv:22222/warmup/WarmUpPages.html
date /t >> warmuplog.txt
time /t >> warmuplog.txt
echo End warmup >> warmuplog.txt

warmuppages.html

<html>
<body>
<b>Portal root</b>
<iframe src="http://srv" width="100%" height="100px"></iframe>
<b>Central admin</b>
<iframe src="http://srv:12345/default.aspx" width="100%" height="100px"></iframe>
<b>Favorites</b>
<iframe src="http://srv/de/Seiten/Favoriten.aspx" width="100%"     height="100px"></iframe>
<b>User docs</b>
<iframe src="http://srv/de/Seiten/Benutzeranweisungen.aspx" width="100%"     height="100px"></iframe>
<script type="text/javascript">
    window.setTimeout("bye()", 120000);

function bye() {
  window.open('','_self','');
  window.close();
}
</script>
</body></html>
paul
Opening a browser window is a massive resource overhead just to touch a URI. There are many easy alternatives such as wget or curl that you can put into a small cmd file (batch script).
Jakob Kruse