Ik heb een ASP-applicatie met JScript waarmee mensen dingen kunnen bestellen, en eens in de zoveel bestellingen geeft hij een foutmelding:
Ik kan er maar niet achter komen wat het is, want volgens mij is mijn ASP-code foutloos. Hier het stukje waar regel 158 in zit:
Zoals jullie zien worden zowel de array, als de deliveriesLength goed geïnitialiseerd als dat nog niet gedaan is. Ik heb Session.Timeout al op 250 gezet, maar ook dan blijven de foutmeldingen nog komen. Misschien is het een fout in IIS, of hebben jullie een ander idee?
Als 'ie nou gewoon altijd een fout gaf was het nog met wat outputjes te debuggen, maar dat is 't hem nou juist: de fout komt bijna nooit, maar wel vaak genoeg om bestellende klanten te kosten...
code:
1
2
3
4
5
| Microsoft JScript runtime error '800a138f' Object expected /oliebollenexpress/order_oud.asp, line 158 |
Ik kan er maar niet achter komen wat het is, want volgens mij is mijn ASP-code foutloos. Hier het stukje waar regel 158 in zit:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
| if (!Session("deliveryAdded"))
{
Session("deliveries") = new Array();
Session("deliveriesLength") = 0;
Session("deliveryAdded") = true;
}
var newDelivery = new Object();
newDelivery.companyName = String(Request.Form("companyName"));
newDelivery.gender = String(Request.Form("gender"));
newDelivery.contact = String(Request.Form("contact"));
newDelivery.initials = String(Request.Form("initials"));
newDelivery.department = String(Request.Form("department"));
newDelivery.address = String(Request.Form("address1") + " " + Request.Form("address2"));
newDelivery.city = String(Request.Form("city"));
newDelivery.postalCodeLetters = String(Request.Form("postalCodeLetters")).toUpperCase();
newDelivery.postalCodeNumber = parseInt(String(Request.Form("postalCodeNumber")));
newDelivery.country = String(Request.Form("country"));
newDelivery.hasPdd = (Request.Form("pdd") == "1");
newDelivery.pdd = String(Request.Form("preferredDate"));
newDelivery.personalMessage = String(Request.Form("personalMessage"));
newDelivery.products = String(Request.Form("products")).split(",");
Session("deliveries")[Session("deliveriesLength")] = newDelivery; // <- regel 158
Session("deliveriesLength")++; |
Zoals jullie zien worden zowel de array, als de deliveriesLength goed geïnitialiseerd als dat nog niet gedaan is. Ik heb Session.Timeout al op 250 gezet, maar ook dan blijven de foutmeldingen nog komen. Misschien is het een fout in IIS, of hebben jullie een ander idee?
Als 'ie nou gewoon altijd een fout gaf was het nog met wat outputjes te debuggen, maar dat is 't hem nou juist: de fout komt bijna nooit, maar wel vaak genoeg om bestellende klanten te kosten...
[ Voor 11% gewijzigd door Eelke Spaak op 22-12-2004 10:07 ]