0

我遵循了以下指南(对于 java 环境)并遇到了问题:http ://www.highcharts.com/docs/export-module/setting-up-the-server

highcharts-export-web 应用程序在部署在 WebLogic 服务器上时会返回空图像。服务器返回一个图像对象,但它不包含任何数据。当同样的战争部署在 Jetty 服务器上时,一切都完美无缺。

打开日志信息并没有显示任何内容。一切似乎都很好,但我得到“空图像”

有没有人知道为什么会发生这种情况以及我如何能够解决这个问题?

  • 网络逻辑 12.1.2
  • 海图 3.0.5
4

1 回答 1

1

默认情况下,WebLogic 注册自己的 URLStreamHandler 来处理 http URL。这会导致 Connection 静默返回并从服务器返回空文件。解决方案是获取对 Java 的默认 URLStreamHandler 的引用,而不是来自 WebLogic 的引用。按着这些次序

  1. 更改此文件:highcharts-export\highcharts-export-convert/src/main/java/com/highcharts/export/server.Server.java

将第 94,95 行从

URL url = new URL("http://" + host + ":"
+ port + "/");

sun.net.www.protocol.http.Handler handler = new sun.net.www.protocol.http.Handler();
URL url = new URL(null, "http://" + host + ":" + port + "/", handler);
  1. 转到文件夹 java/highcharts-export
  2. 更新本地 maven 存储库,运行:mvn install
  3. 转到文件夹 java/highcharts-export/highcharts-export-web
  4. 创建一个新的 .war 文件,运行:mvn clean package
于 2013-10-03T14:12:20.620 回答