I am trying to send an id from one action to another and it seems to be
sending a null.  Please assist and I am really at my wits end with this.
How do I get the formId from the Listing to the QuestionListing?

startInformation has a yourForm=41, when I click the Begin button I get the
redirect to Questions.action with a null formId as shown...

http://localhost:8080/IUNSurvey/survey/Questions.action?formId=

startInformation.jsp has a button that calls redirect:

<s:form action="beginQuestions">
...
<s:submit type="submit" value="Begin" align="right"/>


struts.xml

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC
    "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
    "http://struts.apache.org/dtds/struts-2.0.dtd";>

<struts>
    <constant name="struts.devMode" value="true" /> <!-- set to false for
prod -->

    <package name="" namespace="/survey" extends="struts-default">
        <action name="Listing" class="actions.survey.Listing"
method="display">
            <result name="none">/views/survey/Listing.jsp</result>
        </action>

        <action name="startInformation" class="actions.survey.Listing">
            <result
name="success">/views/survey/startInformation.jsp</result>
        </action>

        <action name="beginQuestions" class="actions.survey.Listing"
method="beginQuestions">
            <result name="redirect" type="redirectAction">
                <param name="actionName">Questions</param>
                <param name="parse">true</param>
                <param name="formId">${yourForm}</param>
            </result>
        </action>

        <action name="Questions" class="actions.survey.QuestionListing">
            <result name="none">/views/survey/Questions.jsp</result>
        </action>

    </package>
</struts>

exerpt from Listing.java

    public String execute() {
        selectedForm = services.getFormsById(yourForm);
        return SUCCESS;
    }

    public String display() {
        forms = services.getForms();
        return NONE;
    }

    public String beginQuestions() {
        return "redirect";
    }

    /**
     * @return the yourForm
     */
    public Long getYourForm() {
        return yourForm;
    }


exerpt from QuestionListing.java

I have a getter/setter for formId

    public String execute() {
        currentQuestion = (services.getQuestionsByForm(getFormId()));
        return SUCCESS;
    }

    public String display() {
        setCurrentQuestion(services.getQuestionsByForm(getFormId()));
        return NONE;
    }
    public void setFormId(Long formId) {
        this.formId = formId;
    }

    public Long getFormId() {
        return formId;
    }

Reply via email to