Bom dia 
Criei uma LinkedList para inserir ela numa tabela através do comando:
public ActionForward insert(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws WebActionException, GpbrBusinessException {
BusinessDelegate delegate = getBusinessDelegate();
Serializable serializable = null;
Collection persistCollection = new LinkedList();
SoftwareVO softwareVO = (SoftwareVO) ((PersistentObjectGenerate) form).getPersistentObj();
persistCollection.add(softwareVO);
persistCollection.addAll(softwareVO.getSoftwareFornecedor());
persistCollection.addAll(softwareVO.getSoftwareResponsavel());
persistCollection.addAll(softwareVO.getSoftwareUsuario());
try {
serializable = delegate.insert(persistCollection);
} catch (GpbrPersistException e) {
throw new WebActionException("Erro ao inserir registro", e);
} catch (GpbrBusinessException e) {
throw e;
}
persistedObject(mapping, form, request, response, serializable);
cleanSession(mapping, form, request);
request.setAttribute(BasicAction.MESSAGE_ATTRIBUTE, "Inclusão realizada com sucesso!");
return dispatch(mapping, form, request, response, CommandTypeConstants.INSERIR);
}
E no VO pai, a list está da seguinte maneira:
public class SoftwareVO extends ValueObject {
public Integer id;
private List softwareFornecedor;
public List getSoftwareFornecedor() {
return softwareFornecedor;
}
public void setSoftwareFornecedor(List softwareFornecedor) {
this.softwareFornecedor = softwareFornecedor;
}
public void setId(Integer id) {
if(softwareFornecedor != null) {
Iterator i = softwareFornecedor.iterator();
while(i.hasNext()) {
SoftwareFornecedorVO softwareFornecedor = (SoftwareFornecedorVO) i.next();
softwareFornecedor.setCodSoftware(id);
}
}
this.id = id;
}
public String[] getRelationshipAttributes() {
return new String[] {"softwareFornecedor"};
}
}
Tem também o VO filho, que é quem mapeia as variáveis para a tabela:
public class SoftwareFornecedorVO extends SoftwareVO {
public Integer codSoftware;
public Integer codFornecedor;
public Integer getCodSoftware(){
return codSoftware;
}
public void setCodSoftware(Integer codSoftware){
this.codSoftware = codSoftware;
}
public Integer getCodFornecedor() {
return codFornecedor;
}
public void setCodFornecedor(Integer codFornecedor){
this.codFornecedor = codFornecedor;
}
}
E no Form, está da seguinte maneira:
public class SoftwareForm extends FormBean {
private String id = "";
private String[] fornec;
public Serializable getPersistentObj() {
SoftwareVO softwareVO = new SoftwareVO();
List listSoftwareFornecedor = new ArrayList();
for(int i = 0; fornec != null && i < fornec.length; i++) {
String codFornecedor = fornec[i];
SoftwareFornecedorVO softwareFornecedor = new SoftwareFornecedorVO();
softwareFornecedor.setCodFornecedor(Integer.valueOf(codFornecedor));
listSoftwareFornecedor.add(softwareFornecedor);
}
softwareVO.setSoftwareFornecedor(listSoftwareFornecedor);
if (StringUtils.trimToNull(id) != null) {
softwareVO.setId(NumberUtils.createInteger(id));
}
return softwareVO;
}
public String getId() {
return id;
}
public void setId(String id){
this.id = id;
}
public String[] getFornec(){
return fornec;
}
public void setFornec(String[] fornec){
this.fornec = fornec;
}
}
Isso é o que eu faço para inserir, minha duvida é como que eu posso recuperar os dados da tabela e criar na Action, um método para que eles sejam recuperados e inseridos no “softwareFornecedor” novamente…
Valew
[]'s