struts-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Gaurav Gupta" <gaurav.gu...@tatainfotech.com>
Subject RE: javax.servlet.ServletException: BeanUtils.populate
Date Sat, 27 Sep 2003 10:47:30 GMT
Is it Krishna Mohan , previously with MTC India ??

sorry for botheration



-----Original Message-----
From: krishnamohan [mailto:krishnamohan@indosoft.stph.net]
Sent: Saturday, September 27, 2003 3:56 PM
To: struts-user@jakarta.apache.org
Subject: javax.servlet.ServletException: BeanUtils.populate


Hi,
I am writing a small page based on struts guidelines for creating map-backed
forms. I am using struts 1.1. I have a jsp in which I have some dynamic
fields. I used a for loop for these,currently. In the ActionForm, I have
declared a HashMap for collecting values of these fields. However, when I
submit the page, I am getting the error- javax.servlet.ServletException:
BeanUtils.populate Root cause: java.lang.IllegalArgumentException: No bean
specified. Pl. help me understand what went wrong.


The following is the jsp page
<%@ page language="java" session="true"%>
<!-- Imports-->
<%@ taglib uri="/WEB-INF/struts-bean.tld" prefix="bean" %>
<%@ taglib uri="/WEB-INF/struts-html.tld" prefix="html" %>
<%@ taglib uri="/WEB-INF/struts-logic.tld" prefix="logic" %>
<html:html locale="true">
<!--Apply Stylesheet--> <head>
<link href="./layouts/PrimeCss.css" type="text/css" rel="stylesheet">
</head>
<body norepeat bottommargin="0" leftmargin="0" rightmargin="0" topmargin="0"
bgproperties="fixed">
<html:form action="/createQuestion" focus="questionName"
name="createQuestionForm"
type="com.trx.kms.questionbank.CreateQuestionForm">
<bean:message key="questionbank.createquestion.pagetitle"/>

<bean:message key="questionbank.createquestion.name"/> <html:text
property="questionName" style="width:195px" maxlength="100"/>
<bean:message key="questionbank.createquestion.description"/> <html:textarea
property="questionDesc" cols="65" rows="12"/>
<% for (int i=0; i <=2; i++) { String name = "value(foo-" + i + ")"; %>
<bean:message key="questionbank.createquestion.option"/> <html:text
property="<%= name %>" />

<%} %> <html:image page="/layouts/submit.jpg" property="submit"
onclick="onSubmitClick();"/> <html:image page="/layouts/cancel.jpg"
property="reset" />
</html:form> </body> </html:html>

The following is the ActionForm class

package com.trx.kms.questionbank; import
javax.servlet.http.HttpServletRequest;
import org.apache.struts.action.ActionErrors;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionMapping;
import java.util.HashMap;
import java.util.Map;
import java.util.Iterator;


public final class CreateQuestionForm extends ActionForm{
private String questionName=null;
private String questionDesc=null;
private String submit=null;
private String reset=null;
private final Map values = new HashMap();


public void setValue(String key, Object value) {
values.put(key, value); }
public Object getValue(String key) {
return values.get(key); }
public String getQuestionDesc() {
return questionDesc; }
public String getQuestionName() {
return questionName; }
public void setQuestionDesc(String string) {
questionDesc = string; }
public void setQuestionName(String string) {
questionName = string; }
public String getReset() {
return reset; }
public String getSubmit() {
return submit; }
public void setReset(String string) {
reset = string; }
public void setSubmit(String string) {
submit = string; }


public String getQuestions()
{
StringBuffer sb = new StringBuffer();
if ((values!=null && !values.isEmpty())) {
Iterator it = values.keySet().iterator();
while (it.hasNext()) {
String paramName = (String)it.next();
String paramValue = (String)values.get(paramName);
sb.append(paramName);
sb.append(paramValue);
} } return sb.toString();
}


public void reset(ActionMapping mapping, HttpServletRequest request) {
this.questionName=null;
this.questionDesc=null;
}


public ActionErrors validate(ActionMapping mapping, HttpServletRequest
request) {
ActionErrors errors = new ActionErrors();
return errors; } }


The following is the action class


package com.trx.kms.questionbank;
import org.apache.struts.action.Action;
import org.apache.struts.action.ActionErrors;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;
import javax.servlet.http.*;
import javax.servlet.*;
import java.io.IOException;
import java.util.HashMap;
import java.util.Map;
import java.util.Iterator;

public final class CreateQuestionAction extends Action {
public ActionForward execute(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response) throws
IOException, ServletException {
String questions=((CreateQuestionForm)form).getQuestions();
ActionErrors errors = new ActionErrors();
if (!errors.isEmpty()) {
saveErrors(request, errors);
return (new ActionForward(mapping.getInput())); }
return (mapping.findForward("success")); }
}



---------------------------------------------------------------------
To unsubscribe, e-mail: struts-user-unsubscribe@jakarta.apache.org
For additional commands, e-mail: struts-user-help@jakarta.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: struts-user-unsubscribe@jakarta.apache.org
For additional commands, e-mail: struts-user-help@jakarta.apache.org


Mime
View raw message