在primefaces中传递文件上传的输入文本值

Tal*_*lib 5 jsf file-upload input primefaces jsf-2

我要求我必须将inputText的值传递给backing bean,它将包含文件的版本以及文件上载.我一直在尝试使用远程命令实现它,但没有工作.

以下是我的代码:

 <h:form enctype="multipart/form-data" id="uploadForm">
                        <p:growl id="messages" showDetail="true" />
                        <p:outputLabel for="vers" value="File Version:" />
                        <p:inputText id="vers" name="vers"
                            value="#{remoteDeployment.uploadedVersion}" placeholder="1.x.x.x"
                            maxlength="17" required="true"
                            requiredMessage="Version is required." />
                        <p:separator />
                        <p:fileUpload onstart="submitVersion()"
                            fileUploadListener="#{remoteDeployment.upload}" update="messages" >
                            <f:attribute name="terminalSettings" value="#{as}" />
                        </p:fileUpload>


                        <p:remoteCommand name="submitVersion" process="@this vers" />

                    </h:form>
Run Code Online (Sandbox Code Playgroud)

输入文本的支持bean中的字符串:

@ViewScoped
    private String uploadedVersion;
    public String getUploadedVersion() {
        return uploadedVersion;
    }

    public void setUploadedVersion(String uploadedVersion) {
        this.uploade
Run Code Online (Sandbox Code Playgroud)

请帮忙,如果还有其他办法可以告诉我.

谢谢

Saj*_*ath 1

这对我有用。

<h:form enctype="multipart/form-data" id="uploadForm">
    <p:growl id="messages" showDetail="true"/>
    <p:outputLabel for="vers" value="File Version:"/>
    <p:inputText id="vers" name="vers"
                 value="#{remoteDeployment.uploadedVersion}" placeholder="1.x.x.x"
                 maxlength="17" required="true"
                 requiredMessage="Version is required."/>
    <p:separator/>
    <p:fileUpload fileUploadListener="#{remoteDeployment.upload}" update="messages">
        <f:attribute name="terminalSettings" value="#{as}" oncomplete="$('#uploadForm').submit()"/>
    </p:fileUpload>

</h:form>
Run Code Online (Sandbox Code Playgroud)