WCF / ASMX :: Web Service On Server Stops Automatically?
Mar 15, 2011
I am ASP.NET developer.
i have run one program in host server at a particular interval (lets say in each & every 1 hour) by using web service. but on my server web service stops automatically after 2 or 3 hour.
I have a custom dead letter queue service to pick up messages from DLQ. This service picks up failed message from DLQ and tries to resend to a different end point. If the new endpoint doesn't work, it rolls back transaction. This works great. Here is the code.
{ [ServiceBehavior(InstanceContextMode = InstanceContextMode.Single, ConcurrencyMode = ConcurrencyMode.Single, AddressFilterMode = AddressFilterMode.Any)] public class FDPDLQService : IFDService { FDPManager _fdpManager = new FDPManager(); [OperationBehavior(TransactionScopeRequired = true, TransactionAutoComplete = true)] public void ProcessFDMessage(FDMessage message) { //System.Diagnostics.Debugger.Launch(); try { MsmqMessageProperty mqProp = OperationContext.Current.IncomingMessageProperties[MsmqMessageProperty.Name] as MsmqMessageProperty; // if message log required, and configured, log the incoming message try { ChannelFactory<IFDPRouter> factory = new ChannelFactory<IFDPRouter>("IFDPRouter_EP"); IFDPRouter proxy = factory.CreateChannel(); string ep = proxy.GetNextEPForGivenEP(OperationContext.Current.IncomingMessageHeaders.To.ToString()); if (ep == null || ep == string.Empty) { throw new EndpointNotFoundException(Common.Constants.FDP_NOT_FOUND_EXCEPTION_MESSAGE); } // Process message with next end point available _fdpManager.ProcessFDMessage(message, ep); } catch (EndpointNotFoundException enfe) { ExceptionManager.HandleException(enfe); Transaction.Current.Rollback(); //throw; } catch (Exception ex) { ExceptionManager.HandleException(ex); Transaction.Current.Rollback(); //throw; } } } }
But if all endpoints are not available for a long period of time, and if service rolls message back to the DLQ for a long period of time, after a certain period of time service stops picking up messages from DLQ. I am not sure which configuration is responsible for this.
My previous impression of RequiredFieldValidator and similar have been that they show you an error label and set Page.IsValid false and that is it. Meaning they leave the rest of the task (preventing the use of wrong input data) to you. But today I have realised say if you use a DetailsView to insert a new record to a database, and you use validators to check the TextBoxes inside the DetailsView, they automatically prevent the database from being updated.
I would like to know how this is implemented behind the scene. I'm guessing it aborted the Page Lifecycle at Validator.PreRender event, so that database connections at later stage could not be reached? I'm probably wrong. I'm trying to use Reflector to get inside the RequiredFieldValidator to see how it is implemented, but I don't really know where to look.
how to write a function in a web service to upload a file, like a .csv, to SQL Server.
The idea would be to upload the file via an interface built in Flex, send it to the server, and insert the record in SQL Server. My problem is that I don't know how the function should look like:
i am calling the webservice from acrobat javascript. it works very well in development server. but when i put the same code in production server, it doesnt call the webservice.
Lets say I have a web service installed on ServerA. I also have a web application hosted on ServerB, completely different domain from ServerA. That web application contains a web reference to ServerA's web service, so consumes it. What happens if the WAN connection between ServerA and ServerB goes down, for whatever reason? I'm not clear if, once the web method is coded into the consuming application, that the server hosting the service has to be constantly available or not.
I am consuming a Web service passing it an XML string. The WS is querying a SQL Databse and returns an XML string. It all works fine from within Visual Studio 2010. Running the website from the browser, I receive the following error when calling ws.method "RQ.ProcessRequest(XMLOut, XMLIn)":
INNER EXCEPTION: System.Exception: The login failed when connecting to SQL Server SOMTSNAV01
[Code]....
Is there some additional credentials I need to pass to the WS? Is there anything that needs to be done on th WS side to ensure login does not fail? Ideas anyone?
I have to keep a datacontext alive in a WCF service. This object is created on every call to the service, by the way decreasing performance. How could I keep this object alive with WCF.
I have a [WebMethod] within an aspx.cs file. It seems that whenever a second call to the method is made via AJAX before the first call is fully executed, the web method completely stops functioning until the page is reloaded.
I am creating an application that uses jQuery to make ajax calls to ASP.NET WCF Web Service. Everything works fine most of the time but eventually (about twice per week) the service stops working with the error below. The only solution is to clear the ASP.NET Temporary Files. The problem seems to start by the time the application pool recycles but not on each recycle. Please help as I'm trying to figure this out for weeks now!
WebHost failed to process a request. Sender Information: System.ServiceModel.ServiceHostingEnvironment+HostingManager/6957828 Exception: System.ServiceModel.ServiceActivationException:
The service '/Chat2/Chat.svc' cannot be activated due to an exception during compilation. The exception message is: Could not load file or assembly 'App_Web_vpupi5wr,
Version=0.0.0.0, Culture=neutral, PublicKeyToken=null' or one of its dependencies. The system cannot find the file specified.. ---> System.IO.FileNotFoundException: Could not load file or assembly'App_Web_vpupi5wr, Version=0.0.0.0,Culture=neutral, PublicKeyToken=null' or one of its dependencies. The system cannot find the file specified.
I have a web service that was running on Server 2003, IIS6. The service required an SSL connection. The service expects 4 parameters; a User ID, Password, Record ID and the "type" of data requested (one of 5 options). The service validates the user then simply performs a select of the record ID from a table determined by the type specified. This service was up and running for a couple of years. I installed a couple of new servers a couple of months ago. The users that makes use of this service just tried it and couldn't get a response. I checked the server and I hadn't copied the service over. The service is located in a virtual directory under the primary web site.
For example, the site is: [URL] Service virtual directory is "GetITSData" The call to the service has been: [URL] param1, param2, param3, param4 and the service would return the appropriate data. I "assumed" that when I copied the actual contents of the directory over, that the service would then begin functioning again (since it was empty). All IIS snap-in manager items for the virtual directory match the previous settings on the old server (I still have that server available in my office). The main site requires SSL and uses forms authentication. When I create a dummy site in VS2008 and try to add a service reference, I get the following: There was an error downloading [URL]. The request failed with HTTP status 403: Forbidden. Metadata contains a reference that cannot be resolved: [URL]. The remote server returned an unexpected response: (405) Method Not Allowed. The remote server returned an error: (405) Method Not Allowed. If the service is defined in the current solution, try building the solution and adding the service reference again.
built a web service and pushed it to my production server. When I view the .asmx file I can see the methods listed and I can also test them fine using the generated forms.I am having an issue, however, when I attempt to test my web service by...(1) creating a new web app project (VB -- VS 2010).(2) creating a web reference (works fine).(3) calling the method by running it on my local machine.#1 and #2 are fine but it seems as if the web method never gets called (returns an empty string).
I have an Asp.net 3.5 xml web service that I created using the file new website within Visual Studio 2008. I can install and run the web service on a remote server using a web setup project after adding the necessary entries to the web.config file. The problem currently is that the xml web service needs to be configured to use a domain name and not a server name. My coworker has not been able to configure the virtual directory to use a domain name and work successfully. The web service returns a site under construction error.
I have a web application in ASP.NET 4.0. I've added an asmx service, primarily as a source for the autocomplete extender's lookup values.
When I debug on my machine locally, everything works fine. However, when I deploy the web application to IIS 7.5, I get a HTTP 404 response when trying to send data to the service.
I am able to browse to the service definition, see the available operations. Tellingly, however, when I use the test pages to test the service using POST, I receive an HTTP 404 again.
I'm not sure what is going on. I did create the asmx file within my web application and it is deployed in the virtual directory of my otherwise working production application. Is there an issue with the .asmx file being deployed in the same virtual directory, perhaps?
I am trying to post data from vb.net application to web service asmx that is located on server! For posting data from vb.net application I am using this code:
Public Function Post(ByVal url As String, ByVal data As String) As String Dim vystup As String = Nothing Try 'Our postvars Dim buffer As Byte() = Encoding.ASCII.GetBytes(data) 'Initialisation, we use localhost, change if appliable Dim WebReq As HttpWebRequest = DirectCast(WebRequest.Create(url), HttpWebRequest) 'Our method is post, otherwise the buffer (postvars) would be useless WebReq.Method = "POST" 'We use form contentType, for the postvars. WebReq.ContentType = "application/x-www-form-urlencoded" 'The length of the buffer (postvars) is used as contentlength. WebReq.ContentLength = buffer.Length 'We open a stream for writing the postvars Dim PostData As Stream = WebReq.GetRequestStream() 'Now we write, and afterwards, we close. Closing is always important! PostData.Write(buffer, 0, buffer.Length) PostData.Close() 'Get the response handle, we have no true response yet! Dim WebResp As HttpWebResponse = DirectCast(WebReq.GetResponse(), HttpWebResponse) 'Let's show some information about the response Console.WriteLine(WebResp.StatusCode) Console.WriteLine(WebResp.Server) 'Now, we read the response (the string), and output it. Dim Answer As Stream = WebResp.GetResponseStream() Dim _Answer As New StreamReader(Answer) 'Congratulations, you just requested your first POST page, you 'can now start logging into most login forms, with your application 'Or other examples. vystup = _Answer.ReadToEnd() Catch ex As Exception MessageBox.Show(ex.Message) End Try Return vystup.Trim() & vbLf End Function
I create web service for Reading and writing the registry. It works fine in win-xp. But its not working when I published it in win-2008 server. It shows me http 500 error.
I am maintaining a web site project in VS2005 and have to call a new web service on a remote server. I've done add web reference, and created the .wsdl and .discomap files in the app_webReference folder. When I try to create a object representing the web service in the code ( wsnamespace.serviceName ws = new wsnamespce.serviceName(); ) the code wouldn't compile.
The web site project is already calling other web services. When I right click on the type representing the web service and "go to definition" it takes me to a proxy class (derived from of course SoapHttpClientProtocol) in the metadata. I think this is what's missing for the new web service i'm trying to call. Have I missed any steps?
I am trying to access a wcf service hosted on a server running on a virtual machine on a windows 2008 R2 hyperv. When i access this service when running my asp.net website through code everything works fine how ever when i deploy the application on the local IIS , in the deployed mode i am getting an securityaccessdeined exception. My Asp.net app is running on a IIS server on another virtual machine. The stack trace is as given below :
Environment Info: My asp.net app has built on .NET 4.0 framework using VS2010. My WCF services are based on .NET2.0 framework. Event code: 3005
Event message: An unhandled exception has occurred.
if i have the web application with many pages like add order page, edit order page, and delete order page actually they also interact with the Sql Server 2008 and i also create web service page call Sales_Service.asmx. i know just i need to put something like query into Web Method in Sales_Service.asmx but i have a lot of queries, i don't know which query i should put into it and how the web page call the Sales_Services.asmx
A customer reported that our asmx web service is continually increasing in memory (mem usage as well as private bytes). We are able to reproduce the problem in our lab with Windows 2003 Server SP2 (fully patched) on some of the machines. The customer is using Windows 2008.
We created a Hello World web service targeting the 2.0 framework built under VS2005 SP1 and a test client that continues to call it. The memory increases steadily - approximately 40K per client request. If the test app is paused, the memory remains the same. When it is closed, the memory drops. Explicit calling of GC.Collect does not drop the memory.
We have run the memory profiler on the service and the leak is all native memory. We have uninstalled/re-installed the Framework on one of the machines but no difference. To our knowledge all of the security and IIS settings are not modified. We have compared app pool, default web site and virtual directory properties to machines that have no problem and they are identical.