真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

JSP中怎么集成FCKEditor

這篇文章給大家介紹JSP中怎么集成FCKEditor,內(nèi)容非常詳細,感興趣的小伙伴們可以參考借鑒,希望對大家能有所幫助。

成都創(chuàng)新互聯(lián)公司是一家專注于成都網(wǎng)站建設(shè)、成都網(wǎng)站設(shè)計與策劃設(shè)計,烏恰網(wǎng)站建設(shè)哪家好?成都創(chuàng)新互聯(lián)公司做網(wǎng)站,專注于網(wǎng)站建設(shè)10年,網(wǎng)設(shè)計領(lǐng)域的專業(yè)建站公司;建站業(yè)務(wù)涵蓋:烏恰等地區(qū)。烏恰做網(wǎng)站價格咨詢:18980820575

目前,F(xiàn)CKEditor (http://www.fckeditor.net/) 是開源社區(qū)一款強大的HTML編輯器,目前***版本是2.6,支持Java的插件版本是2.4Beta1。

對于一般的Java Web應(yīng)用,我們可以通過直接插入JavaScript代碼來構(gòu)造頁面,這種方式操作起來比較簡便,也是通用在所有web頁面的一種方式。但是,在實際的 Java Web應(yīng)用中,我們除了用到普通的頁面編輯功能之外,難免會考慮到頁面上傳圖片、附件等功能。所以,單純使用JavaScript方式的話,這一大堆的文件上傳代碼將由你自己來寫了,工程量還是比較浩大的。自然而然,我們會想到Jsp Tag,有沒有現(xiàn)成的快餐式的頁面標簽?zāi)??答案是肯定的,就如我上文提到的Java插件就已經(jīng)實現(xiàn)了這些功能,并集成了Apache Commons-FileUpload,以此來實現(xiàn)文件>      

  •  instanceName="EditorDefault" width="755" height="460" basePath=                                        "/fckeditor" value="Hello, world">      

  •         

  •      SkinPath="skins/office2003/" />      

  •   jsp:body>      

  • FCK:editor>    

  • 在JSF應(yīng)用中,由于頁面都是JSF自定義標簽,對于其他標簽的內(nèi)容,JSF不會自動將后臺Bean中的值綁定到,那么我們還要做做文章,通過一段JavaScript綁定到body_onload()事件中,以此將JSF 標簽的內(nèi)容傳遞給。

    1.  type="text/javascript">          

    2.     function renderMessage() {      

    3.         YAHOO.util.Dom.get("EditorDefault").value = YAHOO.util.Dom.get("form:content").value;      

    4.     }      

    5. script>          

    6.       

    7.    id="form">      

    8.      id="content" value="#{mainMessageEditBean.                                             message.messageContent}" style="display:none">h:inputTextarea>      

    9.   h:form>      

    10. f:view>  


    保存HTML編輯內(nèi)容的時候,你只需要通過獲得到的HttpServletRequest對象獲取頁面提交中的Parameter對象,示例代碼如下:

    1.  public Map getParamMap() {      

    2.      return getFacesContext().getExternalContext().getRequestParameterMap();      

    3.  }      

    4.  public String getParamAsString(String paramName) {      

    5.     Object obj = getParamMap().get(paramName);      

    6.     if (obj != null) {      

    7.          return obj.toString();          

    8. } else {      

    9.         return "";      

    10.      }      

    11.  }        

    12.  public String saveMessage() {      

    13.     if (message == null) {      

    14.          setErrMsg("Message does not exist.");      

    15.         return null;                  

    16.      }      

    17.     String content = getParamAsString("EditorDefault");      

    18.     if (content == null || content.length() == 0) {      

    19.          setErrMsg("Message must not be empty.");      

    20.          return null;                              

    21.      }      

    22.  }     

    其他方面,我們需要在自己的web.xml中定義FCKEditor相關(guān)的Servlet:

    1.       

    2.   Connectorservlet-name>      

    3.           

    4.          net.fckeditor.connector.ConnectorServlet      

    5.     servlet-class>      

    6.     1load-on-startup>      

    7. servlet>      

    8.       

    9.     Connectorservlet-name>      

    10.           

    11.          /fckeditor/editor/filemanager/connectors/*      

    12.     url-pattern>      

    13. servlet-mapping>  

    這里需要注明的是,/fckeditor這個web根目錄下的目錄來源于FCKEditor的核心包(Ver 2.6),可以在官方網(wǎng)站上面下載得到。

    在目錄/fckeditor下面有一個重要的文件fckconfig.js,里面可以配置許多FCKEditor在頁面上的展示風格,大家可以仔細慢慢研究 :)

    PS: 考慮到安全問題,建議大家把FCKEditor界面上的Source Code按鈕屏蔽掉,防止黑客的惡意腳本的破壞。

    在我的實際應(yīng)用中,因為要限制上傳文件的權(quán)限,所以我要用到權(quán)限控制。幸好FCKEditor提供了相應(yīng)的UserAction接口,可以讓我自己實現(xiàn)一個類來控制權(quán)限。

    1.   style="font-style: italic;">package com.tail.utils;           

    2.  import javax.servlet.http.HttpServletRequest;      

    3.  import javax.servlet.http.HttpSession;          

    4.  import net.fckeditor.requestcycle.UserAction;             

    5.  import com.tail.beans.Principal;      

    6.  import com.tail.objects.User;            

    7.  public class UserActionImpl implements UserAction {        

    8.      public boolean isEnabledForFileBrowsing(HttpServletRequest req) {              

    9.          return true;      

    10.      }          

    11.      public boolean isEnabledForFileUpload(HttpServletRequest req) {      

    12.          HttpSession session = req.getSession();      

    13.          Principal principal = (Principal) session.getAttribute(ConstantUtil.SESSION_PRINCIPAL);      

    14.          if (principal != null) {        

    15.              User user = principal.getUser();      

    16.              if (user.isUploadable()) {      

    17.                  return true;      

    18.              }      

    19.          }      

    20.          return false;      

    21.      }           

    22.  }  em>   

    如何加載自定義的UserAction類呢?在classes的根目錄下,你需要定義一個fckeditor.properties文件:

    1.   style="font-style: italic;">connector.userActionImpl=com.                                                                             tail.utils.UserActionImpl  em>   

    關(guān)于JSP中怎么集成FCKEditor就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。


    網(wǎng)站題目:JSP中怎么集成FCKEditor
    URL地址:
    http://weahome.cn/article/jhdhis.html

    在線咨詢

    微信咨詢

    電話咨詢

    028-86922220(工作日)

    18980820575(7×24)

    提交需求

    返回頂部