2012-06-27 2 views
0

그래서 재미있는 문제가 있습니다. 나는 데이터 테이블과 웹 데이터 소스를 사용하여 XML 데이터 파일을 가져 오는 퓨전 차트 (플래시 차트)가 포함 된 개찰 페이지가 있습니다. 내가 겪고있는 문제는 페이지 번호를 사용하거나 데이터 테이블에서 링크를 정렬 할 때 페이지가 다시로드되고 차트가 더 이상 데이터를 가져올 수 없도록 URL을 변경한다는 것입니다.Wicket WebResources의 URL을 변경하는 데이터 정렬 가능 링크

정렬 링크를 사용하기 전에 (이 데이터 URL은 차트에서 사용 가능) vreports/wicket : interface/: 5 : tabs : panel : prodGraph :: IResourceListener :: (기본 페이지의 URL : /vreports.5)

정렬 링크를 사용하면 (이 데이터 URL이 작동하지 않음) vreports/개찰 : 인터페이스/: 5 : 탭 : 패널 : prodGraph : 1 : IResourceListener : (기본 페이지 URL : /verports.5.1)

제 질문은 차트가 datatable 링크에서 사용하는 webresource URL을 어떻게 분리 할 수 ​​있습니까? 나는 당신이 그것을 여러 번 클릭하면 하나씩 증가하고 웹 리소스 URL의 변화와 일치하는 문제가 .1 추가된다는 것을 안다. 특히 이상한 점은 정렬 함수를 사용한 후에 페이지를 새로 고치면 정렬이 적용되지만 차트 (및 올바른 URL)가 다시 나타납니다. 나는 개찰구가 생소하고 URL 구조가 어떻게 작동하는지에 대한 많은 정보를 찾을 수 없다.

미리 감사드립니다.

+0

난 당신이 필요합니다 생각 : http://wicketinaction.com/2011/07/wicket-1-5-mounting-resources/ 물론 귀하의 리소스가 정말로 페이지 상태에 달려 있지 않는 한 (정렬 말하기 설정).이 경우보다 정교한 접근 방식이 필요합니다. – biziclop

답변

0

데이터 테이블을 AjaxDefaultFallbackDataTable로 변환하는 작업이 끝났으며 페이지가 새로 고쳐지지 않아 URL이 변경되지 않도록 모든 페이지 매김 및 정렬이 Ajax에서 완료되었습니다 .AjaxDefaultFallbackDataTable DataTable과 동일한 DataProvider는 AJAX의 모든 것을 처리하기 때문에 동일한 문제가있는 사람이라면 누구나 쉽거나 더 좋은 대안이 될 수 있습니다. 문자 그대로 DataTable을 가지고있는 곳이라면 어디에서나 변경해야했습니다. AjaxDefaultFallbackDataTable로 전환했는데 잘 작동합니다!

모두에게 감사드립니다. 샘

0

난 당신이 정렬 OrederBYBorder을 사용하는 것 같아요.

이 페이지에 와서 BookmarkablePageLink을 사용하여이 일

this.add (새 AjaxFallbackOrderByBorder (ID, fieldName에, issueSortable) {또한

   private static final long serialVersionUID = 1L; 
       @Override 
       protected void onSortChanged() { 
        dataView.setCurrentPage(0); 
       } 
       protected void onAjaxClick(AjaxRequestTarget target) { 
        target.addComponent(componentName); 
       } 
    }); 

을 시도하거나 StatelessLink는 퓨전 차트에 와서 그 링크를 사용하는 것을 의미 페이지.