标签: vaadin8

如何在Vaadin 8中添加网格过滤器?

瓦丁8刚刚出来.在网格过滤器的文档中添加从来没有,我只找到一个可行的解决方案在这里的计算器.

  HeaderCell cell = filterRow.getCell(pid);
                    // Have an input field to use for filter
                    TextField filterField = new TextField();
                    filterField.setColumns(0);
                    filterField.setHeight("23");



                    // Update filter When the filter input is changed
                    filterField.addTextChangeListener(change -> {
                        // Can't modify filters so need to replace
                        b.removeContainerFilters(pid);

                        // (Re)create the filter if necessary
                        if (! change.getText().isEmpty())
                            b.addContainerFilter(
                                new SimpleStringFilter(pid,
                                    change.getText(), true, false));
                    });
                    cell.setComponent(filterField);
Run Code Online (Sandbox Code Playgroud)

但是现在自更新以来,此解决方案不再有效,因为SimpleStringFilter在新网格中不再可用,并且BeanItemContainer不再被识别,只允许setItems()填充网格数据.

任何人都可以帮我更新Vaadin 8的代码吗?

java vaadin vaadin8

15
推荐指数
2
解决办法
1万
查看次数

如何在Vaadin 8中有条件地为网格行着色?

我想根据单元格的值更改Vaadin网格行的颜色.我尝试了如下,但没有奏效.

SCSS

@import "mytheme.scss";
@import "addons.scss";

// This file prefixes all rules with the theme name to avoid causing conflicts with other themes.
// The actual styles should be defined in mytheme.scss

.mytheme {
     @include addons;
     @include mytheme;

     .v-grid-row.error_row {
            // Tried following elements and didn't work.
            // background-color: red !important;
            // color: blue !important; // This changed the color of the font.
            background: green !important;
     }
}
Run Code Online (Sandbox Code Playgroud)

Java代码

grid.setStyleGenerator(t -> {
            if (t.getLogLevel().trim().equals(ERROR) || t.getLogLevel().trim().equals(WARN)) {
                return "error_row";
            } …
Run Code Online (Sandbox Code Playgroud)

java sass vaadin vaadin-grid vaadin8

12
推荐指数
1
解决办法
5433
查看次数

Vaadin 10为新项目

我是Java开发人员,我将开始新项目.我的客户端开发技能非常有限,这就是为什么我真的很喜欢Vaadin框架的想法.我已经评估了Vaadin 10 Bakery App Starter应用程序https://vaadin.com/start#vaadin10,并且为了使这个应用程序启动并运行而自定义的HTML/CSS/JavaScript数量让我感到惊讶.现在我真的很困惑,不明白它如何简化开发人员的生活.

我现在可以作为项目启动器使用的唯一应用程序是着名的QuickTickets Dashboard https://demo.vaadin.com/dashboard/,其中所有UI都是纯Java实现的.目前最大的问题是这个应用程序是在Vaadin 8上实现的,我无法为Vaadin 10找到它的版本.你有类似Vaadin 10的东西吗?如果不是,您是否有从Vaadin 8到Vaadin 10的迁移指南,我可以使用它来尝试将此应用程序移植到Vaadin 10?

vaadin vaadin8 vaadin10 vaadin-flow

12
推荐指数
3
解决办法
3861
查看次数

如何在Vaadin 8中添加验证器?

在Vaadin 7中有一个addValidator函数,但在Vaadin 8中它不存在.

Vaadin 7示例:

   TextField user = new TextField("User:");
   user.setRequired(true);
   user.setInputPrompt("Your username");
   user.addValidator(new NullValidator("Username can't be empty", false));
   user.setInvalidAllowed(false);
Run Code Online (Sandbox Code Playgroud)

java vaadin vaadin8

11
推荐指数
1
解决办法
1万
查看次数

无法解包数据,无效状态已关闭

使用vaadin push的Spring-Boot,Vaadin 8应用程序

@Push(transport = Transport.WEBSOCKET_XHR)
Run Code Online (Sandbox Code Playgroud)

如果应用程序在没有任何暂停的情况下获得用户操 没有任何用户请求/操作的几秒钟在控制台上出现以下错误.这使我们的错误日志文件涂鸦.先感谢您.

Spring-boot,vaadin 8,Nginx,Plesk onyx,ubuntu 16,let-encrypt

java.io.IOException: Unable to unwrap data, invalid status [CLOSED]
        at org.apache.tomcat.util.net.SecureNioChannel.read(SecureNioChannel.java:604)
        at org.apache.tomcat.util.net.NioEndpoint$NioSocketWrapper.fillReadBuffer(NioEndpoint.java:1240)
        at org.apache.tomcat.util.net.NioEndpoint$NioSocketWrapper.fillReadBuffer(NioEndpoint.java:1213)
        at org.apache.tomcat.util.net.NioEndpoint$NioSocketWrapper.read(NioEndpoint.java:1186)
        at org.apache.tomcat.websocket.server.WsFrameServer.onDataAvailable(WsFrameServer.java:72)
        at org.apache.tomcat.websocket.server.WsFrameServer.doOnDataAvailable(WsFrameServer.java:171)
        at org.apache.tomcat.websocket.server.WsFrameServer.notifyDataAvailable(WsFrameServer.java:151)
        at org.apache.tomcat.websocket.server.WsHttpUpgradeHandler.upgradeDispatch(WsHttpUpgradeHandler.java:148)
        at org.apache.coyote.http11.upgrade.UpgradeProcessorInternal.dispatch(UpgradeProcessorInternal.java:54)
        at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:53)
        at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:868)
        at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1455)
        at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
        at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
        at java.lang.Thread.run(Thread.java:748)
