There was no endpoint listening at http;//localhost:8080/xdxservice/xdsrepository that could accept the message. This is often caused by an incorrect address or SOAP action.
Probably a typo in the question, but your URL is invalid.
http;//localhost:8080/xdxservice/xdsrepository
should have a colon rather than a semi-colon
http://localhost:8080/xdxservice/xdsrepository
This may well not be your problem, but I thought it was worth pointing out.
the url should have a .svc extention, no? (answered in comments)
Are you running the WCF in ASP.NET or the VS webserver?
What service class is the .svc file pointing to? Is there a section for this class in the web.config or app.config file? Does this section have an element defined?
If not running under IIS, does this element have an address defined? Or does the have a base address defined?
This usually just means that the service is not running, or is otherwise not able to listen to requests. It could be the mistyped URL, or the IIS application is not started, or you have the wrong port number.
But basically, it means what the message says.
Related
I hosted silverlight application iis and that can be accessed in multiple ways..
When I access using Qualified name of server IP address IT WORKS fine:
http://[QUALIFIEDNAME]/WebUAT/App.aspx
When I access using IP address like below:
http://[IPADDRESS]/WebUAT/App.aspx
It gives error below:
[Async_ExceptionOccurred]
Arguments:
Debugging resource strings are unavailable. Often the key and arguments provide sufficient information to diagnose the problem. See http://go.microsoft.com/fwlink/?linkid=106663&Version=5.1.20913.00&File=System.dll&Key=Async_ExceptionOccurred StackTrace : at System.ComponentModel.AsyncCompletedEventArgs.RaiseExceptionIfNecessary()
Follow these,
(i) Try to use fiddler and find the request which is making crossdomainpolicy xml request.
(ii)Check whether it is failing, if so add the crossdomain and clientaccesspolicy to the root folder of your Application
(iii)Check whether the service which is invoked by your application is blocked by firewall.
I have made a small log service that i want to publish to a subdomain on my webhotel. I make the wcf service and test it locally - no problem. I then go to the [Build] menu and choose [Publish], type in my FTP location and publishes it to the location. No problems.
The problem arise when i need to use it, i try to navigate to the .svc file but gets this error:
This collection already contains an address with scheme http. There can be at most one address per scheme in this collection.
Parameter name: item
What am I doing wrong?
That's because of your IIS configuration. This has already been discussed here: WCF service startup error "This collection already contains an address with scheme http"
Solved! The problem is that i cannot access the IIS configuration, since its on a hosted environment. The solution is described on my blog, since i had so much trouble getting this to work.
http://www.vikingworks.dk/post/WCF-Service-on-hosted-environment.aspx
I have a silverlight project that calls into a wcf service. Everything works fine on my local machine.
However when I deploy to a virtual machine, with the exact same query the wcf service returns, but the result is empty.
I've tried debugging, but have not been able to get it to break in the wcf service.
Any ideas what the problem could be, or how I could go about debugging it?
Thanks
I figured out what the problem is, but am not sure what the solution is.
In my silverlight project the wcf service I am referencing is http://localhost/.../SilverlightApiService.svc
I used fiddler on my vm to see the request that was made and instead of trying to contact the above service, it was trying to contact:
http:///.../SilverlightApiService.svc
So, for some reason my machine name is getting inserted in there instead of localhost. Any thoughts on this would be appreciated.
I had this exact problem when deploying to amazon ec2 - The machine name for the service was being returned in the wsdl rather than the dns.
There were a couple solutions (one involved creating static wsdl - yuck!)
But the other was creating a sort of factory pattern for the service
This thread (you can read it all, but the answers are at the bottom.)
http://social.msdn.microsoft.com/Forums/en-US/wcf/thread/c7fd51a2-773e-41d4-95a0-244e925597fe/
The slight downfall with this is that although it works - if you change the location of the server, you will need to remember to update your config - Which although isn't hard, it's easy to forget to do.
Can you give us a bit more information? What kind of binding are you using? What does the service config and the client config look like? Where do you get your data from that gets returned? Could it be the service on the VM just doesn't get any data? (e.g. queries a database that just doesn't have the data requested?)
Marc
I have had that happen before. I would try this. Set you start page as the web service file and run the app. Then set the start page back to your default page. Then update all the server references in your SL project. Recompile everything and republish. This has helped me a bunch of times in the past.
I figured it out.
Basically my machine name was hard coded in my ServiceReferences.ClientConfig file in my silverlight project.
What I had to do was specify programmatically what url to use for the service reference when instantiating my service client:
System.ServiceModel.EndpointAddress address = new System.ServiceModel.EndpointAddress(new Uri
(Application.Current.Host.Source, "../WebServices/SilverlightService.svc"));
ServiceClient serviceClient = new ServiceClient("BasicHttpBinding_IService", address);
I figured out what the problem is, but am not sure what the solution is.
In my silverlight project the wcf service I am referencing is http://localhost/.../SilverlightService.svc
I used fiddler on my vm to see the request that was made and instead of trying to contact the above service, it was trying to contact:
http:///.../SilverlightService.svc
So, for some reason my machine name is getting inserted in there instead of localhost. Any thoughts on this would be appreciated.
my web service was working, then suddenly it stopped. After debugging I realized that there might be a problem in the config, and for some reason the .svc mapping was gone in IIS (Handler Mappings).
I added the .svc mapping, and it is now updating my web.config and adding a node to the web.config (my previous web.config's didn't have this node and it was working just fine).
Ok, so I then upload my original web.config, now going back to IIS it shows that the .svc mapping is deleted again.
Has anyone else experienced this strange behavior?
Work-around RC1 problem - Manually map .svc to aspnet_isapi.dll
see:
http://social.msdn.microsoft.com/Forums/en-US/wcf/thread/054b1d90-1e75-42ff-8d18-639f0b273dad/
I assume you are using IIS7 since your web.config keeps getting changed. Can you post the code that gets added to your web.config?
Also, are you setting this mapping at the application level in IIS? If so, you (or someone else) might be changing mappings at a higher level (or lower if you are working higher) which caused the initial problem.
If you don't need any special or custom behavior consider using the Factory attribute of #ServiceHost, you then won't need any config...
http://msdn.microsoft.com/en-us/library/aa967286.aspx
i wonder if there is a way to specifiy a custom ServiceHost (i.e. a ServiceHost derived class) in configuration?
thanks
I don't think you need to specify anything in a config file in order to use a custom ServiceHost. I haven't tried to do that before, but I see nothing in the config file that would specify information about the ServiceHost.
Here's a web page on MSDN titled "Custom Service Host."
Hopefully some of that helps!
Yes we have just come across this pain too, we wanted to have different endpoints on the ServiceHost, which on the client side is dead simply you just pass in the Endpoint you want when creating the ChannelFactory, however on the server side this is not so simple.
I agree the above you need to create a Custom Service Host and override the ApplyConfiguration() method.
There is an excellent example of doing this here : http://social.msdn.microsoft.com/forums/en-US/wcf/thread/3af366c1-3b11-42e6-85a4-ea63cd48be18/
Hope it helps