Solved

getting Status500 when i call HttpClient.executeMethod(Post)

Posted on 2009-07-14
11
1,586 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
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 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
Optimize your web performance

What's in the eBook?
- Full list of reasons for poor performance
- Ultimate measures to speed things up
- Primary web monitoring types
- KPIs you should be monitoring in order to increase your ROI

 

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: Site Down Detector

Helpful to verify reports of your own downtime, or to double check a downed website you are trying to access.

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

Browsers only know CSS so your awesome SASS code needs to be translated into normal CSS. Here I'll try to explain what you should aim for in order to take full advantage of SASS.
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.
The viewer will receive an overview of the basics of CSS showing inline styles. In the head tags set up your style tags: (CODE) Reference the nav tag and set your properties.: (CODE) Set the reference for the UL element and styles for it to ensu…
HTML5 has deprecated a few of the older ways of showing media as well as offering up a new way to create games and animations. Audio, video, and canvas are just a few of the adjustments made between XHTML and HTML5. As we learned in our last micr…

636 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