The java connector for ckeditor allows you to browse and upload files to java based applications.
It includes full file management capability (upload,rename,delete etc.)
The user interface is written with http://www.vaadin.com which is freely available.
No vaadin knowledge is required to use this component.
Screenshots
License
GNU Library or "Lesser" General Public License version 3.0 (LGPLv3)
https://sourceforge.net/directory/license:osi-approved-open-source/gnu-library-or-lesser-general-public-license-version-3.0-lgplv3/
Download
The project is hosted on sourceforge https://sourceforge.net/projects/jckconnector/
https://sourceforge.net/projects/jckconnector/files/
Installation
Usage:
- Add the ckeditor-connector-0.3-0.jar file in your WEB-INF/lib directory
- The following support libraries are also required:
animator-1.6.6.jar (From http://vaadin.com/directory)
borderlayout-0.3.jar (From http://vaadin.com/directory)
commons-fileupload-1.2.2.jar (From http://commons.apache.org/fileupload/)
commons-io-2.0.1.jar (From http://commons.apache.org/io/)
commons-lang-2.6.jar (From http://commons.apache.org/lang/)
commons-logging-1.1.1.jar (From http://commons.apache.org/logging/)
confirmdialog-1.1.0.jar (From http://vaadin.com/directory)
easyuploads-0.5.0.jar (From http://vaadin.com/directory)
notifique-1.0.5.jar (From http://vaadin.com/directory)
vaadin-6.8.0.jar (From http://vaadin.com)
- Define the servlets to handle the uploads in your web.xml:
<servlet> <servlet-name>CKEditorConnector</servlet-name> <servlet-class>com.vaadin.terminal.gwt.server.ApplicationServlet</servlet-class> <init-param> <param-name>application</param-name> <param-value>org.aarboard.ckeditor.connector.VaadinBrowser</param-value> </init-param> <init-param> <param-name>widgetset</param-name> <param-value>org.aarboard.ckeditor.connector.VaadinWidgetset</param-value> </init-param> </servlet> <servlet> <servlet-name>DirectUploadServlet</servlet-name> <servlet-class>org.aarboard.ckeditor.connector.upload.DirectUploadServlet</servlet-class> <init-param> <param-name>self.root</param-name> <param-value>/servlet/ckeditorconnector-dup/</param-value> </init-param> </servlet>
- Assign the servlet mappings in web.xml:
<servlet-mapping> <servlet-name>CKEditorConnector</servlet-name> <url-pattern>/servlet/ckeditorconnector/*</url-pattern> </servlet-mapping> <servlet-mapping> <servlet-name>CKEditorConnector</servlet-name> <url-pattern>/VAADIN/*</url-pattern> </servlet-mapping> <servlet-mapping> <servlet-name>DirectUploadServlet</servlet-name> <url-pattern>/servlet/ckeditorconnector-dup/*</url-pattern> </servlet-mapping>
- Add these properties to the web.xml to define your system setup
<env-entry> <description>Root folder for ckeditor files</description> <env-entry-name>ckeditor.filesystem.rootfolder</env-entry-name> <env-entry-type>java.lang.String</env-entry-type> <env-entry-value>c:\Develop\Sourceforge\ckeditor-connector\build\web\tefiles\</env-entry-value> </env-entry> <env-entry> <description>Root URL for ckeditor files</description> <env-entry-name>ckeditor.filesystem.rooturl</env-entry-name> <env-entry-type>java.lang.String</env-entry-type> <env-entry-value>http://localhost:8084/ckeditor-connector/tefiles/</env-entry-value> </env-entry> <env-entry> <description>Root URL for ckeditor files</description> <env-entry-name>ckeditor.connector</env-entry-name> <env-entry-type>java.lang.String</env-entry-type> <env-entry-value>servlet/ckeditorconnector/</env-entry-value> </env-entry> <env-entry> <description>Root URL for ckeditor files</description> <env-entry-name>ckeditor.connector-dup</env-entry-name> <env-entry-type>java.lang.String</env-entry-type> <env-entry-value>servlet/ckeditorconnector-dup/</env-entry-value> </env-entry>
- You can now put instances of the CKEditor object on (for example) your JSP pages
Example:
<% org.aarboard.ckeditor.CKEditor editor1= new org.aarboard.ckeditor.CKEditor("Editor1", "Editor1"); editor1.setValue("Test text"); editor1.setRows(10); editor1.setCols(60); editor1.setFilebrowserBrowseUrl(org.aarboard.ckeditor.connector.VaadinBrowser.getFilebrowserBrowseUrl()); editor1.setFilebrowserImageBrowseUrl(org.aarboard.ckeditor.connector.VaadinBrowser.getFilebrowserImageBrowseUrl()); editor1.setFilebrowserFlashBrowseUrl(org.aarboard.ckeditor.connector.VaadinBrowser.getFilebrowserFlashBrowseUrl()); editor1.setFilebrowserLinkBrowseUrl(org.aarboard.ckeditor.connector.VaadinBrowser.getFilebrowserLinkBrowseUrl()); editor1.setFilebrowserUploadUrl(org.aarboard.ckeditor.connector.VaadinBrowser.getFilebrowserUploadUrl()); editor1.setFilebrowserImageUploadUrl(org.aarboard.ckeditor.connector.VaadinBrowser.getFilebrowserImageUploadUrl()); editor1.setFilebrowserFlashUploadUrl(org.aarboard.ckeditor.connector.VaadinBrowser.getFilebrowserFlashUploadUrl()); editor1.addConfig("fullPage", true); editor1.addConfig("skin", "office2003"); %> <%= editor1.renderField() %>
- You can provide other file and folder browsers
The simplest way to do this, is to subclass
org.aarboard.ckeditor.connector.VaadinBrowser and specify this class as your servlet.
You have to override the getFileProvider() and getLinkProvider() methods