2016-08-09 8 views
0

OrbeonフォームでExcel文書を変更しようとしています。基本的には、私はthisの動作例を得ようとしています。Orbeon - ZipとUnzipでファイルが見つかりません

"ファイルが見つかりませんでした"のため、oxf:zip/oxf:unzip操作が失敗するという問題はありません。したがって、解凍操作で生成されるファイルは、zip操作ではもう使用できません。どんなXSLT変換もそれらのファイルの内容を読むことができます。何が問題なの?

基礎:私はOrbeon 2016.1

メッセージでのTomcat 7を使用します。

| C:\プログラム%20Files \ Apacheの%20Software%20Foundation \ Tomcatの%207.0 \一時\のupload_519c5622_1566e996c49__8000_00000002.tmp (

<p:config xmlns:p="http://www.orbeon.com/oxf/pipeline" 
      xmlns:oxf="http://www.orbeon.com/oxf/processors" 
      xmlns:xsl="http://www.w3.org/1999/XSL/Transform" 
      xmlns:xs="http://www.w3.org/2001/XMLSchema" 
      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
      xmlns:saxon="http://saxon.sf.net/"> 

    <p:param type="input" name="instance"/> 
    <p:param type="output" name="data"/> 

    <!-- Read .xlsx file --> 
    <p:processor name="oxf:url-generator"> 
     <p:input name="config" transform="oxf:xslt" href="#instance"> 
      <config xsl:version="2.0"> 
       <url>--any excel file --</url> 
       <content-type>multipart/x-zip</content-type> 
       <cache-control><use-local-cache>false</use-local-cache></cache-control> 
      </config> 
     </p:input> 
     <p:output name="data" id="zip"/> 
    </p:processor> 

    <!-- Unzip file --> 
    <p:processor name="oxf:unzip"> 
     <p:input name="data" href="#zip"/> 
     <p:output name="data" id="zip-file-list"/> 
    </p:processor> 

    <!-- Zip stuff back --> 
    <p:processor name="oxf:zip"> 
     <p:input name="data" href="#zip-file-list"/> 
     <p:output name="data" id="new-zip" ref="data"/> 
    </p:processor> 

</p:config> 
01:|目|電子システムは、指定されたパス)

削減ソースコードを見つけることができません

+0

私はこれを試しているし、私のために働く:問題なく結果のzipをダウンロードすることができます。 Orbeon Forms 2016.1を使用しています。また、私はディレクトリ名にスペースがありません:これが問題の一部になる可能性があるのでしょうか。 Tomcatに別の場所に一時ファイルを保存するように指示するとどうなりますか? http://serverfault.com/questions/13523/configure-tomcat-to-use-a-different-temp-directory-for-file-uploadsも参照してください。 – ebruchez

+0

はい、それです。テストのために、私はjava.io.tempdirの名前を "C:/ temp /"に変更しました。 –

+0

これを聞いてうれしい! – ebruchez

答えて

1

私はこの問題を、一時ディレクトリへのパスにスペースが存在することと関連していることをDenisが確認したので、これを答えとして書いています。 java.io.tempdirをスペースなしのパスを指すように設定すると、問題が解決されます。

また、一時ディレクトリのパス名にスペースを入れないでセットアップを実行することもできました。