• Post Reply Bookmark Topic Watch Topic
  • New Topic
programming forums Java Mobile Certification Databases Caching Books Engineering Micro Controllers OS Languages Paradigms IDEs Build Tools Frameworks Application Servers Open Source This Site Careers Other Pie Elite all forums
this forum made possible by our volunteer staff, including ...
Marshals:
  • Campbell Ritchie
  • Paul Clapham
  • Ron McLeod
  • Jeanne Boyarsky
  • Tim Cooke
Sheriffs:
  • Liutauras Vilda
  • paul wheaton
  • Henry Wong
Saloon Keepers:
  • Tim Moores
  • Tim Holloway
  • Stephan van Hulst
  • Carey Brown
  • Frits Walraven
Bartenders:
  • Piet Souris
  • Himai Minh

Dynamic radio buttons matrix using Struts

 
Greenhorn
Posts: 11
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Hello, I�ve a problem, please if somebody could help me I�ll really appreciate it.

I have a dynamic matrix with radio buttons, only the number of rows could change. The matrix is as follows, it has 4 static columns of radio buttons and for each row I can select only one (radio button):

Skill 1OOOO
Skill 2OOOO
Skill 3OOOO
Skill nOOOO

How could I store the selected radio buttons in the ActionForm? Whichever information you have that it could help me, I�d really appreciate it.
 
Sheriff
Posts: 16933
285
Mac Android IntelliJ IDE Eclipse IDE Spring Debian Java Ubuntu Linux
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Try using Indexed properties. Post again if you have trouble using them.
 
Adolfo Gonzalez
Greenhorn
Posts: 11
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Thanks, it's working now
 
Adolfo Gonzalez
Greenhorn
Posts: 11
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Hi,

I get this error when sending the parameters to action that saves the
information in tha database, the creation of the form is successfull.

Any ideas, about how to name the getters/setters for the indexed
properties.

This is part of the ActionForm code:



public class CaSkillAssessmentForm extends ActionForm
{

/******************************************************************************
Attributes
******************************************************************************/

/**
* Skills with Scope
*/
private Vector skillsWithScore = new Vector();


/******************************************************************************
Accessors
******************************************************************************/

/**
* Get skillsWithScope
* @return Collection
*/
public CbSkill getSkillsWithScoreIndexed(int index)
{
return (CbSkill) skillsWithScore.get(index);
}
/**
* Get skillsWithScope
* @return Collection
*/
public Vector getSkillsWithScore()
{
return skillsWithScore;
}

/**
* Set skillsWithScope
* @param <code>int</code>
* @param <code>Collection</code>
*/
public void setSkillsWithScoreIndexed(int index, CbSkill paramSkillsWithScore)
{
skillsWithScore.add(index, paramSkillsWithScore);
}

/**
* Set skillsWithScope
*
* @param paramSkills
*/
public void setSkillsWithScore(Vector paramSkills)
{
skillsWithScore = paramSkills;
}

/******************************************************************************
Public Operations
******************************************************************************/
public void reset(ActionMapping mapping, HttpServletRequest request)
{

skillsWithScore = null;

}

public ActionErrors validate(
ActionMapping mapping,
HttpServletRequest request)
{

ActionErrors errors = new ActionErrors();

return errors;

}
}


This is the jsp:

<logic:iterate id="skills" name="caSkillAssessmentForm" property="skillsWithScore" indexId="index">
<tr valign="middle" class="datatablecolor2">
<td class="tdleft">
<bean:write name="skills" property="name"/>
</td>
<td class="tdleft">
<html:radio property="<%= \"skillsWithScoreIndexed[\"+ index+\"].scoreId\"%>" value="1"/>
</td>
<td class="tdleft">
<html:radio property="<%= \"skillsWithScoreIndexed[\"+ index+\"].scoreId\"%>" value="2"/>
</td>
<td class="tdleft">
<html:radio property="<%= \"skillsWithScoreIndexed[\"+ index+\"].scoreId\"%>" value="3"/>
</td>
<td class="tdleft">
<html:radio property="<%= \"skillsWithScoreIndexed[\"+ index+\"].scoreId\"%>" value="4"/>
</td>
</tr>
</logic:iterate>
 
Adolfo Gonzalez
Greenhorn
Posts: 11
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Sorry this is the error


SRVE0026E: [Servlet Error]-[BeanUtils.populate]: java.lang.reflect.InvocationTargetException
at sun.reflect.GeneratedMethodAccessor129.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java(Compiled Code))
at java.lang.reflect.Method.invoke(Method.java(Compiled Code))
at org.apache.commons.beanutils.PropertyUtils.getIndexedProperty(PropertyUtils.java:493)
at org.apache.commons.beanutils.PropertyUtils.getIndexedProperty(PropertyUtils.java:428)
at org.apache.commons.beanutils.PropertyUtils.getNestedProperty(PropertyUtils.java:770)
at org.apache.commons.beanutils.PropertyUtils.getProperty(PropertyUtils.java:801)
at org.apache.commons.beanutils.BeanUtils.setProperty(BeanUtils.java:881)
at org.apache.commons.beanutils.BeanUtils.populate(BeanUtils.java:808)
at org.apache.struts.util.RequestUtils.populate(RequestUtils.java:1252)
at org.apache.struts.action.RequestProcessor.processPopulate(RequestProcessor.java:821)
at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:254)
at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1482)
at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:525)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
 
Do not meddle in the affairs of dragons - for you are crunchy and good with ketchup. Crunchy tiny ad:
Free, earth friendly heat - from the CodeRanch trailboss
https://www.kickstarter.com/projects/paulwheaton/free-heat
reply
    Bookmark Topic Watch Topic
  • New Topic