는 리프트 프레임 워크에서 간단한 양식 및 양식을 처리하는 렌더링 방법 클래스있다 : 트리거 방법을 들어야하는 이유는 무엇입니까?
def render(xhtml:NodeSeq) = {
var name = ""
var role = ""
var human = ""
def register = {
val person = new Person
person.name = name
person.role = role
person.human = if (human == "yes") "true" else "false"
model.create(person)
S.redirectTo("/index")
}
bind("user",
xhtml,
("name" -> SHtml.text(name, name = _)),
("role" -> SHtml.text(role, role = _)),
("human" -> SHtml.text(human,human = _)),
("submit" -> SHtml.submit("Register",register)))
}
내가 예를 들어,이 예제를 실행
. 내가 오류 다음 얻을 따라 형태 바인더 제본 된 URL에 액세스 : 등록 방법은 실행되었는지도 제출에 더 클릭 그냥 URL에 액세스, 거기에없는 것처럼 는Message: java.lang.ClassCastException: java.lang.String cannot be cast to java.lang.Number
...
...
...
epsilon.sjbs.CrudModel$class.create(Sjbs.scala:14)
epsilon.sjbs.PersonModel.create(Sjbs.scala:7)
epsilon.snippet.PersonSnippet.register$1(Snippet.scala:33)
epsilon.snippet.PersonSnippet.render(Snippet.scala:41)
이 보인다. 왜?
편집 : pr1001이 person.human 부울 될 가능성이 썼던 것처럼이 내 원래 개체
@NamedQuery(name = "findAll", query = "select x from Person x")
@Entity class Person extends Id with Name{
@OneToMany(mappedBy="person", cascade=Array(CascadeType.REMOVE))
var participated:java.util.List[Participant] = new java.util.ArrayListParticipant
var role:String = Role.User
var human:String = _
}
하지만 심각하게 CastException 문제를 해결했으며 이제 페이지에 대한 액세스가 즉각적으로 "/ index"로 리디렉션됩니다. – coubeatczech