hi all,
i'm just wondering if someone could help me with my struts pulldown menu problem.... i'm trying to convert my multibox to a pulldown menu... the user can only choose 1 driver...
thanks in advance!
- @
i have this multibox:
<logic:notEmpty name="processFilterFormBea
n" property="driverlist">
<logic:iterate name="processFilterFormBea
n" property="driverlist" id="driver">
<tr>
<td>
<html:multibox name="driver" property="selecteddriverid
">
<bean:write name="driver" property="drivername"/>
</html:multibox>
<bean:write name="driver" property="drivername" />
</td>
</tr>
</logic:iterate>
</logic:notEmpty>
that i want to make into a pulldown menu...
i've tried doing the several <html:select>/<html:option
sCollectio
n> tutorials i found online but i can't make it work and i would really appreciate your help guys...
--------------------------
----------
---
here's what my struts-config.xml looks:
--------------------------
----------
---
<action-mappings>
<action path="/maintenance" type="com.webtest.resource
s.Maintena
nceAction"
name="processFilterFormBea
n" scope="request">
<forward name="start" path = "/WEB-INF/pages/Maintenanc
e.jsp"/>
</action>
</action-mappings>
<form-beans>
<form-bean name="processFilterFormBea
n" type="com.webtest.resource
s.ProcessF
ilterFormB
ean">
</form-bean>
</form-beans>
--------------------------
----------
---
here's my Form Bean:
--------------------------
----------
---
public class ProcessFilterFormBean extends ActionForm {
private Collection driverlist;
private String[] selecteddriverid;
private String driverid = "";
private String drivername = "";
// for driver list
public void setDriverlist(Collection driverlist){
this.driverlist = driverlist;
}
public Collection getDriverlist(){
return driverlist;
}
public String[] getSelecteddriverid(){
return selecteddriverid;
}
public void setSelecteddriverid(String
[] driverid){
this.selecteddriverid = driverid;
}
public void reset(ActionMapping mapping, HttpServletRequest request) {
driverlist = new ArrayList();
}
public ActionErrors validate(
ActionMapping mapping,
HttpServletRequest request) {
ActionErrors errors = new ActionErrors();
return errors;
}
}
--------------------------
----------
---
here's my action class:
--------------------------
----------
---
public class MaintenanceAction extends Action {
public ActionForward execute(
ActionMapping mapping,
ActionForm form,
HttpServletRequest request,
HttpServletResponse response)
throws Exception {
ActionErrors errors = new ActionErrors();
ActionForward forward = new ActionForward();
ProcessFilterFormBean pfbean = (ProcessFilterFormBean) form;
//call the DB
SimulateDB simulateDB = new SimulateDB();
pfbean.setDriverlist(simul
ateDB.getD
riverlist(
request.ge
tSession()
));
return (mapping.findForward("star
t"));
}
}
--------------------------
----------
---
here is my SimulateDB:
--------------------------
----------
---
public class SimulateDB {
private String drivername;
private Collection dlist;
private String result;
private void init(HttpSession session) {
//test data while DB is not yet ready
dlist = new ArrayList();
dlist.add(new Driver("CCMP", "Suspense", false));
dlist.add(new Driver("EXALL", "Exclusion Indicator", false));
dlist.add(new Driver("EXSUB", "Exclusion Subscriber", false));
dlist.add(new Driver("MAIL", "Mail to Option", false));
dlist.add(new Driver("PTD", "Paid to Date", false));
dlist.add(new Driver("SUSP", "Suspense Days", false));
dlist.add(new Driver("TERM", "Termination Days", false));
dlist.add(new Driver("OTHER", "Other", false));
session.setAttribute("driv
erDB", dlist);
//another set..trying LabelValueBean
ArrayList dlist2 = new ArrayList();
dlist2.add(new org.apache.struts.util.Lab
elValueBea
n("CCMP", "Suspense"));
dlist2.add(new org.apache.struts.util.Lab
elValueBea
n("EXALL",
"Exclusion Indicator"));
dlist2.add(new org.apache.struts.util.Lab
elValueBea
n("EXSUB",
"Exclusion Subscriber"));
dlist2.add(new org.apache.struts.util.Lab
elValueBea
n("MAIL", "Mail to Option"));
dlist2.add(new org.apache.struts.util.Lab
elValueBea
n("PTD", "Paid to Date"));
dlist2.add(new org.apache.struts.util.Lab
elValueBea
n("SUSP", "Suspense Days"));
dlist2.add(new org.apache.struts.util.Lab
elValueBea
n("TERM", "Termination Days"));
dlist2.add(new org.apache.struts.util.Lab
elValueBea
n("OTHER",
"Other"));
session.setAttribute("fulf
illment_dr
ivers", dlist2);
}
private void loadData(HttpSession session) {
dlist = (Collection) session.getAttribute("driv
erDB");
if (dlist == null || elist == null)
init(session);
}
public String getDrivername(HttpSession session) {
loadData(session);
return drivername;
}
public void loadDriverlist(HttpSession
session){
//put them in our session
dlist = (Collection) session.getAttribute("driv
erDB");
if (dlist == null)
init(session);
}
public Collection getDriverlist(HttpSession session) {
loadDriverlist(session);
return dlist;
}
}
--------------------------
----------
---
here's my Driver class:
--------------------------
----------
---
public class Driver {
private String driverid = "";
private String[] selecteddriverid;
private String drivername = "";
public Driver(){}
public Driver(String driverid, String drivername, boolean checked){
this.driverid = driverid;
this.drivername = drivername;
}
public void setDriverid(String driverid){
this.driverid = driverid;
}
public String getDriverid(){
return driverid;
}
public String[] getSelecteddriverid(){
return selecteddriverid;
}
public void setSelecteddriverid(String
[] driverid){
this.selecteddriverid = driverid;
}
public void setDrivername(String drivername){
this.drivername = drivername;
}
public String getDrivername(){
return drivername;
}
}
Start Free Trial