G
guyzdancin
I have a java application that polls an asp page for the purpose of
inserting to a data base. I am interested in seeing verbose (ie
unfriendly HTTP error messages) when there is an internal server error
(code 500). Below is the code snippet that makes the application's web
connection and captures the response messages.
String user = "";
//String user = "Someone";
try{//create url object
urlWithQueryString =
"http://www.someaddress.com/lpt/lpt_login.asp?User=" + user +
"&FName=Alonzo&LName=Garbonzo&timeStamp=20060110_1106";
System.err.println("urlWithQueryString ln 35: " +
urlWithQueryString);
url = new URL(urlWithQueryString);
}catch(MalformedURLException mURLE){
System.err.println( "MalformedURLException thrown in WriteToWebDB: ln
41 " + mURLE.getMessage() );
System.err.println("");
return NetworkStatus.NETWORK_CONNECTION_PROBLEM;
}
try{//open connection. Write data succeeds or fails here
connection = (HttpURLConnection)url.openConnection();
inputStream = connection.getInputStream();
connection.setInstanceFollowRedirects(true);
}catch(IOException iOE1){
try{
System.err.println( "IOException caught in WriteToWebDB: ln 52");
System.err.println("Connection response code ln 53: " +
connection.getResponseCode());
System.err.println("Connection message ln 54: " +
connection.getResponseMessage());
System.err.println("Exception message ln 55: " + iOE1.getMessage());
}catch(IOException iOE){System.err.println("IOException caught ln 56"
+ iOE.getMessage());}
return NetworkStatus.NETWORK_CONNECTION_PROBLEM;
}
********************************************
Below are three examples of server output - the first two have
defective connection strings to force server error and one is a good
connection string that inserts to the data base. Note that defective
string passed from the application returns an error message without
much information while the defective string passed from a browser
returns a verbose and detailed error message. Can anyone help in
discovering a way to recover verbose detailed error messages in the
java application? Any help is greatly appreciated.
Guy Sussman
********************************************
Web server output to application connection when String user = ""
urlWithQueryString ln 35:
http://www.guysussman.com/lpt/lpt_l...Alonzo&LName=Garbonzo&timeStamp=20060110_1106
IOException caught in WriteToWebDB: ln 52
Connection response code ln 53: 500
Connection message ln 54: Internal Server Error
Exception message ln 55: Server returned HTTP response code: 500 for
URL:
http://www.guysussman.com/lpt/lpt_l...Alonzo&LName=Garbonzo&timeStamp=20060110_1106
********************************************
Web server output to browser connection when String user = ""
Microsoft OLE DB Provider for ODBC Drivers error '80004005'
[Microsoft][ODBC Microsoft Access Driver] Field 'tbl_test.Usr' cannot
be a zero-length string.
/lpt/lpt_login.asp, line 25
********************************************
Web server output to application connection when String user =
"Someone"
urlWithQueryString ln 35:
http://www.guysussman.com/lpt/lpt_l...Alonzo&LName=Garbonzo&timeStamp=20060110_1106
Http connection status (WriteToWebDB ln.69): OK ResponseCode = 200
********************************************
inserting to a data base. I am interested in seeing verbose (ie
unfriendly HTTP error messages) when there is an internal server error
(code 500). Below is the code snippet that makes the application's web
connection and captures the response messages.
String user = "";
//String user = "Someone";
try{//create url object
urlWithQueryString =
"http://www.someaddress.com/lpt/lpt_login.asp?User=" + user +
"&FName=Alonzo&LName=Garbonzo&timeStamp=20060110_1106";
System.err.println("urlWithQueryString ln 35: " +
urlWithQueryString);
url = new URL(urlWithQueryString);
}catch(MalformedURLException mURLE){
System.err.println( "MalformedURLException thrown in WriteToWebDB: ln
41 " + mURLE.getMessage() );
System.err.println("");
return NetworkStatus.NETWORK_CONNECTION_PROBLEM;
}
try{//open connection. Write data succeeds or fails here
connection = (HttpURLConnection)url.openConnection();
inputStream = connection.getInputStream();
connection.setInstanceFollowRedirects(true);
}catch(IOException iOE1){
try{
System.err.println( "IOException caught in WriteToWebDB: ln 52");
System.err.println("Connection response code ln 53: " +
connection.getResponseCode());
System.err.println("Connection message ln 54: " +
connection.getResponseMessage());
System.err.println("Exception message ln 55: " + iOE1.getMessage());
}catch(IOException iOE){System.err.println("IOException caught ln 56"
+ iOE.getMessage());}
return NetworkStatus.NETWORK_CONNECTION_PROBLEM;
}
********************************************
Below are three examples of server output - the first two have
defective connection strings to force server error and one is a good
connection string that inserts to the data base. Note that defective
string passed from the application returns an error message without
much information while the defective string passed from a browser
returns a verbose and detailed error message. Can anyone help in
discovering a way to recover verbose detailed error messages in the
java application? Any help is greatly appreciated.
Guy Sussman
********************************************
Web server output to application connection when String user = ""
urlWithQueryString ln 35:
http://www.guysussman.com/lpt/lpt_l...Alonzo&LName=Garbonzo&timeStamp=20060110_1106
IOException caught in WriteToWebDB: ln 52
Connection response code ln 53: 500
Connection message ln 54: Internal Server Error
Exception message ln 55: Server returned HTTP response code: 500 for
URL:
http://www.guysussman.com/lpt/lpt_l...Alonzo&LName=Garbonzo&timeStamp=20060110_1106
********************************************
Web server output to browser connection when String user = ""
Microsoft OLE DB Provider for ODBC Drivers error '80004005'
[Microsoft][ODBC Microsoft Access Driver] Field 'tbl_test.Usr' cannot
be a zero-length string.
/lpt/lpt_login.asp, line 25
********************************************
Web server output to application connection when String user =
"Someone"
urlWithQueryString ln 35:
http://www.guysussman.com/lpt/lpt_l...Alonzo&LName=Garbonzo&timeStamp=20060110_1106
Http connection status (WriteToWebDB ln.69): OK ResponseCode = 200
********************************************