草庐IT

EXCEPTION

全部标签

java - 无法从任何地方构建 Hibernate SessionFactory 异常

每次我想部署我的应用程序时都会出现一个奇怪的错误。我正在使用IntelliJIDEA2016.3。我的应用程序是使用JSF、EJB和JPA(Hibernate)的JavaWEB应用程序。所有库均由IDEA下载(此项目中没有Maven),所有依赖项都随.war文件一起提供。我正在Windows10上部署到TomEE7.0.2。这里是我部署时涉及的配置文件:resources.xmlJdbcDrivercom.mysql.jdbc.DriverJdbcUrljdbc:mysql://localhost:3306/my_internet_shop?autoReconnect=true&

Java unchecked/checked 异常说明

我一直在阅读有关未检查和已检查问题的信息,没有任何在线资源真正清楚地说明两者的区别以及何时使用两者。据我了解,它们都是在运行时抛出的,它们都表示超出逻辑预期范围的程序状态,但必须显式捕获已检查的异常,而未检查的则不会。我的问题是,为了论证的缘故,假设我有一个除以两个数字的方法doubledivide(doublenumerator,doubledenominator){returnnumerator/denominator;}和一个需要在某处除法的方法voidfoo(){doublea=divide(b,c);}谁负责检查分母为零的情况,应该检查还是不检查异常(忽略Java的内置除法检

java - 构建缓存失败应该抛出哪个异常?

我有一个包含缓存(Set)的类,缓存是建立在实例化上的。我很困惑如果构建缓存失败(无法连接到数据库或某些数据库)我应该抛出哪个异常/错误。classProvider{publicProvider(){buildCache();}privatevoidbuildCache(){try{this.cache=getDataFromDb();}catch(Exceptionex){thrownew???}}}我想到的一个异常是ExceptionInInitializerError,但javadoc说它是在初始化静态成员时抛出的。我是否应该抛出一个IllegalStateException因为

java - 从另一个正在运行的 Java 应用程序捕获异常

我遇到了一个问题,我有一个程序(不是我写的,是别人写的)我想全天候运行24/7,但有时它会崩溃。通常,这不是问题,因为我可以简单地创建一个进程观察器来检查它是否崩溃,然后在必要时重新启动它。但是,这个特定的程序有时会抛出异常并将其输出到集成到其中的图形界面中。在这种情况下,程序根本不会崩溃。界面保持正常,但实际服务器功能不可用。有什么方法可以从这个过程中拦截这些信息吗? 最佳答案 您想使用JavaVirtualMachineToolsInterface.我无法为您提供捕获异常的代码,但这是可以查看的地方。您必须进行一些侦探工作才能找

java - 写入客户端 channel 时出现异常 java.nio.channels.ClosedChannelException

我使用netty3.5.8创建了一个游戏服务器。起初,从服务器向客户端发送数据没有任何问题。但是当服务器运行一段时间后,向客户端channel写入数据时出现很多异常[java.nio.channels.ClosedChannelException]。以前任何人都得到过这个异常。有什么技巧可以解决这个问题吗?我考虑缓存缓冲区的原因。我的代码示例是这样的:ChannelBufferbff=ChannelBuffers.buffer(18);bff.writeByte(Events.S_SERVER_PUSH);bff.writeByte((byte)0);bff.writeInt(idRo

java - 多个项目使用的异常应该放在哪里?

我需要将具有两个数据模型的项目重构为两个独立的项目。两个项目都使用相同的异常。我应该只为这些异常(exception)创建第三个项目吗?克隆听起来像是行不通的。 最佳答案 是的,你应该在一个单独的项目上创建它,并将它作为对其他项目的依赖。看到一个项目/jar只包含您使用的模块中使用的异常的情况并不少见。恕我直言,这是让事情井井有条的好方法。 关于java-多个项目使用的异常应该放在哪里?,我们在StackOverflow上找到一个类似的问题: https://

java - 为什么我抛出 NullPointerException

现在是大学的寒假,我正努力在编码方面保持敏锐,所以我只是为我们只在类里面讨论但从未编写过代码的程序和算法编写代码。不管怎样,我今天正在研究的一个程序是你给计算机一个打乱的单词,它会输出所有可以由这些字母组成的单词(来自给定的EnglishWordList文件)。无论如何,这是我目前拥有的代码:importjava.io.*;importjava.util.*;publicclassProdFinder{privateHashMapprodFinder=newHashMap();privateHashMap>findWord=newHashMap>();privatestaticfina

java - 如何在迭代此集合时避免 ConcurrentModificationException?

我需要遍历项目集合,有时还要同时添加到该集合中。但是,如果我在迭代时添加,那么我只是通过打破迭代循环并从头开始重新启动迭代来重新开始迭代。然而,这导致并发修改异常。[下面的代码]Listcollection=newArrayList();for(IntegerlobId:collection){..if(someCondition){collection.add(something);break;}}我怎么可能做类似上面的事情来避免ConcurrentModificationException?简单地使用Array而不是ArrayList来避免这个异常是否正确?是否有任何类型的专门集合

java - 从一个方法中抛出多个异常

关闭。这个问题需要detailsorclarity.它目前不接受答案。想改进这个问题吗?通过editingthispost添加细节并澄清问题.关闭8年前。Improvethisquestion如何从一个方法中同时抛出多个异常?示例:publicvoiddoA()throwsException1,Exception2{thrownewException1("test1");thrownewException2("test2");}如何实现这样的功能?编辑:一个条件同时抛出Exception1和Exception2。可能的?这只是一个测试抛出异常的演示文件。

Java 日志记录异常,使用 getMessage 或 toString : log. warn(ex.getMessage()) 或 log.warn(ex) 使用开源

我的问题是:用getMessage或toString或两者都记录更好吗?考虑到开源引发的错误。看到评论中的问题,但没有得到答案。也许我错过了什么?不要介意记录其中之一的小性能影响,但除非有充分的理由,否则不要同时记录两者。意思是log(ex)或log(ex.getMessage),不是堆栈跟踪。锯1,2和3记录异常:哪个更好:log.warn(ex.getMessage(),ex)或log.warn(ex,ex);我注意到有时getMessage返回空或null,所以在一般实践中有什么理由不使用:log.warn(ex,ex);因为它似乎打印了类名和消息(如果已设置)?我想一个原因可能