Struts 2 - 拦截使用CKEditor上传的图像文件

时间:2013-11-23 17:02:19

标签: java struts2 ckeditor image-uploading struts2-jquery

我在网站的不同页面上有CKEditor,因此我将上传内容安排到true以及所有配置内容以使其正常工作,图片上传工作正常{{1} 1}}标签。但是从这里我想截取或与"Send it to the Server"函数交互,以便能够将图像上传到文件夹,而是上传到图像上传的upload "page"等标记的数据库,"category""cropping"和他们的其他一些操纵。

那么如何拦截这些上传内容呢?

我很好奇,我发现上传的默认操作是

/%project_name%/ckeditor/upload.html?CKEditor=textarea_1457018535&CKEditorFuncNum=2&langCode=en 

此上传的操作为CkeditorUpload.java,但我不知道如何进一步使用它们。

1 个答案:

答案 0 :(得分:1)

好吧,如果你想覆盖它,你应该从上面的action类开始重写方法execute。还可以通过替换操作配置中的类引用来覆盖配置。关键是原始实现创建的FileOutputStream应该替换为ByteArrayOutputStream。然后让它写入字节数组流,并从它getBytes()给你byte[] data。将该数据保存到数据库。您也可以阅读this回答将帮助您做到这一点,或this教程将向您解释如何使用Hibernate。然后,操作写入HTML的代码将磁盘路径更改为操作路径/uploads映射到从数据库检索图像的操作。您可以找到的ImageAction示例hereThis回答也会有所帮助。