プロジェクトでfckeditorを使用するポイントのまとめ


プロジェクトの使用では、テキスト編集機能が必要なので、fckeditorを自然に思い浮かべます.Googleで見ると、ckeditorにアップグレードされていることに気づきました.ダウンロードした後、私が望んでいた効果を発見しました(fckeditorの以前のバージョンは画像をアップロードしても他の操作でも、fckdialog.htmlページをポップアップすれば、ページの具体的なアドレスが含まれています)、インタフェースもとてもきれいです.しかしダウンロードする时、意外にもjsp版がなくて、仕方なくメールを送って公式にあげて、翌日メールを受け取って支持したと言って、しかし一致するckfinderがなくて、とても残念で、ピクチャーをアップロードすることができなくて(今までまだ良い方法を探し当てていません)、またfckeditor 2に交换するしかありません.3はい.
こんなにでたらめを言ったのだから,本題に入るべきだ.
1:2つのパッケージをwebプロジェクトに追加する必要がありますcommons-fileupload.JArとFCKeditor-2.3.JAr,web-infの下にFCKeditorを加える.tld;
2:fckeditorの解凍後のファイル、FCKeditorファイルをwebRootの下にコピーして、ダイエットすることを考慮することができます;
3:web.xmlには、次のクリップが追加されます.
<!-- FCKEditor   -->
	<servlet>
		<servlet-name>Connector</servlet-name>
		<servlet-class>
			com.fredck.FCKeditor.connector.ConnectorServlet
		</servlet-class>
		<init-param>
			<param-name>baseDir</param-name>
			<param-value>/UserFiles/</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>
		<servlet-name>SimpleUploader</servlet-name>
		<servlet-class>
			com.fredck.FCKeditor.uploader.SimpleUploaderServlet
		</servlet-class>
		<init-param>
			<param-name>baseDir</param-name>
			<param-value>/UserFiles/</param-value>
		</init-param>
		<init-param>
			<param-name>debug</param-name>
			<param-value>true</param-value>
		</init-param>
		<init-param>
			<param-name>enabled</param-name>
			<param-value>true</param-value>
		</init-param>
		<init-param>
			<param-name>AllowedExtensionsFile</param-name>
			<param-value></param-value>
		</init-param>
		<init-param>
			<param-name>DeniedExtensionsFile</param-name>
			<param-value>
				php|php3|php5|phtml|asp|aspx|ascx|jsp|cfm|cfc|pl|bat|exe|dll|reg|cgi
			</param-value>
		</init-param>
		<init-param>
			<param-name>AllowedExtensionsImage</param-name>
			<param-value>jpg|gif|jpeg|png|bmp</param-value>
		</init-param>
		<init-param>
			<param-name>DeniedExtensionsImage</param-name>
			<param-value></param-value>
		</init-param>
		<init-param>
			<param-name>AllowedExtensionsFlash</param-name>
			<param-value>swf|fla</param-value>
		</init-param>
		<init-param>
			<param-name>DeniedExtensionsFlash</param-name>
			<param-value></param-value>
		</init-param>
		<load-on-startup>1</load-on-startup>
	</servlet>

	<servlet-mapping>
		<servlet-name>Connector</servlet-name>
		<url-pattern>
			/fckeditor/editor/filemanager/browser/default/connectors/jsp/connector
		</url-pattern>
	</servlet-mapping>

	<servlet-mapping>
		<servlet-name>SimpleUploader</servlet-name>
		<url-pattern>
			/fckeditor/editor/filemanager/upload/simpleuploader
		</url-pattern>
	</servlet-mapping>
	<!--    -->

 
OK、配置完了です.
使用する場合は、対応するjspページにラベルを追加します.
<FCK:editor id="nr" width="100%" height="500" basePath="/   /fckeditor/"
       imageBrowserURL="/   /fckeditor/editor/filemanager/browser/default/browser.html?Type=Image&Connector=connectors/jsp/connector" 
       linkBrowserURL="/   /fckeditor/editor/filemanager/browser/default/browser.html?Connector=connectors/jsp/connector" 
       flashBrowserURL="/   /fckeditor/editor/filemanager/browser/default/browser.html?Type=Flash&Connector=connectors/jsp/connector" 
       imageUploadURL="/   /fckeditor/editor/filemanager/upload/simpleuploader?Type=Image" 
       linkUploadURL="/   /fckeditor/editor/filemanager/upload/simpleuploader?Type=File" 
       flashUploadURL="/   /fckeditor/editor/filemanager/upload/simpleuploader?Type=Flash">
</FCK:editor>

もちろん、事前にjspにラベル導入を追加しておきます
<%@ taglib uri="/WEB-INF/FCKeditor.tld" prefix="FCK" %>

そして、バックグラウンドはrequest.getでもらえます.
構成の問題はくどくないfckconfig.jsは終わりました.プロジェクトが必要です.画像のアップロード時にプレビューとアップロードさえすれば、ファイルを変更しましょう.fck_image.jsは対応するtab設定を見つけて、注釈を外します
function OnDialogTabChange( tabCode )
{
	ShowE('divInfo'		, ( tabCode == 'Info' ) ) ;
//	ShowE('divLink'		, ( tabCode == 'Link' ) ) ;
	ShowE('divUpload'	, ( tabCode == 'Upload' ) ) ;
//	ShowE('divAdvanced'	, ( tabCode == 'Advanced' ) ) ;
}

やった!
改ページの問題については、真の改ページと偽の改ページを行うことができます.
本当にページを分けるなら、何も言わないで、表を建てて、内容を
<div style=\"PAGE-BREAK-AFTER: always\"><span style=\"DISPLAY: none\">&nbsp;</span></div>

切り取って入庫し、表示されたらページで取りに行きます.
私はここで、ちょっとサボって、内容を分けて配列を形成して、ページごとに配列の各要素の値を表示して、ページ番号を伝えるだけでokです.問題はブラウザが1つしかないことです.ffの下で、改ページは
<div style=\"PAGE-BREAK-AFTER: always\"><span style=\"DISPLAY: none;\">&nbsp;</span></div>

「;」が一つ増えた日、またプロジェクトの美工がieの下でしかやっていないdemoのため、ブラウザの互換性を考慮していないので、ff私は放っておきました(どうせffは正常なページさえ表示できません).
でも残念ながら、アドレスバーの問題については終始解決しておらず、期待中・・・