首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >避免在vaadin 7中使用不推荐的vaadin 6方法

避免在vaadin 7中使用不推荐的vaadin 6方法
EN

Stack Overflow用户
提问于 2013-09-12 12:07:45
回答 1查看 732关注 0票数 1

我正在进行从版本vaadin 6vaadin 7的项目更新。在vaadin 7版本中,在很大程度上使用了类ApplicationConnection中的方法getPaintable()。然而,它在vaadin 7中是不可取的。在检查了api官方教程之后,我还没有被替换的方法或方法组合所检测和理解。例如,如果我想要这样做:

代码语言:javascript
复制
ComponentConnector paintable = this.client.getPaintable(uidl);

如何使用强制的vaadin 7 (not deprecated) api来排除上述语句?

更新:

答案证明了我的怀疑,应该使用ApplicationConnection getConnector(java.lang.String connectorId,int connectorType)中的方法,但是它仍然缺少,int类型的connectorType是什么,以及如何获得它。有什么建议吗?

更新2:

答案中建议的替换似乎是合理的,而且可能有效,但我担心的是:我们应该在vaadin 7中使用通用的UIDL类吗?我的印象是,方法updateFromUIDL(UIDL uidl, ApplicationConnection client)不应该在vaadin 7中被调用。我们如何才能得到uidl.getId()uidl.getTag()。我还认为uidl.getId()应该被AbstractConnector getConnectorId()中的方法所取代。我说的对吗?

EN

回答 1

Stack Overflow用户

发布于 2013-09-12 12:31:09

更新:

在查看了不推荐的getPaintable方法的实现之后,您应该能够用

代码语言:javascript
复制
ComponentConnector paintable = (ComponentConnector) getConnector(uidl.getId(),
            Integer.parseInt(uidl.getTag()));

但请不要忘记,这可能只是一个中间步骤。

使用UIDL、paintContent()和changeVariables()的旧机制仍然存在一段时间,以简化迁移,但建议将组件更新到新机制,这也会导致代码更加简洁。使用旧的机制需要实现LegacyComponent。

如果您将瓦丁6的集成图与瓦丁7进行比较,您将看到通用集成机制是如何改变的。

原始答案:

Vaadin票证:废弃的ApplicationConnection.getPaintable(UIDL)

描述:

应该将getPaintable(UIDL)的功能移到getPaintable(String paintableId),而getPaintable(UIDL)应该被废弃。

变更日志:

#8439废弃的ApplicationConnect.getPaintable(UIDL)并添加了getConnector(String id,String connectorType)

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18763868

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档