Как изменить URL загрузки файла в CKFinder 2.2, используя Java - PullRequest
2 голосов
/ 02 апреля 2012

Я использую CKFinder-2.2 с CKEditor-3.5.X, и все было хорошо, пока я не попытался загрузить изображение / файл и отправить его в изображение. Я получил следующую ошибку при попытке отправить файл на сервер No mapping found for HTTP request with URI [/my-project/ckfinder/core/connector/java/connector.java] in DispatcherServlet with name 'appServlet'. Я использую Spring MVC 3 для этого веб-приложения.

Кнопка обзора сервера с кнопкой upload работает просто отлично, поскольку я внес необходимые изменения в <url-pattern> в web.xml, чтобы она заработала, но я не могу отправьте файл на сервер, используя , затем отправьте его на сервер .

enter image description here

Я думаю, что ошибка произошла из-за следующих строк в CKFinderSetupCKEditor.java:

private static final String CKFINDER_UPLOAD_URL = "/ckfinder/core/connector/java/connector.java?command=QuickUpload&type=";
private static final String CKFINDER_PAGE = "/ckfinder.html";

Я пробовал атрибут config в <ckeditor:replace>, как указано ниже, но это тоже не помогло.

<%@ page import="com.ckeditor.CKEditorConfig" %>
<%
    CKEditorConfig settings = new CKEditorConfig();
    settings.addConfigValue("filebrowserUploadUrl", "/my-project/resources/ckfinder/core/connector/java/connector.java?command=QuickUpload&type=Files");
    settings.addConfigValue("filebrowserImageUploadUrl", "/my-project/resources/ckfinder/core/connector/java/connector.java?command=QuickUpload&type=Images");
    settings.addConfigValue("filebrowserFlashUploadUrl", "/my-project/resources/ckfinder/core/connector/java/connector.java?command=QuickUpload&type=Flash");
%>
    <ckfinder:setupCKEditor basePath="/my-project/resources/ckfinder/" editor="editor1" />  
    <ckeditor:replace replace="editor1" basePath="/my-project/resources/ckeditor/" config="<%=setting>"/>

Может ли кто-нибудь помочь мне понять, что я здесь делаю неправильно и как это сделать? Это просто файл, который я хочу загрузить на свой сервер. Это не должно быть слишком сложно.

1 Ответ

1 голос
/ 08 апреля 2012

В случае, если кто-то сталкивается с той же проблемой, добавив, что у меня работают следующие вещи:

web.xml

<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>
    <init-param>
        <param-name>debug</param-name>
        <param-value>true</param-value>
    </init-param>
    <load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
    <servlet-name>ConnectorServlet</servlet-name>
    <url-pattern>
        /resources/ckfinder/core/connector/java/connector.java
    </url-pattern>
</servlet-mapping>

<filter>
    <filter-name>FileUploadFilter</filter-name>
    <filter-class>com.ckfinder.connector.FileUploadFilter</filter-class>
            <init-param>
                <param-name>sessionCookieName</param-name>
                <param-value>JSESSIONID</param-value>
            </init-param>
            <init-param>
                <param-name>sessionParameterName</param-name>
                <param-value>jsessionid</param-value>
            </init-param>
</filter>
<filter-mapping>
    <filter-name>FileUploadFilter</filter-name>
    <url-pattern>
        /resources/ckfinder/core/connector/java/connector.java
     </url-pattern>
</filter-mapping>

.jspфайл, в котором вы хотите, чтобы ckeditor и ckfinder были интегрированы в текстовое поле

<%@ page import="com.ckeditor.CKEditorConfig" %>
<% 
    CKEditorConfig settings = new CKEditorConfig();
    settings.addConfigValue("filebrowserBrowseUrl","/myapp/resources/ckfinder/ckfinder.html");
    settings.addConfigValue("filebrowserImageBrowseUrl","/myapp/resources/ckfinder/ckfinder.html?type=Images");
    settings.addConfigValue("filebrowserFlashBrowseUrl","/myapp/resources/ckfinder/ckfinder.html?type=Flash");
    settings.addConfigValue("filebrowserUploadUrl","/myapp/resources/ckfinder/core/connector/java/connector.java?command=QuickUpload&type=Files");
    settings.addConfigValue("filebrowserImageUploadUrl","/myapp/resources/ckfinder/core/connector/java/connector.java?command=QuickUpload&type=Images");
    settings.addConfigValue("filebrowserFlashUploadUrl","/myapp/resources/ckfinder/core/connector/java/connector.java?command=QuickUpload&type=Flash");
%>

<ckeditor:replace replace="editor1" basePath="/myapp/resources/ckeditor/" config="<%=settings %>" />
...