diff --git a/sitestats/pom.xml b/sitestats/pom.xml
index c487e25f6018..40446f7194fe 100644
--- a/sitestats/pom.xml
+++ b/sitestats/pom.xml
@@ -20,7 +20,7 @@
0.8
1.0
1.5.3
- 6.30.0
+ 9.17.0
@@ -127,11 +127,6 @@
wicket-datetime
${sst.wicket.version}
-
- org.apache.wicket
- wicket-devutils
- ${sst.wicket.version}
-
org.jfree
diff --git a/sitestats/sitestats-tool/pom.xml b/sitestats/sitestats-tool/pom.xml
index 9caf242e61b0..2dbc61db2cc0 100644
--- a/sitestats/sitestats-tool/pom.xml
+++ b/sitestats/sitestats-tool/pom.xml
@@ -62,7 +62,7 @@
org.sakaiproject.wicket
- wicket-tool-6
+ wicket-tool-9
@@ -89,10 +89,6 @@
org.apache.wicket
wicket-spring
-
- org.apache.wicket
- wicket-devutils
-
diff --git a/sitestats/sitestats-tool/src/java/org/sakaiproject/sitestats/tool/wicket/SiteStatsAdminApplication.java b/sitestats/sitestats-tool/src/java/org/sakaiproject/sitestats/tool/wicket/SiteStatsAdminApplication.java
index 06a0e6ec8c84..812964a26b56 100644
--- a/sitestats/sitestats-tool/src/java/org/sakaiproject/sitestats/tool/wicket/SiteStatsAdminApplication.java
+++ b/sitestats/sitestats-tool/src/java/org/sakaiproject/sitestats/tool/wicket/SiteStatsAdminApplication.java
@@ -21,7 +21,6 @@
import org.apache.wicket.core.request.mapper.CryptoMapper;
import org.apache.wicket.core.util.crypt.KeyInSessionSunJceCryptFactory;
import org.apache.wicket.request.IRequestMapper;
-import org.apache.wicket.settings.IExceptionSettings;
import org.sakaiproject.sitestats.tool.wicket.pages.AdminPage;
@@ -38,9 +37,6 @@ protected void init() {
getApplicationSettings().setAccessDeniedPage(AdminPage.class);
getApplicationSettings().setInternalErrorPage(AdminPage.class);
- // show internal error page rather than default developer page
- getExceptionSettings().setUnexpectedExceptionDisplay(IExceptionSettings.SHOW_INTERNAL_ERROR_PAGE);
-
// Encrypt URLs. This immediately sets up a session (note that things like CSS now becomes bound to the session)
getSecuritySettings().setCryptFactory(new KeyInSessionSunJceCryptFactory()); // Different key per user
final IRequestMapper cryptoMapper = new CryptoMapper(getRootRequestMapper(), this);
diff --git a/sitestats/sitestats-tool/src/java/org/sakaiproject/sitestats/tool/wicket/SiteStatsApplication.java b/sitestats/sitestats-tool/src/java/org/sakaiproject/sitestats/tool/wicket/SiteStatsApplication.java
index df641cce77dc..6367ae520053 100644
--- a/sitestats/sitestats-tool/src/java/org/sakaiproject/sitestats/tool/wicket/SiteStatsApplication.java
+++ b/sitestats/sitestats-tool/src/java/org/sakaiproject/sitestats/tool/wicket/SiteStatsApplication.java
@@ -20,26 +20,21 @@
import java.util.Locale;
+import lombok.Getter;
+import lombok.Setter;
import org.apache.wicket.Component;
import org.apache.wicket.core.request.mapper.CryptoMapper;
import org.apache.wicket.core.util.crypt.KeyInSessionSunJceCryptFactory;
import org.apache.wicket.request.IRequestHandler;
+import org.apache.wicket.request.cycle.IRequestCycleListener;
import org.apache.wicket.request.cycle.RequestCycle;
import org.apache.wicket.protocol.http.WebApplication;
-import org.apache.wicket.request.cycle.AbstractRequestCycleListener;
import org.apache.wicket.resource.loader.IStringResourceLoader;
-import org.apache.wicket.settings.IExceptionSettings;
import org.apache.wicket.spring.injection.annot.SpringComponentInjector;
import org.apache.wicket.util.resource.IResourceStream;
import org.apache.wicket.core.util.resource.locator.ResourceStreamLocator;
import org.apache.wicket.core.util.file.WebApplicationPath;
-import org.apache.wicket.devutils.debugbar.DebugBar;
-import org.apache.wicket.devutils.debugbar.InspectorDebugPanel;
-import org.apache.wicket.devutils.debugbar.PageSizeDebugPanel;
-import org.apache.wicket.devutils.debugbar.SessionSizeDebugPanel;
-import org.apache.wicket.devutils.debugbar.VersionDebugContributor;
import org.apache.wicket.request.IRequestMapper;
-import org.sakaiproject.component.cover.ServerConfigurationService;
import org.sakaiproject.sitestats.tool.facade.SakaiFacade;
import org.sakaiproject.sitestats.tool.wicket.components.JavaScriptToBucketResponseDecorator;
import org.sakaiproject.sitestats.tool.wicket.pages.OverviewPage;
@@ -49,11 +44,11 @@
import org.sakaiproject.util.ResourceLoader;
+@Setter
+@Getter
public class SiteStatsApplication extends WebApplication {
private static final ResourceLoader msgs = new ResourceLoader("Messages");
private static final ResourceLoader evnts = new ResourceLoader("Events");
-
- private boolean debug = false;
private transient SakaiFacade facade;
@@ -63,15 +58,15 @@ protected void init() {
// Configure general wicket application settings
getComponentInstantiationListeners().add(new SpringComponentInjector(this));
+ getCspSettings().blocking().disabled();
getResourceSettings().setThrowExceptionOnMissingResource(false);
getMarkupSettings().setStripWicketTags(true);
getResourceSettings().getStringResourceLoaders().add(new SiteStatsStringResourceLoader());
getResourceSettings().getResourceFinders().add(new WebApplicationPath(getServletContext(), "html"));
getResourceSettings().setResourceStreamLocator(new SiteStatsResourceStreamLocator());
- getDebugSettings().setAjaxDebugModeEnabled(debug);
// configure bottom page script loading
- setHeaderResponseDecorator(new JavaScriptToBucketResponseDecorator("bottom-script-container"));
+ //setHeaderResponseDecorator(new JavaScriptToBucketResponseDecorator("bottom-script-container"));
// Mount pages
mountPage("/home", OverviewPage.class);
@@ -83,29 +78,9 @@ protected void init() {
getApplicationSettings().setPageExpiredErrorPage(OverviewPage.class);
getApplicationSettings().setAccessDeniedPage(OverviewPage.class);
- // Debugging
- debug = ServerConfigurationService.getBoolean("sitestats.debug", false);
- if(debug) {
- getDebugSettings().setComponentUseCheck(true);
- getDebugSettings().setAjaxDebugModeEnabled(true);
- getDebugSettings().setLinePreciseReportingOnAddComponentEnabled(true);
- getDebugSettings().setLinePreciseReportingOnNewComponentEnabled(true);
- getDebugSettings().setOutputComponentPath(true);
- getDebugSettings().setOutputMarkupContainerClassName(true);
- getDebugSettings().setDevelopmentUtilitiesEnabled(true);
- getMarkupSettings().setStripWicketTags(false);
- getExceptionSettings().setUnexpectedExceptionDisplay(IExceptionSettings.SHOW_EXCEPTION_PAGE);
- // register standard debug contributors so that just setting the sitestats.debug property is enough to turn these on
- // otherwise, you have to turn wicket development mode on to get this populated due to the order methods are called
- DebugBar.registerContributor(VersionDebugContributor.DEBUG_BAR_CONTRIB, this);
- DebugBar.registerContributor(InspectorDebugPanel.DEBUG_BAR_CONTRIB, this);
- DebugBar.registerContributor(SessionSizeDebugPanel.DEBUG_BAR_CONTRIB, this);
- DebugBar.registerContributor(PageSizeDebugPanel.DEBUG_BAR_CONTRIB, this);
- }
- else
{
// Throw RuntimeDeceptions so they are caught by the Sakai ErrorReportHandler
- getRequestCycleListeners().add(new AbstractRequestCycleListener()
+ getRequestCycleListeners().add(new IRequestCycleListener()
{
@Override
public IRequestHandler onException(RequestCycle cycle, Exception ex)
@@ -120,24 +95,16 @@ public IRequestHandler onException(RequestCycle cycle, Exception ex)
}
// Encrypt URLs. This immediately sets up a session (note that things like CSS now becomes bound to the session)
- getSecuritySettings().setCryptFactory(new KeyInSessionSunJceCryptFactory()); // Different key per user
- final IRequestMapper cryptoMapper = new CryptoMapper(getRootRequestMapper(), this);
- setRootRequestMapper(cryptoMapper);
+ //getSecuritySettings().setCryptFactory(new KeyInSessionSunJceCryptFactory()); // Different key per user
+ //final IRequestMapper cryptoMapper = new CryptoMapper(getRootRequestMapper(), this);
+ //setRootRequestMapper(cryptoMapper);
}
public Class getHomePage() {
return OverviewPage.class;
}
- public SakaiFacade getFacade() {
- return facade;
- }
-
- public void setFacade(final SakaiFacade facade) {
- this.facade = facade;
- }
-
- /**
+ /**
* Custom bundle loader to pickup bundles from sitestats-bundles/
* @author Nuno Fernandes
*/
diff --git a/sitestats/sitestats-tool/src/java/org/sakaiproject/sitestats/tool/wicket/components/AjaxLazyLoadImage.java b/sitestats/sitestats-tool/src/java/org/sakaiproject/sitestats/tool/wicket/components/AjaxLazyLoadImage.java
index e4006a67d09e..36261c62b7d1 100644
--- a/sitestats/sitestats-tool/src/java/org/sakaiproject/sitestats/tool/wicket/components/AjaxLazyLoadImage.java
+++ b/sitestats/sitestats-tool/src/java/org/sakaiproject/sitestats/tool/wicket/components/AjaxLazyLoadImage.java
@@ -18,6 +18,8 @@
*/
package org.sakaiproject.sitestats.tool.wicket.components;
+import java.time.Duration;
+
import org.apache.wicket.AttributeModifier;
import org.apache.wicket.Component;
import org.apache.wicket.Page;
@@ -43,7 +45,6 @@
import org.apache.wicket.request.resource.AbstractResource;
import org.apache.wicket.request.resource.DynamicImageResource;
import org.apache.wicket.request.resource.IResource;
-import org.apache.wicket.util.time.Duration;
import org.sakaiproject.sitestats.tool.wicket.pages.MaximizedImagePage;
@@ -247,7 +248,7 @@ protected void configureResponse(AbstractResource.ResourceResponse response, IRe
{
super.configureResponse(response, attributes);
- response.setCacheDuration(Duration.NONE);
+ response.setCacheDuration(Duration.ZERO);
response.setCacheScope(CacheScope.PRIVATE);
}
};
diff --git a/sitestats/sitestats-tool/src/java/org/sakaiproject/sitestats/tool/wicket/components/ChartImage.java b/sitestats/sitestats-tool/src/java/org/sakaiproject/sitestats/tool/wicket/components/ChartImage.java
index 27e5343c07ca..2531c23ccd7c 100644
--- a/sitestats/sitestats-tool/src/java/org/sakaiproject/sitestats/tool/wicket/components/ChartImage.java
+++ b/sitestats/sitestats-tool/src/java/org/sakaiproject/sitestats/tool/wicket/components/ChartImage.java
@@ -19,6 +19,7 @@
package org.sakaiproject.sitestats.tool.wicket.components;
import java.awt.image.BufferedImage;
+import java.time.Duration;
import lombok.extern.slf4j.Slf4j;
import org.apache.wicket.request.resource.IResource;
@@ -27,7 +28,6 @@
import org.apache.wicket.markup.html.panel.Panel;
import org.apache.wicket.request.http.WebResponse;
import org.apache.wicket.request.resource.AbstractResource;
-import org.apache.wicket.util.time.Duration;
/**
@@ -75,7 +75,7 @@ protected void configureResponse(AbstractResource.ResourceResponse response, IRe
{
super.configureResponse(response, attributes);
- response.setCacheDuration(Duration.NONE);
+ response.setCacheDuration(Duration.ZERO);
response.setCacheScope(WebResponse.CacheScope.PRIVATE);
}
};
diff --git a/sitestats/sitestats-tool/src/java/org/sakaiproject/sitestats/tool/wicket/components/EventRegistryTree.java b/sitestats/sitestats-tool/src/java/org/sakaiproject/sitestats/tool/wicket/components/EventRegistryTree.java
index b201a59286db..6980150f8337 100644
--- a/sitestats/sitestats-tool/src/java/org/sakaiproject/sitestats/tool/wicket/components/EventRegistryTree.java
+++ b/sitestats/sitestats-tool/src/java/org/sakaiproject/sitestats/tool/wicket/components/EventRegistryTree.java
@@ -21,6 +21,7 @@
import java.util.List;
import org.apache.wicket.AttributeModifier;
+import org.apache.wicket.markup.head.IHeaderResponse;
import org.apache.wicket.markup.html.WebMarkupContainer;
import org.apache.wicket.markup.html.basic.Label;
import org.apache.wicket.markup.html.form.CheckBox;
@@ -58,7 +59,7 @@ public EventRegistryTree(String id, List> eventRegistry, String toolId) {
ul.add(new AttributeModifier("style", new Model("padding: 0 0 0 20px; display: none;")));
ul.add(new AttributeModifier("class", new Model("events")));
}else{
- ul.add(new AttributeModifier("style", new Model("padding: 0px;")));
+ ul.add(new AttributeModifier("style", new Model("padding: 0;")));
ul.add(new AttributeModifier("class", new Model("tools")));
}
add(ul);
@@ -67,10 +68,10 @@ public EventRegistryTree(String id, List> eventRegistry, String toolId) {
}
@Override
- public void renderHead(HtmlHeaderContainer container) {
- container.getHeaderResponse().render(JavaScriptHeaderItem.forUrl(StatsManager.SITESTATS_WEBAPP+"/script/prefs.js"));
- container.getHeaderResponse().render(OnDomReadyHeaderItem.forScript("updateAllToolsSelection()"));
- super.renderHead(container);
+ public void renderHead(IHeaderResponse response) {
+ response.render(JavaScriptHeaderItem.forUrl(StatsManager.SITESTATS_WEBAPP+"/script/prefs.js"));
+ response.render(OnDomReadyHeaderItem.forScript("updateAllToolsSelection()"));
+ super.renderHead(response);
}
public List> getEventRegistry() {
diff --git a/sitestats/sitestats-tool/src/java/org/sakaiproject/sitestats/tool/wicket/components/FileSelectorPanel.java b/sitestats/sitestats-tool/src/java/org/sakaiproject/sitestats/tool/wicket/components/FileSelectorPanel.java
index 9eb11e63e45d..1313dccb51e6 100644
--- a/sitestats/sitestats-tool/src/java/org/sakaiproject/sitestats/tool/wicket/components/FileSelectorPanel.java
+++ b/sitestats/sitestats-tool/src/java/org/sakaiproject/sitestats/tool/wicket/components/FileSelectorPanel.java
@@ -22,9 +22,11 @@
import java.io.OutputStream;
import java.io.UnsupportedEncodingException;
import java.util.ArrayList;
+import java.util.Collections;
import java.util.List;
import org.apache.wicket.AttributeModifier;
+import org.apache.wicket.markup.head.IHeaderResponse;
import org.apache.wicket.request.Request;
import org.apache.wicket.request.cycle.RequestCycle;
import org.apache.wicket.ajax.AbstractDefaultAjaxBehavior;
@@ -133,9 +135,7 @@ public void setSelectedFiles(String filesEncoded) {
List files = new ArrayList();
if(filesEncoded != null) {
String[] t = filesEncoded.split("\\|\\|\\|");
- for(int i=0; i getResources(String dir) throws IdUnusedException, TypeException, PermissionException {
@@ -222,18 +217,13 @@ protected void respond(AjaxRequestTarget target) {
RequestCycle.get().scheduleRequestHandlerAfterCurrent(new EmptyRequestHandler());
WebResponse response = (WebResponse) getResponse();
response.setContentType("text/html;charset="+enc);
- OutputStream out = getResponse().getOutputStream();
- try{
+ try (OutputStream out = getResponse().getOutputStream()) {
out.write("".getBytes(enc));
- boolean expandToSelection = currentDir.equals(BASE_DIR) && getSelectedFilesId() != null && getSelectedFilesId().size() > 0;
- getResourcesMarkup(currentDir, out, expandToSelection, enc);
+ boolean expandToSelection = currentDir.equals(BASE_DIR) && getSelectedFilesId() != null && !getSelectedFilesId().isEmpty();
+ getResourcesMarkup(currentDir, out, expandToSelection, enc);
out.write("
".getBytes(enc));
- }finally{
- out.close();
}
- }catch(RuntimeException e){
- // ignore - do nothing
- }catch(Exception e){
+ } catch(Exception e){
// ignore - do nothing
}
}
diff --git a/sitestats/sitestats-tool/src/java/org/sakaiproject/sitestats/tool/wicket/components/LastJobRun.java b/sitestats/sitestats-tool/src/java/org/sakaiproject/sitestats/tool/wicket/components/LastJobRun.java
index ad93c9cd618d..65eec66f820b 100644
--- a/sitestats/sitestats-tool/src/java/org/sakaiproject/sitestats/tool/wicket/components/LastJobRun.java
+++ b/sitestats/sitestats-tool/src/java/org/sakaiproject/sitestats/tool/wicket/components/LastJobRun.java
@@ -86,8 +86,7 @@ private void renderBody() {
String serverDateStr = timeServ.shortLocalizedTimestamp(d.toInstant(), TimeZone.getDefault(), getSession().getLocale());
lastJobRunDate.setDefaultModel(new Model(dStr));
String localSakaiName = Locator.getFacade().getStatsManager().getLocalSakaiName();
- StringResourceModel model = new StringResourceModel("lastJobRun_server_time", getPage(), null,
- new Object[] {localSakaiName, serverDateStr});
+ StringResourceModel model = new StringResourceModel("lastJobRun_server_time").setParameters(localSakaiName, serverDateStr);
lastJobRunServerDate.setDefaultModel(model);
}catch(Exception e){
lastJobRunDate.setDefaultModel(new Model());
diff --git a/sitestats/sitestats-tool/src/java/org/sakaiproject/sitestats/tool/wicket/components/SakaiNavigatorLabel.java b/sitestats/sitestats-tool/src/java/org/sakaiproject/sitestats/tool/wicket/components/SakaiNavigatorLabel.java
index f09f71df4c33..a54d7d991b18 100644
--- a/sitestats/sitestats-tool/src/java/org/sakaiproject/sitestats/tool/wicket/components/SakaiNavigatorLabel.java
+++ b/sitestats/sitestats-tool/src/java/org/sakaiproject/sitestats/tool/wicket/components/SakaiNavigatorLabel.java
@@ -110,17 +110,12 @@ private SakaiNavigatorLabel(final String id, final PageableComponent table) {
super(id);
Model model = new Model(new LabelModelObject(table));
setDefaultModel(
- new StringResourceModel(
- "pager_textStatus",
- this,
- model,
- "Viewing {0} - {1} of {2} {3}",
- new Object[] {
+ new StringResourceModel("pager_textStatus").setParameters(
new PropertyModel(model, "from"),
new PropertyModel(model, "to"),
new PropertyModel(model, "of"),
- new ResourceModel("pager_textItem"),
- })
+ new ResourceModel("pager_textItem")
+ )
);
}
diff --git a/sitestats/sitestats-tool/src/java/org/sakaiproject/sitestats/tool/wicket/components/SakaiNavigatorSearch.java b/sitestats/sitestats-tool/src/java/org/sakaiproject/sitestats/tool/wicket/components/SakaiNavigatorSearch.java
index 6fd844b1f10a..d2ddadf79989 100644
--- a/sitestats/sitestats-tool/src/java/org/sakaiproject/sitestats/tool/wicket/components/SakaiNavigatorSearch.java
+++ b/sitestats/sitestats-tool/src/java/org/sakaiproject/sitestats/tool/wicket/components/SakaiNavigatorSearch.java
@@ -18,6 +18,7 @@
*/
package org.sakaiproject.sitestats.tool.wicket.components;
+import org.apache.wicket.markup.head.IHeaderResponse;
import org.apache.wicket.markup.head.JavaScriptHeaderItem;
import org.apache.wicket.markup.html.form.Button;
import org.apache.wicket.markup.html.form.Form;
@@ -75,9 +76,9 @@ public void onSubmit() {
}
@Override
- public void renderHead(HtmlHeaderContainer container) {
- container.getHeaderResponse().render(JavaScriptHeaderItem.forUrl(BasePage.JQUERYSCRIPT));
- super.renderHead(container);
+ public void renderHead(IHeaderResponse response) {
+ response.render(JavaScriptHeaderItem.forUrl(BasePage.JQUERYSCRIPT));
+ super.renderHead(response);
}
public void setSearchKeyword(String keyword) {
diff --git a/sitestats/sitestats-tool/src/java/org/sakaiproject/sitestats/tool/wicket/components/SakaiPagingNavigator.java b/sitestats/sitestats-tool/src/java/org/sakaiproject/sitestats/tool/wicket/components/SakaiPagingNavigator.java
index 648f94cf4feb..d1248899c1ba 100644
--- a/sitestats/sitestats-tool/src/java/org/sakaiproject/sitestats/tool/wicket/components/SakaiPagingNavigator.java
+++ b/sitestats/sitestats-tool/src/java/org/sakaiproject/sitestats/tool/wicket/components/SakaiPagingNavigator.java
@@ -18,7 +18,7 @@
*/
package org.sakaiproject.sitestats.tool.wicket.components;
-import java.util.ArrayList;
+import java.util.Arrays;
import java.util.List;
import org.apache.wicket.ajax.markup.html.navigation.paging.AjaxPagingNavigationIncrementLink;
@@ -26,12 +26,14 @@
import org.apache.wicket.ajax.markup.html.navigation.paging.AjaxPagingNavigator;
import org.apache.wicket.extensions.markup.html.repeater.data.table.DataTable;
import org.apache.wicket.markup.html.form.DropDownChoice;
+import org.apache.wicket.markup.html.form.FormComponentUpdatingBehavior;
import org.apache.wicket.markup.html.form.IChoiceRenderer;
import org.apache.wicket.markup.html.link.Link;
import org.apache.wicket.markup.html.navigation.paging.IPageable;
import org.apache.wicket.markup.html.navigation.paging.IPagingLabelProvider;
import org.apache.wicket.markup.html.navigation.paging.PagingNavigation;
import org.apache.wicket.model.CompoundPropertyModel;
+import org.apache.wicket.model.IModel;
import org.apache.wicket.model.StringResourceModel;
public class SakaiPagingNavigator extends AjaxPagingNavigator {
@@ -116,51 +118,51 @@ protected Link newPagingNavigationIncrementLink(String id, IPageable pageable, i
* the page to jump to
* @return the pagenumber link
*/
- protected Link newPagingNavigationLink(String id, IPageable pageable, int pageNumber)
- {
+ protected Link newPagingNavigationLink(String id, IPageable pageable, int pageNumber) {
return new AjaxPagingNavigationLink(id, pageable, pageNumber);
}
- protected DropDownChoice newRowNumberSelector(final IPageable pageable)
- {
- List choices = new ArrayList();
- choices.add("5");
- choices.add("10");
- choices.add("20");
- choices.add("50");
- choices.add("100");
- choices.add("200");
- DropDownChoice rowNumberSelector = new DropDownChoice("rowNumberSelector", choices, new IChoiceRenderer() {
- public Object getDisplayValue(Object object) {
- return new StringResourceModel(
- "pager_textPageSize",
- getParent(),
- null,
- new Object[] {object}).getString();
+ protected DropDownChoice newRowNumberSelector(final IPageable pageable) {
+ List choices = Arrays.asList("5", "10", "20", "50", "100", "200");
+
+ DropDownChoice rowNumberSelector = new DropDownChoice<>("rowNumberSelector", choices, new IChoiceRenderer<>() {
+ private static final long serialVersionUID = 1L;
+
+ @Override
+ public String getDisplayValue(String object) {
+ return new StringResourceModel("pager_textPageSize")
+ .setParameters(object)
+ .getString();
}
- public String getIdValue(Object object, int index) {
- return (String) object;
+
+ @Override
+ public String getIdValue(String object, int index) {
+ return object;
}
- }) {
+
@Override
- protected boolean wantOnSelectionChangedNotifications() {
- return true;
+ public String getObject(String id, IModel choices) {
+ return id;
}
+ });
+
+ rowNumberSelector.add(new FormComponentUpdatingBehavior() {
+ private static final long serialVersionUID = 1L;
@Override
- protected void onSelectionChanged(Object newSelection) {
+ protected void onUpdate() {
// Tell the PageableListView which page to print next
pageable.setCurrentPage(0);
- // We do need to redirect, else refresh refresh will go to next, next
- //setRedirect(true);
+ // We do need to redirect, else refresh will go to next, next
+ // setRedirect(true); // This line is commented out because it may not be needed
// Return the current page.
setResponsePage(getPage());
- super.onSelectionChanged(newSelection);
+ super.onUpdate();
}
-
- };
+ });
+
return rowNumberSelector;
}
diff --git a/sitestats/sitestats-tool/src/java/org/sakaiproject/sitestats/tool/wicket/components/dropdown/SakaiStringResourceChoiceRenderer.java b/sitestats/sitestats-tool/src/java/org/sakaiproject/sitestats/tool/wicket/components/dropdown/SakaiStringResourceChoiceRenderer.java
index 78932b58a331..abdf8f468954 100644
--- a/sitestats/sitestats-tool/src/java/org/sakaiproject/sitestats/tool/wicket/components/dropdown/SakaiStringResourceChoiceRenderer.java
+++ b/sitestats/sitestats-tool/src/java/org/sakaiproject/sitestats/tool/wicket/components/dropdown/SakaiStringResourceChoiceRenderer.java
@@ -43,7 +43,9 @@ public SakaiStringResourceChoiceRenderer(String msgKey, Component component)
@Override
public Object getDisplayValue(String object)
{
- return new StringResourceModel(msgKey, component, null, new Object[] { object }).getString();
+ return new StringResourceModel(msgKey, component)
+ .setParameters(object)
+ .getString();
}
@Override
diff --git a/sitestats/sitestats-tool/src/java/org/sakaiproject/sitestats/tool/wicket/components/paging/infinite/InfinitePagingDataTableHeadersToolbar.java b/sitestats/sitestats-tool/src/java/org/sakaiproject/sitestats/tool/wicket/components/paging/infinite/InfinitePagingDataTableHeadersToolbar.java
index 562b5da39b27..b830a7056bce 100644
--- a/sitestats/sitestats-tool/src/java/org/sakaiproject/sitestats/tool/wicket/components/paging/infinite/InfinitePagingDataTableHeadersToolbar.java
+++ b/sitestats/sitestats-tool/src/java/org/sakaiproject/sitestats/tool/wicket/components/paging/infinite/InfinitePagingDataTableHeadersToolbar.java
@@ -126,7 +126,7 @@ public void renderHead(IHeaderResponse response)
protected WebMarkupContainer newSortableHeader(final String borderId, final S property, final ISortStateLocator locator)
{
- return new AjaxFallbackOrderByBorder(borderId, property, locator, getAjaxCallListener())
+ return new AjaxFallbackOrderByBorder(borderId, property, locator)
{
private static final long serialVersionUID = 1L;
diff --git a/sitestats/sitestats-tool/src/java/org/sakaiproject/sitestats/tool/wicket/components/paging/infinite/InfinitePagingNavigationIncrementButton.java b/sitestats/sitestats-tool/src/java/org/sakaiproject/sitestats/tool/wicket/components/paging/infinite/InfinitePagingNavigationIncrementButton.java
index fdadbd9c4252..0d74f7e81536 100644
--- a/sitestats/sitestats-tool/src/java/org/sakaiproject/sitestats/tool/wicket/components/paging/infinite/InfinitePagingNavigationIncrementButton.java
+++ b/sitestats/sitestats-tool/src/java/org/sakaiproject/sitestats/tool/wicket/components/paging/infinite/InfinitePagingNavigationIncrementButton.java
@@ -39,7 +39,7 @@ public InfinitePagingNavigationIncrementButton(final String id, final InfinitePa
}
@Override
- public void onSubmit(AjaxRequestTarget target, Form> form)
+ public void onSubmit(AjaxRequestTarget target)
{
if (increment)
{
@@ -59,6 +59,7 @@ public void onSubmit(AjaxRequestTarget target, Form> form)
@Override
public void onConfigure()
{
+ super.onConfigure();
setEnabled(increment && table.hasNextPage() || !increment && table.hasPrevPage());
}
diff --git a/sitestats/sitestats-tool/src/java/org/sakaiproject/sitestats/tool/wicket/components/paging/infinite/SakaiInfinitePagingDataTableNavigationToolbar.java b/sitestats/sitestats-tool/src/java/org/sakaiproject/sitestats/tool/wicket/components/paging/infinite/SakaiInfinitePagingDataTableNavigationToolbar.java
index 152396faa089..63082dbcdbe1 100644
--- a/sitestats/sitestats-tool/src/java/org/sakaiproject/sitestats/tool/wicket/components/paging/infinite/SakaiInfinitePagingDataTableNavigationToolbar.java
+++ b/sitestats/sitestats-tool/src/java/org/sakaiproject/sitestats/tool/wicket/components/paging/infinite/SakaiInfinitePagingDataTableNavigationToolbar.java
@@ -19,7 +19,7 @@
import org.apache.wicket.markup.html.WebMarkupContainer;
import org.apache.wicket.markup.html.basic.Label;
import org.apache.wicket.markup.html.form.Form;
-import org.apache.wicket.model.AbstractReadOnlyModel;
+import org.apache.wicket.model.IModel;
import org.apache.wicket.model.Model;
import org.apache.wicket.model.ResourceModel;
import org.apache.wicket.model.StringResourceModel;
@@ -43,7 +43,7 @@ public void onInitialize()
super.onInitialize();
WebMarkupContainer span = new WebMarkupContainer("span");
add(span);
- span.add(AttributeModifier.replace("colspan", new AbstractReadOnlyModel()
+ span.add(AttributeModifier.replace("colspan", new IModel