내가 개찰구 6.1 사용하고 난 내 페이지 흐름이 더 좋은, 더 북마크 된 URL의이 있는지 확인하는 방법을 알아 내려고 노력하고 있어요로 유형 안전 페이지 생성자를 매핑. 나는 다음과 같은 코드가개찰구 : 읽을 수있는 URL
class SearchResultsPage extends WebPage {
public SearchResultsPage(SearchResultsModel model) {
// display the data in the model
}
}
페이지로 이동하려면 :
AjaxButton ajaxButton = new IndicatingAjaxButton("ajaxbutton") {
@Override
protected void onSubmit(AjaxRequestTarget target, Form<?> form) {
SearchResultsModel results = search(kriteriamodel)
getRequestCycle().setResponsePage(new SearchResultsPage(results));
}
@Override
protected void onError(AjaxRequestTarget target, Form<?> form) {
target.add(feedback);
}
};
을 지금은 도달하면
나는 많은, 그래서 내 코드는 일반적으로 다음과 같이 표시됩니다 유형 안전 생성자를 사용 결과 페이지 내 URL이의 SearchResult처럼 보일 것인가?
내가 좋아하는 것 (5)는 URL에 검색 매개 변수를 인코딩 할 수 있도록하는 사용자 나중에 referal에 대한 북마크 할 수 있었다.
나는 내가 PageParameters 맵을 사용하여 수동으로 그 구조에서 내 개체를 매핑 할 수 있음을 알고 있습니다. 그러나 나는 더 우아한 솔루션을 찾고 있습니다.
- 은 내 페이지 또는 모델 페이지가 더 북마크 된 있도록 구현해야한다는 일부 영리한 인터페이스에 대한 포인터를 찾고 있어요.
- 예도 좋습니다. 페이지/모델에
- 이상적으로 만 코드를 변경해야합니다.
감사합니다. 내가 할 것이 무엇
너의 실용적인 솔루션입니다. 나는 당신에게 그것을 준다. 나는 자동화 된 솔루션을 찾고 있지 않다. 어느 시점에서 내 객체를 페이지 매개 변수에 매핑해야한다는 것을 알고 있습니다. 하지만 나는 _elegant_ 솔루션을 원했습니다. 내 페이지가 구현할 수있는 페이지 및/또는 일부 인터페이스를 탑재하는 영리한 방법. 나는 정적 메서드를 경멸하고 당신의 솔루션으로 좋은 타입의 정적 메서드 인 instad를 호출해야한다는 것을 기억해야한다. –
내가 찾던 것이 아니었지만 어쨌든 당신의 대답을 받아 들일 것입니다. –
물론이 주제에는 많은 변형이 있습니다. 개념을 설명하기 위해 정적 메서드를 추가했지만 아키텍처에 따라 모든 변환을 수행하는 별도의 팩터 리를 만들거나 모델 개체 자체의 인스턴스 메서드/생성자에서 변환을 수행 할 수 있습니다. – biziclop