0

ace:fileEntry私の Web アプリケーションでは、コンポーネントを使用したいと考えています。

ショーケースを試してみましたが、うまくいきません。エラーはありません。はfileEntryListener呼び出されません。ファイルはまだアップロードされていますが (ブラウザが表示します)、ファイルはサーバーに保存されていません。

それに関する既知の問題はありますか?

 <h:form id="fileUploadForm">

   <h:panelGrid id="fileUploadGrid" columns="2" width="100%" styleClass="textEntryInputTable">

   <ace:fileEntry id="fileEntryComp"
                                   label="File Entry"
                                   relativePath="uploaded"
                                   fileEntryListener="#{ticketDetailListBean.listener}"/>                            

       <h:commandButton id="submit" value="Datei uploaden" type="submit" styleClass="icebutton" />

       <h:message id="msg" for="fileUploadForm:fileEntryComp" infoClass="infoMessage" errorClass="errorMessage"/>
       <h:outputFormat value=""></h:outputFormat>

     </h:panelGrid>

 </h:form>

プロパティ " fileEntryListener" は任意に設定できます。Bean とメソッドが存在するかどうかは問題ではありません。存在しない Bean を参照しても、エラーは発生しません。つまり、リスナーは使用されません。

私は使用してtomcat 7.0.34おりicefaces 3.2.0.、独自の実装を試しましたが、icefaces ショーケースの例をコピーしました。どちらも機能しません。

4

1 に答える 1

2

私は同じ問題を抱えていましたが、次のように解決しました:ace:panelでラップされたfileEntryタグを確認してください

    <ace:panel>
    <ace:fileEntry id="signature-file-entry"
                   relativePath="/files/"
                   maxFileCount="1"
                   maxFileCountMessage="#{msg.concurrentFileUploadLimit}"
                   fileEntryListener="#{userManagement.signatureUploadListener}"
                   maxFileSize="6291456"
                   maxFileSizeMessage="#{msg.maxFileSizeMessage}"
                   maxTotalSize="18874368"
                   maxTotalSizeMessage="#{msg.maxTotalSizeMessage}"
                   required="true"
                   requiredMessage="#{msg.requiredMessage}"
                   useOriginalFilename="true"
                   useSessionSubdir="true"
                   tabindex="6"/>
    <ace:message for="signature-file-entry" showSummary="true" showDetail="false" />
    <h:commandButton value="#{msg.sendFile}" type="submit" id="uploadAFile" />
</ace:panel>

web.xml を確認してください。次のタグが含まれている必要があります。

    <context-param>
       <param-name>org.icefaces.mandatoryResourceConfiguration</param-name>
       <param-value>fileEntry</param-value>
    </context-param>

    <servlet>
    <servlet-name>Faces Servlet</servlet-name>
    <servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
    <load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
    <servlet-name>Faces Servlet</servlet-name>
    <url-pattern>/faces/*</url-pattern>
</servlet-mapping>
<servlet-mapping>
    <servlet-name>Faces Servlet</servlet-name>
    <url-pattern>*.jsf</url-pattern>
</servlet-mapping>
<servlet-mapping>
    <servlet-name>Faces Servlet</servlet-name>
    <url-pattern>*.faces</url-pattern>
</servlet-mapping>
<servlet-mapping>
    <servlet-name>Faces Servlet</servlet-name>
    <url-pattern>*.xhtml</url-pattern>
</servlet-mapping>
<servlet-mapping>
    <servlet-name>Faces Servlet</servlet-name>
    <url-pattern>/icefaces/*</url-pattern>
</servlet-mapping>
于 2014-01-23T08:13:52.297 に答える