问题标签 [eclipse-rap]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
1114 浏览

eclipse - Eclipse RAP - Firefox 不会忘记会话

我们有一个 Eclipse RAP 应用程序,它在 Firefox 中的行为有点奇怪——两个不同的问题。

当您四处浏览时,您可以单击系统某一部分的按钮。这将打开一个弹出窗口,如下所示:

其中 URL 是应用程序中的另一个 servlet。此 servlet 处于同一运行时,但与 RAP 无关 - 它从内存存储中获取二进制 blob 并将其转储到输出流中。

问题 1:这会导致 HTTP 会话在 firefox 中终止,并显示“会话已过期”RAP 错误页面以及重新启动会话的链接。

问题2:现在,当您单击链接以重新启动会话时,它会再次显示应用程序的对话框,但是当您执行任何操作时会再次显示会话过期错误。这可以防止用户再次使用系统,除非 Firefox 完全关闭并重新启动。快速浏览一下 FireBug 会发现 Firefox 传递的 JSESSIONID 没有改变。

有没有人见过这个?

0 投票
1 回答
216 浏览

java - 小浏览器窗口中的文本框高度

我这里有一个特殊的问题。我们有一个打算在 PDA/电话上使用的 RAP 应用程序,但是当它显示在一个小的浏览器窗口中时,表单上的所有文本框都太高了(大约是它们应该高度的两倍)。

我已经逐步完成了代码(表单使用 GridLayout,列数 = 1,使列等于 = false)并且发现如果浏览器窗口太小,TextSizeDetermination.getCharHeight() 方法会返回不正确的字体大小 -如果窗口很大,则为 13px,如果窗口太小,则为 26px(正好是两倍)。

有趣的是,如果窗口太小,该方法中的 probeStore.containsProbeResult(font) 会返回 true 并使用 probeStore.getProbeResult(...).getSize().y 作为字体大小。否则,如果窗口较大,则返回 false 并使用 TextSizeEstimation.getCharHeight(...)。

有没有人有一个或两个指针来解决这个问题?

带有适当大小窗口的对话框:

替代文字 http://70.38.7.140/tmp/Scr​​eenshot1.png

带有小窗口的对话框:

替代文字 http://70.38.7.140/tmp/Scr​​eenshot2.png

0 投票
2 回答
2058 浏览

eclipse - 集成 Eclipse RAP 和 OSGI/Spring-DM 插件,使用 Maven 构建

背景 我有一个项目,其中包含我的域模型和持久性代码(使用 Spring-ROO 创建)。我已将其更改为 OSGi 包,并使用 Maven(通过 PAX Construct 脚本)构建和部署它。这个捆绑包很好地部署到 Equinox,我可以访问各种服务等。

我还有一个 Eclipse RAP 插件/包,我想从中调用域包实现的服务/spring bean。这就是事情变得有趣的地方。

问题:

1) 如何设置由 Maven 构建的 Eclipse RAP 项目?我使用mvn eclipse:to-maven目标将我的 Eclipse RAP 目标平台的插件放入我的本地存储库,但是当我使用时:

我收到此错误:

[INFO] [pax:import-bundle {execution: default-cli}]
[INFO] 将 Eclipse UI 导入到 com.propertyselldirect.propsell.build:provision:pom:1.0.0-SNAPSHOT
[INFO] 添加 Eclipse UI 作为依赖项com.propertyselldirect:rap:bundle:1.0.0-SNAPSHOT
[INFO] ---------------------------------- --------------------------------------
[错误] 致命错误
[信息] ---- -------------------------------------------------- ------------------
[INFO] 版本对于 org.eclipse.core:runtime
[INFO] 为空 --------------- -------------------------------------------------- -------
[INFO] 跟踪
java.lang.NullPointerException:org.eclipse.core:runtime 的版本为空
在 org.apache.maven.artifact.DefaultArtifact.getBaseVersion(DefaultArtifact.java:390)

我也尝试过手动添加每个 Eclipse 运行时和 rap 依赖项,然后构建项目,但是当我部署到 OSGi(使用pax-provision)时,大多数 Eclipse RAP(和 org.eclipse.core.runtime)插件都没有激活。它们大多被列为INSTALLED.

2)或者,我是否应该使用 Eclipse PDE 来构建,然后将我的域插件(可能还有所有 Spring-DM 捆绑包)作为依赖项包含在内。在这种情况下,我将如何(自动)让 Eclipse PDE 访问那些将部署到我的 Maven 存储库的插件/捆绑包?我是否将它们手动安装到某个目标平台directoty,并使其成为我的 RAP 目标平台?(即因此具有添加了所有 Spring-DM 捆绑包的 RAP 目标平台)。

