Tengo un proyecto donde estoy combinando estas 3 tecnologias Struts 2 , JPA y Spring
En la base de datos tengo 2 tablas la cual tengo relacion 1:N la cual muestro.
tabla: actividad
idActividad
responsable
fk_torre
tabla: torre
idTorre
nombreTorre
La relacion es el campo idTorre de la table torre al campo fk_torre de la tabla actividad hasta aqui todo bien. En mi Jsp tengo un formulario donde tengo lo siguiente:
Código PHP:
<s:form action="altaFormulario.action" >
<s:textfield name="responsable" label="Responsable" />
<s:select name="torre" label="Seleccionar Torre" list="#{'1':'Technology Integration Middleware' , '2':'Intel' , '3':'Storage' , '4':'Backup and Restor' , '5':'Mainframe' ,'6':'DB2' , '7':'Sybase' , '8':'Oracle' , '9': 'AIX OS' }" headerKey="-1" headerValue="Seleccionar Torre" />
<s:submit value="Enviar" />
</s:form>
Actividad.java
Código PHP:
package com.main.dto;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.Table;
@Entity
@Table(name="actividad")
public class Actividad {
@Id
@GeneratedValue
private int idActividad;
private String responsable;
private String proyecto;
private String fechaCompromiso;
private String issues;
private String comentarios;
@ManyToOne
@JoinColumn(name="fk_torre" , nullable= false )
private Torre torre;
public Actividad ()
{
}
Código PHP:
package com.main.dto;
import java.util.List;
import javax.persistence.CascadeType;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import javax.persistence.OneToMany;
import javax.persistence.Table;
@Entity
@Table(name="torre")
public class Torre {
@Id
@GeneratedValue
private int idTorre;
private String nombreTorre;
@OneToMany (cascade = CascadeType.ALL , mappedBy = "torre" )
List<Actividad> actividad;
Código PHP:
dvertencia: Error setting expression 'torre' with value '[Ljava.lang.String;@a8c62a'
ognl.MethodFailedException: Method "setTorre" failed for object com.main.dto.Actividad@13861fb [java.lang.NoSuchMethodException: com.main.dto.Actividad.setTorre([Ljava.lang.String;)]