Questions tagged «exception»

异常是一种异常情况,需要偏离程序的正常流程。通常,异常不应导致完全失败,而应由异常处理程序来处理。异常处理是许多编程语言中的内置构造。通常,通过展开堆栈来处理异常,从而回滚到异常范围之外的已定义状态,然后调用处理程序块或例程。

6
您如何捕获此异常?
这段代码在django / db / models / fields.py中。它创建/定义一个异常吗? class ReverseSingleRelatedObjectDescriptor(six.with_metaclass(RenameRelatedObjectDescriptorMethods)): # This class provides the functionality that makes the related-object # managers available as attributes on a model class, for fields that have # a single "remote" value, on the class that defines the related field. # In the example "choice.poll", …
161 python  django  exception 

8
Ruby中的安全整数解析
我有一个字符串,例如'123',我想将其转换为integer 123。 我知道您可以做some_string.to_i,但是转换'lolipops'为0,这并不是我想到的效果。当我尝试用无效而痛苦的方式转换无效的东西时,我希望它能炸开我的脸Exception。否则,我无法区分有效值0和根本不是数字的值。 编辑:我正在寻找这样做的标准方法,而无需使用正则表达式。


6
在服务器上打开IncludeExceptionDetailInFaults(通过ServiceBehaviorAttribute或<serviceDebug>配置行为)
我有一个运转良好的WCF服务,但情况有所变化,我不知道是什么。 我得到这个例外: System.ServiceModel.FaultException:由于内部错误,服务器无法处理请求。有关错误的更多信息,请打开服务器上的IncludeExceptionDetailInFaults(从ServiceBehaviorAttribute或从配置行为),以便将异常信息发送回客户端,或者根据Microsoft .NET Framework 3.0 SDK文档打开跟踪。并检查服务器跟踪日志。 这令人困惑,因为我正在运行.NET 4.0。 我在哪里打开IncludeExceptionDetailInFaults?我正在努力寻找它。

14
“软件导致连接中止:套接字写入错误”的官方原因
给定此堆栈跟踪代码段 引起原因:java.net.SocketException:软件导致连接中止: java.net.SocketOutputStream.socketWrite0(本地方法)处的套接字写入错误 我试图回答以下问题: 哪些代码引发此异常?(JVM?/ Tomcat?/我的代码?) 是什么导致引发此异常? 关于#1: Sun的JVM源代码不包含此确切消息,但我认为文本软件导致连接中止:套接字写入错误来自的本机实现SocketOutputStream: private native void socketWrite0(FileDescriptor fd, byte[] b, int off, int len) throws IOException; 关于#2 我的猜测是,这是由于客户端在获得完整响应之前终止连接而引起的(例如,发送了一个请求,但是在获得完整响应之前,它已关闭/终止/脱机) 问题: 以上假设是否正确(#1和#2)? 是否可以与以下情况区别开来:“由于服务器端发生网络错误而无法写入客户端”?还是会呈现相同的错误消息? 最重要的是:是否有正式文件(例如来自Sun的文件)说明上述内容? 我需要证明此堆栈跟踪是套接字客户端的“故障”,并且服务器无法做任何事情来避免它。(捕获异常或使用非Sun JVM SocketOutputStream除外,尽管两者都不能真正避免客户端已终止的事实)

5
捕获和重新抛出异常的最佳实践是什么?
应该将捕获的异常直接重新抛出,还是将它们包装在新的异常周围? 也就是说,我应该这样做: try { $connect = new CONNECT($db, $user, $password, $driver, $host); } catch (Exception $e) { throw $e; } 或这个: try { $connect = new CONNECT($db, $user, $password, $driver, $host); } catch (Exception $e) { throw new Exception("Exception Message", 1, $e); } 如果您的答案是直接抛出,请建议使用异常链接,我无法理解我们使用异常链接的实际情况。
156 php  exception 


