Solved

getting Status500 when i call HttpClient.executeMethod(Post)

Posted on 2009-07-14
11
1,548 Views
Last Modified: 2013-11-18
Trying to call a webservice which has Basic Authetication. I am passing in the valid crediantials but some how getting status 500 at getExecuteMethod(). Does this mean call to the webservice successful?? Please help.. Its very urgent..
HttpClient client = new HttpClient();
 
			// pass our credentials to HttpClient, they will only be used for
			// authenticating to servers with realm "realm" on the host
			// "www.verisign.com", to authenticate against
			// an arbitrary realm or host change the appropriate argument to null.
			client.getState().setCredentials(
				new AuthScope(
					AuthScope.ANY_HOST,
					AuthScope.ANY_PORT,
					AuthScope.ANY_REALM),
				new UsernamePasswordCredentials(
					userName,
					password));
	
	
	
	
			// create a GET method that reads a file over HTTPS, we're assuming
			// that this file requires basic authentication using the realm above.
			post = new PostMethod(url);
					
			post.setDoAuthentication(true);
 
			RequestEntity entity = new StringRequestEntity(soapRequest);
			post.setRequestEntity(entity);
			
			
			ILogger.ITimer t = getLogger().createTimer();
			
	
			//	timer.setAutoReset(true);
 
			status = client.executeMethod(post);
			 if (status != HttpStatus.SC_OK) {
			 	System.err.println("Method failed: " + post.getStatusLine());
			 }
 
Here is the log file info:
[7/14/09 21:19:56:206 EDT] 00000027 AuthChallenge I org.apache.commons.httpclient.auth.AuthChallengeProcessor selectAuthScheme basic authentication scheme selected
[7/14/09 21:19:56:503 EDT] 00000027 SystemOut     O executeMethod() = 0.469 seconds
[7/14/09 21:19:56:503 EDT] 00000027 SystemOut     O HTTP Status Code = 500
[7/14/09 21:19:56:519 EDT] 00000027 SystemOut     O Error occured when posting soap request.  HTTP status(500). and the exception is org.xml.sax.SAXParseException: Content is not allowed in prolog.

Open in new window

0
Comment
Question by:Subhachandu
  • 5
  • 3
  • 2
  • +1
11 Comments
 
LVL 23

Expert Comment

by:Ajay-Singh
ID: 24855560
I don't think getting 500 response code has to do with
(in)valid credentials. You get an error "Not Authorized"
when the credentials are not valid.
0
 
LVL 92

Expert Comment

by:objects
ID: 24855585
check the server logs, 500 indicates an error on the sertver
0
 

Author Comment

by:Subhachandu
ID: 24855591
Yes, I know i passed in valid credentials, but any idea why Status 500 is getting for executeMethod()??
0
Active Directory Webinar

We all know we need to protect and secure our privileges, but where to start? Join Experts Exchange and ManageEngine on Tuesday, April 11, 2017 10:00 AM PDT to learn how to track and secure privileged users in Active Directory.

 

Author Comment

by:Subhachandu
ID: 24855600
I noticed in the logs, i am able to see this .. Why is this exception coming up??
Error occured when posting soap request.  HTTP status(500). and the exception is org.xml.sax.SAXParseException: Content is not allowed in prolog.
0
 
LVL 92

Expert Comment

by:objects
ID: 24855638
sounds like a problem reading xml
0
 

Author Comment

by:Subhachandu
ID: 24855656
does that mean my client is able to communicate the webservice and trying it read its xml??
0
 
LVL 92

Expert Comment

by:objects
ID: 24855708
no way to tell whats happening from what you have posted
0
 

Author Comment

by:Subhachandu
ID: 24855726
Do you want me post the SOAP request which i am passing in
RequestEntity entity = new StringRequestEntity(soapRequest);
                  post.setRequestEntity(entity);
                  
0
 
LVL 23

Accepted Solution

by:
Ajay-Singh earned 500 total points
ID: 24855737
> the exception is org.xml.sax.SAXParseException: Content
is not allowed in prolog.

This means that the XML you are sending to server doesn't
have valid syntax.
0
 
LVL 86

Expert Comment

by:CEHJ
ID: 24857190
HttpClient, btw, is not the first choice for a web service client. While it can work as one afaik, you would be better off using something like Axis
0
 

Author Closing Comment

by:Subhachandu
ID: 31603555
This helped to resolve the problem as i missed backslash to one of the tags used in my XML passing using HttpClient.
0

Featured Post

Free Tool: Port Scanner

Check which ports are open to the outside world. Helps make sure that your firewall rules are working as intended.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

SASS allows you to treat your CSS code in a more OOP way. Let's have a look on how you can structure your code in order for it to be easily maintained and reused.
JavaScript has plenty of pieces of code people often just copy/paste from somewhere but never quite fully understand. Self-Executing functions are just one good example that I'll try to demystify here.
This theoretical tutorial explains exceptions, reasons for exceptions, different categories of exception and exception hierarchy.
This video teaches viewers about errors in exception handling.

820 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question