如何让内置Jetty服务器支持JSP

编辑
文档创建者:macro_hard (67599 )     浏览次数:1623次     编辑次数:5次     最近更新:susie 于 2017-02-20     

目录:

1. 问题描述编辑

内置Jetty服务器的说明参见:http://help.finereport.com/doc-view-800.html

内置Jetty服务器默认配置下是不支持JSP的,浏览JSP页面会报500错误:Unable to compile class for JSP

这就无法满足在设计器环境下调试JSP的需求。

2. 解决方案编辑

内置Jetty服务器默认不支持JSP的原因是缺少编译JSP的运行时依赖。在FineReport安装目录\lib\jetty下增加相应jar,就能让内置Jetty服务器支持JSP。

3. 实现步骤编辑

内置Jetty的版本为5.5.12,http://mvnrepository.com/artifact/org.mortbay.jetty/jsp/5.5.12这个地址列出了Jetty支持JSP所需要的编译依赖和运行时依赖,通过和FineReport安装目录\lib\jetty下已有jar包比较可知,FineReport安装目录\lib\jetty下还缺少ant和jasper-compiler-jdt两个jar包。

同时ant的运行还需要JDK安装目录\lib下的tools.jar。

3.1 补齐jar包

(1)下载所需要的ant和jasper-compiler-jdt两个jar包

这里用下载ant举例,打开页面http://mvnrepository.com/artifact/org.mortbay.jetty/jsp/5.5.12,点击ant,如下图:

点击后的页面可以看到ant的不同版本号,FineReport安装目录\lib\jetty下的jar包都是ant 1.6.5及以下版本编译,这里选择点击1.6.5版本下载。


点击后的页面,如下图,点击图示中的位置就开始下载了。
222

jasper-compiler-jdt下载步骤类似,就不赘述了。

复制下载好的jar包到FineReport安装目录\lib\jetty下,如下图:

222

(2)ant的运行还需要JDK安装目录\lib下的tools.jar,因此接下来的步骤是复制JDK安装目录\lib下的tools.jar到FineReport安装目录\lib\jetty下。

如果已装有JDK,可以直接复制,如下图:
222

如果没有安装JDK,可以在这里下载http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html,下载并安装JDK后,再提取tools.jar到FineReport安装目录\lib\jetty下。

至此,所缺的jar都补齐了,如下图:


3.2 启动内置服务器

打开设计器,随便打开预览一张模板,或者访问服务器管理平台,启动内置服务器。

再打开JSP页面,就可以看到能正常显示了,如下图:



附件列表


主题: 部署集成
如果您认为本文档还有待完善,请编辑

文档内容仅供参考,如果你需要获取更多帮助,请咨询帆软技术支持
关于技术问题,您还可以通过帆软论坛获取帮助,论坛上有非常多的大神,有些水平比帆软工程师还要高哦。
若您还有其他非技术类问题,可以联系帆软传说哥(qq:1745114201

本文档是否有用?
谢谢! 我们非常感谢您的反馈。
提交反馈: