Richfaces Rendern mit a4j:ajax

Ich habe eine Seite mit rich:fileUpload und ein a4j:commandButton was ich erreichen will ist, das erste mal die Seite geladen wird die fileUpload-SC angezeigt(gerendert werden, meine backingBean Standardwert ist true und so macht es richtig) und, wenn der Benutzer trifft die Befehlsschaltfläche, ich würde lieben, Sie zu verstecken, der fileUpload und zeigen eine outputText (dies ist nicht passiert, kein Fehler überhaupt)

Wie kann ich dieses Problem lösen, meine pagelooks wie

    <div id="content">
        <a4j:outputPanel id="contentForm">
            <h:form enctype="multipart/form-data"
                    rendered="#{uploadBean.formRendered}">

                <br/><br/>

                <h:selectOneRadio value="#{uploadBean.selectedOption}">
                    <f:selectItems value="#{uploadBean.loadOptions}"/>
                </h:selectOneRadio>

                <br/>

                <rich:fileUpload addLabel="Agregar" clearAllLabel="Quitar todos"
                                 clearLabel="Quitar" deleteLabel="Quitar"
                                 doneLabel="Completado" uploadLabel="Subir archivos"
                                 fileUploadListener="#{uploadBean.doUpload}"
                                 acceptedTypes="txt, csv"
                                 noDuplicate="true"/>

                <a4j:commandButton value="Iniciar validación"
                                   action="#{uploadBean.doLaunchProcess}"
                                   render="processLabel"
                                   execute="@form"
                                   />

            </h:form>
        </a4j:outputPanel>
        <a4j:outputPanel id="processLabel">
            <h:outputText
                value="#{uploadBean.processStarted}"
                rendered="#{not uploadBean.formRendered}"/>
        </a4j:outputPanel>
    </div>

und den code von der Aktion der Befehlsschaltfläche wird:

public String doLaunchProcess() {
    formRendered = false;
    InfoValidator iv = new InfoValidator(loadOptions, 
            selectedOption, userBean.getDependencia(), 
            userBean.getTipoDependencia(), userBean.getUsuario(),
            userBean.getIdUsuario(), userBean.getEmail());
    iv.start();
    return "carga-archivos";
}

Scheint, dass formRendered ist immer wahr ausgewertet, wenn ich will, dass es falsch ist, sobald ein Benutzer auf die Schaltfläche klickt und so die fileUpload versteckt und zeigen die outputText.

UPDATE
Im Grunde, was ich will, ist das hochladen von Dateien ein, wenn der Benutzer auf die Schaltfläche klickt die fileUpload-Komponente verschwindet und ein outputText angezeigt, und sagte etwas wie "vielen Dank für das hochladen"

Vielleicht ist mein Ansatz falsch ist, stecken Sie mich einfach in die richtige Richtung, ich bin eine Art zu verwechseln mit der ajax-Zeug.

Cheers,

was ist, wenn Sie versuchen rerender="processLabel" anstatt render="processLabel"
die a4j:commandButton keine reRender Attribut. Ich bin mit richfaces 4.1 und Mojarra 2.1.6 und Tomcat
ich denke, es unterstützt cas war ich mit:) überprüfen Sie Bitte stackoverflow.com/a/2243473/706695 oder docs.jboss.org/richfaces/latest_3_3_X/en/devguide/html/...
Ich denke reRender wurde ersetzt durch nur render... denke ich. Vielen Dank für Ihre Hilfe though.
glücklich, das problem zu lösen:)

InformationsquelleAutor BRabbit27 | 2012-02-02

Schreibe einen Kommentar