Response.Redirect doesn't seem to work on NT 4.0 SP6a clients!

D

D. Nii

Hi there,

I have a web application that recently got redesigned and now makes use of
Response.Redirect . The "new" application is hosted on Win2000 and works for
all kinds of clients using IE 5.0 + and different operating systems
(Win2000, WinXP, WinME, Win98).

Functions that use the Response.Redirect no longer work for clients using NT
4.0 SP6a IE 5.5 or IE 6.0.

The setup of such a function is as follows:

The function on Page A does a submit of a couple of form fields to Page B.
On Page B a database update with the form values is performed and after
successful execution a Response.Redirect back to Page A happens. The db
update is successful and the next statement is the Response.Redirect => the
client sees the following error message:

************************begin error message*********
ERROR
The requested URL could not be retrieved

While trying to process the request:
txtISTTaskDate=31.07.2003&txtISTManHourIS=0&txtISTValueIS
=&txtRemarks=Test+-+bitte+l%F6schen&txtTaskNr=27&txtActNr=189&txtActPhaseNr=
30&txtResponsibleNr=31&txtPerformanceNr=11&txtISTValueNr

s-powerpoint, image/gif, image/x-xbitmap, image/jpeg, image/pjpeg,
application/x-shockwave-flash, */*
Referer:
http://tools.pmportal.biz/apweb/Modules/Tasks/TaskDetails.asp?Nr=27&EPUnit=8&FBUnit=1

Accept-Language: de-ch
Content-Type: application/x-www-form-urlencoded
User-Agent: Mozilla/4.0 (compatible; MSIE 5.5; Windows NT 4.0)
Host: tools.pmportal.biz
Content-Length: 190
Proxy-Connection: Keep-Alive
Pragma: no-cache
Cookie: origLCID=2055; newLCID=2055; language=4; role=Team; account=seco;
debug=0;
ASPSESSIONIDAADDDBCB=HECDHOBDMGNHBEFOLLBPDPAE;

The following error was encountered:
Invalid Request

Some aspect of the HTTP Request is invalid. Possible problems:
Missing or unknown request method
Missing URL
Missing HTTP Identifier (HTTP/1.0)
Request is too large
Content-Length missing for POST or PUT requests
Illegal character in hostname; underscores are not allowed

Your cache administrator is (e-mail address removed).
Generated Thu, 31 Jul 2003 10:54:45 GMT by www-proxy.admin.ch
(Squid/2.4.STABLE1)
*************************************** end error message*****

Why does the Response.Redirect work for a Win2000 client but not an NT 4.0
SP6a client? How can this be fixed?!

Your help is urgently needed!

Thanks,

Daniela
 
K

Ken Schaefer

a) There is a proxy between your client and the server - maybe the proxy is
having issues
b) Are you using Server.URLEncode() to encode the values you are passing in
the querystring when you are doing the Response.Redirect?

Cheers
Ken

: Hi there,
:
: I have a web application that recently got redesigned and now makes use of
: Response.Redirect . The "new" application is hosted on Win2000 and works
for
: all kinds of clients using IE 5.0 + and different operating systems
: (Win2000, WinXP, WinME, Win98).
:
: Functions that use the Response.Redirect no longer work for clients using
NT
: 4.0 SP6a IE 5.5 or IE 6.0.
:
: The setup of such a function is as follows:
:
: The function on Page A does a submit of a couple of form fields to Page B.
: On Page B a database update with the form values is performed and after
: successful execution a Response.Redirect back to Page A happens. The db
: update is successful and the next statement is the Response.Redirect =>
the
: client sees the following error message:
:
: ************************begin error message*********
: ERROR
: The requested URL could not be retrieved
:
: While trying to process the request:
: txtISTTaskDate=31.07.2003&txtISTManHourIS=0&txtISTValueIS
:
=&txtRemarks=Test+-+bitte+l%F6schen&txtTaskNr=27&txtActNr=189&txtActPhaseNr=
: 30&txtResponsibleNr=31&txtPerformanceNr=11&txtISTValueNr
:
: s-powerpoint, image/gif, image/x-xbitmap, image/jpeg, image/pjpeg,
: application/x-shockwave-flash, */*
: Referer:
:
http://tools.pmportal.biz/apweb/Modules/Tasks/TaskDetails.asp?Nr=27&EPUnit=8&FBUnit=1
:
: Accept-Language: de-ch
: Content-Type: application/x-www-form-urlencoded
: User-Agent: Mozilla/4.0 (compatible; MSIE 5.5; Windows NT 4.0)
: Host: tools.pmportal.biz
: Content-Length: 190
: Proxy-Connection: Keep-Alive
: Pragma: no-cache
: Cookie: origLCID=2055; newLCID=2055; language=4; role=Team; account=seco;
: debug=0;
: ASPSESSIONIDAADDDBCB=HECDHOBDMGNHBEFOLLBPDPAE;
:
: The following error was encountered:
: Invalid Request
:
: Some aspect of the HTTP Request is invalid. Possible problems:
: Missing or unknown request method
: Missing URL
: Missing HTTP Identifier (HTTP/1.0)
: Request is too large
: Content-Length missing for POST or PUT requests
: Illegal character in hostname; underscores are not allowed
:
: Your cache administrator is (e-mail address removed).
: Generated Thu, 31 Jul 2003 10:54:45 GMT by www-proxy.admin.ch
: (Squid/2.4.STABLE1)
: *************************************** end error message*****
:
: Why does the Response.Redirect work for a Win2000 client but not an NT 4.0
: SP6a client? How can this be fixed?!
:
: Your help is urgently needed!
:
: Thanks,
:
: Daniela
:
:
 
K

Ken Schaefer

Some characters are not allowed a part of a URL, eg spaces need to be
encoded as %20 or + depending on where in the URL it is located.

Some browsers automatically encode the URL before sending the request (maybe
the version of IE that is on the Windows 2000 box), and others don't (maybe
the browser that's on the Windows NT box).

When you get the Request.QueryString, then querystring is decoded. You need
to "re-encode" it if it contains illegal characters.

Note, you only encode the values you pass, not the names of the variables.
Probably best to do this in a loop.


Cheers
Ken


:
: > a) There is a proxy between your client and the server - maybe the proxy
: is
: > having issues
:
: I didn't think the proxy could be the problem because the customer is
using
: at the same location an NT box (which doesn't work) and a Win2000 box
(which
: works). But I will follow up to make sure I am not just assuming something
: here.
:
: > b) Are you using Server.URLEncode() to encode the values you are passing
: in
: > the querystring when you are doing the Response.Redirect?
:
: No, it doesn't. This is the code for the redirection URL:
:
: redirectURL = Request.QueryString
: 'Remove all the feedback specific data from QueryString, i.e. everything
: following the "action" entry
: actionIndex = InStr(1,redirectURL,"&action=",1)
: redirectURL = Left(redirectURL,actionIndex-1)
: 'Redirect
: Response.Redirect "TaskDetails.asp?" & redirectURL
:
: Should I be using it?
:
: Thanks,
:
: Daniela
:
:
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

Forum statistics

Threads
473,764
Messages
2,569,566
Members
45,041
Latest member
RomeoFarnh

Latest Threads

Top