将图表添加到现有的 SmatGWT 项目



我目前正在使用SmartGWT LGPL版本。现在我想在项目中添加HTML5图表,所以我愿意购买一些SmartGWT Pro许可证。我尝试了 60 天的试用版来构建概念验证,但我失败了。我甚至无法制作简单的主题来与Pro版本一起使用。

我的问题是至少添加Pro组件以使图表正常工作的步骤是什么?我的意思正是对 proj_name.gwt.xml、index.html 和所需的服务器 jar(如果有的话)的更改。

顺便说一句,我

不需要所有的Pro服务器组件,我将继续使用我们随着时间的推移构建的基于GWT Rpc的传统服务。最终我可能需要负责pdf/excel导出的Pro组件。

谢谢!!

我必须首先明确指出,在您即将阅读时使用您的 LGPL 许可证是不合法的,如果您还没有这样做,我建议您继续购买 PRO 许可证来访问这些功能,但自从

我的问题是至少添加Pro组件以使图表正常工作的步骤是什么>?

我有一个工作解决方案如下:

  1. 解开 LGPL 和 PRO 的两个罐子,以便访问;所有模块描述符,例如com\smartgwt\SmartGwt.gwt.xml,智能客户端 JavaScript 文件,例如ISC_Core.jscom\smartclient\public\sc\modules和 smartgwt Java 源文件com\smartgwt\client\widgets\
  2. 复制Charts.gwt.xml,ChartsNoScript.gwt.xml,Drawing.gwt.xml 和 DrawingNoScript.gwt.xml从PRO并将它们粘贴到LGPL中的等效路径中,以防万一。
  3. 复制ISC_Charts.js和ISC_ISC_Drawing.js从PRO到LGPL,并阻止您的LGPL发行版
  4. ISC_Charts.js和ISC_ISC_Drawing.js脚本到您的主机 html 文件,就像您ISC_Core.js一样;

  5. 确保在模块描述符中继承 SmartGwtNoScript.gwt.xml而不是 SmartGwt.gwt.xml 并且您已准备好使用

  6. 如果在运行时遇到异常,例如 FacetChart 是专业版或更好附带的图表模块的一部分。有关许可的详细信息,请参阅 smartclient.com/product。转到该源文件,例如com\smartgwt\client\widgets\chart\FaceChart.java

 if ("LGPL".equals(SC.getLicenseType())) {
   throw new java.lang.IllegalStateException("FacetChart is a part the Charts Module which comes with Pro Edition or better. Please see smartclient.com/product for details on licensing.");
 } else if (SC.hasCharts() == false) {
   throw new java.lang.IllegalStateException("The Charts module must be loaded to use FacetChart.  See the LoadingOptionalModules overview in the "docs" package of JavaDoc for instructions.");
 }

从默认构造函数中删除这些检查,将发行版 jar 并重新运行。

我希望这能解决问题

最新更新