Link to home
Start Free TrialLog in
Avatar of PlanetB04
PlanetB04

asked on

Problem with IIS 6.0 - Server object error

Hello, let me preface this question with I am not sure whether this is an IIS 6.0 question or a Windows 2003 SBS question so here it goes.  I am running an ecommerce site using ASP and a MSSQL database on a new 2003 SBS server.  I am not having a problem with the site itself, the problem is that when the customer checks out, they enter their shipping and billing information, once they choose a shipping option, the information is sent to a third party using XML and the third party will then return an XML page with the shipping info.  The problem is that it when I check the server in the morning, mind you, not every morning, I receive the following error

Server object error 'ASP 0177 : 80070008'

/testshipping.asp, line 95

80070008

Line 95 follows:

Set objXmlHttp = Server.CreateObject("Msxml.ServerXMLHTTP")

If I go into the IIS 6.0 console and stop, then start the site, I do not receive the error.  I have been trying to figure out this problem for about 3 weeks now and can not figure it out.  Any help would be much appreciated.
Avatar of jdfulton
jdfulton
Flag of United States of America image

Basically the error means it cannot find or create the server object.  Have you upgraded your server to the latest version of MSXML?  Go here to download the latest version.
http://www.microsoft.com/downloads/details.aspx?FamilyID=3144b72b-b4f2-46da-b4b6-c5d7485f2b42&displaylang=en

After you upgrade change your Server Object code to.

Set objXmlHttp = Server.CreateObject("Msxml2.ServerXMLHTTP.4.0")
Avatar of PlanetB04
PlanetB04

ASKER

If it was the MSXML version, would I receive the error every time?  I only receive the error during the middle of the night, then when I restart the webservice, I might not receive the error again for up to 5 days....
No maybe not.  2003 server is weird.  It could work for awhile then stop because something is not refreshing correctly.   When you restart the service it gets refreshed and starts working again.  I would try upgrading anyways to the latest version.  If this doesn't work then we know it's not the problem.
Thanks...  I will let it run the weekend, I will let you know on Monday...
Hi the upgrade did not work, Friday night the site completely went down when trying to process the Server.CreateObject.  When I rebooted the machine, the site (www.planetbattery.com) worked fine.  I have checked what processes, if any, are running during the overnight hours, this seems to be when I am having the problem, and I cannot find any.  Any further help would be appreciated
Did you upgrade the XML yet and change your code?
What version of  SQL Server are you running?
Yes, I upgraded to msxml4.dll and I changed the code as written above.

I am running SQL 2000... I have installed SP3
So has it ever worked?
Yes, it work for about 3 or 4 hours on Friday, I reset the server Sunday afternoon, it work again, then the server had to be reset again this morning.
No i mean has it ever worked without any problems.  Working 3-4 hours wouldn't be classified as working.  

What I am getting at is if it has never worked I would look at the code for the cause.  It seems to me that its the problem.  Since it stops or doesn't work after a certain time, there has to be some sort of loop etc.. causing IIS to stop processing object requests.   Another thing to try is to configure the folder where your application is for pooling.  You do this under the website properties in the IIS console.   This should keep your IIS service running for everything else.
Yes, it had worked since Monday Aug. 2 without any problems. It has worked for as long as 10 days without a problem.

The code that I use was sent to us from a company called Intershipper, it calculates UPS Shipping costs, below is the Code.

Set objXmlHttp = Server.CreateObject("MSXML2.ServerXMLHTTP.3.0")
 
    'Specify Program And Quote Request Data
    dim url
    url = "http://www.intershipper.com/Interface/Intershipper/XML/v2.0/HTTP.jsp" & "?" & requestParameters
    objXmlHttp.open "POST", url , False
    'Send Quote Request... Execution Of ASP Holds Until Response Is Received


    objXmlHttp.send
response.write("<h1>"&error&"</h1>")
      On Error Resume Next

    'Pass XML Quote To String
    strXML = objXmlHttp.responseText
    'Print XML Quote
Response.write "Information returned from Intershipper<br><br>---"    
response.Write server.htmlencode(strxml)

Set fs = CreateObject("Scripting.FileSystemObject")
if fs.fileexists(FILENAMEANDPATH) then
    Set f = fs.OpenTextFile("c:\inetpub\wwwroot\planetbattery\xml\ship.xml", ForAppending,TristateFalse)
else
    Set f = fs.CreateTextFile("c:\inetpub\wwwroot\planetbattery\xml\ship.xml", True)
end if
f.write(strxml)
'fs.close
response.write strxml&"<br>"
set fs = nothing
set f = nothing
end if

The Server.CreateObject creates an XML form, this was located in the root of the site, I just created a folder and changed to Server.CreateObject to point toward this folder.  I cannot find the option in the IIS console to allow pooling.
ASKER CERTIFIED SOLUTION
Avatar of jdfulton
jdfulton
Flag of United States of America image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial