0 0

【大型企业级应用问题】一个java对话框的windowsclosing监听器被自动调用。20

背景:我们的产品是一个企业级应用,swing客户端,在用户登录之后会生成一个对话框,这个对话框默认是隐藏的,在客户端断链的时候才会弹出来,让用户点击确定按钮,或者关闭按钮退出系统重新登录。

问题:客户在使用的时候,概率性出现客户端自动注销,查看日志,是因为这个对话框的关闭按钮事件被激活导致,但是日志打印发现客户端并没有断链,所以该对话框就没弹出来,用户也不可能点击那个对话框的关闭按钮。(和用户描述一致)

有时候用户切换去干别的事情也会出现客户端自动注销,日志都一样。

客户那里有很多套该软件,但是问题只在一台pc上出现。怀疑是客户环境问题,但是苦于没有证据,由于客户比较敏感,又不能随便重装客户的机器。

现在需要找一个办法,找到对话框关闭按钮监听器被激活的原因。

有什么办法能获取到事件被激活的原因,需要什么手段?

或者有什么别的思路来处理这个问题。

经过了解,我们排除了jre地址冲突的问题,因为jre并没有coredump,也没有相应的文件产生。

多谢!!
2013年4月04日 22:44

1个答案 按时间排序 按投票排序

0 0

在事件日志中记录当前线程的调用链(thread.getStackTrace()),通过分析调用链找触发事件的源头。如果不行的话,那就调用getAllStackTraces()方法,把当时所有线程的调用情况都记下来分析。

2013年4月05日 09:28

相关推荐

    java一个监听器的例子

    java一个监听器的例子

    自己编写一个Java监听器

    1.原理:  当范围对象的状态发生变化的时候,服务器自动调用监听器对象中的方法。...  2.2当事件源上发生操作时,它会调用事件监听器的一个方法,并且调用这个方法时,会传递事件对象过来  2.3事件监听器是由开

    Java设计模式之监听器模式实例详解

    主要介绍了Java设计模式之监听器模式,结合实例形式较为详细的分析了java设计模式中监听器模式的概念、原理及相关实现与使用技巧,需要的朋友可以参考下

    java事件监听方法和代码

    } 这个监听器定义了3个动作:键盘按下去调用keyPressed方法,键盘抬起来调用keyReleased,键盘被敲击一次调用keyTyped。 事件监听器是需要注册才能使用的,注册方法如下: public void add(<ListenerType>listener)...

    java事件监听器

    当你将一个类用作事件监听器时,你已经设置好一个特定的事件类型,它会用该类进行监听。接下来的操作是:一个匹配的监听器必须被加入到该组件中 组件被创建之后,可以在组件上调用如下方法来将监听器与它联系起来 ...

    java源码包---java 源码 大量 实例

    在有状态SessionBean中,用累加器,以对话状态存储起来,创建EJB对象,并将当前的计数器初始化,调用每一个EJB对象的count()方法,保证Bean正常被激活和钝化,EJB对象是用完毕,从内存中清除…… Java Socket 聊天...

    java监听器的实现和原理详解

    主要给大家介绍了关于java监听器实现和原理的相关资料,文中通过示例代码介绍的非常详细,对大家学习或者使用java具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧

    VC++ 6.0非模式对话框示例以及对比Java的Swing编程的感想

    VC++中编写模式对话框非常容易,只需要在呼叫一个不带参数的对话框类的构造方法之后,然后呼叫对话框的DoModal方法即可,而书写一个非模式对话框比较复杂。 不过当本人按照《Visual C++技术内幕》的说明做完非模式...

    JAVA上百实例源码以及开源项目源代码

    在有状态SessionBean中,用累加器,以对话状态存储起来,创建EJB对象,并将当前的计数器初始化,调用每一个EJB对象的count()方法,保证Bean正常被激活和钝化,EJB对象是用完毕,从内存中清除…… Java Socket 聊天...

    Java监听键盘鼠标全局事件[定义].pdf

    Java监听键盘鼠标全局事件广泛应用于游戏开发、自动化测试、屏幕阅读器等领域。该技术可以帮助开发者快速实现复杂的交互功能,以提高用户体验。 九、Java监听键盘鼠标全局事件的优点 Java监听键盘鼠标全局事件的...

    JAVA SESSION监听器

    JAVA SESSION 监听器 有效监听服务器SESSION情况,当前登录用户等

    java实现监听数据库源码

    java实现监听数据库动态变化代码实例,很有参考意义。

    java监听器练习

    java监听器练习,java初学者!

    JAVA上百实例源码以及开源项目

    在有状态SessionBean中,用累加器,以对话状态存储起来,创建EJB对象,并将当前的计数器初始化,调用每一个EJB对象的count()方法,保证Bean正常被激活和钝化,EJB对象是用完毕,从内存中清除…… Java Socket 聊天...

    java源码包4

    在有状态SessionBean中,用累加器,以对话状态存储起来,创建EJB对象,并将当前的计数器初始化,调用每一个EJB对象的count()方法,保证Bean正常被激活和钝化,EJB对象是用完毕,从内存中清除…… Java Socket 聊天...

    java源码包3

    在有状态SessionBean中,用累加器,以对话状态存储起来,创建EJB对象,并将当前的计数器初始化,调用每一个EJB对象的count()方法,保证Bean正常被激活和钝化,EJB对象是用完毕,从内存中清除…… Java Socket 聊天...

    java字符编码监听器

    java字符编码监听器

    java源码包2

    在有状态SessionBean中,用累加器,以对话状态存储起来,创建EJB对象,并将当前的计数器初始化,调用每一个EJB对象的count()方法,保证Bean正常被激活和钝化,EJB对象是用完毕,从内存中清除…… Java Socket 聊天...

    Java开发技术大全(500个源代码).

    HelloWorldApp.java 第一个用Java开发的应用程序。 firstApplet.java 第一个用Java开发的Applet小程序。 firstApplet.htm 用来装载Applet的网页文件 第2章 示例描述:本章介绍开发Java的基础语法知识。 ...

    成百上千个Java 源码DEMO 4(1-4是独立压缩包)

    Java目录监视器源程序 9个目标文件 内容索引:JAVA源码,综合应用,目录监视 用JAVA开发的一个小型的目录监视系统,系统会每5秒自动扫描一次需要监视的目录,可以用来监视目录中文件大小及文件增减数目的变化。 Java...

Global site tag (gtag.js) - Google Analytics