Thanks, for the information, I was an aspect of Struts2 I have not yet learned.
So I do, and it is very interesting.
I tried to go this way for my problem.
My Action class : public class myAction implements ModelDriver<User>;
My User class from another java package : public class User { public String
getStreetAddress(); public void setStreetAddress(String value); }
I create a file : src/org/another/java/package/User-conversion.properties
containing : streetAddress=org.myapp.conversion.AddressConverter
My converter class is :
public class AddressConverter extends StrutsTypeConverter {
@Override
public Object convertFromString(Map arg0, String[] arg1, Class arg2) {
// TODO
return null;
}
@Override
public String convertToString(Map arg0, Object arg1) {
StringBuffer strbuf = new StringBuffer();
if (arg1 instanceof String[]){
String[] addr = (String[])arg1;
for (int i=0; i<addr.length; i++){
strbuf.append(addr[i]);
strbuf.append("\r\n");
}
return strbuf.toString();
}
return null;
}
}
My JSP file is :
<s:form>
<s:textfield key="address.streetAddress" id="streetAddress1"
name="address.streetAddress" />
<s:textfield key="address.streetAddress" id="streetAddress2"
name="address.streetAddress" />
</s:form>
When submitting the form, convertToString() is called and conversion is done.
#streetAddress1=line1,#streetAddres2=line2 -> convertToString() -> return
"line1\r\nline2\r\n" -> User.setStreetAddress("line1\r\nline2\r\n");
My problem is now when returning info the form, when prepopulating form field.
The convertToString() is called (I was thinking I will be the other one
convertFromString() but not). And so I am not able to split my
User.getStreetAddress() value in order to put value into the String[].
Matthieu MARC
----
Matthieu MARC
Service Informatique
Arts et Métiers ParisTech - Centre d'Angers
[email protected]
________________________________________
De : Maurizio Cucchiara [[email protected]]
Date d'envoi : jeudi 17 février 2011 10:41
À : Struts Users Mailing List
Objet : Re: RE: Multiple field and modelDriven
I'm not sure, maybe type conversion is the answer to your question.
Have you already seen this [1]?
[1] http://struts.apache.org/2.2.1/docs/type-conversion.html
Maurizio Cucchiara
Il giorno 17/feb/2011 10.36, <[email protected]> ha scritto:
> My User Class came from another java library which bind User class to an
Active Directory User. I would like to find a solution without modifying
this java library.
>
> ... but If there is no solution, I will modify my User class.
>
> Matthieu MARC
>
>
> -----Message d'origine-----
> De : Maurizio Cucchiara [mailto:[email protected]]
> Envoyé : jeudi 17 février 2011 10:31
> À : Struts Users Mailing List
> Objet : Re: Multiple field and modelDriven
>
> Pardon, I didn't see model driven stuff.
> Have you tryied to change your address field to an array string or a
simple collection?
>
> Maurizio Cucchiara
>
> Il giorno 17/feb/2011 09.07, <[email protected]> ha scritto:
>> Hi everybody,
>>
>> I have a class named User which contain some information about user .
>>
>> I have made a form in my JSP and an action which is modelDriven with
>> my
> User class.
>>
>> Public class User implements modelDriven<User>{}...
>>
>> My question is about multiple field with same id in my JSP. My User
>> class
> have a field named streetaddresses (which is linked with an active
directory field of the same name). In my form, I want to put 3 input field
for streetaddresses (streetaddresses line 1, streetaddresses line2 and
streetaddresses line3).
>> If I do this, the three field will be concatenated using comma (line1,
> line2, line3)
>>
>> Is there a way to change the separator comma with another thing (like
> \r\n) ? (line1\r\nline2\r\nline3)
>>
>> And will it will prepopulate the three field splitting the
> getStreetAddresses field using the separator when I will want to make a
form to modify informations ?
>>
>> Streetaddresses = line1\r\nline2\r\nline3\r\n -> streetaddresses line1
>> =
> line1 -> streetaddresses line2 = line2....
>>
>> Thanks
>>
>> Matthieu MARC
>>
>> ------
>> [email protected]<mailto:[email protected]>
>> Responsable du Service Informatique
>> Arts et Métiers ParisTech - Angers
>>
>
> ---------------------------------------------------------------------
> 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]