问题标签 [vaadin7]
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.
maven - 打破 Vaadin 小部件集编译
为了节省编译时间,我试图将小部件集的编译分解为它自己的 TeamCity 构建项目,我们使用 nexus 作为 repo。Vaadin“基础项目”将包含对 widgetset 工件的依赖项以获取当前版本。我敢肯定这以前已经做过了。
widgetset 项目在 TeamCity 中构建良好。jar 和 pom 已正确上传到 nexus。我已经打开了罐子的包装,以确保一切都在原位。到现在为止还挺好。
在 Eclipse 中,基础项目确实获取了小部件集工件并将其包含在其库中。看起来不错。
但是,当我从 eclipse 对基础项目执行“mvn clean package”并在 Tomcat 上运行它时,我在 Web 浏览器中收到以下错误:
当我检查项目结构时,我发现目标文件夹下没有 VAADIN/widgetset-folder。此外,在 maven 依赖 jar 文件中,有一个包含 gwt-unitCache 的 VAADIN 文件夹和一个包含 widgetset-goodies 的 VAADIN.widgetsets-folder,以及上述错误消息中提到的文件。
我无法理解这一点。我不是专家,所以我可能错过了一些琐碎的事情。我也不是 Vaadin 专业人士,所以我可能错过了一些同样微不足道的事情。
我真的希望有人能帮我把这艘船弄到水里。我将不胜感激!
Vaadin 版本:7.1.1 Maven 版本:3.0.4
我的基础项目的 pom.xml (为简洁起见省略了一些内容):
我的 widgetset-pom(为简洁起见省略了一些东西):
更新: 我已经像这样设置了我的 MainUI 类:
我意识到这与它有关,并将其更改为正确的小部件集。但我仍然得到同样的错误:
现在,这个错误在类路径中显示了 nocache-file 的正确路径,这让我很困惑,因为该文件在 lib 文件夹中。我希望这不会让你更困惑......
更新 2: 实际上这已经足够了:
java - Vaadin 7 在组件之间触发自定义事件
我想创建自定义事件并在视图的某些部分触发它们,以便视图的其他部分被更新/删除/刷新。
我尝试通过扩展 Component.Event 和 Component.Listener 但它不起作用。我认为事件和监听器必须限制在同一个组件实例中。
这可以用 Vaadin 7 完成吗?
基本上我想解耦我的视图并提供组件之间的轻松通信。我也在使用 Spring 和 Vaadin。如果您在观察者模式之外有更好的想法,我也将不胜感激。
谢谢
vaadin - 来自服务器的 Vaadin7 容器更新 - 是否使用服务器推送
我想实现 Vaadin 服务器推送,以便将服务器数据库上的更改推送给用户。例如,如果用户 A 保存到服务器 DB,则用户 B 应该会在其 UI 上自动看到更改。
然而,Vaadin 的书指出:
SQLContainer 不断检查连接的数据库表中的行数,以检测外部添加或删除行。默认情况下,假定表行计数保持有效 10 秒。这个值可以从代码中改变;在 SQLContainer 中使用 setSizeValidMilliSeconds()。
那么这是否意味着我不需要为服务器数据库更改实现服务器推送?
SQLContainer 还会检查行更新吗?
我认为服务器推送的原因是将数据更改推送给用户?
java - 将其他项目中的 bean 注入 Vaadin 视图
在我的一个 Vaadin 视图中,我试图通过使用 @Inject 注入来获取驻留在另一个项目 (bll) 中的业务对象。
瓦丁观点:
我不能这样做,当然,bananaService 对象在运行时为空,因为我无处可对包进行组件扫描。
我正在使用注释,所以我的 Vaadin Web 项目中没有 web.xml,我什至没有 WEB-INF 文件夹。
我也知道有一些替代方案,例如CDI-Utils和Vaadin CDI Vaadin 插件,以及其他一些解决方案,但它们似乎都将东西注入主 UI(而不是视图)和网络应用程序本身,而不是来自其他模块。
我正在使用 Vaadin 7 和 Tomcat 7(只要在给出以下问题的答案的情况下使用 Tomcat 可行)
问题:将 bean 从另一个模块注入 Vaadin 视图的推荐方法是什么,我需要做什么才能完成此操作?
追问:使用上述方法后,这个应用使用Tomcat会不会有问题?
java - 替换 Vaadin SQLContainer 中的过滤器
我有带有 SQLContainer 的表。我也有带过滤器的表格。更改后我想更换过滤器。首先,我删除所有调用 SQLContainer.removeAllContainerFilters() 的过滤器:
它会导致刷新。删除过滤器后,我调用 addContainerFilter():
并进行第二次刷新。
我可以替换过滤器以便仅在刷新时执行吗?
android - Vaadin 与 Android - 如何在 Android 中使用 Vaading 开发和同步 UI 组件
我打算开发一个应用程序,将 Vaadin 框架的 UI 组件添加到 android 开发中。
我需要一些建议和意见,无论是否可能在 android 中。如果可能的话,我们如何做到这一点。
寻找答复。提前致谢
问候阿南德
java - 在 Vaadin 中即时同步两个表
在我的 Vaadin UI 中,我有以下场景:
换句话说,有两个表:
- 一个可编辑的“主”表,
- 不可编辑的“从”表,但必须包含与主表相同的数据,但排序顺序可能不同。
最终要求排除了具有相同的表Container
(在我的理解中,这可能是错误的)。
我目前所做的是附加 anItemSetChangeListener
和 a ValueChangeListener
,并使用事件相应地更新数据。
这是当前的粗略实现(实际上是在 Scala 中,但我希望它足够可读,如果没有,请发表评论):
但是,我的问题是我需要在用户键入时连续同步数据,这不会发生,因为相关事件仅在某些操作完成后才发送(添加一行等)。
我该如何解决这个问题,即如何强制经常发出事件以启用连续同步?我唯一的想法是使用ActionListener
映射所有键,但这尖叫着“滥用”。
注意:我意识到通过服务器端执行此操作效率较低,但在我的情况下这不是问题。但是,当然,基于客户端的答案也可以。
session - Vaadin 在另一个浏览器/选项卡/系统中关闭同一用户的 UI
我正在 Vaadin 7 中做一个项目。我需要为登录实现如下所示的内容。
用户“A”登录到系统“1”。他再次登录到另一个系统“2”。现在我想知道如何关闭系统“1”上的 UI。
我尝试了一些东西并且可以关闭 UI,如果它是同一个浏览器。但是,对于不同的系统/浏览器。我没有任何想法。
我的代码:
任何人都可以帮助我吗?
spring - Vaadin 7.1 + Spring-Security Integration 在 Tomcat 服务器中运行
我是 vaadin 和 spring 安全的新手,我想知道是否有人有一个完整的项目示例,说明 vaadin 7.1 + spring-security 集成在 tomcat 服务器(而不是码头)中运行。
java - 子窗口的 Vaadin 7 按钮
在页面http://demo.vaadin.com/ReindeerTheme/上,子窗口可调整大小,宽度和高度有最小限制,并且没有 fullSize 按钮。
我发现没有选项可以对我的 Sub-Windows 做同样的事情。使用setResizable(false)
时,fullSize Button 被隐藏,但 Window 无法调整大小。