GWT 在客户端使用 iban4j 进行验证
Posted
技术标签:
【中文标题】GWT 在客户端使用 iban4j 进行验证【英文标题】:GWT using iban4j on client side for validation 【发布时间】:2017-08-29 07:55:21 【问题描述】:我需要首先在客户端验证来自 2 个文本框的用户输入,然后在服务器端验证。我在共享包中创建了一个名为FieldVerifier
的类。
我有两种使用 iban4j 验证 IBAN 和 BIC 的方法:
public static boolean isValidIban(String iban)
try
IbanUtil.validate(iban, IbanFormat.Default);
catch (Exception exc)
return false;
return true;
public static boolean isValidBic(String bic)
try
BicUtil.validate(bic);
catch (Exception exc)
return false;
return true;
但如果我尝试启动应用程序,我会收到以下错误:
第 91 行:没有可用于类型 org.iban4j.IbanUtil 的源代码;做过 你忘了继承一个必需的模块?
第 101 行:没有可用于类型 org.iban4j.BicUtil 的源代码;你是否 忘记继承所需的模块?
第 91 行:没有可用于类型 org.iban4j.IbanFormat 的源代码;你忘了继承一个必需的模块吗?
我需要做什么来构建这个库以在客户端使用它?
【问题讨论】:
【参考方案1】:您在共享目录中设置了 Validator 类。因此,验证器本身的代码可以在客户端使用,但依赖项(iban4j)需要与 GWT 兼容,也需要包含在客户端。
要做你想做的事,你有两个选择。
直接在你的共享目录中添加 iban4j 的代码 - 这意味着失去 iban4j 库的链接 将 iban4j 转换为 GWT 模块。 (这是通过在 iban4j jar 中添加源代码和Iban4j.gwt.xml
文件来完成的)并将模块包含到您的项目中 - 这意味着修改当前库或根据需要重新编译它
【讨论】:
【参考方案2】:刚刚检查了 iban4j。
正如 wargre 已经提到的,您必须做一些工作。 iban4j 不能在没有重大更改的情况下与 GWT 一起使用。
你必须:
将模块描述符添加到库中 进行一些代码更改(例如:GWT 不支持 String.format) 以及 lib 的 *.gwt.xml 和 Java 源代码。在这种状态下,lib 不能与 GWT 一起使用。必须进行一些重大更改。
更新:我已将 iban4j 移植到 GWT:https://github.com/mvp4g/iban4g
更新 2:
iban4g 已移动:https://github.com/NaluKit/iban4g 并已更新。 这个新版本将适用于 Java、GWT 和 J2CL!
【讨论】:
以上是关于GWT 在客户端使用 iban4j 进行验证的主要内容,如果未能解决你的问题,请参考以下文章
GWT requestfactory 验证外部服务器上的实体
如何使用 jprofiler 分析 gwt 客户端应用程序?