Я пытаюсь добавить данные в базу данных в Grails, но получаю эту ошибку:
Ошибка 500: выполнение действия [getData] контроллера [mgr.CollectDataEntryController] вызвало исключение: groovy.lang.MissingMethodException: нет подписи метода: static groovy.lang.MissingMethodException.addToAlumConnectionEducations() применимо для типов аргументов: (mgr.AlumConnectionEducations) значения: [mgr.AlumConnectionEducations: null]
где CollectDataEntryController — контроллер, выполняющий работу. вот фрагмент кода из этого контроллера:
saveNewAlum.addToAlumConnectionEducations(new AlumConnectionEducations(alumConnectionsId:connectionId, degree:alumConnectionEduDegree,endDate:alumConnectionEduEndDate,fieldOfStdudy:alumConnectionEduFieldOfStudy,schoolName:alumConnectionEduSchoolName,startDate:alumConnectionEduStartDate))
домен, AlumConnectionEducations, принадлежит к отношениям «один ко многим» с другим доменом, AlumConnections, который, в свою очередь, относится к отношениям «один ко многим» с другим доменом, alumProfile.
в моем коде я сначала добавляю домен AlumConnection, который отлично работает, но когда я затем пытаюсь добавить AlumConnectionEducations, я получаю указанную выше ошибку. кто-нибудь знает, что я делаю неправильно?
спасибо Джейсон
package mgr
import java.util.Date;
class AlumConnections {
String linkedinId
String firstName
String lastName
String headline
String locationName
String locationCode
String industry
Date dateCreated
Date lastUpdated
long version
static belongsTo = [alumProfile:AlumProfile]
static hasMany = [
alumConnectionEducations : AlumConnectionEducations
]
static mapping = {
cache true
columns {
linkedinId type:'text'
firstName type:'text'
lastName type:'text'
headline type:'text'
locationName type:'text'
locationCode type:'text'
industry type:'text'
}
}
static constraints = {
linkedinId (nullable:false, blank:false)
firstName (nullable:true)
lastName (nullable:true)
headline (nullable:true)
locationName (nullable:true)
locationCode (nullable:true)
industry (nullable:true)
}
}
в контроллере, который вызывает домены:
def saveNewAlum = ""
saveNewAlum = new AlumProfile(firstName:linkedinFirstName, lastName:linkedinLastName, dob:newDate,industry:linkedinIndustry, oAuthToken:oAuthtoken, secretKey:secretKey)
saveNewAlum.addToAlumConnections(new AlumConnections(linkedinId:connectionId,firstName:connectionFName, lastName:connectionLName, headline:connectionHeadline, locationName:connectionLocationname, locationCode:connectionLocationCode,industry:connectionIndustry))
Приведенный выше код отлично работает и сохраняется в базе данных MySQL. только когда я пытаюсь создать saveNewAlum.addToAlumConnectionEducations, я получаю сообщение об ошибке
saveNewAlum
? Вы убедились, что это действительно экземплярAlumConnections
? - person Rob Hruska   schedule 22.07.2011