java - 如何使用 Spring DM 在 AWT EventQueue 上创建 Swing OSGi 包

标签 java spring swing osgi

我有一个 OSGi 目标平台,其中包含 Equinox、Spring Framework、Spring DM 和几个适用于我的应用程序的自定义 bundle 。我的所有包都包含 Spring 应用程序上下文,因此由 Spring OSGi 扩展器自动加载。

我的一些包包含 Swing ui 组件。问题在于 Spring OSGi Extender 不会在 AWT EventQueue 上创建这些应用程序上下文,这会导致多个 ui 问题。

到目前为止我发现的唯一解决方法是为 spring-osgi-extender 创建一个片段包并配置“taskExecutor”,如提到的 here 。基本上,我的自定义taskExecutor 实现将所有execute() 调用转发到AWT EventQueue。这并不是一个真正好的解决方案,因为我的应用程序中所有由 Spring 驱动的包都将在 AWT 线程上创建,从而减慢了启动时的 ui 速度(并且基本上终止了我们的启动屏幕加载状态,因为它缺乏任何刷新)。

关于如何在 AWT EventQueue 上创建这些 Spring/Swing 包有什么想法吗?

最佳答案

我没有直接回答您的问题,但以下项目应该可以帮助您解决这个问题。 http://max-server.myftp.org/trac/pm

关于java - 如何使用 Spring DM 在 AWT EventQueue 上创建 Swing OSGi 包,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3561161/

相关文章:

java - 如何在 JTable 中的 cellrenderer 之外设置表格高度

java - Google Maps API Android - NullPointerException - setBoundsInParent

java - JAXB 向元素添加属性

java - 否定比较链

javascript - 外部 javascript 文件出现问题

JavaConfig 不依赖于 Spring

mysql - spring mvc不会连接到不同计算机上的mysql数据库

java - 在Android中获取字符串的ems大小

java - 每 5 秒更新一次我的 textField

java - Swing getHeight() 值从 0 更改为 16