解决Java版CKFinder无法显示缩略图问题

时间:2021-12-19 22:39:28

这些天在写我的Java EE项目的时候用到了CKEditor和CKFinder,但是在用CKFinder的时候无法显示图片的缩略图,但是官网上的demo上却有缩略图,我一直以为是自己配置错误了,我把官网的帮助文档全部看了一遍,可是就是没有解决,后来我上网查了一下,但是对于Java版本的的CKFinder的资料太少了,好不容易在论坛上找到一个一样的问题,可是没有人回答呀,痛苦,所以为了让在使用Java版CKFInder的朋友不在为这个问题烦恼,白白浪费休息的时间,我把解决办法贴出来:

没有解决的现象:

解决Java版CKFinder无法显示缩略图问题

如果使用myeclipse还可以看到以下错误:

解决Java版CKFinder无法显示缩略图问题

根据错误我们可以看到是在(ThumbnailCommand.java:68)出错的,所以我们打开该java文件.

  1. @Override
  2. public void setResponseHeader(final HttpServletResponse response,
  3. final ServletContext sc) {
  4. response.setHeader("Cache-Control", "public");
  5. String mimetype = getMimeTypeOfImage(sc, response);
  6. // Set content type
  7. if (mimetype != null) {
  8. response.setContentType(mimetype.concat("; name:\"")
  9. + this.fileName + "\"");
  10. } else {
  11. response.setContentType("name:\"" + this.fileName + "\"");
  12. }
  13. // to fill some params later.
  14. this.response = response;
  15. }

错误时由于分隔符引起的,所以我们队该源文件进行修改,修改以后如下:

  1. @Override
  2. public void setResponseHeader(final HttpServletResponse response,
  3. final ServletContext sc) {
  4. response.setHeader("Cache-Control", "public");
  5. String mimetype = getMimeTypeOfImage(sc, response);
  6. // Set content type
  7. if (mimetype != null) {
  8. response.setContentType(mimetype + "; name='"
  9. + this.fileName + "'");//这里修改
  10. } else {
  11. response.setContentType("name='" + this.fileName + "'");//这里修改
  12. }
  13. // to fill some params later.
  14. this.response = response;
  15. }

修改以后的效果:

解决Java版CKFinder无法显示缩略图问题

而且不会再报错了,哈哈,大功告成!

转载请注明来自:http://blog.csdn.net/ssun125/article/details/7805000