如何将参数发送到PrimeFaces fileUpload中的fileUploadListener [英] How to send parameter to fileUploadListener in PrimeFaces fileUpload

查看:179
本文介绍了如何将参数发送到PrimeFaces fileUpload中的fileUploadListener的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

当我创建一个模型,我想保存一个模型的图像。我正在使用PrimeFaces fileUpload组件。当我保存图片时,我想知道特定图片指向哪个模型。这就是为什么我需要发送模型的id到后台bean。

有没有可能将模型的 id 发送到<
$ b

 < h:form enctype =multipart / form-datafileUploadListener  > 
< p:panelGrid columns =2>
< h:outputLabel for =hotelNamevalue =#{msg.hotelName}/>
< p:inputText value =#{apartmentNew.name}id =hotelName/>
< h:outputLabel for =hotelDescriptionvalue =#{msg.hotelDescription}/>
< p:inputText value =#{apartmentNew.description}id =hotelDescription/>
< h:outputLabel for =hotelImagesvalue =#{msg.hotelImages}/>
< h:form enctype =multipart / form-data>
< p:fileUpload id =hotelImages
fileUploadListener =#{apartments.handleImageUpload}
mode =advanced
sizeLimit =10000000
allowTypes = /(\ | \ /。)(GIF | JPE G | PNG?)$ / >
< / p:fileUpload>
< / h:表格>
< / p:panelGrid>
< p:commandButton id =saveApartmentButtonvalue =#{msg.save}action =save/>
< p:commandButton id =cancelCreationApartmentButtonvalue =#{msg.cancel}
action =cancel/>
< / h:表格>


解决方案

不通过请求参数。例如

 < / p> p:fileUpload ...> 
< / p:fileUpload>



  String foo =(String)event.getComponent()。getAttributes()。get(foo); // bar 


When I create a model I would like to save images for a model. I am using PrimeFaces fileUpload component. When I save pictures I want to know to which model particular image refers to. That's why I need to send id of a model to backing bean.

Is there any possibility to send id of model to fileUploadListener?

<h:form enctype="multipart/form-data">
  <p:panelGrid columns="2">
    <h:outputLabel for="hotelName" value="#{msg.hotelName}"/>
    <p:inputText value="#{apartmentNew.name}" id="hotelName"/>
    <h:outputLabel for="hotelDescription" value="#{msg.hotelDescription}"/>
    <p:inputText value="#{apartmentNew.description}" id="hotelDescription"/>
    <h:outputLabel for="hotelImages" value="#{msg.hotelImages}"/>
    <h:form enctype="multipart/form-data">
      <p:fileUpload id="hotelImages"
                    fileUploadListener="#{apartments.handleImageUpload}"
                    mode="advanced"
                    sizeLimit="10000000"
                    allowTypes="/(\.|\/)(gif|jpe?g|png)$/">
      </p:fileUpload>
    </h:form>
  </p:panelGrid>
  <p:commandButton id="saveApartmentButton" value="#{msg.save}" action="save"/>
  <p:commandButton id="cancelCreationApartmentButton" value="#{msg.cancel}" 
     action="cancel"/>
</h:form>

解决方案

Not via request parameters. You can do so via component attributes.

E.g.

<p:fileUpload ...>
    <f:attribute name="foo" value="bar" />
</p:fileUpload>

with

String foo = (String) event.getComponent().getAttributes().get("foo"); // bar

这篇关于如何将参数发送到PrimeFaces fileUpload中的fileUploadListener的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