Run Code Online (Sandbox Code Playgroud)

nginx配置:

location / {
        proxy_pass https://ip:port;
        proxy_set_header Host             $host;
        proxy_set_header X-Real-IP        $remote_addr;
        proxy_set_header X-Forwarded-For  $proxy_add_x_forwarded_for;
        proxy_set_header X-Accel-Internal /internal-nginx-static-location;
        access_log off;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection "upgrade"; …
Run Code Online (Sandbox Code Playgroud)

nginx spring-boot embedded-tomcat-8 lets-encrypt vaadin8

8
推荐指数
1
解决办法
2758
查看次数

Vaadin 8`Binder :: bindInstanceFields`只适用于String数据类型吗?

使用Vaadin 8 @PropertyId注释Binder::bindInstanceFields肯定比为每个字段属性绑定编写一行代码更短更甜.

Person person;  // `name` is String, `yearOfBirth` is Integer.
…
@PropertyId ( "name" )
final TextField nameField = new TextField ( "Full name:" ); // Bean property.

@PropertyId ( "yearOfBirth" )
final TextField yearOfBirthField = new TextField ( "Year of Birth:" ); // Bean property.
…
// Binding
Binder < Person > binder = new Binder <> ( Person.class );
binder.bindInstanceFields ( this );
binder.setBean ( person );
Run Code Online (Sandbox Code Playgroud)

但是我们得到一个异常抛出,因为yearOfBirth属性是一个整数,这种简单的绑定方法缺少转换器.

严重:

java.lang.IllegalStateException:属性类型'java.lang.Integer'与字段类型'java.lang.String'不匹配.应使用转换器手动配置绑定. …

java data-binding vaadin vaadin8

7
推荐指数
1
解决办法
5023
查看次数

如何在Vaadin中设置图像组件的大小并保持纵横比

我有一个Image组件,我想定义500px到500px的大小.我的问题是我的图像不是正方形,但我想在将StreamResource推送到我的图像组件时保持纵横比.除了手动调整图像大小外,我该怎么做?换句话说,Image组件中是否有某些东西允许我自动重新调整图像大小而不强制它成为正方形?

java vaadin vaadin8

7
推荐指数
1
解决办法
619
查看次数

当 CSS 用于列宽时,Vaadin 8 Grid 滚动条的行为不稳定

我的 Vaadin 8 应用程序中有一个网格,有时网格的滚动条在不需要时出现或在不需要时消失。他们甚至可能陷入循环。我的网格有五列,我只使用 Vaadin 8 附带的内置渲染器。

我使用 CSS 将第一列的列宽设置为 30%。如果我从主题中删除该行,则不会出现问题,但我需要它。我怎样才能让它工作?

css java grid vaadin vaadin8

7
推荐指数
1
解决办法
66
查看次数

重新加载Vaadin UI而无需重新启动应用程序

我正在开发一个Vaadin 8用户界面.目前,每次修改UI时,我都必须重新启动我的应用程序.

有没有更好的办法?我尝试连接Java调试器并使用IntelliJ的Reload Changed Classes功能,但是hotswap失败了.

我在Vaadin的背景下看到了JRebel的提及,但我承担不起 - Spring Loaded似乎是另一种选择.还有别的事吗?

vaadin jrebel spring-loaded vaadin8

6
推荐指数
1
解决办法
662
查看次数

赛普拉斯和Vaadin应用程序将触发错误弹出窗口,阻止测试正常进行

我需要测试Vaadin应用程序,有时会显示有关通信问题的弹出窗口。

这似乎是赛普拉斯的错误报告,因为它与Vaadin模板一起显示,因此,发现女巫正在创建弹出窗口有点让人困惑(因为“不要获取任何未保存的数据.....”是一个vaadin典型消息)。

显示此弹出窗口后,我们将无法再次运行任何测试。

我以前从未见过此弹出窗口,只有当我们使用赛普拉斯时才看到。我知道赛普拉斯将充当MITM来模拟服务器回复,但是在我的情况下,我不需要此机制,是否可以将赛普拉斯配置为不尝试覆盖此通信,从而不会显示此弹出窗口?

还是需要进行一些更改才能使其正常工作?

在此处输入图片说明

vaadin vaadin8 cypress

6
推荐指数
1
解决办法
62
查看次数