我还有很多问题,但现在这些就足够了。

任何指向网络上有用的文档/文章的指针都将受到欢迎。我用谷歌搜索,但没有发现任何特别有用的东西。

0 投票
1 回答
1030 浏览

eclipse - 如何使用 Eclipse RCP/RAP 项目中的 spring-roo 实体

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

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

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

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

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

此外,在运行 Eclipse RAP 应用程序时,一切都正常部署,但 RAP 应用程序除外,它会引发以下异常:

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

任何帮助将不胜感激。

0 投票
3 回答
4263 浏览

osgi - 如何在运行时启动 OSGI 包?

我需要在另一个包的执行过程中等待启动一个包,这可能吗?

0 投票
2 回答
5218 浏览

java - 我需要做什么来解决捆绑包 org.eclipse.rap.ui 无法在 Eclipse helios 中解决?

我不知道我做错了什么,但这似乎很重要,但我无法弄清楚。我正在使用 Eclipse Helios 创建 RCP / RAP 应用程序。我下载并安装了 RCP / RAP IDE,我之前可以启动 RAP 应用程序(尽管有一些关于缺少某些东西的运行时异常)。现在,当我使用 rap hello world 模板创建一个新的插件项目时,我得到了 49 个错误,我可以将其解决到大约 4 个,但无法解决捆绑包 org.eclipse.rap.ui 让我着迷。

0 投票
3 回答
202 浏览

eclipse - 添加到目标的Eclipse rcp插件可以在编译时解析,但不能在运行时解析

我已向我的 RAP 应用程序的目标平台添加了一个插件。在处理项目时,我可以毫无问题地引用它,并且编译没有错误。该插件还显示在我的构建路径的插件依赖库中。但是,当我运行应用程序时,osgi 框架给了我异常A

如何添加插件以便可以在我的应用程序中使用它?

0 投票
0 回答
317 浏览

glassfish - 在 GlassFish 3.0 上运行 Eclipse RAP 应用程序需要哪些配置和捆绑包?

我有一个使用 RAP 1.4m2 目标编写的 Eclipse 插件。它使用 Eclipse 启动器和 Equinox 3.7(这是 Eclipse 3.6 中的默认设置)运行良好。我还将我的 GlassFish 3 服务器配置为使用 Equinox 3.7 for OSGI。但是,我无法让我的包在这个环境中启动。在 Equinox 3.7 和 GlassFish 3 上的 RAP 下运行通用 Eclipse 插件还需要哪些其他配置或捆绑包?有没有一个简单的资源可以帮助我做到这一点?

0 投票
1 回答
261 浏览

eclipse-plugin - 从 Eclipse 插件连接到数据库的正确方法是什么?

我正在评估 Rich Ajax Platform (RAP),我需要连接到 DB2 数据库(可能还有其他数据库)。

在完成了大量的 J2EE 工作后,我通常通过 JNDI 获取一个 DataStore 对象并使用它来连接数据库。实际的连接参数是在应用程序之外配置的,可以适应开发、测试和生产环境。

-- 我应该如何从 RAP 的插件中解决这个问题?

-- 在不同环境中处理连接的最佳方式是什么?

-- 我也不想在插件中包含 DB2 JDBC jar,因为它们在开发和生产之间可能略有不同。

0 投票
4 回答
17136 浏览

eclipse-rcp - Eclipse RCP 菜单和操作:配置还是编码?

这是一个普遍的问题,但我目前的问题围绕着菜单处理。

在具有贡献菜单操作的普通插件中,您可以在 plugin.xml 配置中配置 ActionSets 等。这显然是明智的。

我正在开发一个 RCP 应用程序(实际上是 RAP),我想知道是否值得通过 plugin.xml 配置所有内容。我的插件不必与其他未知插件交互,所以理论上我可以控制。我可以以编程方式添加菜单和操作。

我一直在尝试配置一个包含子菜单的菜单。我曾尝试定义 ActionSet 并将其中一个链接到另一个,但没有成功。根据用户角色,需要禁用某些项目。

我想我可以在几分钟内编写全部代码,但我不确定这是否符合 eclipse 的“精神”。

外面有什么意见?该应用程序将变得相当大,所以我想从一开始就采用这种方法。也许有人可以指点我一个配置嵌套菜单的例子:-)