0

以下は私のバッキングビーンです:

@Component("resume")
@Scope("session")
@Document
public class Resume implements ResumePlan,Serializable {

    private static final long serialVersionUID = -5332235643191283709L;

    @Id
    private String id;

    @DBRef
    private Objective objective;
    @DBRef
    private PersonalDetails personalDetails;
   .....
   //getter and setters
   .....
        public String putResumeToDB()
    {

        System.out.println("HELOOOOOOOOOOOOOOOOOOOOOOOOOOO"+this);

        return "Success";

    }
    ..........
}

以下はjsfファイルです。

    <h:form>
                <p:panel id="panel" header="Personal Details">

                    <p:messages id="msgs" />
                    <h:panelGrid columns="3">
                        <h:outputLabel for="objective" value="Objective: " />
                        <p:inputTextarea id="objective" rows="2" cols="80"
                            counter="counter0" maxlength="100"
                            value="#{resumeBuilder.resume.objective.objective}"
                            counterTemplate="{0} characters remaining." autoResize="false">

                        </p:inputTextarea>


                        <h:outputText id="counter0" /> 

                        <h:outputLabel for="name" value="Name: *" />
                        <p:inputText id="name"              
                            value="#{resumeBuilder.resume.personalDetails.name}"
                            required="true">
                            <f:validateLength minimum="8" />
                        </p:inputText>
                        <p:message for="name" display="icon" />

.............


                        </h:panelGrid>

                <p:commandButton id="btn" value="Save" 
                        action="#{resume.putResumeToDB}" >

                        </p:commandButton>
                </p:panel>

            </h:form>

私のサーバーはtomcat7です。

フォームに値を入力し、System.out.println をチェックしてバッキング Bean の値を確認すると、次のようになります。

HELOOOOOOOOOOOOOOOOOOOOOOOOOOOResume [id=null, objective=null, personalDetails=null, skills=null, experience=null, education=null, references=null, publications=null]

フォームにすべての値を入力すると、バッキング Bean が空になるのはなぜですか。私は何を間違っていますか?mongodb でのデータの永続化にスプリング データを使用しています。faces-config.xml で el-resolver エントリを作成しました

<el-resolver>
                org.springframework.web.jsf.el.SpringBeanFacesELResolver
        </el-resolver>

また、web.xml には次のエントリがあります。

<listener>
    <listener-class>
        org.springframework.web.context.ContextLoaderListener
    </listener-class>
  </listener>
  <listener>
    <listener-class>
        org.springframework.web.context.request.RequestContextListener
    </listener-class>
  </listener>

ありがとう

4

0 に答える 0