As was mentioned to you previously, at the very least you shouldn't use "#session..." as the name; you should just use "session" if you've implemented a getSession() method. That may be enough; can't test at the moment.
Dave --- On Fri, 9/19/08, 928572663 <[EMAIL PROTECTED]> wrote: > I am using Zero Configuration (annotations), so no > struts.xml necessary. > > ---------------- > formDetails.jsp > ---------------- > > <!DOCTYPE html PUBLIC "~//W3C//DTD XHTML 1.0 > Strict//EN" > "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> > > <%@ page contentType="text/html;charset=UTF-8" > language="java"%> > <%@ taglib prefix="s" > uri="/struts-tags"%> > > <html> > <head> > <title>IPSM struts2 Demo Form</title> > <link href="<s:url value > ='/css/main.css'/>" > rel="stylesheet" > type="text/css" /> > </head> > <body> > <h2> > <s:property value="message" /> > </h2> > > <s:actionerror /> > <s:form action="sample!submit" > method="post"> > > <s:checkbox > name="#session.formBean.requery" > label="Requery?" /> > > <s:textfield > name="#session.formBean.firstName" > value="%{#session.formBean.firstName}" > label="First Name" > size="16" /> > > <s:textfield > name="#session.formBean.maxValue" > value="%{#session.formBean.maxValue}" > label="Max Value" > size="10" /> (<s:property > value="%{#session.formBean.maxValueRangeMin}" > />-<s:property > value="%{#session.formBean.maxValueRangeMax}" > />) > > <s:textfield > name="#session.formBean.lastName" > value="%{#session.formBean.lastName}" > label="Last Night" > size="10" required="true" /> > > <s:label > key="#session.formBean.maxValueRangeMax" > label="Max Routes (Max)" /> > > <s:textarea label="Comment" > name="#session.formBean.comment" > cols="15" rows="8" /> > > <s:select > name="#session.formBean.selection" > value="%{#session.formBean.selection}" > label="Selection" > list="#session.formBean.picklist" > listKey="code" > listValue="label" /> > > <s:hidden name="target" > value="setme" /> > > <s:url var="back_button_url" > value="/images/back_button.gif" /> > <s:submit type="image" > src="%{#back_button_url}" label="" > cssClass="formButton" > > onclick="javascript:this.form.target.value='backButton'; > > this.form.submit();" /> > > <s:url var="next_button_url" > value="/images/next_button.gif" /> > <s:submit type="image" > src="%{#next_button_url}" label="" > cssClass="formButton" > > onclick="javascript:this.form.target.value='nextButton'; > > this.form.submit();" /> > > </s:form> > > </body> > </html> > > ---------------- > MyFormBean.jsp > ---------------- > > package sample; > > import java.util.ArrayList; > import java.util.List; > > public class MyFormBean > { > private boolean requery = true; > private String firstName = ""; > private String selection = ""; > private String lastName = ""; > private String comment = ""; > private int maxValue = 0; > > //~~~ items for GUI display purposes etc. > private final int maxValueRangeMin = 1; > private final int maxValueRangeMax = 263732; > private List<PicklistItem> picklist = null; > //~~~ > > public MyFormBean() > { > picklist = new ArrayList<PicklistItem>(); > picklist.add(new > PicklistItem("1","Item 1")); > picklist.add(new > PicklistItem("2","Item 2")); > picklist.add(new > PicklistItem("3","Item 3")); > picklist.add(new > PicklistItem("4","Item 4")); > picklist.add(new > PicklistItem("5","Item 5")); > } > > public boolean isRequery() > { > return requery; > } > > public void setRequery(boolean requery) > { > this.requery = requery; > } > > public String getFirstName() > { > return firstName; > } > > public void setFirstName(String firstName) > { > this.firstName = firstName; > } > > public String getSelection() > { > return selection; > } > > public void setSelection(String selection) > { > this.selection = selection; > } > > public String getLastName() > { > return lastName; > } > > public void setLastName(String lastName) > { > this.lastName = lastName; > } > > public String getComment() > { > return comment; > } > > public void setComment(String comment) > { > this.comment = comment; > } > > public int getMaxValue() > { > return maxValue; > } > > public void setMaxValue(int maxValue) > { > this.maxValue = maxValue; > } > > public List<PicklistItem> getPicklist() > { > return picklist; > } > > public void setPicklist(List<PicklistItem> > picklist) > { > this.picklist = picklist; > } > > public int getMaxValueRangeMin() > { > return maxValueRangeMin; > } > > public int getMaxValueRangeMax() > { > return maxValueRangeMax; > } > } > > ---------------- > PicklistItem.jsp > ---------------- > > package sample; > > > public class PicklistItem > { > private String code = ""; > private String label = ""; > > public PicklistItem(String aCode, String aLabel) > { > code = aCode; > label = aLabel; > } > > public String getCode() > { > return code; > } > > public void setCode(String code) > { > this.code = code; > } > > public String getLabel() > { > return label; > } > > public void setLabel(String label) > { > this.label = label; > } > } > > ---------------- > SampleAction.jsp > ---------------- > > package sample; > > > import java.util.Map; > > import org.apache.struts2.config.Result; > import org.apache.struts2.config.Results; > import org.apache.struts2.interceptor.SessionAware; > import org.apache.struts2.views.tiles.TilesResult; > > > import com.opensymphony.xwork2.ActionContext; > import com.opensymphony.xwork2.ActionSupport; > > @Results( > { > @Result(name = "displayFormPage", value = > "/formDetails.jsp"), > @Result(name = "homeError", value = > "/homeError.page", type = > TilesResult.class) > } ) > public class SampleAction extends ActionSupport implements > SessionAware > { > private String message = ""; > private String target = ""; > private MyFormBean formBean = new MyFormBean(); > > public void setSession(Map<String, Object> > session) > { > Object obj = session.get("formBean"); > if (obj == null) > { > session.put("formBean", formBean); > } > } > > public void setFormBean(MyFormBean formBean) > { > Map session = > (Map)ActionContext.getContext().get("session"); > session.put("formBean", formBean); > } > > public MyFormBean getFormBean() > { > Map session = > (Map)ActionContext.getContext().get("session"); > return > (MyFormBean)session.get("formBean"); > } > > public String displayForm() throws Exception > { > formBean = new MyFormBean(); > formBean.setComment("struts2 is cool"); > formBean.setFirstName("Linus"); > formBean.setLastName("Torvalds"); > formBean.setMaxValue(50); > > setFormBean(formBean); > > // Map session = (Map) > ActionContext.getContext().get("session"); > // session.put("formBean",formBean); > > return "displayFormPage"; > } > > public String submit() throws Exception > { > if (target != null > && target.length() > 0) > { > setMessage(target > + " was pressed."); > } > > // Map session = (Map) > ActionContext.getContext().get("session"); > // formBean = > (MyFormBean)session.get("formBean"); > > return "displayFormPage"; > } > > public String getMessage() > { > return message; > } > > public void setMessage(String message) > { > this.message = message; > } > > public String getTarget() > { > return target; > } > > public void setTarget(String target) > { > this.target = target; > } > } > > > > > Gabriel Belingueres wrote: > > Could you post your struts.xml, action and (one of > the) JSP? > > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: > [EMAIL PROTECTED] --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]