Vaadin 7获得屏幕宽度

RAN*_*RAN 2 get resolution exception vaadin

当我尝试获取屏幕宽度时,我得到一个UnsatisfiedLinkError异常:

int screenWidth = BrowserInfo.get().getScreenWidth();
Run Code Online (Sandbox Code Playgroud)

BrowserInfo.getBrowserString()抛出异常:

Feb 25, 2013 2:03:40 PM com.vaadin.server.DefaultErrorHandler doDefault
SEVERE: 
java.lang.UnsatisfiedLinkError: com.vaadin.client.BrowserInfo.getBrowserString()Ljava/lang/String;
at com.vaadin.client.BrowserInfo.getBrowserString(Native Method)
at com.vaadin.client.BrowserInfo.<init>(BrowserInfo.java:76)
at com.vaadin.client.BrowserInfo.get(BrowserInfo.java:67)
at com.vaadin.client.BrowserInfo.<clinit>(BrowserInfo.java:56)
at layoutHandler.MainLayoutHanlder.setCssClasses(MainLayoutHanlder.java:34)
Run Code Online (Sandbox Code Playgroud)

这是一个Vaadin 7错误,还是我只是使用BrowserInfo类错了?

Ing*_*gel 8

打电话Page.getCurrent().getBrowserWindowWidth()来.

BrowserInfo是一个客户端类,您不应该在服务器端类中使用它.我会避免将客户端库放在类路径上.getBrowserWindowWidth是原生的,因为这是GWT编译器桥接到JavaScript代码的方式.如果查看源代码,JavaScript代码将采用特殊格式的注释.