0

我安装了 Liferay DXP,我想在编辑器中安装一个插件。该插件是base64image

我正在关注这个官方指南,所以我创建了一个通常像这样的类:

@Component(immediate = true, service = DynamicInclude.class)
public class CKEditorBase64ImageDynamicInclude implements DynamicInclude {

        private BundleContext bundleContext;


        @Override
        public void include(HttpServletRequest request, HttpServletResponse response, String key) throws IOException {
                Bundle bundle = bundleContext.getBundle();
                URL entryURL = bundle.getEntry("/META-INF/resources/html/editors/ckeditor/extension/base64_images.js");
                StreamUtil.transfer(entryURL.openStream(), response.getOutputStream());
        }

        @Override
        public void register(DynamicIncludeRegistry dynamicIncludeRegistry) {
                dynamicIncludeRegistry.register("com.liferay.frontend.editors.web#ckeditor#onEditorCreate");

        }

        @Activate
        protected void activate(BundleContext bundleContext) {
                this.bundleContext = bundleContext;
        }

}

它应该包括base64_images.js初始化编辑器的文件。但它永远不会起作用,无论文件的内容是什么。那有什么问题?

我想补充一点,插件文件(JavaScript 代码)是我的 Liferay 主题的一部分。我想base64_images.js调用它的 API,但它也可能不是正确的方法。

4

0 回答 0