PDA

View Full Version : Trouble mapping InternetAddress[] in form



fbos
Aug 23rd, 2004, 09:56 PM
Hi,

I subclassed SimpleFormController, and my commandClass looks like this:

import javax.mail.internet.InternetAddress;

public class TellAFriendBean {
private InternetAddress[] email;
private String body;

// accessors
}

My JSP has the following:

<spring&#58;bind path="bean.email&#91;0&#93;">
...
</spring&#58;bind>

When I post the form, I get an ArrayStoreException:

java.lang.ArrayStoreException
at org.springframework.beans.BeanWrapperImpl.setPrope rtyValue&#40;BeanWrapperImpl.java&#58;553&#41;
at org.springframework.beans.BeanWrapperImpl.setPrope rtyValue&#40;BeanWrapperImpl.java&#58;540&#41;
at org.springframework.beans.BeanWrapperImpl.setPrope rtyValue&#40;BeanWrapperImpl.java&#58;642&#41;
at org.springframework.beans.BeanWrapperImpl.setPrope rtyValues&#40;BeanWrapperImpl.java&#58;669&#41;
at org.springframework.validation.DataBinder.bind&#40;Dat aBinder.java&#58;208&#41;
at org.springframework.web.bind.ServletRequestDataBin der.bind&#40;ServletRequestDataBinder.java&#58;77&#41;
at org.springframework.web.servlet.mvc.BaseCommandCon troller.bindAndValidate&#40;BaseCommandController.java &#58;257&#41;
at org.springframework.web.servlet.mvc.AbstractFormCo ntroller.handleRequestInternal&#40;AbstractFormControl ler.java&#58;235&#41;
at org.springframework.web.servlet.mvc.AbstractContro ller.handleRequest&#40;AbstractController.java&#58;119&#41;
at org.springframework.web.servlet.mvc.SimpleControll erHandlerAdapter.handle&#40;SimpleControllerHandlerAda pter.java&#58;45&#41;
at org.springframework.web.servlet.DispatcherServlet. doService&#40;DispatcherServlet.java&#58;389&#41;
at org.springframework.web.servlet.FrameworkServlet.s erviceWrapper&#40;FrameworkServlet.java&#58;339&#41;
at org.springframework.web.servlet.FrameworkServlet.d oPost&#40;FrameworkServlet.java&#58;325&#41;
...

So, I added a PropertyEditor that knows how to transform a single String to InternetAddress, but that doesn't seem to help.

Should I create a PropertyEditor that transforms from String[] to InternetAddress[] ?

Thanks !
François