java修改fckeditor插入超链接实例

一、先看效果,再看代码:

1、点击fckeditor插入超链接:

<!--StartFragment -->
2、上传文件:点击上传成功提示框的确定后,系统会自动跳转
<!--StartFragment -->
3、跳转到超链接信息页面
<!--StartFragment -->
<!--StartFragment -->
<!--StartFragment -->
4、最终效果:
<!--StartFragment -->
二、代码修改
 
1、修改fckeditor里面的fckconfig.js文件
<!--StartFragment -->
2、修改fckeditor-->>dialog-->>fck_link.html
<!--StartFragment -->
3、配置struts-config.xml
    1
      <!--StartFragment -->
    2
<!--StartFragment -->
 
4、附件:ScoreUploadExcelForm、LinkUploadAction代码
ScoreUploadExcelForm代码:
/**
 * 所要上传的文件的Form
 * @author ScoreTechnicalTeam
 * @version $Revision: $ $Date: $
 */
public class ScoreUploadExcelForm extends BaseForm implements java.io.Serializable{
 
 private FormFile file;     该file与fck_link.html中的name="file"对应
 public FormFile getFile() {
  return file;
 }
 public void setFile(FormFile file) {
  this.file = file;
 }
}
 
 LinkUploadAction代码:
package com.score.web.action.resource.browser;

import java.io.File;
import java.io.FileOutputStream;
import java.io.InputStream;
import java.io.OutputStream;
import java.io.PrintWriter;
import java.util.ResourceBundle;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;
import org.apache.struts.upload.FormFile;
import com.score.model.base.ScoreUploadExcelForm;
import com.score.web.action.core.BaseAction;
public class LinkUploadAction extends BaseAction {
 public ActionForward execute(ActionMapping mapping, ActionForm form,
   HttpServletRequest request, HttpServletResponse response)
   throws Exception {
  if(log.isDebugEnabled()) {
   log.debug("LinkUploadAction begin...");
  }
    ScoreUploadExcelForm scoreUploadFileForm = (ScoreUploadExcelForm) form
   FormFile formfile = scoreUploadFileForm.getFile(); 
   String uri = membersHead(request,formfile);
   PrintWriter out = response.getWriter();
   out.print("<script type=\"text/javascript\">") ;
   out.print("window.parent.OnUploadCompleted(0,'"+uri+"','"+formfile.getFileName()+"', '')");
   out.print("</script>") ;此处代码是将链接写入到页面,即效果图第三个步骤
   out.flush();
   out.close();
  if(log.isDebugEnabled()) {
   log.debug("LinkUploadAction begin...");
  }
  return null;
 }
 public String membersHead(HttpServletRequest request,FormFile file) {
  String uri = "";
  ResourceBundle rb = ResourceBundle.getBundle("vfsconfig");
//  String dir = servlet.getServletContext().getRealPath("/upload");
   String dir = rb.getString("vfs.basepath"); 此处是从properties文件中取到的图片上传后绝对路径,可以在spring _service里面配置
  // 文件夹
  File dirFile = null;
  boolean bFile = false;
  dirFile = new File(dir);
  bFile = dirFile.exists();// true 该文件夹存在,false 不存在
  if (bFile == false) {
   bFile = dirFile.mkdirs();
   if (bFile == false) {
    System.out.println(" 文件夹创建失败!");
   }
  }
  if (bFile == true) {
   try {
    InputStream input = file.getInputStream();// 能从FormFile中获得输入流
    String fileName = file.getFileName();
    OutputStream output = new FileOutputStream(dir + "/" + fileName);
    int bytesReader = 0;
    byte[] readbuffer = new byte[102400];
    while ((bytesReader = input.read(readbuffer, 0, 102400)) != -1) {
     output.write(readbuffer, 0, bytesReader);
    }
    output.close();
     String webPath = rb.getString("resourceUrl");此处是从properties文件中取到的要上传图片的IP及端口,可以在spring _service里面配置

    // 资料路径
    uri = webPath +"/linkUpload/"+fileName;
   } catch (Exception e) {
    e.printStackTrace();
   }
  }
  return uri;
  
 }
}
 
 
 
 
 
 
 
 
 

你可能感兴趣的:(java,fckeditor,fckdeitor超链接,fckeditor插入超链接)