12
在catch和finally子句中引发异常
在大学里一个关于Java的问题中,有以下代码片段: class MyExc1 extends Exception {} class MyExc2 extends Exception {} class MyExc3 extends MyExc2 {} public class C1 { public static void main(String[] args) throws Exception { try { System.out.print(1); q(); } catch (Exception i) { throw new MyExc2(); } finally { System.out.print(2); throw new MyExc1(); } } static …
155 java  exception 

4
正确使用错误
我正在将TypeScript用于一个相当大的项目,并且想知道使用Errors 的标准是什么。例如,假设我在Java中将索引超出范围例外: throw new IndexOutOfBoundsException(); TypeScript中的等效语句为: throw new Error("Index Out of Bounds"); 我还有什么其他方法可以做到这一点?公认的标准是什么?


9
最佳实践:方向更改期间的AsyncTask
AsyncTask 在另一个线程中运行复杂的任务是一件很棒的事情。 但是,如果AsyncTask仍在运行时发生方向更改或其他配置更改,则电流将Activity被销毁并重新启动。并且由于的实例AsyncTask连接到该活动,因此失败并导致“强制关闭”消息窗口。 因此,我正在寻找某种“最佳实践”来避免这些错误并防止AsyncTask失败。 到目前为止,我所看到的是: 禁用方向更改。(请确保不要使用此方法。) 让任务继续存在并通过以下方式使用新的活动实例对其进行更新 onRetainNonConfigurationInstance 只需在Activity销毁销毁任务时取消该任务,并Activity在再次创建销毁任务时重新启动它即可。 将任务绑定到应用程序类而不是活动实例。 在“货架”项目中使用的某些方法(通过onRestoreInstanceState) 一些代码示例: 屏幕旋转期间的Android AsyncTasks,第一部分和第二部分 ShelvesActivity.java 您能帮助我找到最好的方法,该方法可以最好地解决问题并且也易于实施吗?代码本身也很重要,因为我不知道如何正确解决这个问题。

2
如何在Javascript中抛出异常,但保留堆栈?
在Javascript中,假设我想在发生异常时执行一些清除操作,但是让异常继续在堆栈中传播,例如: try { enterAwesomeMode(); doRiskyStuff(); // might throw an exception } catch (e) { leaveAwesomeMode(); throw e; } doMoreStuff(); leaveAwesomeMode(); 此代码的问题在于,捕获并重新抛出异常会导致丢失到该点的堆栈跟踪信息,因此,如果随后再次捕获到异常,则该堆栈跟踪在堆栈的较高位置,则堆栈跟踪只会下降到-扔。这很烂,因为这意味着它不包含实际引发异常的函数。 事实证明,try..finally在至少Chrome中具有相同的行为(也就是说,精确地不是问题是重新抛出,而是所有异常处理程序块的存在。) 有谁知道一种在Java中重新抛出异常但保留与之关联的堆栈跟踪的方法吗?失败了,如何建议其他方法来添加异常安全的清理处理程序,同时在发生异常时捕获完整的堆栈跟踪信息? 感谢您的任何指点:)

10
如何修复java.net.SocketException:管道损坏?
我正在使用apache commons http客户端使用post方法调用url来发布参数,它很少抛出以下错误。 java.net.SocketException: Broken pipe at java.net.SocketOutputStream.socketWrite0(Native Method) at java.net.SocketOutputStream.socketWrite(SocketOutputStream.java:92) at java.net.SocketOutputStream.write(SocketOutputStream.java:136) at java.io.BufferedOutputStream.write(BufferedOutputStream.java:105) at java.io.FilterOutputStream.write(FilterOutputStream.java:80) at org.apache.commons.httpclient.methods.ByteArrayRequestEntity.writeRequest(ByteArrayRequestEntity.java:90) at org.apache.commons.httpclient.methods.EntityEnclosingMethod.writeRequestBody(EntityEnclosingMethod.java:499) at org.apache.commons.httpclient.HttpMethodBase.writeRequest(HttpMethodBase.java:2114) at org.apache.commons.httpclient.HttpMethodBase.execute(HttpMethodBase.java:1096) at org.apache.commons.httpclient.HttpMethodDirector.executeWithRetry(HttpMethodDirector.java:398) 有人可以建议导致此异常的原因以及如何对其进行调试吗?
150 java  exception  post  sockets 

3
如何在Java中创建自定义异常?[关闭]
在这里很难说出要问什么。这个问题是模棱两可,含糊,不完整,过于宽泛或夸张的,不能以目前的形式合理地回答。如需帮助澄清此问题以便可以重新打开, 请访问帮助中心。 7年前关闭。 我们如何在Java中创建自定义异常?
149 java  exception 

5
Java为什么不允许Throwable的通用子类?
根据Java语言分隔,第3版: 如果泛型类是的直接子类或间接子类,则是编译时错误Throwable。 我想理解为什么做出这个决定。通用异常有什么问题? (据我所知,泛型只是编译时的语法糖,Object无论如何它们都将转换为.class文件,因此有效地声明泛型类就好像其中的所有内容都是Object。。如果我错了,请更正我)

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.