Show Error In Application When Exception Occur In Webs Service?
Aug 11, 2010how can we show error in our application when exception occur in webs service
View 10 Replieshow can we show error in our application when exception occur in webs service
View 10 RepliesI have the following problem with a slideshow in Ajax. Hope I have put it in the right Ajax forum. Some info: I do use MS Access and in the 'autos table' i do have the following fields:
field 1: nummer (text field) - this is the name of the image
field 2: cat (integer) - this is the category of the cars
field 3: naam (text field) - this is the name of the car
field 4: model (text field - this is the model of the car
In my masterpage i do have a menu where you can make the choice of a certain category of cars. This is done by a call to: slideshow.aspx?cat=100 In Slideshow.aspx a panel is setup and also buttons to manipulate the found images. Also the AjaxToolkit:Slideshowextender is defined as follows:
<ajaxToolkit:SlideShowExtender ID="SlideShowExtender1" runat="server"
TargetControlID="Image1"
SlideShowServicePath="slideservice.asmx"
SlideShowServiceMethod="Getslides"
AutoPlay="true"
ImageTitleLabelID="Name"
ImageDescriptionLabelID="Desc"
NextButtonID="NextButton"
PlayButtonID="PlayButton"
PlayButtonText="Play"
StopButtonText="Stop"
PreviousButtonID="PrevButton"
PlayInterval="4000"
Loop="true"
ContextKey="catid" />
As you can see the contactkey is also defined.
Inside the codebehind of slideshow.aspx.vb their is a sub defined:
Partial Class Slideshow
Inherits System.Web.UI.Page
Protected Sub Page_Load(ByVal sender As Object, ByVal e As EventArgs) Handles Me.Load
SlideShowExtender1.ContextKey = Request.QueryString("catid")
End Sub
End Class
The call from slideshow.aspx is to a slideservice.asmx which contains:
<%@ WebService Language="VB" CodeBehind="~/App_Code/SlideService.vb" %>
Here we call slideservice.vb.
The coding of the slideservice.vb file is:
Imports System.Web
Imports System.Web.Services
Imports System.Web.Services.Protocols
Imports System.Data.OleDb
Imports System.Web.UI.Page
<WebService(Namespace:="http://vancouver.com/")> _
<WebServiceBinding(ConformsTo:=WsiProfiles.BasicProfile1_1)> _
<Global.Microsoft.VisualBasic.CompilerServices.DesignerGenerated()> _
<System.Web.Script.Services.ScriptService()> _
Public Class SlideService
Inherits System.Web.Services.WebService
<WebMethod()> _
Public Function GetSlides(ByVal contextKey As String) As AjaxControlToolkit.Slide()
Dim strconn As String = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=|DataDirectory|Vancouver.mdb"
Dim cn As New OleDbConnection(strconn)
Dim SQLStr As String
SQLStr = "SELECT nummer, naam, model FROM Autos WHERE ((Autos.cat) = @catid)"
Try
cn.Open()
Dim cmd As New OleDbCommand(SQLStr, cn)
Dim sCatid As String = ""
' Give the value to sCatid from contextkey
If sCatid.Trim().Length = 0 Then sCatid = contextKey
cmd.Parameters.AddWithValue("@catid", sCatid)
Dim thisReader As OleDbDataReader = cmd.ExecuteReader()
Dim photoCounter As Integer
While thisReader.Read()
photoCounter = photoCounter + 1
End While
If (photoCounter > 0) Then
'we now know how many pictures there are in this category of the database
Dim MySlides(photoCounter - 1) As AjaxControlToolkit.Slide
'set up the command string
Dim photoLookupCmd As New OleDbCommand(SQLStr, cn)
'and add the parameters to it for the category
photoLookupCmd.Parameters.AddWithValue("@catid", sCatid)
thisReader = photoLookupCmd.ExecuteReader()
Dim i As Integer
For i = 0 To photoCounter - 1
thisReader.Read()
Dim number As String = thisReader.GetString(0)
Dim name As String = thisReader.GetString(1) + " - " + thisReader.GetString(2)
MySlides(i) = New AjaxControlToolkit.Slide(("pictures" + number + ".jpg"), name, "")
Next
thisReader.Close()
Return MySlides
Else
Dim MySlides(0) As AjaxControlToolkit.Slide
MySlides(0) = New AjaxControlToolkit.Slide("pictures99999.jpg", "sorry - not available", "pls. mail us to report")
thisReader.Close()
Return MySlides
End If
Catch x As Exception
Dim MySlides(0) As AjaxControlToolkit.Slide
MySlides(0) = New AjaxControlToolkit.Slide("pictures99999.jpg", "Exception error", "pls. mail us to report")
Return MySlides
Finally
cn.Close()
End Try
End Function
End Class
When i run the code i will get an exception error and when following the code in debug mode i do see that inside the first loop in FOR i = 0 to photocounter - 1 : The first loop gets the right info from the database inside Myslide(1) fields. Going into the second loop i will get after dim name as string .....
the program goes to catch x as exception. I did see that number was found correctly during the previuous line. During an other debug session i noticed that the Parameter.item has the following error (which I do not understand), saying: Overload resolution failed because no accessible 'Item´ accepts this number of arguments.
how can i show the full blown .net exception that may occur on an ajax enabled page. i want it to show like it would if the page wasnt using ajax. This for my QA environment for which i dont have the option to temporarily disable update panel. Also i dont want javascript to handle it as our QA testers are wanting to see the usual full blown asp.net exception.
View 1 RepliesWe have an issue with a .NET 2.0 web service application that is generating a module not found exception when we try to load on server 2008. A second server running the same 2008 version loads the service fine.As part of the investigation we have taken the default hello world .NET 2.0 web service and deployed to both servers and have exactly the same issue with it running fine on one but not the other. The issue is trying to track down the module in question. Running process explorer and dependency walker doesn't seem to give us a clue.
The full error is:-
[code].....
I have developed .net web application. When i change the page name(Which is not exist) in URL, it throws following error msg. I could not redirect the error page for respected error no(401.2..) Through IIS Admin and web config. Could anybody give appropriate solution. It is urgent. Access is denied. Description:
An error occurred while accessing the resources required to serve this request. The server may not be configured for access to the requested URL. Error message 401.2.: You do not have permission to view this directory or page using the credentials you supplied. Version Information: Microsoft .NET Framework Version:1.1.4322.2470; ASP.NET Version:1.1.4322.2470
First of all, quickly what exactly I want to achieve: translate particular exception into the HTTP 404 so the ASP.NET can handle it further. I am handling exceptions in the ASP.NET (MVC2) this way:
protected void Application_Error(object sender, EventArgs e) {
var err = Server.GetLastError();
if (err == null)
return;
err = err.GetBaseException();
var noObject = err as ObjectNotFoundException;
if (noObject != null)
HandleObjectNotFound();
var handled = noObject != null;
if (!handled)
Logger.Fatal("Unhandled exception has occured in application.", err);
}
private void HandleObjectNotFound() {
Server.ClearError();
Response.Clear();
// new HttpExcepton(404, "Not Found"); // Throw or not to throw?
Response.StatusCode = 404;
Response.StatusDescription = "Not Found";
Response.StatusDescription = "Not Found";
Response.Write("The whole HTML body explaining whata 404 is??");
}
The problem is that I cannot configure default customErrors to work with it. When it is on then it never redirects to the page specified in customErrors: <error statusCode="404" redirect="404.html"/>. I also tried to raise new HttpExcepton(404, "Not Found") from the handler but then the response code is 200 which I don't understand why. So the questions are:
1-What is the proper way of translating AnException into HTTP 404 response?
2- How does customErrors section work when handling exceptions in Application_Error?
3- Why throwing HttpException(404) renders (blank) page with success (200) status?
I have been using a function that replaces some characters from my editor in asp.net with '+CHAR(x)+' to chain together a string with characters such as single quote that would otherwise break the query, i know how to escape the character using double single quote but i was wondering why i get this problem.The problem is that when the string gets too long about 7kb to 8kb its gets cut off for no reason, no error message gets displayed, the query is successful only the string cuts off at a point. When i escape the character without using '+CHAR(x)+' to add the character i can add a very long string that does not cut off,i am using Varchar(max) for my field, (have also tried text).I am using sql 2008 express edition, and encounter this problem when i paste the generated query into sql management studio, and when i execute the query fromasp.net code.
View 1 RepliesI have hosted a service in the IIS server, while consuming the service i am getting some error. I have mentioned the error code below.
Error code:
Server Error in '/' Application.
The type 'EchoTunnelService.EchoService', provided as the Service attribute value in the ServiceHost directive could not be found.
Description:An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.
Exception Details: System.InvalidOperationException: The type 'EchoTunnelService.EchoService', provided as the Service attribute value in the ServiceHost directive could not be found.
Source Error: [Code]....
Version Information: Microsoft .NET Framework Version:2.0.50727.3607; ASP.NET Version:2.0.50727.3614
Recently I have upgraded my app from .net 2.0 to 4.0. By running application under .net 4.0 I get one strange behaviour. Whenever application throw any error, instead of displaying it in browser with call stack, the error is shown in the browser's error window as javascript error and the whole web page remain as it is. is it feature of .net 4.0 or I need to do some settings to display error in web page.
View 3 Repliesam working on web application in Viasual studio 2008 using ASP.NET with vb.
when i try to debug the web i got this error
Unhandeled Exception has occured in your application.
I am working on a ASP.NET 2.0 application. I get the following exception sometimes when i access the web application. I believe it is related to the server where the application is hosted? Exception of type 'System.OutOfMemoryException' was thrown. Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.
Exception Details: System.OutOfMemoryException: Exception of type 'System.OutOfMemoryException' was thrown. Source Error: An unhandled exception was generated during the execution of the current web request. Information regarding the origin and location of the exception can be identified using the exception stack trace below. Stack Trace:
[OutOfMemoryException: Exception of type 'System.OutOfMemoryException' was thrown.]
System.Reflection.Assembly._nLoad(AssemblyName fileName, String codeBase, Evidence assemblySecurity, Assembly locationHint, StackCrawlMark& stackMark, Boolean throwOnFileNotFound, Boolean forIntrospection) +0
System.Reflection.Assembly.nLoad(AssemblyName fileName, String codeBase, Evidence assemblySecurity, Assembly locationHint, StackCrawlMark& stackMark, Boolean throwOnFileNotFound, Boolean forIntrospection) +43
System.Reflection.Assembly.InternalLoad(AssemblyName assemblyRef, Evidence assemblySecurity, StackCrawlMark& stackMark, Boolean forIntrospection) +127
System.Reflection.Assembly.InternalLoad(String assemblyString, Evidence assemblySecurity, StackCrawlMark& stackMark, Boolean forIntrospection) +142
System.Reflection.Assembly.Load(String assemblyString) +28
System.Web.Configuration.CompilationSection.LoadAssemblyHelper(String assemblyName, Boolean starDirective) +46
[ConfigurationErrorsException: Exception of type 'System.OutOfMemoryException' was thrown.]
System.Web.Configuration.CompilationSection.LoadAssemblyHelper(String assemblyName, Boolean starDirective) +613
System.Web.Configuration.CompilationSection.LoadAllAssembliesFromAppDomainBinDirectory() +203
System.Web.Configuration.CompilationSection.LoadAssembly(AssemblyInfo ai) +105
System.Web.Compilation.BuildManager.GetReferencedAssemblies(CompilationSection compConfig) +178
System.Web.Compilation.BuildProvidersCompiler..ctor(VirtualPath configPath, Boolean supportLocalization, String outputAssemblyName) +54
System.Web.Compilation.ApplicationBuildProvider.GetGlobalAsaxBuildResult(Boolean isPrecompiledApp) +227
System.Web.Compilation.BuildManager.CompileGlobalAsax() +52
System.Web.Compilation.BuildManager.EnsureTopLevelFilesCompiled() +337
[HttpException (0x80004005): Exception of type 'System.OutOfMemoryException' was thrown.]
System.Web.Compilation.BuildManager.ReportTopLevelCompilationException() +58
System.Web.Compilation.BuildManager.EnsureTopLevelFilesCompiled() +512
System.Web.Hosting.HostingEnvironment.Initialize(ApplicationManager appManager, IApplicationHost appHost, IConfigMapPathFactory configMapPathFactory, HostingEnvironmentParameters hostingParameters) +729
[HttpException (0x80004005): Exception of type 'System.OutOfMemoryException' was thrown.]
System.Web.HttpRuntime.FirstRequestInit(HttpContext context) +8890735
System.Web.HttpRuntime.EnsureFirstRequestInit(HttpContext context) +85
System.Web.HttpRuntime.ProcessRequestInternal(HttpWorkerRequest wr) +259
What can be the reason for this error and what to check on the code or the server?
In our project WCF service is acting as our BLL.
i had scenario where i had to fill list of object class without knowing its type see code:
Added contract
[OperationContract]
dynamic GetReferenceTableData(string tableName);
method in service:
public dynamic GetReferenceTableData(string tableName)
{
try
{
dynamic tableData = ReferenceTableDAL.GetReferenceTableData(tableName);
return tableData;
}
catch (Exception ex)
{
throw;
}
}
method at DAL(ReferenceTableDAL):
public static dynamic GetReferenceTableData(string tableName)
{
Database db = DatabaseFactory.CreateDatabase(Flags.ConnectionStringKey);
DbCommand dbCommand = db.GetStoredProcCommand("USP_GETTABLEDATA");
dynamic objDynamic = null;
if (tableName.ToLower() == "a")
{
objDynamic = new List<A>();
}
else if (tableName.ToLower() == "b")
{
objDynamic = new List<B>();
}
else if (tableName.ToLower() == "c")
{
objDynamic = new List<C>();
}
try
{
db.DiscoverParameters(dbCommand);
dbCommand.Parameters["IN_TABLENAME"].Value = tableName;
DataSet dsTableData = db.ExecuteDataSet(dbCommand);
if (tableName.ToLower() == "a")
{
foreach (DataRow dataRow in dsTableData.Tables[0].Rows)
{
objDynamic.Add((A)dataRow);
}
}
else if (tableName.ToLower() == "b")
{
foreach (DataRow dataRow in dsTableData.Tables[0].Rows)
{
objDynamic.Add((B)dataRow);
}
}
else if (tableName.ToLower() == "c")
{
foreach (DataRow dataRow in dsTableData.Tables[0].Rows)
{
objDynamic.Add((C)dataRow);
}
}
}
catch (Exception ex)
{
throw;
}
return objDynamic;
}
@ Aspx
try
{
using (DataServiceRef.DataServiceClient petService = new DataServiceRef.DataServiceClient())
{
dynamic tableData = petService.GetReferenceTableData(tableName);
//tableData is null ,exception
}
}
catch (Exception ex)
{
throw;
}
There is no exception at dal or service end when i debug list gets filled ok but when returns to aspx error at aspx(no exception gets caught at @ service) but exception at aspx i.e:
Message:The underlying connection was closed: The connection was closed unexpectedly.
Stack Trace: at System.Net.HttpWebRequest.GetResponse()
at System.ServiceModel.Channels.HttpChannelFactory.HttpRequestChannel.HttpChannelRequest.WaitForReply(TimeSpan timeout)
I'm using the Authorize attribute to filter controller actions based on user roles, but if an unauthorized action is attempted, the user is redirected back to the login page. As I user I would find this confusing and irritating. How can I instead show an error message informing the user they need certain roles, and remain on the view where they attempted an action?
View 1 RepliesError on deploy application with SqlServerCe 4.0 on hosting service
View 4 Replieswhen I run webservices am getting the following error
"server error in web service application"
I created webservice as application under IIS also
I have simple 3 tier web application and have mostly CRUDE functionalities. Recently I required to add new console application to the existing solution in which I call data layer methods for retrieving data from DB but I get an exception "The type initializer for threw an exception."When I debugged I found that the exception is thrown at datalayer on first line of class where I get connectionstring from
web.config, the code is public static readonly string CONNECT_STRING =
ConfigurationManager.ConnectionStrings["DbConnectString"].ConnectionString;
Now if I hardcode the connection string value like public static readonly string CONNECT_STRING = "Data Source=XYZ;uid=sa;password=XXX;initial catalog=ABC;"
it works fine.I don't understand what is the issue here as web application works fine with this datalayer.
When attempting to publish a web application from Visual Studio 2010, I receive the following error: Get service of SVsBuildManagerAccessor fails I'm using Visual Studio 2010 Ultimate (x86) on Windows 7 Professional (x64). I've attempted publishing the web app via FTP and Local File System and receive the above mentioned error. I've searched the internet for the error but have found no solutions.
View 10 RepliesI am getting an exception with the JSON Web Service with MVC 2.0.0.0.
Earlier it worked.
The code:
[Code]....
The exception:
[Code]....
I am developping the ERP Web Application. My solution structure is as given below. Main Web Application - Having reference to All Module Web Application. Common Web Application - Has Master Page, User Control, Login page, Defualt Error and etc Module Web Application - Having Module wise Aspx and code behind. It refer Common Web Application to reduce redundacy. In this Context we are facing the following problem.
1) while running web application in the debug mode it gives error as 'the target assembly contains no service types. You may need to adjust the Code Access Security policy of this assembly'
2) Could not Debug both Module and Common Web Application.
3) In Design Time both Master or user control not renders in refered Aspx Page.
4) While I debug in visual studio 2010, it gets restart after some time.
I'm getting this exception randomly in one webservice, it used to happen in the first call only, and in the second calls and so on it works fine ... and after a while without use the webservice it happens again. It seems to be that when the AppDomain is not loaded, the first time fails... and subsequent calls are ok; when IIS shutdown the AppDomain... the next call will fail again.
[code]....
I have added a service from a Win2003 server to my Visual Studio project on WinXP machine. Create an oject for this service went OK. But when I tried to run a method in the service I get "401 web exception while accessing a service.".
How to proceed?
I have a web service and its methods return a class which is name WSResult. WSResult has 2 properties. One of property's type is int and the other one's type is object. I want to return some different type with this second property.
[code]....
How can i pass an object which i retrieved from other web services or that i generated from my serializable classes inside M_ResultObject property ?
I am trying to handle the unhandled exceptions in my project.I tried with this following code in my web.config filebut it is not at all redirecting to an error page which i have created instead of that it is throwing an exception in my code itselef. How to print the error description over therein my custom error page.
---------------------------------------------------------------------------------------------------
<sys.web>......<customErrors mode="On" defaultRedirect="~/Error.aspx"></customErrors>...</sys.web>
---------------------------------------------------------------------------------------------------
And even i tried in Global.asax page in Application_Error() method like below
 Exception ex = Server.GetLastError();Response.Redirect("~/Error.aspx?errmsg="+ex.message);Server.ClearError();
And in my Error.aspx.cs page i have placed a label and i have written code like this
protected void Page_Load(object sender, EventArgs e)Â Â Â Â Â Â Â {
        Label1.Text=Request["errmsg"];
     }
But it is not getting redirected my error page and not displaying anything on it.
I am going to be receiving data in a web service. After I receive this data I will be mapping it to a data transfer object. I want to be able to catch exceptions if the data from the service is missing any of the required values, times out or any data is malformed.
What can I do to generally catch these exceptions?
How to identify the line nr. where the exception has occured and show a piece of code around the exception?I would like to implement a custom exception handler page which would display the stack trace, and I'm looking for the easiest way to accomplish the above. While most of the information is available through the Exception object, the source code information is not available there.
View 1 Replies