(→Extending Configuration: Boolean -> boolean) |
|||
Line 9: | Line 9: | ||
* Copy the CKFinder <code>config.xml</code> file from its <code>WEB-INF</code> folder into the <code>WEB-INF</code> folder of your application. | * Copy the CKFinder <code>config.xml</code> file from its <code>WEB-INF</code> folder into the <code>WEB-INF</code> folder of your application. | ||
* Copy the contents of the CKFinder <code>WEB-INF/lib</code> folder into the <code>WEB-INF/lib</code> folder of your application. | * Copy the contents of the CKFinder <code>WEB-INF/lib</code> folder into the <code>WEB-INF/lib</code> folder of your application. | ||
− | * Copy the <code>ConnectorServlet</code> settings from the CKFinder <code>web.xml</code> file to the <code>web.xml</code> file of | + | * Copy the <code>ConnectorServlet</code> settings from the CKFinder <code>web.xml</code> file to the <code>web.xml</code> file of your application. |
<source lang="xml"> | <source lang="xml"> | ||
<servlet> | <servlet> |
Revision as of 11:47, 22 April 2011
Contents
This article describes various ways of integrating CKFinder for Java with your page.
Integrating CKFinder with your Application
After you download the CKFinder for Java .war
file, follow the steps below to integrate it with your application:
- Unpack CKFinder for Java.
- Copy the
ckfinder
folder to your application. - Copy the CKFinder
config.xml
file from itsWEB-INF
folder into theWEB-INF
folder of your application. - Copy the contents of the CKFinder
WEB-INF/lib
folder into theWEB-INF/lib
folder of your application. - Copy the
ConnectorServlet
settings from the CKFinderweb.xml
file to theweb.xml
file of your application.
<servlet> <servlet-name>ConnectorServlet</servlet-name> <servlet-class>com.ckfinder.connector.ConnectorServlet</servlet-class> <init-param> <param-name>XMLConfig</param-name> <param-value>/WEB-INF/config.xml</param-value> </init-param> <load-on-startup>1</load-on-startup> </servlet> <servlet-mapping> <servlet-name>ConnectorServlet</servlet-name> <url-pattern> /ckfinder/core/connector/java/connector.java </url-pattern> </servlet-mapping>
- Just like in the sample application, by default CKFinder is disabled due to security reasons. To turn it on, change the
<enabled>
element value in theconfig.xml
file totrue
. Note that it is recommended to use a more fine-grained authentication method by overriding thecheckAuthentication
method.
<enabled>true</enabled>
- Similarily, some further adjustments of the
config.xml
file might be needed, likebaseUrl
andbaseDir
paths, for example.
Installing CKFinder as a JSP Page Tag
In order to install CKFinder as a tag inside a .jsp
page, follow the steps outlined below:
- Install CKFinder as described in the section above.
- Copy the
ckfinder.tld
from theWEB-INF
folder of CKFinder and paste it into theWEB-INF
folder of your application. - In the
web.xml
file of your application add the following entry:
<jsp-config> <taglib> <taglib-uri>/WEB-INF/ckfinder</taglib-uri> <taglib-location>/WEB-INF/ckfinder.tld</taglib-location> </taglib> </jsp-config>
- In order to use the tag on the JSP page you should import the tag library by using the following directive:
<%@ taglib uri='../../WEB-INF/ckfinder.tld' prefix='ck' %>
You can now use the CKFinder tag on your JSP page in the following way:
<ck:ckfinder basePath="/CKFinderJava-1.0/ckfinder/" />
The only required attribute is the basePath
that specifies the path to the CKFinder folder. Numerous optional attributes are also available and can be used to customize CKFinder to your needs, like in the example below:
<ck:ckfinder basePath="/CKFinderJava-1.0/ckfinder/" width="700" height="500" />
This code creates a CKFinder instance with a width of 700 pixels and height of 500 pixels.
Extending Configuration
CKFinder implements some access control that is available from your application. You can create a class that inherits and extends the Configuration
class. A sample code can be seen below:
public class MyConfiguration extends Configuration { public MyConfiguration(ServletConfig servletConfig) { super(servletConfig); } @Override public boolean checkAuthentication() { return false; } }
Special attention should be paid to the checkAuthentication
method. It can be used to specify the pre-requisites (like administrator rights) that have to be met in order to make CKFinder available.
This option is obviously not the only one that you can control. You can override each of the Configuration
class methods that represent CKFinder settings, including enabling and disabling CKFinder.
To make CKFinder aware of your custom configuration class, add the following to the WEB-INF/web.xml
file:
<init-param> <param-name>configuration</param-name> <param-value>com.ckfinder.connector.MyConfiguration</param-value> </init-param>