1

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

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

顺便说一句,我不需要所有 Pro 服务器组件,我将继续使用我们过去构建的基于 GWT Rpc 的遗留服务。最终我可能需要负责 pdf/excel 导出的 Pro 组件。

谢谢!!

4

1 回答 1

0

我必须首先明确说明,使用您的 LGPL 许可证是不合法的,因为您将要阅读,我建议您继续购买专业许可证以访问这些功能,如果您还没有这样做,但因为

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

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

  1. 解压 LGPL 和 PRO 的两个 jar,以便访问;所有模块描述符,如 com\smartgwt\SmartGwt.gwt.xml ,智能客户端 JavaScript 文件 , 如 com\ smartclient \public\sc\modules中的 ISC_Core.js 和com\smartgwt\client\widgets\ 中的 smartgwt java 源文件
  2. 从 PRO复制 Charts.gwt.xml、ChartsNoScript.gwt.xml、Drawing.gwt.xml 和 DrawingNoScript.gwt.xml 并将它们粘贴到 LGPL 中的等效路径中,覆盖询问。
  3. 将ISC_Charts.js 和 ISC_ISC_Drawing.js从 PRO复制 到 LGPL 并 jar 回您的 LGPL 发行版
  4. 像 ISC_Core.js 一样,将ISC_Charts.js和 ISC_ISC_Drawing.js脚本添加 到主机 html 文件;

  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 退回并重新运行。

我希望这能解决问题

于 2015-03-09T11:11:17.080 回答