我使用Birt的mapit库创建了一些地图。这些地图在Birt Designer中非常棒。但是,当我在Birtviewer中放入相同的报告时,地图不会加载。我的问题是,这是否是Mapit与java8或birtviewer的兼容性问题,它在birt查看器中不起作用?
我的第二个问题是我如何才能真正看到是否正确读取了birt库文件以及读取库文件是否存在问题?
阿里夫
答案 0 :(得分:0)
与"预览"不同。模式,框架集servlet通过ajax查询加载报表。问题是Eclipse Webviewer没有使用像jquery这样的框架来处理ajax:只触发了第一个html脚本标记。
您的示例适用于我开发的portlet查看器,因为jquery会自动处理所有这些ajax内容。为了使它能够与Eclipse WebViewer的框架集servlet一起使用,我尝试了一个快速而又脏的解决方法,只测试了Chrome和&火狐:
1 /我在第一个脚本标记的末尾添加了此片段:
setTimeout(function(){
console.log("Evaluate ajax html...");
var scripts = document.getElementsByName("scriptMap");
for (var i=0;i<scripts.length;i++) {
if (scripts[i].text!=null) eval(scripts[i].text)
}
}, 1000);
2 /我还添加了一个名字&#34; scriptMap&#34;允许选择剩下的2个脚本标签例如,这是最后一个脚本:
<script name="scriptMap">
setTimeout(actuate.birt.maps.google.start, 1);
</script>
这样,样本可以使用WebViewer框架集精确运行。
此外,如果您需要将平面文件部署为相对路径,则可以使用如下所述的文件URI来管理它。这意味着在您的示例中,您必须声明两个不同的数据源,每个文件一个。我希望它会有所帮助。