weboffice2009无法打开_weboffice无法打开word - CSDN
精华内容
参与话题
  • iWebOffice2009问题

    2010-12-10 08:45:09
    iWebOffice2009保存的数据是保存整个word文件 而不仅仅是内容 所以用二进制流导出的时候肯定会出现乱码 原先不知道 做了测试 用的mysql 没有用到oracle 因为公司昨天下午断网 所以Oracle数据库连接不上 所以只能本机...

    iWebOffice2009保存的数据是保存整个word文件 而不仅仅是内容 所以用二进制流导出的时候肯定会出现乱码 原先不知道 做了测试 用的mysql 没有用到oracle 因为公司昨天下午断网 所以Oracle数据库连接不上 所以只能本机测试mysql数据库

    import java.io.*;
    import java.util.*;
    import java.sql.*;

    public class BlobWord
    {
        private static final String URL = "jdbc:mysql://127.0.0.1:3306/dbdemo?user=root&password=root&useUnicode=true";
        private Connection conn = null;
        private PreparedStatement pstmt = null;
        private ResultSet rs = null;
        private File file = null;
       
        public BlobWord()
        {
        }

        /**
        * 向数据库中插入一个新的BLOB对象(图片)
        *
        * @param infile - 要输入的数据文件
        * @throws java.lang.Exception
        *
        */
       public void blobInsert(String infile) throws Exception
       {
           FileInputStream fis = null;  
               try
               {
                   Class.forName("com.mysql.jdbc.Driver").newInstance();
                   conn = DriverManager.getConnection(URL);
                   file = new File(infile);
                   fis = new FileInputStream(file);
                   //InputStream fis = new FileInputStream(infile);
                           pstmt = conn.prepareStatement("insert into tmp(descs,pic) values(?,?)");
                           pstmt.setString(1,file.getName());    //把传过来的第一个参数设为文件名
                   //pstmt.setBinaryStream(2,fis,(int)file.length());   //这种方法原理上会丢数据,因为file.length()返回的是long型
                           pstmt.setBinaryStream(2,fis,fis.available()); //第二个参数为文件的内容
                           pstmt.executeUpdate();
                        }
               catch(Exception ex)
               {
                  ex.printStackTrace();
               }
                   finally
                   {
                   //关闭所打开的对像//
                   pstmt.close();
                   fis.close();
                   conn.close();
               }
        }
       /**
        * 从数据库中读出BLOB对象
        *
        * @param outfile - 输出的数据文件
        * @param picID - 要取的图片在数据库中的ID
        * @throws java.lang.Exception
        *
        */
        public void blobRead(String outfile,int picID) throws Exception
        {
            FileOutputStream fos = null;
            InputStream is = null;
            byte[] Buffer = new byte[4096];
                try
                {
                    Class.forName("com.mysql.jdbc.Driver").newInstance();
                    conn = DriverManager.getConnection(URL);
                    pstmt = conn.prepareStatement("select pic from tmp where id=?");
                    pstmt.setInt(1,picID);         //传入要取的图片的ID
                    rs = pstmt.executeQuery();
                    rs.next();
                         
                    file = new File(outfile);
                    if(!file.exists())
                    {
                        file.createNewFile();     //如果文件不存在,则创建
                    }
                    fos = new FileOutputStream(file);
                    is = rs.getBinaryStream("pic");
                    int size = 0;
                   /* while(size != -1)
                    {
                        size = is.read(Buffer);    //从数据库中一段一段的读出数据
                        //System.out.println(size);
                        if(size != -1)            //-1表示读到了文件末
                            fos.write(Buffer,0,size);
                    } */
                    while((size = is.read(Buffer)) != -1)
                    {
                        //System.out.println(size);
                        fos.write(Buffer,0,size);
                    }              
                }catch(Exception e)
                {
                    e.printStackTrace();
                }
                finally
                {
                    //关闭用到的资源
                    fos.close();
                    rs.close();
                    pstmt.close();
                    conn.close();
                }
        }

        /**
         * 写入文本
         * @param infile
         * @throws Exception
         */
        public void writeText(String infile) throws Exception
        {
        FileInputStream fis = null;  
             try
             {
                 Class.forName("com.mysql.jdbc.Driver").newInstance();
                 conn = DriverManager.getConnection(URL);
                 file = new File(infile);
                 fis = new FileInputStream(file);
                 //InputStream fis = new FileInputStream(infile);
                 pstmt = conn.prepareStatement("insert into tmp_text(descs,t_pic) values(?,?)");
                 pstmt.setString(1,file.getName());    //把传过来的第一个参数设为文件名
                 //pstmt.setBinaryStream(2,fis,(int)file.length());   //这种方法原理上会丢数据,因为file.length()返回的是long型
                 pstmt.setBinaryStream(2,fis,fis.available()); //第二个参数为文件的内容
                 pstmt.executeUpdate();
             }catch(Exception ex)
             {
                ex.printStackTrace();
             }finally
             {
                 //关闭所打开的对像//
                 pstmt.close();
                 fis.close();
                 conn.close();
             }
        }
        /**
         * 读文本
         * @param outfile
         * @param id
         * @throws Exception
         */
        public void readText(String outfile,int id) throws Exception
        {
        FileOutputStream fos = null;
            InputStream is = null;
            byte[] Buffer = new byte[4096];
            try
            {
                Class.forName("com.mysql.jdbc.Driver").newInstance();
                conn = DriverManager.getConnection(URL);
                pstmt = conn.prepareStatement("select t_pic from tmp_text where id=?");
                pstmt.setInt(1,id);         //传入要取的图片的ID
                rs = pstmt.executeQuery();
                rs.next();       
                file = new File(outfile);
                if(!file.exists())
                {
                     file.createNewFile();     //如果文件不存在,则创建
                }
                fos = new FileOutputStream(file);
                is = rs.getBinaryStream("t_pic");
                int size = 0;
                // System.out.println("文本信息:"+getBlogContext(rs.getBlob("t_pic")));
                System.out.println("文本信息:"+new String(rs.getBytes("t_pic"),"gbk"));
                while((size = is.read(Buffer)) != -1)
                {
                   fos.write(Buffer,0,size);
                }  
                System.out.println("文件导出成功");
                }catch(Exception e)
                {
                    e.printStackTrace();
                    System.out.println("文件导出失败");
                }
                finally
                {
                    //关闭用到的资源
                    fos.close();
                    rs.close();
         pstmt.close();
                    conn.close();
                }
        }
        
        private String getBlogContext(Blob blob )
    {
          String result="";  
       try
             {
                 if(blob!=null){
                  StringBuffer buffer = new StringBuffer();
             InputStream is = null;
             is = blob.getBinaryStream();
             InputStreamReader isr = new InputStreamReader(is);
             if (isr.ready()) {
              Reader reader = new BufferedReader(isr);
              int ch;
              while ((ch = reader.read()) > -1) {
               buffer.append((char) ch);
              }
             }
             isr.close();
             is.close();
             result=buffer.toString();
                 }
             }catch (Exception e) {
             e.printStackTrace();
                 return result;
              }
            return result;
    }
       
        //以下为WebOffice2009测试模块
        /**
         * 生成word文件
         */
        public void readDoc(String outfile,String id)throws Exception
        {
        FileOutputStream fos = null;
            InputStream is = null;
            try{
                    Class.forName("com.mysql.jdbc.Driver").newInstance();
                    conn = DriverManager.getConnection(URL);
                    pstmt = conn.prepareStatement("select FileBody,FileSize from document_file where RecordID=?");
                    pstmt.setString(1,id);
                    rs = pstmt.executeQuery();
                    rs.next();
                         
                    file = new File(outfile);
                    if(!file.exists())
                    {
                        file.createNewFile();//如果文件不存在,则创建
                    }
                    fos = new FileOutputStream(file);
                    is = rs.getBinaryStream("FileBody");// 读出数据后转换为二进制流
                    byte[] data = new byte[rs.getInt("FileSize")];
                    int size = 0;
                    while((size = is.read(data)) != -1)
                    {
                        fos.write(data,0,size);
                    }
                    System.out.println("文件导入成功");
                }catch(Exception e)
                {
                    e.printStackTrace();
                    System.out.println("文件导入失败");
                }
                finally
                {
                    //关闭用到的资源
                    fos.close();
                    rs.close();
         pstmt.close();
                    conn.close();
                }
        }
       
        /**
         * 写入word文档
         * @param infile
         * @throws Exception
         */
        public void writeDoc(String infile)throws Exception
        {
        FileInputStream fis = null;  
             try
             {
                 Class.forName("com.mysql.jdbc.Driver").newInstance();
                 conn = DriverManager.getConnection(URL);
                 //生成随机码
                 java.util.Date dt=new java.util.Date();
                 long lg=dt.getTime();
                 Long ld=new Long(lg);
                 java.text.SimpleDateFormat d=new java.text.SimpleDateFormat("yyyy-MM-dd");
                 file = new File(infile);
                 fis = new FileInputStream(file);
                 //InputStream fis = new FileInputStream(infile);
                 pstmt = conn.prepareStatement("insert into document_file(RecordID,FileName,FileType,FileSize,FileBody) values(?,?,?,?,?)");
                 pstmt.setString(1, ld.toString());
                 pstmt.setString(2,file.getName());    //把传过来的第一个参数设为文件名
                 pstmt.setString(3,".doc");
                 pstmt.setInt(4,4999);
                 pstmt.setBinaryStream(5,fis,fis.available()); //第二个参数为文件的内容
                 pstmt.executeUpdate();
                 System.out.println("文件插入成功");
             }catch(Exception ex)
             {
                ex.printStackTrace();
                System.out.println("文件插入失败");
             }
                 finally
                 {
                 //关闭所打开的对像//
                 pstmt.close();
                 fis.close();
                 conn.close();
             }
        }
        public static void main(String[] args)
        {
            try
            {      
                BlobWord blob = new BlobWord();
               //blob.blobInsert("C:\\jimi_dingbu-shang.jpg");          
               //blob.blobRead("c://a-shang.jpg",1);
               //blob.writeText("c:\\轻工平台设计文档整合版本.doc");
               //blob.readText("c://readText.doc", 2);
               blob.readDoc("c://readText.doc", "1281060416546");
               // blob.writeDoc("c:\\周报.doc");
            }
            catch(Exception e)
            {
                e.printStackTrace();
            }
        }
    }

     

    展开全文
  • 对于点聚weboffice ocx控件来说,使用document.all.WebOffice1.LoadOriginalFile("", "doc")可以打开一个空白页。 但是想打开一个服务器文件,那么第一个参数必须使用文件的全目录。如我的: document.all.Web...

    对于点聚weboffice ocx控件来说,使用document.all.WebOffice1.LoadOriginalFile("", "doc")可以打开一个空白页。

    但是想打开一个服务器文件,那么第一个参数必须使用文件的全目录。如我的:

    document.all.WebOffice1.LoadOriginalFile("http://localhost:8080/IMS8100/a.doc", "doc")。

    在JS中,获取文件路径即,类似于java的basePath的方法,见我的另一篇博客:http://blog.csdn.net/fuli_mouren/article/details/8992729

    便可以打开文件

    展开全文
  •  当您尝试在 Office Web Apps 中查看 Office 文档时,收到“抱歉,出现了问题”错误。

    

    sharepoint 2013 使用Office Web Apps 查看或编辑office文档时页面出现:“抱歉,出现了问题”错误

    该问题是由于使用了系统账户登录站点而导致的。

    更换其他账户登录问题解决。


    其他错误还有下面的:

    如果 Office Web Apps 在与 SharePoint 2013 结合使用时未正常工作,请查看以下症状并展开相应的标题以查找纠正步骤。

    以下是一些可供尝试的故障排除选项。

    确认用于创建新文档的 SharePoint Web 应用程序使用了基于声明的身份验证

    仅使用了基于声明的身份验证的 Web 应用程序能够在 Office Web Apps 中打开文件。若要确定 Web 应用程序的身份验证提供程序,请执行以下步骤:

    1. 在 SharePoint 2013 管理中心中,单击“管理 Web 应用程序”。

    2. 选择要检查的 Web 应用程序,然后单击功能区中的“验证提供程序”。

    身份验证提供程序必须显示为“基于声明的身份验证”,Office Web Apps 才能正常使用 Web 应用程序。若要解决此问题,您可以删除 Web 应用程序并使用基于声明的身份验证重新创建它,也可以更改 Web 应用程序的身份验证方法。有关详细信息,请参阅 Office Web Apps 的 SharePoint 身份验证要求

    确保 SharePoint 2013 上和 Office Web Apps Server 服务器场上的 WOPI 区域匹配。

    为此,请在 SharePoint Server 中运行以下命令:

    Get-SPWopiZone 
    

    结果将为下列情况之一:

    • internal-https

    • internal-http

    • external-https

    • external-http

    接下来,在 SharePoint Server 中运行以下命令。

    Get-SPWOPIBinding
    

    在输出中,查找“WopiZone: 区域”。如果来自 Get-SPWopiZone 的结果与 Get-SPWOPIBinding 所返回的区域不匹配,则对 SharePoint Server 运行 Set-SPWOPIZone -Zone cmdlet 以更改 WOPI 区域,使其与来自 Get-SPWOPIBinding 的结果匹配。有关使用这些 cmdlet 的帮助,请参阅 Get-SPWOPIBindingSet-SPWOPIBinding Get-SPWOPIZone

    在某些情况下,作为 Active Directory (AD) 安全组成员的用户可能无法在浏览器中编辑文档。解决方案为确保 User Profile Service 应用程序 (UPA) 配置正确并完全与用户和组成员同步。有关详细信息,请参阅知识库文章 SharePoint 2013 中安全组成员用户无法编辑 Office Web Apps 2013 文件.

    确保您未以系统帐户登录,否则您将无法编辑或查看文档。请以其他用户的身份登录并重新尝试访问 Office Web Apps。

    如果您在使用 HTTP 的测试环境中设置 Office Web Apps,请确保将 AllowOAuthOverHttp 设置设为“True”,如步骤 5:将 SharePoint 2013 中的 AllowOAuthOverHttp 设置更改为 True 中所述。

    如果您使用 New-OfficeWebAppsHost cmdlet 将域添加到允许列表中,请确保从允许列表中的主机域访问 Office Web Apps。要查看允许列表中的主机域,请在 Office Web Apps Server 上以管理员身份打开 Windows PowerShell 提示符,并运行 Get-OfficeWebAppsHost cmdlet。要将域添加到允许列表,请使用 New-OfficeWebAppsHost cmdlet。

    • 您是否意外地在域控制器上安装了 Office Web Apps Server?很遗憾,Office Web Apps Server 不能在域控制器上运行。Office Web Apps Server 必须安装在作为域一部分的单独服务器上。有关详细信息,请参阅 Office Web Apps Server 的软件、硬件和配置要求

    • 确保运行 SharePoint 2013 版本 15.0.4420.1017 或更高版本。在 SharePoint 2013 服务器上,请按照下列步骤来验证版本号:

      1. 转到“开始”>“所有程序”>“Microsoft SharePoint 2013 产品”>“SharePoint 2013 管理中心”。

      2. 选择“系统设置”>“管理此场中的服务器”。

      验证“配置数据库版本”是 15.0.4420.1017 或更高版本。如果不是,转到 Office、Office 服务器和相关产品更新中心,获取详细信息。

    内存不足会导致 Office 文档预览出现问题。查看硬件要求 - Web 服务器、应用程序服务器以及单服务器安装以了解 SharePoint 2013 的内存要求。这些要求与 Office Web Apps Server 所使用的要求相同。

    出现此错误是因为 Office Web Apps Server 不支持存储数据连接信息的 Office 数据连接 (ODC) 文件。要解决此问题,请按以下步骤操作:

    1. 在 Excel 客户端应用程序中打开工作簿。

    2. 单击“数据”>“连接”。

    3. 选择消息中列出的数据连接,然后单击“属性”。

    4. 单击“定义”选项卡。

    5. 清除“始终使用连接文件复选框”复选框。

    6. 将工作簿重新上载到 SharePoint 文档库。

    若要允许用户与包含数据模型的工作簿或浏览器窗口中的 Power View 视图交互,请将 SharePoint Server 中的 Excel Services 配置为显示工作簿。这要求 SharePoint 管理员在安装 SharePoint Server 的服务器上运行 New-SPWOPISupressionSetting cmdlet。有关详细信息,请参阅 New-SPWOPISuppressionSetting在 SharePoint Server 2013 中管理 Excel Services

    展开全文
  • 郁闷了一天终于搞定这个问题了,出现这个问题时候文件其实内容还是可以打开的,就是出现以上的错误原因。经过最终分析确定了具体原因,是因为在Response下载文档时候,最后需要结束 System.Web.HttpContext....

    • 郁闷了一天终于搞定这个问题了,出现这个问题时候文件其实内容还是可以打开的,就是出现以上的错误原因。经过最终分析确定了具体原因,是因为在Response下载文档时候,最后需要结束

    System.Web.HttpContext.Current.Response.End();否则默认为不完整下载状态。反正我加上去后就不出现以上情况了。具体代码如下:


    /// <summary>
      /// 下载文件
    /// </summary>
      public void LoadPaperTemplate(string mStrFileName)
      {
          FileStream fs = null;
          BinaryReader br = null;
          BinaryWriter brnew = null;
          try
          {
              //给内容赋值   
              string path = System.Web.HttpContext.Current.Server.MapPath("~/Template");
              string mStrFileRoot = string.Format("{0}\\{1}", path, mStrFileName);
              if (File.Exists(mStrFileRoot))
              {
                  fs = new System.IO.FileStream(mStrFileRoot, System.IO.FileMode.Open);
                  br = new BinaryReader((Stream)fs);
                  byte[] bytes = br.ReadBytes((Int32)fs.Length);
                  brnew = new BinaryWriter(fs);
                  brnew.Write(bytes, 0, bytes.Length);
                  System.Web.HttpContext.Current.Response.Clear();
                  System.Web.HttpContext.Current.Response.Buffer = true;
                  System.Web.HttpContext.Current.Response.Charset = "GB2312";
                  System.Web.HttpContext.Current.Response.AddHeader("Content-Disposition", "attachment;  filename=" + HttpUtility.UrlEncode(mStrFileRoot.Substring(mStrFileRoot.LastIndexOf('\\') + 1)));
                  System.Web.HttpContext.Current.Response.ContentEncoding = System.Text.Encoding.GetEncoding("utf-8");
                  System.Web.HttpContext.Current.Response.ContentType = "application/ms-word";
                  System.Web.HttpContext.Current.Response.BinaryWrite(bytes);
                  System.Web.HttpContext.Current.Response.Flush();
                  System.Web.HttpContext.Current.Response.End();
              }
          }
          catch (Exception)
          {
              //throw;
          }
          finally
          {
              br.Close();
              brnew.Close();
              fs.Close();
          }
      }



    转载地址:http://www.cnblogs.com/BeyondWJsel/archive/2012/05/10/2494418.html

    展开全文
  • web Office Apps 无法在线预览问题

    千次阅读 2012-03-12 13:52:44
    安装部署完office web apps 后,在sharepoint 2010浏览器中浏览Word提示:“由于出现意外错误,Word Web App 无法打开此 文档 进行查看。 要查看此 文档,请在Microsoft Word 中打开它。” 系统环境:win2008r2 + ...
  • ASP.NET使用点聚WebOffice实现文档在线浏览

    万次阅读 热门讨论 2012-06-13 09:50:38
    前段时间应导师要求,把他的那一堆堆word文档分类整理,并在此基础上做一个基于B/S的文件管理系统,并能...想来想去,最后想到了WebOffice这个东东,经过不懈努力最后终于弄好了,在此和大家分享一下! 首先我选用的
  • web项目实现office在线编辑预览

    万次阅读 2018-12-19 15:11:21
    使用chrome浏览器,安装 Office Editing for docs,sheets &amp; slides插件,就可以了 缺点是不能直接在线保存,要下载到本地再上传   ...
  • WEBOFFICE 6.0.5.0新建word后可以编辑可以保存至服务器。 关闭后再打开就不能正确显示weboffice控件。文件流已下载到本地,文件也在临时文件夹创建。 用户电脑环境是win xp+IE8+MS OFFICE 2010.
  • weboffice 6版本实现在线word

    万次阅读 2018-08-11 13:59:31
    公司最近需要开发一个在线word功能,开始用pageoffice开发的功能被否决因为pageoffice的版权问题,后采用点聚weboffice的免费版开发.因为多个页面需要使用在线word功能,对于weboffice提供的activeX对象进行一定的封装,...
  • 1.官网下载js,并把js放到页面要显示的元素里面 ... obj = document.getElementById('WebOffice');//获得控件对象 if (obj)setTimeout('openfile()',1000);//等待控件初始化完毕,时间可以根据网络速度设...
  • sharepoint2013新体验—Officeweb app server2013详细的安装和部署 { 和SharePoint 2013的需求相同,需要8-12GB的内存,它要求操作系统必须是Windows Server 2008 R2 SP1或者Windows Server 2012,并且需要...
  • Oracle Web ADI无法打开创建的EXCEL问题

    万次阅读 2009-08-22 19:05:00
    今天公司培训Oracle Web ADI,实现这个功能开始的时候有一个步骤“ 下载创建集成器的文件”,等到下载下WebADI.xls文件后,双击弹出一个oracle application的登录窗口, 输入账号密码,之后提示“下载”, 不过...
  • 普通的MS Office Word只能在本地磁盘上打开和编辑保存,这使得程序员在开发项目时受到很多的约束,许多的功能无法实现或者无法达到理想的效果。下面我就简单的和大家分享一下如何实现Word文档的在线打开、编辑和...
  • 1、pageoffice打开后每次变成系统的登录页面 2、有的电脑上打开显示4页,只有个别电脑打开该文件显示5页 3、在线打开word报告,报jQuery未定义错误,需要升级pageoffice版本 4、您的Office软件不支持这个命令,或者...
  • WebOffice使用一

    千次阅读 2014-12-22 14:49:37
    1.weboffice是什么? weboffice是处理办公软件OFFICE,wps文档的一款由点聚软件开发的一款插件,可以应用VS开发环境运行,主要可以处理word,excel,ppt等文档。 2.如何使用weboffice 2.1.使用前提:安装完整版的...
  • office online server2016详细安装步骤及问题总结

    万次阅读 热门讨论 2018-08-27 13:33:59
    由于公司需要,自己一直在研究office online server 2016这款在线浏览文档的软件,其中遇到了很多问题,以下是自己综合网上的资料和自己的搭建过程写出来的安装步骤,亲测可用,值得注意的是在安装后除word格式的...
  • 使用 WebBrowser 的 Navigate 方法打开 Office 文档时,出现以下问题: 问题: Office 文档并没有正确嵌入到 WebBrowser 控件中,反而被系统自带的 Office 应用程序打开了(等同于双击 Office 文档); 原因:是...
  • 在安装Office2003以后,有一个ActiveX控件被...通过这个控件,客户端页面上的JavaScript就可以激活本地的Office软件,来实现打开、编辑Office文档。(另,Office XP应该就已经包含这个ActiveX控件了。)首先,用Script
  • 关于点聚的weboffice ActiveX插件的使用在IE下只需要安装对应weboffice.ocx插件即可实现在线文档编辑。对于非IE如谷歌、火狐浏览器来说就有些不同了的,如果想要兼容谷歌和火狐需要采用标准的NPAPI的开发的插件,...
  • weboffice插件使用说明

    千次阅读 2018-11-12 05:57:11
    对点聚weboffice插件的使用说明  首先在官网上下载weboffice2019,下载地址在http://www.officectrl.com/weboffice_setup.html  有weboffice.exe和weboffice.cab.  1、下载试用包后按照安装使用说明进行安装。...
1 2 3 4 5 ... 20
收藏数 28,302
精华内容 11,320
关键字:

weboffice2009无法打开