Browse Source

Custom request mapper removed to use standard mounting methods (#3091)

* Custom request mapper removed to use standard mounting methods

* Update to last Wicket version
Andrea Del Bene 7 years ago
parent
commit
77ecc66581

+ 1 - 1
frameworks/Java/wicket/pom.xml

@@ -20,7 +20,7 @@
 	</licenses>
 	</licenses>
 	<properties>
 	<properties>
 		<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
 		<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
-		<wicket.version>7.8.0</wicket.version>
+		<wicket.version>7.9.0</wicket.version>
 		<slf4j.version>1.7.25</slf4j.version>
 		<slf4j.version>1.7.25</slf4j.version>
 	</properties>
 	</properties>
 	<dependencies>
 	<dependencies>

+ 0 - 50
frameworks/Java/wicket/src/main/java/hellowicket/RequestMapper.java

@@ -1,50 +0,0 @@
-package hellowicket;
-
-import org.apache.wicket.core.request.handler.PageProvider;
-import org.apache.wicket.core.request.handler.RenderPageRequestHandler;
-import org.apache.wicket.request.IRequestHandler;
-import org.apache.wicket.request.IRequestMapper;
-import org.apache.wicket.request.Request;
-import org.apache.wicket.request.Url;
-import org.apache.wicket.request.handler.resource.ResourceReferenceRequestHandler;
-
-import hellowicket.dbupdates.HelloDbUpdatesReference;
-import hellowicket.fortune.FortunePage;
-import hellowicket.plaintext.HelloTextReference;
-
-/**
- * Custom request mapper optimized for the application needs
- */
-public class RequestMapper implements IRequestMapper {
-
-    private static final Url FORTUNES_URL = Url.parse("fortunes");
-
-    @Override
-    public IRequestHandler mapRequest(final Request request) {
-        final String url = request.getUrl().getPath();
-        switch (url) {
-            case "json":
-                return new ResourceReferenceRequestHandler(new HelloJsonReference());
-            case "db":
-                return new ResourceReferenceRequestHandler(new HelloDbReference());
-            case "updates":
-                return new ResourceReferenceRequestHandler(new HelloDbUpdatesReference());
-            case "plaintext":
-                return new ResourceReferenceRequestHandler(new HelloTextReference());
-            case "fortunes":
-                return new RenderPageRequestHandler(new PageProvider(FortunePage.class));
-            default:
-        }
-        return null;
-    }
-
-    @Override
-    public int getCompatibilityScore(final Request request) {
-        return 0;
-    }
-
-    @Override
-    public Url mapHandler(final IRequestHandler requestHandler) {
-        return FORTUNES_URL;
-    }
-}

+ 10 - 4
frameworks/Java/wicket/src/main/java/hellowicket/WicketApplication.java

@@ -1,11 +1,13 @@
 package hellowicket;
 package hellowicket;
 
 
 import com.zaxxer.hikari.HikariDataSource;
 import com.zaxxer.hikari.HikariDataSource;
-import org.apache.wicket.protocol.http.WebApplication;
-import org.apache.wicket.settings.RequestCycleSettings;
-
+import hellowicket.dbupdates.HelloDbUpdatesReference;
+import hellowicket.fortune.FortunePage;
+import hellowicket.plaintext.HelloTextReference;
 import javax.naming.InitialContext;
 import javax.naming.InitialContext;
 import javax.sql.DataSource;
 import javax.sql.DataSource;
+import org.apache.wicket.protocol.http.WebApplication;
+import org.apache.wicket.settings.RequestCycleSettings;
 
 
 /**
 /**
  * Application object for your web application..
  * Application object for your web application..
@@ -35,7 +37,11 @@ public class WicketApplication extends WebApplication
 		// set UTF-8 for /fortunes test
 		// set UTF-8 for /fortunes test
 		requestCycleSettings.setResponseRequestEncoding("UTF-8");
 		requestCycleSettings.setResponseRequestEncoding("UTF-8");
 
 
-		setRootRequestMapper(new RequestMapper());
+		mountResource("json", new HelloJsonReference());
+		mountResource("db", new HelloDbReference());
+		mountResource("updates", new HelloDbUpdatesReference());
+		mountResource("plaintext", new HelloTextReference());
+		mountPage("fortunes", FortunePage.class);
 	}
 	}
 
 
 	@Override
 	@Override