我有以下情况:VerticalLayout里面有标签.(此布局是弹出窗口的内部)
当我构建应用程序时,我不知道标签的长度 - 从数据库中查询标签内容.
有没有办法告诉这个VerticalLayout的宽度足以适应所有标签而不会破坏它们,但不是更大?我不希望标签坏掉,但我也不希望弹出窗口中有空格.
我一直在尝试Vaadin 7.首先,我必须管理我在Vaadin安静的一个菜鸟并且对JAVA持久性不太熟悉.因此,我正在尝试学习bean验证以及如何使用它.我已经按照几个教程,但很难确定哪个是Vaadin 7的最新和正确的.尽管如此,我尝试下载并使用JPA容器和BeanValidator,我无法让它工作.这是我正在使用的代码:
package com.example.firstvaadin;
import java.io.Serializable;
import org.hibernate.validator.constraints.Email;
import javax.validation.constraints.*;
public class RegisterBean implements Serializable{
public RegisterBean(String email){
this.email = email;
}
@Size(min = 5, max = 50)
private String email;
public void setEmail(String email) {
this.email = email;
}
public String getEmail() {
return email;
}
}
Run Code Online (Sandbox Code Playgroud)
和
RegisterBean rbean = new RegisterBean("");
BeanItem<RegisterBean> item = new BeanItem<RegisterBean>(rbean);
TextField email = new TextField("email",item.getItemProperty("email"));
email.setImmediate(true);
layout.addComponent(email);
email.setNullRepresentation("");
Run Code Online (Sandbox Code Playgroud)
但是我在下面的代码中遇到了运行时异常:email.addValidator(new BeanValidator(RegisterBean.class,"email"));
The exception is:
aused by: com.vaadin.event.ListenerMethod$MethodException: Invocation of method buttonClick …
Run Code Online (Sandbox Code Playgroud) 我想为网页定义图像背景,其中图像位于定义css资源的子文件夹中.
路径:
src/main/webapp/VAADIN/themes/mytheme/styles.css
src/main/webapp/VAADIN/themes/mytheme/img/logo.png
Run Code Online (Sandbox Code Playgroud)
CSS:
.root {
background: url("/img/logo.png") no-repeat;
}
Run Code Online (Sandbox Code Playgroud)
结果:找不到资源(firebug).为什么?如何指定路径?
我正在尝试使用bean验证器验证我的bean.问题是我不知道验证需要哪些库(jar).
我正在使用.
Vaadin 7,BeanFieldGroup和EclipseLink
/** class of MyBean */
public class MyBean{
@Id
@GeneratedValue
private Long id;
@NotNull
@NotEmpty
@Size(min=5, max=50, message="Min = 5 and Max = 50, this field is not empty")
private String name;
@Email
@NotEmpty
private String email;
}
Run Code Online (Sandbox Code Playgroud)
任何的想法 ?
如何防止在UI视图中显示控制台消息的日志?我讨厌这个。我认为不应该这样。
所有错误应仍在IDE的控制台中。我对吗 ?
我有一个vaadin应用程序,我使用SQLContainer来显示数据库记录.当发生任何数据库更改时,我想让SQLcontainer自行更新的问题.有人帮我吗?
如何处理表中选定行的键盘事件?我的意思是,例如,我选择了一行,我想使用键盘按钮删除delete
.
怎么做?我应该使用什么样的听众?
我正在使用vaadin为运行hibernate的应用程序开发UI 4.3.1我要做的是将数据绑定到vaadin JPAcontainer然后在Grid组件中使用它来允许延迟加载.但是当我尝试创建EntityManager时,它会抛出以下错误
java.lang.ClassCastException: org.hibernate.ejb.HibernatePersistence cannot be cast to javax.persistence.spi.PersistenceProvider
at javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:54)
at javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:39)
at com.vaadin.addon.jpacontainer.JPAContainerFactory.createEntityManagerForPersistenceUnit(JPAContainerFactory.java:122)
at com.vaadin.addon.jpacontainer.JPAContainerFactory.make(JPAContainerFactory.java:105)
Run Code Online (Sandbox Code Playgroud)
我使用了hibernate-jpa-2.1-api-1.0.0.Final.jar以及persistence-api-1.0.2.jar来导入我的EnityManager但是我一直得到同样的错误
这是我创建EntityManager的类
public class workManager{
public static void create() {
DataAccess dao= new DataAccess();
EntityManager em = Persistence //error here
.createEntityManagerFactory("myUI")
.createEntityManager();
em.getTransaction().begin();
dao.init();
List<work> list = dao.findAll(); //get all rows in table
em.persist(list);
dao.close();
em.getTransaction().commit();
}
Run Code Online (Sandbox Code Playgroud)
persistence.xml中
<?xml version="1.0" encoding="UTF-8"?>
<persistence version="2.1" xmlns="http://xmlns.jcp.org/xml/ns/persistence" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/persistence http://xmlns.jcp.org/xml/ns/persistence/persistence_2_1.xsd">
<persistence-unit name="myProject">
<!-- Specify the JPA provider to use -->
<provider>org.hibernate.jpa.HibernatePersistenceProvider</provider> …
Run Code Online (Sandbox Code Playgroud) 我已经下载了vaadin面包店应用程序的源代码。它使用商业组件。但是,如果我从代码中删除了这些组件(如果可能的话),我可以使用代码并在不违反任何许可的情况下分发它吗?
谢谢
我想使用以下方法创建一个新窗口:
final Window window = new Window("Window");
this.getUI().addWindow(window);
Run Code Online (Sandbox Code Playgroud)
这是从Vaadin主页https://demo.vaadin.com/sampler/#ui/structure/window
但是很不幸,我的IDE显示以下错误:构造函数Window(String)未定义。
当我删除字符串时,它说:构造函数Window()不可见。
这是为什么?在vaadin演示中,它可以正常工作。
vaadin ×10
java ×5
vaadin7 ×3
jpa ×2
css ×1
exception ×1
hibernate ×1
jpacontainer ×1
spring-boot ×1
tomcat ×1
vaadin-flow ×1