【问题标题】:How to use spring-roo entities from Eclipse RCP/RAP project如何使用 Eclipse RCP/RAP 项目中的 spring-roo 实体
【发布时间】:2010-03-02 06:02:40
【问题描述】:

我使用 spring-roo 创建了一个域模型,它大量使用了 Spring 和 AspectJ。我的模型很好地部署为 OSGi 包,并且从 Spring STS(基于 eclipse)IDE 中,我可以调用实体类等。

我需要从 Eclipse RCP/RAP 应用程序访问这些域类,并且我将这个项目保留在普通的 Eclipse IDE 中用于 RCP/RAP 开发(即它具有所有 PDE 工具)。我还添加了 STS 和 AspectJ 插件。

我将我的域包添加到目标平台,并使我的 Eclipse RAP 应用程序依赖它。当我运行 RAP 应用程序时,我可以看到我的域包部署在 OSGi 中(即它是活动的)。当我添加依赖项时,我还看到它存在于 PDE 编辑器中。

但是,当我尝试导入和使用任何域类时,我什么也得不到。我什至无法从我的 Java 文件编辑器中看到域包。

我尝试将 AspectJ 和 Spring 特性添加到我的 RAP 项目中,但仍然没有。

此外,当运行 Eclipse RAP 应用程序时,一切都部署良好,除了 RAP 应用程序,它会引发以下异常:

2010 年 3 月 2 日上午 2:44:58 org.springframework.beans.factory.xml.XmlBeanDefinitionReader loadBeanDefinitions 信息:从 URL [bundleentry://168.fwk1096264275/META-INF/spring/applicationContext.xml] 加载 XML bean 定义 线程“SpringOsgiExtenderThread-2”java.lang.IllegalStateException 中的异常:BeanFactory 未初始化或已关闭 - 在通过 ApplicationContext 访问 bean 之前调用“刷新” 在 org.springframework.context.support.AbstractRefreshableApplicationContext.getBeanFactory(AbstractRefreshableApplicationContext.java:171) 在 org.springframework.osgi.extender.internal.dependencies.startup.DependencyWaiterApplicationContextExecutor.close(DependencyWaiterApplicationContextExecutor.java:345) 在 org.springframework.osgi.extender.internal.dependencies.startup.DependencyWaiterApplicationContextExecutor.fail(DependencyWaiterApplicationContextExecutor.java:401) 在 org.springframework.osgi.extender.internal.dependencies.startup.DependencyWaiterApplicationContextExecutor.stageOne(DependencyWaiterApplicationContextExecutor.java:287) 在 org.springframework.osgi.extender.internal.dependencies.startup.DependencyWaiterApplicationContextExecutor.refresh(DependencyWaiterApplicationContextExecutor.java:175) 在 org.springframework.osgi.context.support.AbstractDelegatedExecutionApplicationContext.refresh(AbstractDelegatedExecutionApplicationContext.java:175) 在 org.springframework.osgi.extender.internal.activator.ContextLoaderListener$2.run(ContextLoaderListener.java:718) 在 java.lang.Thread.run(Thread.java:637)

任何帮助将不胜感激。

【问题讨论】:

  • 小更新:似乎 Maven3/Tycho 可能是答案。如果适用,将调查并更新此问题。

标签: eclipse spring aspectj spring-roo eclipse-rap


【解决方案1】:

也许你应该尽量不要将 Roo 项目构建为 jar,而是从你的 RCP 项目中引用这个项目。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-08-12
    • 1970-01-01
    • 1970-01-01
    • 2019-02-03
    • 1970-01-01
    • 1970-01-01
    • 2011-05-01
    • 2014-11-21
    相关资源
    最近更新 更多