You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@wicket.apache.org by mg...@apache.org on 2021/07/01 13:36:30 UTC

[wicket] branch wicket-9.x-with-jpms updated: Fix the build and go fully JPMS

This is an automated email from the ASF dual-hosted git repository.

mgrigorov pushed a commit to branch wicket-9.x-with-jpms
in repository https://gitbox.apache.org/repos/asf/wicket.git


The following commit(s) were added to refs/heads/wicket-9.x-with-jpms by this push:
     new 1e599b4  Fix the build and go fully JPMS
1e599b4 is described below

commit 1e599b4e796a211d11acd6907c3c3d6845283168
Author: Martin Tzvetanov Grigorov <mg...@apache.org>
AuthorDate: Thu Jul 1 16:35:44 2021 +0300

    Fix the build and go fully JPMS
---
 pom.xml                                             |   6 ++----
 .../wicket/osgi/OsgiClashingPackagesTest.java       |  13 ++++++++-----
 wicket-bean-validation/pom.xml                      |  18 +++++++++++++++++-
 .../validation/BeanValidationConfiguration.java     |  16 ++++++++++++++++
 .../bean/validation/BeanValidationContext.java      |  18 +++++++++++++++++-
 .../wicket/bean/validation/ConstraintIterator.java  |  16 ++++++++++++++++
 .../bean/validation/DefaultPropertyResolver.java    |  16 ++++++++++++++++
 .../bean/validation/DefaultValidatorProvider.java   |  16 ++++++++++++++++
 .../bean/validation/DefaultViolationTranslator.java |  18 +++++++++++++++++-
 .../apache/wicket/bean/validation/GroupsModel.java  |  16 ++++++++++++++++
 .../wicket/bean/validation/IPropertyResolver.java   |  16 ++++++++++++++++
 .../apache/wicket/bean/validation/ITagModifier.java |  16 ++++++++++++++++
 .../bean/validation/IViolationTranslator.java       |  16 ++++++++++++++++
 .../org/apache/wicket/bean/validation/Property.java |  16 ++++++++++++++++
 .../wicket/bean/validation/PropertyValidator.java   |  16 ++++++++++++++++
 .../bean/validation/PropertyValidator.properties    |  14 ++++++++++++++
 .../bean/validation/SessionLocaleInterpolator.java  |  18 +++++++++++++++++-
 .../wicket/bean/validation/SizeTagModifier.java     |  16 ++++++++++++++++
 .../bean/validation/ValidationModelResolver.java    |  16 ++++++++++++++++
 .../validation/PropertyValidatorRequiredTest.java   |  16 ++++++++++++++++
 .../wicket/bean/validation/TestValidatableBean.java |  16 ++++++++++++++++
 .../validation/ValidationModelResolverTest.java     |  18 +++++++++++++++++-
 wicket-core/src/main/java/module-info.java          |   1 -
 .../wicket/{ => core}/request/resource/sample.js    |   0
 .../ajax/form/AjaxFormSubmitBehaviorTest.java       |   2 +-
 ...ltiRequestCycleListenerCallOrderApplication.java |   2 +-
 .../MultiRequestCycleListenerCallOrderPage.html     |   0
 .../MultiRequestCycleListenerCallOrderPage.java     |   2 +-
 .../MultiRequestCycleListenerCallOrderTest.java     |   2 +-
 .../cycle/PageRequestHandlerTrackerTest.java        |   2 +-
 .../cycle/RequestCycleListenerDetachOrderTest.java  |   2 +-
 .../cycle/RequestCycleListenerTest.java             |   2 +-
 .../{request => }/cycle/RequestCycleUrlForTest.java |   2 +-
 .../cycle/RequestHandlerExecutorTest.java           |   2 +-
 .../{request => }/cycle/RerenderAjaxPage.html       |   0
 .../{request => }/cycle/RerenderAjaxPage.java       |   2 +-
 .../request/{request => }/cycle/RerenderPage.html   |   0
 .../request/{request => }/cycle/RerenderPage.java   |   2 +-
 .../{request => }/cycle/RerenderPageTest.java       |   5 ++---
 .../{request => }/cycle/UrlRendererTest.java        |   2 +-
 .../mapper/AbstractBookmarkableMapperTest.java      |   2 +-
 .../{request => }/mapper/CustomHomePageTest.java    |   2 +-
 .../mapper/info/ComponentInfoTest.java              |   2 +-
 .../mapper/info/PageComponentInfoTest.java          |   2 +-
 .../request/{request => }/resource/BundlesPage.html |   0
 .../request/{request => }/resource/BundlesPage.java |   2 +-
 .../resource/BundlesPage_ext_result.html            |   0
 .../{request => }/resource/BundlesPage_result.html  |   2 +-
 .../resource/BundlesPage_result_defer.html          |   2 +-
 .../resource/ByteArrayResourceTest.java             |   2 +-
 .../resource/CharSequenceResourceTest.java          |   2 +-
 .../ContextRelativeResourceReferenceTest.java       |   2 +-
 .../resource/CssPackageResourceTest.java            |   2 +-
 .../resource/DynamicImageResourceTest.java          |   2 +-
 .../resource/JavaScriptPackageResourceTest.java     |   2 +-
 .../resource/LessResourceReference.less             |   0
 .../resource/LessResourceReferenceTest.java         |  10 +++++-----
 .../MetaInfStaticResourceReferenceTest.java         |   6 +++---
 .../MinifiedAwareResourceReferenceTest.java         |   2 +-
 .../resource/PackageResourceReferenceTest.java      |  17 +++++++----------
 .../{request => }/resource/ResouceBundleTest.java   |   4 ++--
 .../resource/ResourceReferenceLambdaTest.java       |   2 +-
 .../resource/ResourceReferenceLocatingTest.csv      |   0
 .../resource/ResourceReferenceLocatingTest.java     |   2 +-
 .../resource/ResourceReferenceRegistryTest.java     |   2 +-
 .../resource/UrlResourceReferenceTest.java          |   2 +-
 .../{request => }/resource/WriteCallbackTest.java   |   2 +-
 .../core/request/{request => }/resource/a.css       |   0
 .../wicket/core/request/{request => }/resource/a.js |   0
 .../core/request/{request => }/resource/b.css       |   0
 .../wicket/core/request/{request => }/resource/b.js |   0
 .../core/request/{request => }/resource/b.min.css   |   0
 .../core/request/{request => }/resource/b.min.js    |   0
 .../core/request/{request => }/resource/b_de.js     |   0
 .../core/request/{request => }/resource/b_nl.js     |   0
 .../core/request/{request => }/resource/b_nl.min.js |   0
 .../core/request/{request => }/resource/b_nl_BE.js  |   0
 .../request/{request => }/resource/b_nl_BE.min.js   |   0
 .../core/request/{request => }/resource/b_style.js  |   0
 .../request/{request => }/resource/b_style.min.js   |   0
 .../request/{request => }/resource/b_style_nl.js    |   0
 .../{request => }/resource/b_style_nl.min.js        |   0
 .../request/{request => }/resource/b_style_nl_BE.js |   0
 .../{request => }/resource/b_style_nl_BE.min.js     |   0
 .../request/{request => }/resource/b_var_style.js   |   0
 .../{request => }/resource/b_var_style.min.js       |   0
 .../{request => }/resource/b_var_style_nl.js        |   0
 .../{request => }/resource/b_var_style_nl.min.js    |   0
 .../{request => }/resource/b_var_style_nl_BE.js     |   0
 .../{request => }/resource/b_var_style_nl_BE.min.js |   0
 .../caching/ContextRelativeResourceCachingTest.java |   2 +-
 ...enameWithVersionResourceCachingStrategyTest.java |   2 +-
 ...tringWithVersionResourceCachingStrategyTest.java |   2 +-
 .../resource/caching/TestResource.java              |   2 +-
 .../request/{request => }/resource/resource.txt     |   0
 .../request/{request => }/resource/resource_en.txt  |   0
 .../{request => }/resource/resource_en_US.txt       |   0
 .../{request => }/resource/resource_gt_4096.txt     |   0
 .../{request => }/resource/resource_style.txt       |   0
 .../{request => }/resource/resource_style2.txt      |   0
 .../{request => }/resource/resource_style2_pt.txt   |   0
 .../resource/resource_style2_pt_BR.txt              |   0
 .../{request => }/resource/resource_style_en.txt    |   0
 .../{request => }/resource/resource_style_en_US.txt |   0
 .../request/{request => }/resource/resource_var.txt |   0
 .../{request => }/resource/resource_var_en.txt      |   0
 .../{request => }/resource/resource_var_en_US.txt   |   0
 .../{request => }/resource/resource_var_style.txt   |   0
 .../{request => }/resource/resource_var_style2.txt  |   0
 .../resource/resource_var_style2_pt.txt             |   0
 .../resource/resource_var_style2_pt_BR.txt          |   0
 .../resource/resource_var_style_en.txt              |   0
 .../resource/resource_var_style_en_US.txt           |   0
 .../core/util/{util => }/ExceptionTestBase.java     |   2 +-
 .../core/util/{util => }/Log4jEventHistory.java     |   2 +-
 .../util/{util => }/cookies/CookieUtilsTest.java    |   2 +-
 .../cookies/CookieValuePersisterTestPage.html       |   0
 .../cookies/CookieValuePersisterTestPage.java       |   2 +-
 .../PreserveRequestCookieAfterLinkClickTest.java    |   2 +-
 .../SetCookieAndRedirectStatefullTestPage.html      |   0
 .../SetCookieAndRedirectStatefullTestPage.java      |   2 +-
 .../SetCookieAndRedirectStatelessTestPage.html      |   0
 .../SetCookieAndRedirectStatelessTestPage.java      |   2 +-
 .../cookies/SetCookieAndRedirectTest.java           |   2 +-
 .../{util => }/file/WebApplicationPathTest.java     |   3 +--
 .../{util => }/markup/xhtml/WellFormedXmlTest.java  |   2 +-
 .../util/{util => }/template/CssTemplateTest.java   |   2 +-
 .../{util => }/tester/BlockedResourceLinkPage.html  |   0
 .../{util => }/tester/BlockedResourceLinkPage.java  |   2 +-
 .../core/util/{util => }/tester/CookiePage.java     |   2 +-
 .../tester/FormTesterSubmitLinkTest$TestPage.html   |   0
 .../{util => }/tester/FormTesterSubmitLinkTest.java |   2 +-
 .../core/util/{util => }/tester/FormTesterTest.java |   4 ++--
 .../util/{util => }/tester/MockAjaxFormPage.html    |   0
 .../util/{util => }/tester/MockAjaxFormPage.java    |   2 +-
 .../{util => }/tester/MockFormFileUploadPage.html   |   0
 .../{util => }/tester/MockFormFileUploadPage.java   |   2 +-
 .../core/util/{util => }/tester/MockFormPage.html   |   0
 .../core/util/{util => }/tester/MockFormPage.java   |   2 +-
 .../util/{util => }/tester/MockFormSubmitsPage.html |   0
 .../util/{util => }/tester/MockFormSubmitsPage.java |   2 +-
 .../MockPageAjaxSubmitLinkSubmitsWholeForm.html     |   0
 .../MockPageAjaxSubmitLinkSubmitsWholeForm.java     |   2 +-
 .../MockPageParameterPage$MockInnerClassPage.html   |   0
 .../{util => }/tester/MockPageParameterPage.html    |   0
 .../{util => }/tester/MockPageParameterPage.java    |   2 +-
 .../MockPageWithFormAndAjaxFormSubmitBehavior.html  |   0
 .../MockPageWithFormAndAjaxFormSubmitBehavior.java  |   2 +-
 .../tester/MockPageWithFormAndCheckGroup.html       |   0
 .../tester/MockPageWithFormAndCheckGroup.java       |   2 +-
 .../tester/MockPageWithLabelInEnclosure.html        |   0
 .../tester/MockPageWithLabelInEnclosure.java        |   2 +-
 .../{util => }/tester/MockPageWithLinkAndLabel.html |   0
 .../{util => }/tester/MockPageWithLinkAndLabel.java |   2 +-
 .../{util => }/tester/MockResourceLinkPage.html     |   0
 .../{util => }/tester/MockResourceLinkPage.java     |   2 +-
 .../core/util/{util => }/tester/NestedFormPage.html |   0
 .../core/util/{util => }/tester/NestedFormPage.java |   2 +-
 .../StartComponentInPageRedirectToRenderTest.java   |   2 +-
 .../core/util/{util => }/tester/TagTesterTest.java  |   2 +-
 .../tester/WicketTesterClickExternalLinkTest.java   |   2 +-
 .../{util => }/tester/WicketTesterCookieTest.java   |  10 +++++-----
 .../tester/WicketTesterLazyIsPageStatelessBase.java |   2 +-
 .../WicketTesterLazyIsPageStatelessOnePassTest.java |   2 +-
 ...sterLazyIsPageStatelessRedirectToBufferTest.java |   2 +-
 ...sterLazyIsPageStatelessRedirectToRenderTest.java |   2 +-
 .../tester/WicketTesterSessionCreationTest.java     |   2 +-
 .../tester/WicketTesterSessionInvalidateTest.java   |   2 +-
 .../util/{util => }/tester/WicketTesterTest.java    |  20 ++++++++++----------
 .../core/util/{util => }/tester/apps_1/Book.java    |   2 +-
 .../util/{util => }/tester/apps_1/CreateBook.html   |   0
 .../util/{util => }/tester/apps_1/CreateBook.java   |   2 +-
 .../{util => }/tester/apps_1/CreateBook.properties  |   0
 .../{util => }/tester/apps_1/MyMockApplication.java |   2 +-
 .../tester/apps_1/MyMockApplication.properties      |   0
 .../tester/apps_1/MyMockApplication_de.properties   |   0
 .../tester/apps_1/MyMockApplication_nl.properties   |   0
 .../util/{util => }/tester/apps_1/SuccessPage.html  |   0
 .../util/{util => }/tester/apps_1/SuccessPage.java  |   2 +-
 .../util/{util => }/tester/apps_1/ViewBook.html     |   0
 .../util/{util => }/tester/apps_1/ViewBook.java     |   2 +-
 .../util/{util => }/tester/apps_2/LoginPage.html    |   0
 .../util/{util => }/tester/apps_2/LoginPage.java    |   2 +-
 .../util/{util => }/tester/apps_2/RedirectPage.html |   0
 .../util/{util => }/tester/apps_2/RedirectPage.java |   2 +-
 .../core/util/{util => }/tester/apps_2/Test.java    |   2 +-
 .../util/{util => }/tester/apps_3/ChoicePage.html   |   0
 .../util/{util => }/tester/apps_3/ChoicePage.java   |   4 ++--
 .../{util => }/tester/apps_3/FormTesterTest.java    |   4 ++--
 .../util/{util => }/tester/apps_4/EmailPage.html    |   0
 .../util/{util => }/tester/apps_4/EmailPage.java    |   2 +-
 .../{util => }/tester/apps_4/EmailPage.properties   |   0
 .../{util => }/tester/apps_4/FormTesterTest.java    |   2 +-
 .../{util => }/tester/apps_5/AjaxLinkClickTest.java |   2 +-
 .../tester/apps_5/AjaxSubmitLinkClickTest.java      |   2 +-
 .../apps_5/MockPageWithFormAndContainedLink.html    |   0
 .../apps_5/MockPageWithFormAndContainedLink.java    |   2 +-
 .../tester/apps_5/MockPageWithFormAndLink.html      |   0
 .../tester/apps_5/MockPageWithFormAndLink.java      |   2 +-
 .../{util => }/tester/apps_5/MockPageWithLink.html  |   0
 .../{util => }/tester/apps_5/MockPageWithLink.java  |   2 +-
 .../util/{util => }/tester/apps_6/LinkPage.html     |   0
 .../util/{util => }/tester/apps_6/LinkPage.java     |   2 +-
 .../util/{util => }/tester/apps_6/ResultPage.html   |   0
 .../util/{util => }/tester/apps_6/ResultPage.java   |   2 +-
 .../util/{util => }/tester/apps_7/HomePage.html     |   0
 .../util/{util => }/tester/apps_7/HomePage.java     |   2 +-
 .../util/{util => }/tester/apps_7/TestHomePage.java |   2 +-
 .../{util => }/tester/apps_7/WicketApplication.java |   2 +-
 .../ComponentFeedbackResourceTestingPage.html       |   0
 .../ComponentFeedbackResourceTestingPage.java       |   2 +-
 .../tester/apps_8/TestResourceProvidingLabel.java   |   2 +-
 .../apps_8/TestResourceProvidingLabel.properties    |   0
 .../wicket/core/util/{util => }/tester/bg.jpg       | Bin
 .../cookies/CollectAllRequestCookiesPage.java       |   2 +-
 .../util/{util => }/tester/cookies/EndPage.java     |   2 +-
 .../{util => }/tester/cookies/SetCookiePage.java    |   2 +-
 .../wicket/core/util/{util => }/tester/test.html    |   0
 .../InvalidResourceSpecificationExceptionTest.java  |   2 +-
 219 files changed, 469 insertions(+), 156 deletions(-)

diff --git a/pom.xml b/pom.xml
index da78e5c..f660b31 100644
--- a/pom.xml
+++ b/pom.xml
@@ -160,7 +160,7 @@
 		<javax.servlet-api.version>3.1.0</javax.servlet-api.version>
 		<jdk-serializable-functional.version>1.9.0</jdk-serializable-functional.version>
 		<jetty.version>9.4.42.v20210604</jetty.version>
-		<junit.version>5.7.2</junit.version>
+		<junit.version>5.8.0-M1</junit.version>
 		<jsr305.version>3.0.2</jsr305.version>
 		<logback.version>1.2.3</logback.version>
 		<hamcrest.version>2.2</hamcrest.version>
@@ -286,7 +286,6 @@
 			</dependency>
 			<dependency>
 				<groupId>commons-fileupload</groupId>
-<!--				<groupId>com.jwebmp.jpms.commons</groupId>-->
 				<artifactId>commons-fileupload</artifactId>
 				<version>${commons-fileupload.version}</version>
 				<exclusions>
@@ -1020,8 +1019,7 @@
 						<doclint>none</doclint>
 						<additionalJOption>${javadoc.additionalJOption}</additionalJOption>
 						<sourcepath>${project.build.sourceDirectory}</sourcepath>
-						<!-- While we publish modules, our source is pre-JMPS so tell javadoc that. -->
-						<source>8</source>
+						<source>${java.specification.version}</source>
 					</configuration>
 					<executions>
 						<execution>
diff --git a/testing/wicket-common-tests/src/test/java/org/apache/wicket/osgi/OsgiClashingPackagesTest.java b/testing/wicket-common-tests/src/test/java/org/apache/wicket/osgi/OsgiClashingPackagesTest.java
index b7670d0..3af34dd 100644
--- a/testing/wicket-common-tests/src/test/java/org/apache/wicket/osgi/OsgiClashingPackagesTest.java
+++ b/testing/wicket-common-tests/src/test/java/org/apache/wicket/osgi/OsgiClashingPackagesTest.java
@@ -23,11 +23,11 @@ import org.junit.jupiter.api.Test;
  *
  * Based on https://gist.github.com/1977817, contributed by Andreas Pieber
  */
-public class OsgiClashingPackagesTest
+class OsgiClashingPackagesTest
 {
 
 	@Test
-	public void collectProjectPackages() throws IOException
+	void collectProjectPackages() throws IOException
 	{
 		char pathSeparator = System.getProperty("path.separator").charAt(0);
 		String classpath = System.getProperty("java.class.path");
@@ -118,11 +118,14 @@ public class OsgiClashingPackagesTest
 		{
 			for (String packageWithContent : packagesWithContent)
 			{
-				if (!projectBuckets.containsKey(packageWithContent))
+				if (!"".equals(packageWithContent))
 				{
-					projectBuckets.put(packageWithContent, new ArrayList<>());
+					if (!projectBuckets.containsKey(packageWithContent))
+					{
+						projectBuckets.put(packageWithContent, new ArrayList<>());
+					}
+					projectBuckets.get(packageWithContent).add(this);
 				}
-				projectBuckets.get(packageWithContent).add(this);
 			}
 		}
 
diff --git a/wicket-bean-validation/pom.xml b/wicket-bean-validation/pom.xml
index 7cb6ccf..0afc1fc 100644
--- a/wicket-bean-validation/pom.xml
+++ b/wicket-bean-validation/pom.xml
@@ -1,4 +1,20 @@
-<?xml version="1.0"?>
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+   Licensed to the Apache Software Foundation (ASF) under one or more
+   contributor license agreements.  See the NOTICE file distributed with
+   this work for additional information regarding copyright ownership.
+   The ASF licenses this file to You under the Apache License, Version 2.0
+   (the "License"); you may not use this file except in compliance with
+   the License.  You may obtain a copy of the License at
+
+        http://www.apache.org/licenses/LICENSE-2.0
+
+   Unless required by applicable law or agreed to in writing, software
+   distributed under the License is distributed on an "AS IS" BASIS,
+   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+   See the License for the specific language governing permissions and
+   limitations under the License.
+-->
 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
 	<modelVersion>4.0.0</modelVersion>
 	<parent>
diff --git a/wicket-bean-validation/src/main/java/org/apache/wicket/bean/validation/BeanValidationConfiguration.java b/wicket-bean-validation/src/main/java/org/apache/wicket/bean/validation/BeanValidationConfiguration.java
index 7971c84..6133710 100644
--- a/wicket-bean-validation/src/main/java/org/apache/wicket/bean/validation/BeanValidationConfiguration.java
+++ b/wicket-bean-validation/src/main/java/org/apache/wicket/bean/validation/BeanValidationConfiguration.java
@@ -1,3 +1,19 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
 package org.apache.wicket.bean.validation;
 
 import java.lang.annotation.Annotation;
diff --git a/wicket-bean-validation/src/main/java/org/apache/wicket/bean/validation/BeanValidationContext.java b/wicket-bean-validation/src/main/java/org/apache/wicket/bean/validation/BeanValidationContext.java
index 8f1f8b9..bc0b89e 100644
--- a/wicket-bean-validation/src/main/java/org/apache/wicket/bean/validation/BeanValidationContext.java
+++ b/wicket-bean-validation/src/main/java/org/apache/wicket/bean/validation/BeanValidationContext.java
@@ -1,3 +1,19 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
 package org.apache.wicket.bean.validation;
 
 import java.lang.annotation.Annotation;
@@ -52,4 +68,4 @@ public interface BeanValidationContext extends IPropertyResolver
 	 * @return <code>true</code> if required
 	 */
 	boolean isRequiredConstraint(ConstraintDescriptor<?> constraint);
-}
\ No newline at end of file
+}
diff --git a/wicket-bean-validation/src/main/java/org/apache/wicket/bean/validation/ConstraintIterator.java b/wicket-bean-validation/src/main/java/org/apache/wicket/bean/validation/ConstraintIterator.java
index 3110bb8..a81ac4b 100644
--- a/wicket-bean-validation/src/main/java/org/apache/wicket/bean/validation/ConstraintIterator.java
+++ b/wicket-bean-validation/src/main/java/org/apache/wicket/bean/validation/ConstraintIterator.java
@@ -1,3 +1,19 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
 package org.apache.wicket.bean.validation;
 
 import java.util.ArrayList;
diff --git a/wicket-bean-validation/src/main/java/org/apache/wicket/bean/validation/DefaultPropertyResolver.java b/wicket-bean-validation/src/main/java/org/apache/wicket/bean/validation/DefaultPropertyResolver.java
index 4409208..3f1d612 100644
--- a/wicket-bean-validation/src/main/java/org/apache/wicket/bean/validation/DefaultPropertyResolver.java
+++ b/wicket-bean-validation/src/main/java/org/apache/wicket/bean/validation/DefaultPropertyResolver.java
@@ -1,3 +1,19 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
 package org.apache.wicket.bean.validation;
 
 import org.apache.wicket.WicketRuntimeException;
diff --git a/wicket-bean-validation/src/main/java/org/apache/wicket/bean/validation/DefaultValidatorProvider.java b/wicket-bean-validation/src/main/java/org/apache/wicket/bean/validation/DefaultValidatorProvider.java
index 645d625..d31eed4 100644
--- a/wicket-bean-validation/src/main/java/org/apache/wicket/bean/validation/DefaultValidatorProvider.java
+++ b/wicket-bean-validation/src/main/java/org/apache/wicket/bean/validation/DefaultValidatorProvider.java
@@ -1,3 +1,19 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
 package org.apache.wicket.bean.validation;
 
 import java.util.function.Supplier;
diff --git a/wicket-bean-validation/src/main/java/org/apache/wicket/bean/validation/DefaultViolationTranslator.java b/wicket-bean-validation/src/main/java/org/apache/wicket/bean/validation/DefaultViolationTranslator.java
index 7b006aa..8f9adc8 100644
--- a/wicket-bean-validation/src/main/java/org/apache/wicket/bean/validation/DefaultViolationTranslator.java
+++ b/wicket-bean-validation/src/main/java/org/apache/wicket/bean/validation/DefaultViolationTranslator.java
@@ -1,3 +1,19 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
 package org.apache.wicket.bean.validation;
 
 import java.util.ArrayList;
@@ -92,4 +108,4 @@ public class DefaultViolationTranslator implements IViolationTranslator
 	
 		return null;
 	}
-}
\ No newline at end of file
+}
diff --git a/wicket-bean-validation/src/main/java/org/apache/wicket/bean/validation/GroupsModel.java b/wicket-bean-validation/src/main/java/org/apache/wicket/bean/validation/GroupsModel.java
index ff97980..24337f9 100644
--- a/wicket-bean-validation/src/main/java/org/apache/wicket/bean/validation/GroupsModel.java
+++ b/wicket-bean-validation/src/main/java/org/apache/wicket/bean/validation/GroupsModel.java
@@ -1,3 +1,19 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
 package org.apache.wicket.bean.validation;
 
 import java.util.ArrayList;
diff --git a/wicket-bean-validation/src/main/java/org/apache/wicket/bean/validation/IPropertyResolver.java b/wicket-bean-validation/src/main/java/org/apache/wicket/bean/validation/IPropertyResolver.java
index dabe39f..51f83c7 100644
--- a/wicket-bean-validation/src/main/java/org/apache/wicket/bean/validation/IPropertyResolver.java
+++ b/wicket-bean-validation/src/main/java/org/apache/wicket/bean/validation/IPropertyResolver.java
@@ -1,3 +1,19 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
 package org.apache.wicket.bean.validation;
 
 import org.apache.wicket.markup.html.form.FormComponent;
diff --git a/wicket-bean-validation/src/main/java/org/apache/wicket/bean/validation/ITagModifier.java b/wicket-bean-validation/src/main/java/org/apache/wicket/bean/validation/ITagModifier.java
index 962d9b1..069e314 100644
--- a/wicket-bean-validation/src/main/java/org/apache/wicket/bean/validation/ITagModifier.java
+++ b/wicket-bean-validation/src/main/java/org/apache/wicket/bean/validation/ITagModifier.java
@@ -1,3 +1,19 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
 package org.apache.wicket.bean.validation;
 
 import java.lang.annotation.Annotation;
diff --git a/wicket-bean-validation/src/main/java/org/apache/wicket/bean/validation/IViolationTranslator.java b/wicket-bean-validation/src/main/java/org/apache/wicket/bean/validation/IViolationTranslator.java
index f9e594a..a8a9201 100644
--- a/wicket-bean-validation/src/main/java/org/apache/wicket/bean/validation/IViolationTranslator.java
+++ b/wicket-bean-validation/src/main/java/org/apache/wicket/bean/validation/IViolationTranslator.java
@@ -1,3 +1,19 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
 package org.apache.wicket.bean.validation;
 
 import javax.validation.ConstraintViolation;
diff --git a/wicket-bean-validation/src/main/java/org/apache/wicket/bean/validation/Property.java b/wicket-bean-validation/src/main/java/org/apache/wicket/bean/validation/Property.java
index cabe799..b411f17 100644
--- a/wicket-bean-validation/src/main/java/org/apache/wicket/bean/validation/Property.java
+++ b/wicket-bean-validation/src/main/java/org/apache/wicket/bean/validation/Property.java
@@ -1,3 +1,19 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
 package org.apache.wicket.bean.validation;
 
 import java.io.Serializable;
diff --git a/wicket-bean-validation/src/main/java/org/apache/wicket/bean/validation/PropertyValidator.java b/wicket-bean-validation/src/main/java/org/apache/wicket/bean/validation/PropertyValidator.java
index 437c04a..b5931fa 100644
--- a/wicket-bean-validation/src/main/java/org/apache/wicket/bean/validation/PropertyValidator.java
+++ b/wicket-bean-validation/src/main/java/org/apache/wicket/bean/validation/PropertyValidator.java
@@ -1,3 +1,19 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
 package org.apache.wicket.bean.validation;
 
 import java.util.Arrays;
diff --git a/wicket-bean-validation/src/main/java/org/apache/wicket/bean/validation/PropertyValidator.properties b/wicket-bean-validation/src/main/java/org/apache/wicket/bean/validation/PropertyValidator.properties
index 29f5511..981b638 100644
--- a/wicket-bean-validation/src/main/java/org/apache/wicket/bean/validation/PropertyValidator.properties
+++ b/wicket-bean-validation/src/main/java/org/apache/wicket/bean/validation/PropertyValidator.properties
@@ -1,3 +1,17 @@
+#  Licensed to the Apache Software Foundation (ASF) under one or more
+#  contributor license agreements.  See the NOTICE file distributed with
+#  this work for additional information regarding copyright ownership.
+#  The ASF licenses this file to You under the Apache License, Version 2.0
+#  (the "License"); you may not use this file except in compliance with
+#  the License.  You may obtain a copy of the License at
+#
+#      http://www.apache.org/licenses/LICENSE-2.0
+#
+#  Unless required by applicable law or agreed to in writing, software
+#  distributed under the License is distributed on an "AS IS" BASIS,
+#  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+#  See the License for the specific language governing permissions and
+#  limitations under the License.
 javax.validation.constraints.AssertFalse.message        = '${label}' must be false
 javax.validation.constraints.AssertTrue.message         = '${label}' must be true
 javax.validation.constraints.DecimalMax.message         = '${label}' must be less than or equal to ${value}
diff --git a/wicket-bean-validation/src/main/java/org/apache/wicket/bean/validation/SessionLocaleInterpolator.java b/wicket-bean-validation/src/main/java/org/apache/wicket/bean/validation/SessionLocaleInterpolator.java
index 02828a3..a0dd59f 100644
--- a/wicket-bean-validation/src/main/java/org/apache/wicket/bean/validation/SessionLocaleInterpolator.java
+++ b/wicket-bean-validation/src/main/java/org/apache/wicket/bean/validation/SessionLocaleInterpolator.java
@@ -1,3 +1,19 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
 package org.apache.wicket.bean.validation;
 
 import java.util.Locale;
@@ -54,4 +70,4 @@ public class SessionLocaleInterpolator implements MessageInterpolator
 	{
 		return Session.exists() ? Session.get().getLocale() : null;
 	}
-}
\ No newline at end of file
+}
diff --git a/wicket-bean-validation/src/main/java/org/apache/wicket/bean/validation/SizeTagModifier.java b/wicket-bean-validation/src/main/java/org/apache/wicket/bean/validation/SizeTagModifier.java
index 9f2aa67..8c42548 100644
--- a/wicket-bean-validation/src/main/java/org/apache/wicket/bean/validation/SizeTagModifier.java
+++ b/wicket-bean-validation/src/main/java/org/apache/wicket/bean/validation/SizeTagModifier.java
@@ -1,3 +1,19 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
 package org.apache.wicket.bean.validation;
 
 import javax.validation.constraints.Size;
diff --git a/wicket-bean-validation/src/main/java/org/apache/wicket/bean/validation/ValidationModelResolver.java b/wicket-bean-validation/src/main/java/org/apache/wicket/bean/validation/ValidationModelResolver.java
index cb8cfcd..58f7409 100644
--- a/wicket-bean-validation/src/main/java/org/apache/wicket/bean/validation/ValidationModelResolver.java
+++ b/wicket-bean-validation/src/main/java/org/apache/wicket/bean/validation/ValidationModelResolver.java
@@ -1,3 +1,19 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
 package org.apache.wicket.bean.validation;
 
 import org.apache.wicket.markup.html.form.FormComponent;
diff --git a/wicket-bean-validation/src/test/java/org/apache/wicket/bean/validation/PropertyValidatorRequiredTest.java b/wicket-bean-validation/src/test/java/org/apache/wicket/bean/validation/PropertyValidatorRequiredTest.java
index 4e56c9b..cdb18a7 100644
--- a/wicket-bean-validation/src/test/java/org/apache/wicket/bean/validation/PropertyValidatorRequiredTest.java
+++ b/wicket-bean-validation/src/test/java/org/apache/wicket/bean/validation/PropertyValidatorRequiredTest.java
@@ -1,3 +1,19 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
 package org.apache.wicket.bean.validation;
 
 import org.apache.wicket.MarkupContainer;
diff --git a/wicket-bean-validation/src/test/java/org/apache/wicket/bean/validation/TestValidatableBean.java b/wicket-bean-validation/src/test/java/org/apache/wicket/bean/validation/TestValidatableBean.java
index e33c7b9..0105484 100644
--- a/wicket-bean-validation/src/test/java/org/apache/wicket/bean/validation/TestValidatableBean.java
+++ b/wicket-bean-validation/src/test/java/org/apache/wicket/bean/validation/TestValidatableBean.java
@@ -1,3 +1,19 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
 package org.apache.wicket.bean.validation;
 
 import javax.validation.constraints.NotNull;
diff --git a/wicket-bean-validation/src/test/java/org/apache/wicket/bean/validation/ValidationModelResolverTest.java b/wicket-bean-validation/src/test/java/org/apache/wicket/bean/validation/ValidationModelResolverTest.java
index a174ed4..2c390f4 100644
--- a/wicket-bean-validation/src/test/java/org/apache/wicket/bean/validation/ValidationModelResolverTest.java
+++ b/wicket-bean-validation/src/test/java/org/apache/wicket/bean/validation/ValidationModelResolverTest.java
@@ -1,3 +1,19 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
 package org.apache.wicket.bean.validation;
 
 import org.apache.wicket.markup.html.form.TextField;
@@ -44,4 +60,4 @@ public class ValidationModelResolverTest
         assertEquals("text", model.getPropertyField().getName());
     }
 
-}
\ No newline at end of file
+}
diff --git a/wicket-core/src/main/java/module-info.java b/wicket-core/src/main/java/module-info.java
index 4e2ca67..bf3a6e4 100644
--- a/wicket-core/src/main/java/module-info.java
+++ b/wicket-core/src/main/java/module-info.java
@@ -16,7 +16,6 @@
  */
 
 module org.apache.wicket.core {
-    requires java.base;
     requires java.instrument;
     requires java.desktop;
     requires java.sql;
diff --git a/wicket-core/src/test/java/META-INF/resources/org/apache/wicket/request/resource/sample.js b/wicket-core/src/test/java/META-INF/resources/org/apache/wicket/core/request/resource/sample.js
similarity index 100%
rename from wicket-core/src/test/java/META-INF/resources/org/apache/wicket/request/resource/sample.js
rename to wicket-core/src/test/java/META-INF/resources/org/apache/wicket/core/request/resource/sample.js
diff --git a/wicket-core/src/test/java/org/apache/wicket/ajax/form/AjaxFormSubmitBehaviorTest.java b/wicket-core/src/test/java/org/apache/wicket/ajax/form/AjaxFormSubmitBehaviorTest.java
index f38a75f..70854f3 100644
--- a/wicket-core/src/test/java/org/apache/wicket/ajax/form/AjaxFormSubmitBehaviorTest.java
+++ b/wicket-core/src/test/java/org/apache/wicket/ajax/form/AjaxFormSubmitBehaviorTest.java
@@ -22,7 +22,7 @@ import static org.junit.jupiter.api.Assertions.assertTrue;
 import org.apache.wicket.ajax.markup.html.form.AjaxButton;
 import org.apache.wicket.markup.html.form.Form;
 import org.apache.wicket.util.tester.FormTester;
-import org.apache.wicket.core.util.util.tester.NestedFormPage;
+import org.apache.wicket.core.util.tester.NestedFormPage;
 import org.apache.wicket.util.tester.WicketTestCase;
 import org.junit.jupiter.api.Test;
 
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/request/request/cycle/MultiRequestCycleListenerCallOrderApplication.java b/wicket-core/src/test/java/org/apache/wicket/core/request/cycle/MultiRequestCycleListenerCallOrderApplication.java
similarity index 98%
rename from wicket-core/src/test/java/org/apache/wicket/core/request/request/cycle/MultiRequestCycleListenerCallOrderApplication.java
rename to wicket-core/src/test/java/org/apache/wicket/core/request/cycle/MultiRequestCycleListenerCallOrderApplication.java
index dd21721..a7a699d 100644
--- a/wicket-core/src/test/java/org/apache/wicket/core/request/request/cycle/MultiRequestCycleListenerCallOrderApplication.java
+++ b/wicket-core/src/test/java/org/apache/wicket/core/request/cycle/MultiRequestCycleListenerCallOrderApplication.java
@@ -14,7 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.wicket.core.request.request.cycle;
+package org.apache.wicket.core.request.cycle;
 
 import java.util.ArrayList;
 
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/request/request/cycle/MultiRequestCycleListenerCallOrderPage.html b/wicket-core/src/test/java/org/apache/wicket/core/request/cycle/MultiRequestCycleListenerCallOrderPage.html
similarity index 100%
rename from wicket-core/src/test/java/org/apache/wicket/core/request/request/cycle/MultiRequestCycleListenerCallOrderPage.html
rename to wicket-core/src/test/java/org/apache/wicket/core/request/cycle/MultiRequestCycleListenerCallOrderPage.html
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/request/request/cycle/MultiRequestCycleListenerCallOrderPage.java b/wicket-core/src/test/java/org/apache/wicket/core/request/cycle/MultiRequestCycleListenerCallOrderPage.java
similarity index 96%
rename from wicket-core/src/test/java/org/apache/wicket/core/request/request/cycle/MultiRequestCycleListenerCallOrderPage.java
rename to wicket-core/src/test/java/org/apache/wicket/core/request/cycle/MultiRequestCycleListenerCallOrderPage.java
index 7ea37e9..75fc867 100644
--- a/wicket-core/src/test/java/org/apache/wicket/core/request/request/cycle/MultiRequestCycleListenerCallOrderPage.java
+++ b/wicket-core/src/test/java/org/apache/wicket/core/request/cycle/MultiRequestCycleListenerCallOrderPage.java
@@ -14,7 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.wicket.core.request.request.cycle;
+package org.apache.wicket.core.request.cycle;
 
 import org.apache.wicket.ajax.AjaxRequestTarget;
 import org.apache.wicket.ajax.markup.html.AjaxLink;
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/request/request/cycle/MultiRequestCycleListenerCallOrderTest.java b/wicket-core/src/test/java/org/apache/wicket/core/request/cycle/MultiRequestCycleListenerCallOrderTest.java
similarity index 99%
rename from wicket-core/src/test/java/org/apache/wicket/core/request/request/cycle/MultiRequestCycleListenerCallOrderTest.java
rename to wicket-core/src/test/java/org/apache/wicket/core/request/cycle/MultiRequestCycleListenerCallOrderTest.java
index fcac76d..9d530f2 100644
--- a/wicket-core/src/test/java/org/apache/wicket/core/request/request/cycle/MultiRequestCycleListenerCallOrderTest.java
+++ b/wicket-core/src/test/java/org/apache/wicket/core/request/cycle/MultiRequestCycleListenerCallOrderTest.java
@@ -14,7 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.wicket.core.request.request.cycle;
+package org.apache.wicket.core.request.cycle;
 
 import static java.util.Arrays.asList;
 import static org.junit.jupiter.api.Assertions.assertEquals;
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/request/request/cycle/PageRequestHandlerTrackerTest.java b/wicket-core/src/test/java/org/apache/wicket/core/request/cycle/PageRequestHandlerTrackerTest.java
similarity index 98%
rename from wicket-core/src/test/java/org/apache/wicket/core/request/request/cycle/PageRequestHandlerTrackerTest.java
rename to wicket-core/src/test/java/org/apache/wicket/core/request/cycle/PageRequestHandlerTrackerTest.java
index 23b3768..e023932 100644
--- a/wicket-core/src/test/java/org/apache/wicket/core/request/request/cycle/PageRequestHandlerTrackerTest.java
+++ b/wicket-core/src/test/java/org/apache/wicket/core/request/cycle/PageRequestHandlerTrackerTest.java
@@ -14,7 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.wicket.core.request.request.cycle;
+package org.apache.wicket.core.request.cycle;
 
 import static org.junit.jupiter.api.Assertions.assertEquals;
 import static org.junit.jupiter.api.Assertions.assertNotNull;
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/request/request/cycle/RequestCycleListenerDetachOrderTest.java b/wicket-core/src/test/java/org/apache/wicket/core/request/cycle/RequestCycleListenerDetachOrderTest.java
similarity index 98%
rename from wicket-core/src/test/java/org/apache/wicket/core/request/request/cycle/RequestCycleListenerDetachOrderTest.java
rename to wicket-core/src/test/java/org/apache/wicket/core/request/cycle/RequestCycleListenerDetachOrderTest.java
index eb04ebd..17d3647 100644
--- a/wicket-core/src/test/java/org/apache/wicket/core/request/request/cycle/RequestCycleListenerDetachOrderTest.java
+++ b/wicket-core/src/test/java/org/apache/wicket/core/request/cycle/RequestCycleListenerDetachOrderTest.java
@@ -14,7 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.wicket.core.request.request.cycle;
+package org.apache.wicket.core.request.cycle;
 
 import static org.junit.jupiter.api.Assertions.assertEquals;
 
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/request/request/cycle/RequestCycleListenerTest.java b/wicket-core/src/test/java/org/apache/wicket/core/request/cycle/RequestCycleListenerTest.java
similarity index 99%
rename from wicket-core/src/test/java/org/apache/wicket/core/request/request/cycle/RequestCycleListenerTest.java
rename to wicket-core/src/test/java/org/apache/wicket/core/request/cycle/RequestCycleListenerTest.java
index 438d44d..2700395 100644
--- a/wicket-core/src/test/java/org/apache/wicket/core/request/request/cycle/RequestCycleListenerTest.java
+++ b/wicket-core/src/test/java/org/apache/wicket/core/request/cycle/RequestCycleListenerTest.java
@@ -14,7 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.wicket.core.request.request.cycle;
+package org.apache.wicket.core.request.cycle;
 
 import static org.junit.jupiter.api.Assertions.assertEquals;
 import static org.junit.jupiter.api.Assertions.assertFalse;
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/request/request/cycle/RequestCycleUrlForTest.java b/wicket-core/src/test/java/org/apache/wicket/core/request/cycle/RequestCycleUrlForTest.java
similarity index 99%
rename from wicket-core/src/test/java/org/apache/wicket/core/request/request/cycle/RequestCycleUrlForTest.java
rename to wicket-core/src/test/java/org/apache/wicket/core/request/cycle/RequestCycleUrlForTest.java
index 96afdb2..413164e 100644
--- a/wicket-core/src/test/java/org/apache/wicket/core/request/request/cycle/RequestCycleUrlForTest.java
+++ b/wicket-core/src/test/java/org/apache/wicket/core/request/cycle/RequestCycleUrlForTest.java
@@ -14,7 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.wicket.core.request.request.cycle;
+package org.apache.wicket.core.request.cycle;
 
 import static org.junit.jupiter.api.Assertions.assertEquals;
 import static org.mockito.ArgumentMatchers.argThat;
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/request/request/cycle/RequestHandlerExecutorTest.java b/wicket-core/src/test/java/org/apache/wicket/core/request/cycle/RequestHandlerExecutorTest.java
similarity index 98%
rename from wicket-core/src/test/java/org/apache/wicket/core/request/request/cycle/RequestHandlerExecutorTest.java
rename to wicket-core/src/test/java/org/apache/wicket/core/request/cycle/RequestHandlerExecutorTest.java
index 42b1eb7..1cdd45e 100644
--- a/wicket-core/src/test/java/org/apache/wicket/core/request/request/cycle/RequestHandlerExecutorTest.java
+++ b/wicket-core/src/test/java/org/apache/wicket/core/request/cycle/RequestHandlerExecutorTest.java
@@ -14,7 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.wicket.core.request.request.cycle;
+package org.apache.wicket.core.request.cycle;
 
 import org.apache.wicket.request.IRequestCycle;
 import org.apache.wicket.request.IRequestHandler;
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/request/request/cycle/RerenderAjaxPage.html b/wicket-core/src/test/java/org/apache/wicket/core/request/cycle/RerenderAjaxPage.html
similarity index 100%
rename from wicket-core/src/test/java/org/apache/wicket/core/request/request/cycle/RerenderAjaxPage.html
rename to wicket-core/src/test/java/org/apache/wicket/core/request/cycle/RerenderAjaxPage.html
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/request/request/cycle/RerenderAjaxPage.java b/wicket-core/src/test/java/org/apache/wicket/core/request/cycle/RerenderAjaxPage.java
similarity index 98%
rename from wicket-core/src/test/java/org/apache/wicket/core/request/request/cycle/RerenderAjaxPage.java
rename to wicket-core/src/test/java/org/apache/wicket/core/request/cycle/RerenderAjaxPage.java
index c049b7e..01501da 100644
--- a/wicket-core/src/test/java/org/apache/wicket/core/request/request/cycle/RerenderAjaxPage.java
+++ b/wicket-core/src/test/java/org/apache/wicket/core/request/cycle/RerenderAjaxPage.java
@@ -14,7 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.wicket.core.request.request.cycle;
+package org.apache.wicket.core.request.cycle;
 
 import org.apache.wicket.ajax.AjaxRequestTarget;
 import org.apache.wicket.ajax.form.AjaxFormValidatingBehavior;
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/request/request/cycle/RerenderPage.html b/wicket-core/src/test/java/org/apache/wicket/core/request/cycle/RerenderPage.html
similarity index 100%
rename from wicket-core/src/test/java/org/apache/wicket/core/request/request/cycle/RerenderPage.html
rename to wicket-core/src/test/java/org/apache/wicket/core/request/cycle/RerenderPage.html
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/request/request/cycle/RerenderPage.java b/wicket-core/src/test/java/org/apache/wicket/core/request/cycle/RerenderPage.java
similarity index 97%
rename from wicket-core/src/test/java/org/apache/wicket/core/request/request/cycle/RerenderPage.java
rename to wicket-core/src/test/java/org/apache/wicket/core/request/cycle/RerenderPage.java
index 7505d27..e9de1ce 100644
--- a/wicket-core/src/test/java/org/apache/wicket/core/request/request/cycle/RerenderPage.java
+++ b/wicket-core/src/test/java/org/apache/wicket/core/request/cycle/RerenderPage.java
@@ -14,7 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.wicket.core.request.request.cycle;
+package org.apache.wicket.core.request.cycle;
 
 import java.io.Serializable;
 import java.time.Duration;
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/request/request/cycle/RerenderPageTest.java b/wicket-core/src/test/java/org/apache/wicket/core/request/cycle/RerenderPageTest.java
similarity index 96%
rename from wicket-core/src/test/java/org/apache/wicket/core/request/request/cycle/RerenderPageTest.java
rename to wicket-core/src/test/java/org/apache/wicket/core/request/cycle/RerenderPageTest.java
index 6a6278e..f2a3170 100644
--- a/wicket-core/src/test/java/org/apache/wicket/core/request/request/cycle/RerenderPageTest.java
+++ b/wicket-core/src/test/java/org/apache/wicket/core/request/cycle/RerenderPageTest.java
@@ -14,14 +14,13 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.wicket.core.request.request.cycle;
+package org.apache.wicket.core.request.cycle;
 
 import static org.hamcrest.CoreMatchers.containsString;
 import static org.hamcrest.MatcherAssert.assertThat;
 
 import org.apache.wicket.core.request.mapper.MountedMapper;
 import org.apache.wicket.protocol.http.mock.MockHttpServletResponse;
-import org.apache.wicket.core.request.request.cycle.RerenderPage.Supplier;
 import org.apache.wicket.request.mapper.parameter.PageParameters;
 import org.apache.wicket.util.tester.WicketTestCase;
 import org.junit.jupiter.api.Test;
@@ -54,7 +53,7 @@ class RerenderPageTest extends WicketTestCase
 		tester.assertContains("<!-- I should be present 1 -->");
 
 		// add a supplier to modify the URL during render
-		page.setNewValueHandler(new Supplier<Integer>()
+		page.setNewValueHandler(new RerenderPage.Supplier<Integer>()
 		{
 			private static final long serialVersionUID = 1L;
 
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/request/request/cycle/UrlRendererTest.java b/wicket-core/src/test/java/org/apache/wicket/core/request/cycle/UrlRendererTest.java
similarity index 99%
rename from wicket-core/src/test/java/org/apache/wicket/core/request/request/cycle/UrlRendererTest.java
rename to wicket-core/src/test/java/org/apache/wicket/core/request/cycle/UrlRendererTest.java
index dfa5053..ce244a9 100644
--- a/wicket-core/src/test/java/org/apache/wicket/core/request/request/cycle/UrlRendererTest.java
+++ b/wicket-core/src/test/java/org/apache/wicket/core/request/cycle/UrlRendererTest.java
@@ -14,7 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.wicket.core.request.request.cycle;
+package org.apache.wicket.core.request.cycle;
 
 import static java.util.Arrays.asList;
 import static org.junit.jupiter.api.Assertions.assertEquals;
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/request/mapper/AbstractBookmarkableMapperTest.java b/wicket-core/src/test/java/org/apache/wicket/core/request/mapper/AbstractBookmarkableMapperTest.java
index a08d93e..7eae474 100644
--- a/wicket-core/src/test/java/org/apache/wicket/core/request/mapper/AbstractBookmarkableMapperTest.java
+++ b/wicket-core/src/test/java/org/apache/wicket/core/request/mapper/AbstractBookmarkableMapperTest.java
@@ -29,7 +29,7 @@ import org.apache.wicket.request.Request;
 import org.apache.wicket.request.Url;
 import org.apache.wicket.request.mapper.info.PageInfo;
 import org.apache.wicket.util.tester.WicketTestCase;
-import org.apache.wicket.core.util.util.tester.WicketTesterLazyIsPageStatelessRedirectToBufferTest.EmptyPage;
+import org.apache.wicket.core.util.tester.WicketTesterLazyIsPageStatelessRedirectToBufferTest.EmptyPage;
 import org.junit.jupiter.api.Test;
 
 /**
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/request/request/mapper/CustomHomePageTest.java b/wicket-core/src/test/java/org/apache/wicket/core/request/mapper/CustomHomePageTest.java
similarity index 98%
rename from wicket-core/src/test/java/org/apache/wicket/core/request/request/mapper/CustomHomePageTest.java
rename to wicket-core/src/test/java/org/apache/wicket/core/request/mapper/CustomHomePageTest.java
index 0d332f3..94137a9 100644
--- a/wicket-core/src/test/java/org/apache/wicket/core/request/request/mapper/CustomHomePageTest.java
+++ b/wicket-core/src/test/java/org/apache/wicket/core/request/mapper/CustomHomePageTest.java
@@ -14,7 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.wicket.core.request.request.mapper;
+package org.apache.wicket.core.request.mapper;
 
 import org.apache.wicket.Application;
 import org.apache.wicket.protocol.http.WebApplication;
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/request/request/mapper/info/ComponentInfoTest.java b/wicket-core/src/test/java/org/apache/wicket/core/request/mapper/info/ComponentInfoTest.java
similarity index 98%
rename from wicket-core/src/test/java/org/apache/wicket/core/request/request/mapper/info/ComponentInfoTest.java
rename to wicket-core/src/test/java/org/apache/wicket/core/request/mapper/info/ComponentInfoTest.java
index 240537c..60f2fe9 100644
--- a/wicket-core/src/test/java/org/apache/wicket/core/request/request/mapper/info/ComponentInfoTest.java
+++ b/wicket-core/src/test/java/org/apache/wicket/core/request/mapper/info/ComponentInfoTest.java
@@ -14,7 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.wicket.core.request.request.mapper.info;
+package org.apache.wicket.core.request.mapper.info;
 
 import static org.junit.jupiter.api.Assertions.assertEquals;
 import static org.junit.jupiter.api.Assertions.assertNull;
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/request/request/mapper/info/PageComponentInfoTest.java b/wicket-core/src/test/java/org/apache/wicket/core/request/mapper/info/PageComponentInfoTest.java
similarity index 97%
rename from wicket-core/src/test/java/org/apache/wicket/core/request/request/mapper/info/PageComponentInfoTest.java
rename to wicket-core/src/test/java/org/apache/wicket/core/request/mapper/info/PageComponentInfoTest.java
index 03ddc01..3802f7d 100644
--- a/wicket-core/src/test/java/org/apache/wicket/core/request/request/mapper/info/PageComponentInfoTest.java
+++ b/wicket-core/src/test/java/org/apache/wicket/core/request/mapper/info/PageComponentInfoTest.java
@@ -14,7 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.wicket.core.request.request.mapper.info;
+package org.apache.wicket.core.request.mapper.info;
 
 import static org.junit.jupiter.api.Assertions.assertEquals;
 import static org.junit.jupiter.api.Assertions.assertNotNull;
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/BundlesPage.html b/wicket-core/src/test/java/org/apache/wicket/core/request/resource/BundlesPage.html
similarity index 100%
rename from wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/BundlesPage.html
rename to wicket-core/src/test/java/org/apache/wicket/core/request/resource/BundlesPage.html
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/BundlesPage.java b/wicket-core/src/test/java/org/apache/wicket/core/request/resource/BundlesPage.java
similarity index 96%
rename from wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/BundlesPage.java
rename to wicket-core/src/test/java/org/apache/wicket/core/request/resource/BundlesPage.java
index f18819b..88d07bb 100644
--- a/wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/BundlesPage.java
+++ b/wicket-core/src/test/java/org/apache/wicket/core/request/resource/BundlesPage.java
@@ -14,7 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.wicket.core.request.request.resource;
+package org.apache.wicket.core.request.resource;
 
 import org.apache.wicket.markup.head.IHeaderResponse;
 import org.apache.wicket.markup.head.JavaScriptHeaderItem;
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/BundlesPage_ext_result.html b/wicket-core/src/test/java/org/apache/wicket/core/request/resource/BundlesPage_ext_result.html
similarity index 100%
rename from wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/BundlesPage_ext_result.html
rename to wicket-core/src/test/java/org/apache/wicket/core/request/resource/BundlesPage_ext_result.html
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/BundlesPage_result.html b/wicket-core/src/test/java/org/apache/wicket/core/request/resource/BundlesPage_result.html
similarity index 56%
rename from wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/BundlesPage_result.html
rename to wicket-core/src/test/java/org/apache/wicket/core/request/resource/BundlesPage_result.html
index 02caf0a..345aaf1 100644
--- a/wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/BundlesPage_result.html
+++ b/wicket-core/src/test/java/org/apache/wicket/core/request/resource/BundlesPage_result.html
@@ -1,5 +1,5 @@
 <html>
-<head><script type="text/javascript" src="../resource/org.apache.wicket.request.resource.ResouceBundleTest/ab.js"></script>
+<head><script type="text/javascript" src="../resource/org.apache.wicket.core.request.resource.ResouceBundleTest/ab.js"></script>
 </head><body>
 
 </body>
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/BundlesPage_result_defer.html b/wicket-core/src/test/java/org/apache/wicket/core/request/resource/BundlesPage_result_defer.html
similarity index 52%
rename from wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/BundlesPage_result_defer.html
rename to wicket-core/src/test/java/org/apache/wicket/core/request/resource/BundlesPage_result_defer.html
index ebaf99e..995a44c 100644
--- a/wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/BundlesPage_result_defer.html
+++ b/wicket-core/src/test/java/org/apache/wicket/core/request/resource/BundlesPage_result_defer.html
@@ -1,5 +1,5 @@
 <html>
-<head><script type="text/javascript" defer="defer" src="../resource/org.apache.wicket.request.resource.ResouceBundleTest/ab.js"></script>
+<head><script type="text/javascript" defer="defer" src="../resource/org.apache.wicket.core.request.resource.ResouceBundleTest/ab.js"></script>
 </head><body>
 
 </body>
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/ByteArrayResourceTest.java b/wicket-core/src/test/java/org/apache/wicket/core/request/resource/ByteArrayResourceTest.java
similarity index 98%
rename from wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/ByteArrayResourceTest.java
rename to wicket-core/src/test/java/org/apache/wicket/core/request/resource/ByteArrayResourceTest.java
index 35b77b8..9af925d 100644
--- a/wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/ByteArrayResourceTest.java
+++ b/wicket-core/src/test/java/org/apache/wicket/core/request/resource/ByteArrayResourceTest.java
@@ -14,7 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.wicket.core.request.request.resource;
+package org.apache.wicket.core.request.resource;
 
 import static org.junit.jupiter.api.Assertions.assertEquals;
 import static org.mockito.ArgumentMatchers.eq;
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/CharSequenceResourceTest.java b/wicket-core/src/test/java/org/apache/wicket/core/request/resource/CharSequenceResourceTest.java
similarity index 97%
rename from wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/CharSequenceResourceTest.java
rename to wicket-core/src/test/java/org/apache/wicket/core/request/resource/CharSequenceResourceTest.java
index 371ab90..23404aa 100644
--- a/wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/CharSequenceResourceTest.java
+++ b/wicket-core/src/test/java/org/apache/wicket/core/request/resource/CharSequenceResourceTest.java
@@ -14,7 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.wicket.core.request.request.resource;
+package org.apache.wicket.core.request.resource;
 
 import static org.junit.jupiter.api.Assertions.assertEquals;
 
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/ContextRelativeResourceReferenceTest.java b/wicket-core/src/test/java/org/apache/wicket/core/request/resource/ContextRelativeResourceReferenceTest.java
similarity index 98%
rename from wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/ContextRelativeResourceReferenceTest.java
rename to wicket-core/src/test/java/org/apache/wicket/core/request/resource/ContextRelativeResourceReferenceTest.java
index 94ef7dc..b4bb670 100644
--- a/wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/ContextRelativeResourceReferenceTest.java
+++ b/wicket-core/src/test/java/org/apache/wicket/core/request/resource/ContextRelativeResourceReferenceTest.java
@@ -14,7 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.wicket.core.request.request.resource;
+package org.apache.wicket.core.request.resource;
 
 import static org.junit.jupiter.api.Assertions.assertTrue;
 
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/CssPackageResourceTest.java b/wicket-core/src/test/java/org/apache/wicket/core/request/resource/CssPackageResourceTest.java
similarity index 98%
rename from wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/CssPackageResourceTest.java
rename to wicket-core/src/test/java/org/apache/wicket/core/request/resource/CssPackageResourceTest.java
index 19f673e..5038afd 100644
--- a/wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/CssPackageResourceTest.java
+++ b/wicket-core/src/test/java/org/apache/wicket/core/request/resource/CssPackageResourceTest.java
@@ -14,7 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.wicket.core.request.request.resource;
+package org.apache.wicket.core.request.resource;
 
 import static org.junit.jupiter.api.Assertions.assertEquals;
 
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/DynamicImageResourceTest.java b/wicket-core/src/test/java/org/apache/wicket/core/request/resource/DynamicImageResourceTest.java
similarity index 97%
rename from wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/DynamicImageResourceTest.java
rename to wicket-core/src/test/java/org/apache/wicket/core/request/resource/DynamicImageResourceTest.java
index f0c03cc..b9b87d5 100644
--- a/wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/DynamicImageResourceTest.java
+++ b/wicket-core/src/test/java/org/apache/wicket/core/request/resource/DynamicImageResourceTest.java
@@ -14,7 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.wicket.core.request.request.resource;
+package org.apache.wicket.core.request.resource;
 
 import static org.junit.jupiter.api.Assertions.assertArrayEquals;
 import static org.junit.jupiter.api.Assertions.assertEquals;
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/JavaScriptPackageResourceTest.java b/wicket-core/src/test/java/org/apache/wicket/core/request/resource/JavaScriptPackageResourceTest.java
similarity index 98%
rename from wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/JavaScriptPackageResourceTest.java
rename to wicket-core/src/test/java/org/apache/wicket/core/request/resource/JavaScriptPackageResourceTest.java
index 69623e6..a0b4e13 100644
--- a/wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/JavaScriptPackageResourceTest.java
+++ b/wicket-core/src/test/java/org/apache/wicket/core/request/resource/JavaScriptPackageResourceTest.java
@@ -14,7 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.wicket.core.request.request.resource;
+package org.apache.wicket.core.request.resource;
 
 import static org.junit.jupiter.api.Assertions.assertEquals;
 
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/LessResourceReference.less b/wicket-core/src/test/java/org/apache/wicket/core/request/resource/LessResourceReference.less
similarity index 100%
rename from wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/LessResourceReference.less
rename to wicket-core/src/test/java/org/apache/wicket/core/request/resource/LessResourceReference.less
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/LessResourceReferenceTest.java b/wicket-core/src/test/java/org/apache/wicket/core/request/resource/LessResourceReferenceTest.java
similarity index 94%
rename from wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/LessResourceReferenceTest.java
rename to wicket-core/src/test/java/org/apache/wicket/core/request/resource/LessResourceReferenceTest.java
index dcabdc0..56146d4 100644
--- a/wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/LessResourceReferenceTest.java
+++ b/wicket-core/src/test/java/org/apache/wicket/core/request/resource/LessResourceReferenceTest.java
@@ -14,7 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.wicket.core.request.request.resource;
+package org.apache.wicket.core.request.resource;
 
 import static org.junit.jupiter.api.Assertions.assertFalse;
 import static org.junit.jupiter.api.Assertions.assertTrue;
@@ -46,7 +46,7 @@ import org.junit.jupiter.api.Test;
  *
  * @since 1.5.9
  */
-public class LessResourceReferenceTest extends WicketTestCase
+class LessResourceReferenceTest extends WicketTestCase
 {
 	private static final AtomicBoolean PROCESS_RESPONSE_CALLED = new AtomicBoolean(false);
 
@@ -133,8 +133,8 @@ public class LessResourceReferenceTest extends WicketTestCase
 	void processLessResourcesWithoutStartingAPage()
 	{
 		// make a request to the resource that is not registered in the ResourceReferenceRegistry
-		CharSequence urlToReference = "./wicket/resource/org.apache.wicket.request.resource.LessResourceReferenceTest/LessResourceReference.less";
-		tester.executeUrl(urlToReference.toString());
+		String urlToReference = "./wicket/resource/org.apache.wicket.core.request.resource.LessResourceReferenceTest/LessResourceReference.less";
+		tester.executeUrl(urlToReference);
 		assertTrue(PROCESS_RESPONSE_CALLED.get());
 	}
 
@@ -151,7 +151,7 @@ public class LessResourceReferenceTest extends WicketTestCase
 
 		public IResourceStream getMarkupResourceStream(MarkupContainer container, Class<?> containerClass)
 		{
-			return new StringResourceStream("<html/>");
+			return new StringResourceStream("<html><head></head><body></body></html>");
 		}
 	}
 
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/MetaInfStaticResourceReferenceTest.java b/wicket-core/src/test/java/org/apache/wicket/core/request/resource/MetaInfStaticResourceReferenceTest.java
similarity index 94%
rename from wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/MetaInfStaticResourceReferenceTest.java
rename to wicket-core/src/test/java/org/apache/wicket/core/request/resource/MetaInfStaticResourceReferenceTest.java
index 46fba4b..e300cb4 100644
--- a/wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/MetaInfStaticResourceReferenceTest.java
+++ b/wicket-core/src/test/java/org/apache/wicket/core/request/resource/MetaInfStaticResourceReferenceTest.java
@@ -14,9 +14,9 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.wicket.core.request.request.resource;
+package org.apache.wicket.core.request.resource;
 
-import static org.junit.jupiter.api.Assertions.assertFalse;
+import static org.junit.jupiter.api.Assertions.assertNotEquals;
 import static org.junit.jupiter.api.Assertions.assertNotNull;
 
 import java.lang.reflect.Field;
@@ -67,7 +67,7 @@ class MetaInfStaticResourceReferenceTest
 
 		assertNotNull(metaUrl);
 		assertNotNull(packUrl);
-		assertFalse(metaUrl.equals(packUrl), "Meta and pack resource should not map to the same url under servlet 3.0.");
+		assertNotEquals(metaUrl, packUrl, "Meta and pack resource should not map to the same url under servlet 3.0.");
 
 		String metaUrlStr = metaUrl.toString();
 		if (metaUrlStr.charAt(1) != '/')
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/MinifiedAwareResourceReferenceTest.java b/wicket-core/src/test/java/org/apache/wicket/core/request/resource/MinifiedAwareResourceReferenceTest.java
similarity index 98%
rename from wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/MinifiedAwareResourceReferenceTest.java
rename to wicket-core/src/test/java/org/apache/wicket/core/request/resource/MinifiedAwareResourceReferenceTest.java
index dd03071..1b5afb1 100644
--- a/wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/MinifiedAwareResourceReferenceTest.java
+++ b/wicket-core/src/test/java/org/apache/wicket/core/request/resource/MinifiedAwareResourceReferenceTest.java
@@ -14,7 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.wicket.core.request.request.resource;
+package org.apache.wicket.core.request.resource;
 
 import static org.junit.jupiter.api.Assertions.assertEquals;
 
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/PackageResourceReferenceTest.java b/wicket-core/src/test/java/org/apache/wicket/core/request/resource/PackageResourceReferenceTest.java
similarity index 96%
rename from wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/PackageResourceReferenceTest.java
rename to wicket-core/src/test/java/org/apache/wicket/core/request/resource/PackageResourceReferenceTest.java
index 01107d4..bf8cd88 100644
--- a/wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/PackageResourceReferenceTest.java
+++ b/wicket-core/src/test/java/org/apache/wicket/core/request/resource/PackageResourceReferenceTest.java
@@ -14,7 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.wicket.core.request.request.resource;
+package org.apache.wicket.core.request.resource;
 
 import static org.junit.jupiter.api.Assertions.assertEquals;
 import static org.junit.jupiter.api.Assertions.assertFalse;
@@ -53,15 +53,15 @@ import org.junit.jupiter.api.Test;
 class PackageResourceReferenceTest extends WicketTestCase
 {
 	private static Class<PackageResourceReferenceTest> scope = PackageResourceReferenceTest.class;
-	private static Locale[] locales = { null, new Locale("en"), new Locale("en", "US") };
-	private static String[] styles = { null, "style" };
-	private static String[] variations = { null, "var" };
+	private static final Locale[] locales = { null, new Locale("en"), new Locale("en", "US") };
+	private static final String[] styles = { null, "style" };
+	private static final String[] variations = { null, "var" };
 
 	/**
 	 * @throws Exception
 	 */
 	@BeforeEach
-	void before() throws Exception
+	void before()
 	{
 		// some locale outside those in locales array
 		tester.getSession().setLocale(Locale.CHINA);
@@ -112,9 +112,6 @@ class PackageResourceReferenceTest extends WicketTestCase
 		}
 	}
 
-	/**
-	 * 
-	 */
 	@Test
 	void resourceResponse()
 	{
@@ -312,7 +309,7 @@ class PackageResourceReferenceTest extends WicketTestCase
 		InputStream resourceAsStream = null;
 		try
 		{
-			resourceAsStream = PackageResourceReference.class.getResourceAsStream("resource_gt_4096.txt");
+			resourceAsStream = PackageResourceReferenceTest.class.getResourceAsStream("resource_gt_4096.txt");
 			String content = new String(IOUtils.toByteArray(resourceAsStream));
 
 			// Check buffer comprehensive range request
@@ -328,7 +325,7 @@ class PackageResourceReferenceTest extends WicketTestCase
 			// Check buffer exceeding range request until end of content
 			String bytes1000_end = makeRangeRequestToBigResource("bytes=1000-");
 			assertEquals(4529, bytes1000_end.length());
-			assertEquals(content.substring(1000, content.length()), bytes1000_end);
+			assertEquals(content.substring(1000), bytes1000_end);
 
 			// Check complete range request
 			assertEquals(content.length(), makeRangeRequestToBigResource("bytes=-").length());
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/ResouceBundleTest.java b/wicket-core/src/test/java/org/apache/wicket/core/request/resource/ResouceBundleTest.java
similarity index 98%
rename from wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/ResouceBundleTest.java
rename to wicket-core/src/test/java/org/apache/wicket/core/request/resource/ResouceBundleTest.java
index 8046b69..86bb258 100644
--- a/wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/ResouceBundleTest.java
+++ b/wicket-core/src/test/java/org/apache/wicket/core/request/resource/ResouceBundleTest.java
@@ -14,7 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.wicket.core.request.request.resource;
+package org.apache.wicket.core.request.resource;
 
 import static org.junit.jupiter.api.Assertions.assertEquals;
 import static org.junit.jupiter.api.Assertions.fail;
@@ -47,7 +47,7 @@ import org.junit.jupiter.api.Test;
  * 
  * @author papegaaij
  */
-public class ResouceBundleTest extends WicketTestCase
+class ResouceBundleTest extends WicketTestCase
 {
 	@BeforeEach
 	void before()
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/ResourceReferenceLambdaTest.java b/wicket-core/src/test/java/org/apache/wicket/core/request/resource/ResourceReferenceLambdaTest.java
similarity index 96%
rename from wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/ResourceReferenceLambdaTest.java
rename to wicket-core/src/test/java/org/apache/wicket/core/request/resource/ResourceReferenceLambdaTest.java
index 470275e..bd49e75 100644
--- a/wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/ResourceReferenceLambdaTest.java
+++ b/wicket-core/src/test/java/org/apache/wicket/core/request/resource/ResourceReferenceLambdaTest.java
@@ -14,7 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.wicket.core.request.request.resource;
+package org.apache.wicket.core.request.resource;
 
 import static org.junit.jupiter.api.Assertions.assertEquals;
 
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/ResourceReferenceLocatingTest.csv b/wicket-core/src/test/java/org/apache/wicket/core/request/resource/ResourceReferenceLocatingTest.csv
similarity index 100%
rename from wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/ResourceReferenceLocatingTest.csv
rename to wicket-core/src/test/java/org/apache/wicket/core/request/resource/ResourceReferenceLocatingTest.csv
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/ResourceReferenceLocatingTest.java b/wicket-core/src/test/java/org/apache/wicket/core/request/resource/ResourceReferenceLocatingTest.java
similarity index 99%
rename from wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/ResourceReferenceLocatingTest.java
rename to wicket-core/src/test/java/org/apache/wicket/core/request/resource/ResourceReferenceLocatingTest.java
index 0c39243..7143170 100644
--- a/wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/ResourceReferenceLocatingTest.java
+++ b/wicket-core/src/test/java/org/apache/wicket/core/request/resource/ResourceReferenceLocatingTest.java
@@ -14,7 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.wicket.core.request.request.resource;
+package org.apache.wicket.core.request.resource;
 
 import static org.hamcrest.CoreMatchers.is;
 import static org.hamcrest.MatcherAssert.assertThat;
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/ResourceReferenceRegistryTest.java b/wicket-core/src/test/java/org/apache/wicket/core/request/resource/ResourceReferenceRegistryTest.java
similarity index 98%
rename from wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/ResourceReferenceRegistryTest.java
rename to wicket-core/src/test/java/org/apache/wicket/core/request/resource/ResourceReferenceRegistryTest.java
index cac4827..562dc40 100644
--- a/wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/ResourceReferenceRegistryTest.java
+++ b/wicket-core/src/test/java/org/apache/wicket/core/request/resource/ResourceReferenceRegistryTest.java
@@ -14,7 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.wicket.core.request.request.resource;
+package org.apache.wicket.core.request.resource;
 
 import static org.hamcrest.MatcherAssert.assertThat;
 import static org.hamcrest.Matchers.instanceOf;
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/UrlResourceReferenceTest.java b/wicket-core/src/test/java/org/apache/wicket/core/request/resource/UrlResourceReferenceTest.java
similarity index 98%
rename from wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/UrlResourceReferenceTest.java
rename to wicket-core/src/test/java/org/apache/wicket/core/request/resource/UrlResourceReferenceTest.java
index 37d56cc..49fb4e5 100644
--- a/wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/UrlResourceReferenceTest.java
+++ b/wicket-core/src/test/java/org/apache/wicket/core/request/resource/UrlResourceReferenceTest.java
@@ -14,7 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.wicket.core.request.request.resource;
+package org.apache.wicket.core.request.resource;
 
 import static org.junit.jupiter.api.Assertions.assertEquals;
 import static org.junit.jupiter.api.Assertions.assertNull;
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/WriteCallbackTest.java b/wicket-core/src/test/java/org/apache/wicket/core/request/resource/WriteCallbackTest.java
similarity index 97%
rename from wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/WriteCallbackTest.java
rename to wicket-core/src/test/java/org/apache/wicket/core/request/resource/WriteCallbackTest.java
index 34abe17..f6e1966 100644
--- a/wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/WriteCallbackTest.java
+++ b/wicket-core/src/test/java/org/apache/wicket/core/request/resource/WriteCallbackTest.java
@@ -14,7 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.wicket.core.request.request.resource;
+package org.apache.wicket.core.request.resource;
 
 import static org.junit.jupiter.api.Assertions.assertArrayEquals;
 
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/a.css b/wicket-core/src/test/java/org/apache/wicket/core/request/resource/a.css
similarity index 100%
rename from wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/a.css
rename to wicket-core/src/test/java/org/apache/wicket/core/request/resource/a.css
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/a.js b/wicket-core/src/test/java/org/apache/wicket/core/request/resource/a.js
similarity index 100%
rename from wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/a.js
rename to wicket-core/src/test/java/org/apache/wicket/core/request/resource/a.js
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/b.css b/wicket-core/src/test/java/org/apache/wicket/core/request/resource/b.css
similarity index 100%
rename from wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/b.css
rename to wicket-core/src/test/java/org/apache/wicket/core/request/resource/b.css
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/b.js b/wicket-core/src/test/java/org/apache/wicket/core/request/resource/b.js
similarity index 100%
rename from wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/b.js
rename to wicket-core/src/test/java/org/apache/wicket/core/request/resource/b.js
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/b.min.css b/wicket-core/src/test/java/org/apache/wicket/core/request/resource/b.min.css
similarity index 100%
rename from wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/b.min.css
rename to wicket-core/src/test/java/org/apache/wicket/core/request/resource/b.min.css
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/b.min.js b/wicket-core/src/test/java/org/apache/wicket/core/request/resource/b.min.js
similarity index 100%
rename from wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/b.min.js
rename to wicket-core/src/test/java/org/apache/wicket/core/request/resource/b.min.js
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/b_de.js b/wicket-core/src/test/java/org/apache/wicket/core/request/resource/b_de.js
similarity index 100%
rename from wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/b_de.js
rename to wicket-core/src/test/java/org/apache/wicket/core/request/resource/b_de.js
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/b_nl.js b/wicket-core/src/test/java/org/apache/wicket/core/request/resource/b_nl.js
similarity index 100%
rename from wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/b_nl.js
rename to wicket-core/src/test/java/org/apache/wicket/core/request/resource/b_nl.js
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/b_nl.min.js b/wicket-core/src/test/java/org/apache/wicket/core/request/resource/b_nl.min.js
similarity index 100%
rename from wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/b_nl.min.js
rename to wicket-core/src/test/java/org/apache/wicket/core/request/resource/b_nl.min.js
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/b_nl_BE.js b/wicket-core/src/test/java/org/apache/wicket/core/request/resource/b_nl_BE.js
similarity index 100%
rename from wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/b_nl_BE.js
rename to wicket-core/src/test/java/org/apache/wicket/core/request/resource/b_nl_BE.js
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/b_nl_BE.min.js b/wicket-core/src/test/java/org/apache/wicket/core/request/resource/b_nl_BE.min.js
similarity index 100%
rename from wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/b_nl_BE.min.js
rename to wicket-core/src/test/java/org/apache/wicket/core/request/resource/b_nl_BE.min.js
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/b_style.js b/wicket-core/src/test/java/org/apache/wicket/core/request/resource/b_style.js
similarity index 100%
rename from wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/b_style.js
rename to wicket-core/src/test/java/org/apache/wicket/core/request/resource/b_style.js
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/b_style.min.js b/wicket-core/src/test/java/org/apache/wicket/core/request/resource/b_style.min.js
similarity index 100%
rename from wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/b_style.min.js
rename to wicket-core/src/test/java/org/apache/wicket/core/request/resource/b_style.min.js
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/b_style_nl.js b/wicket-core/src/test/java/org/apache/wicket/core/request/resource/b_style_nl.js
similarity index 100%
rename from wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/b_style_nl.js
rename to wicket-core/src/test/java/org/apache/wicket/core/request/resource/b_style_nl.js
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/b_style_nl.min.js b/wicket-core/src/test/java/org/apache/wicket/core/request/resource/b_style_nl.min.js
similarity index 100%
rename from wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/b_style_nl.min.js
rename to wicket-core/src/test/java/org/apache/wicket/core/request/resource/b_style_nl.min.js
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/b_style_nl_BE.js b/wicket-core/src/test/java/org/apache/wicket/core/request/resource/b_style_nl_BE.js
similarity index 100%
rename from wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/b_style_nl_BE.js
rename to wicket-core/src/test/java/org/apache/wicket/core/request/resource/b_style_nl_BE.js
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/b_style_nl_BE.min.js b/wicket-core/src/test/java/org/apache/wicket/core/request/resource/b_style_nl_BE.min.js
similarity index 100%
rename from wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/b_style_nl_BE.min.js
rename to wicket-core/src/test/java/org/apache/wicket/core/request/resource/b_style_nl_BE.min.js
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/b_var_style.js b/wicket-core/src/test/java/org/apache/wicket/core/request/resource/b_var_style.js
similarity index 100%
rename from wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/b_var_style.js
rename to wicket-core/src/test/java/org/apache/wicket/core/request/resource/b_var_style.js
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/b_var_style.min.js b/wicket-core/src/test/java/org/apache/wicket/core/request/resource/b_var_style.min.js
similarity index 100%
rename from wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/b_var_style.min.js
rename to wicket-core/src/test/java/org/apache/wicket/core/request/resource/b_var_style.min.js
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/b_var_style_nl.js b/wicket-core/src/test/java/org/apache/wicket/core/request/resource/b_var_style_nl.js
similarity index 100%
rename from wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/b_var_style_nl.js
rename to wicket-core/src/test/java/org/apache/wicket/core/request/resource/b_var_style_nl.js
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/b_var_style_nl.min.js b/wicket-core/src/test/java/org/apache/wicket/core/request/resource/b_var_style_nl.min.js
similarity index 100%
rename from wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/b_var_style_nl.min.js
rename to wicket-core/src/test/java/org/apache/wicket/core/request/resource/b_var_style_nl.min.js
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/b_var_style_nl_BE.js b/wicket-core/src/test/java/org/apache/wicket/core/request/resource/b_var_style_nl_BE.js
similarity index 100%
rename from wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/b_var_style_nl_BE.js
rename to wicket-core/src/test/java/org/apache/wicket/core/request/resource/b_var_style_nl_BE.js
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/b_var_style_nl_BE.min.js b/wicket-core/src/test/java/org/apache/wicket/core/request/resource/b_var_style_nl_BE.min.js
similarity index 100%
rename from wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/b_var_style_nl_BE.min.js
rename to wicket-core/src/test/java/org/apache/wicket/core/request/resource/b_var_style_nl_BE.min.js
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/caching/ContextRelativeResourceCachingTest.java b/wicket-core/src/test/java/org/apache/wicket/core/request/resource/caching/ContextRelativeResourceCachingTest.java
similarity index 98%
rename from wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/caching/ContextRelativeResourceCachingTest.java
rename to wicket-core/src/test/java/org/apache/wicket/core/request/resource/caching/ContextRelativeResourceCachingTest.java
index 7f135c9..ee3aab3 100644
--- a/wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/caching/ContextRelativeResourceCachingTest.java
+++ b/wicket-core/src/test/java/org/apache/wicket/core/request/resource/caching/ContextRelativeResourceCachingTest.java
@@ -14,7 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.wicket.core.request.request.resource.caching;
+package org.apache.wicket.core.request.resource.caching;
 
 import static org.assertj.core.api.Assertions.assertThat;
 import static org.junit.jupiter.api.Assertions.assertEquals;
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/caching/FilenameWithVersionResourceCachingStrategyTest.java b/wicket-core/src/test/java/org/apache/wicket/core/request/resource/caching/FilenameWithVersionResourceCachingStrategyTest.java
similarity index 98%
rename from wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/caching/FilenameWithVersionResourceCachingStrategyTest.java
rename to wicket-core/src/test/java/org/apache/wicket/core/request/resource/caching/FilenameWithVersionResourceCachingStrategyTest.java
index 66de8e0..d2c8d80 100644
--- a/wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/caching/FilenameWithVersionResourceCachingStrategyTest.java
+++ b/wicket-core/src/test/java/org/apache/wicket/core/request/resource/caching/FilenameWithVersionResourceCachingStrategyTest.java
@@ -14,7 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.wicket.core.request.request.resource.caching;
+package org.apache.wicket.core.request.resource.caching;
 
 import static org.junit.jupiter.api.Assertions.assertEquals;
 import java.time.Duration;
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/caching/QueryStringWithVersionResourceCachingStrategyTest.java b/wicket-core/src/test/java/org/apache/wicket/core/request/resource/caching/QueryStringWithVersionResourceCachingStrategyTest.java
similarity index 98%
rename from wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/caching/QueryStringWithVersionResourceCachingStrategyTest.java
rename to wicket-core/src/test/java/org/apache/wicket/core/request/resource/caching/QueryStringWithVersionResourceCachingStrategyTest.java
index aa94b77..d5d0ada 100644
--- a/wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/caching/QueryStringWithVersionResourceCachingStrategyTest.java
+++ b/wicket-core/src/test/java/org/apache/wicket/core/request/resource/caching/QueryStringWithVersionResourceCachingStrategyTest.java
@@ -14,7 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.wicket.core.request.request.resource.caching;
+package org.apache.wicket.core.request.resource.caching;
 
 import static org.junit.jupiter.api.Assertions.assertEquals;
 import static org.junit.jupiter.api.Assertions.assertNull;
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/caching/TestResource.java b/wicket-core/src/test/java/org/apache/wicket/core/request/resource/caching/TestResource.java
similarity index 96%
rename from wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/caching/TestResource.java
rename to wicket-core/src/test/java/org/apache/wicket/core/request/resource/caching/TestResource.java
index b199223..de98a1b 100644
--- a/wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/caching/TestResource.java
+++ b/wicket-core/src/test/java/org/apache/wicket/core/request/resource/caching/TestResource.java
@@ -14,7 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.wicket.core.request.request.resource.caching;
+package org.apache.wicket.core.request.resource.caching;
 
 import java.io.Serializable;
 
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/resource.txt b/wicket-core/src/test/java/org/apache/wicket/core/request/resource/resource.txt
similarity index 100%
rename from wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/resource.txt
rename to wicket-core/src/test/java/org/apache/wicket/core/request/resource/resource.txt
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/resource_en.txt b/wicket-core/src/test/java/org/apache/wicket/core/request/resource/resource_en.txt
similarity index 100%
rename from wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/resource_en.txt
rename to wicket-core/src/test/java/org/apache/wicket/core/request/resource/resource_en.txt
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/resource_en_US.txt b/wicket-core/src/test/java/org/apache/wicket/core/request/resource/resource_en_US.txt
similarity index 100%
rename from wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/resource_en_US.txt
rename to wicket-core/src/test/java/org/apache/wicket/core/request/resource/resource_en_US.txt
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/resource_gt_4096.txt b/wicket-core/src/test/java/org/apache/wicket/core/request/resource/resource_gt_4096.txt
similarity index 100%
rename from wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/resource_gt_4096.txt
rename to wicket-core/src/test/java/org/apache/wicket/core/request/resource/resource_gt_4096.txt
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/resource_style.txt b/wicket-core/src/test/java/org/apache/wicket/core/request/resource/resource_style.txt
similarity index 100%
rename from wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/resource_style.txt
rename to wicket-core/src/test/java/org/apache/wicket/core/request/resource/resource_style.txt
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/resource_style2.txt b/wicket-core/src/test/java/org/apache/wicket/core/request/resource/resource_style2.txt
similarity index 100%
rename from wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/resource_style2.txt
rename to wicket-core/src/test/java/org/apache/wicket/core/request/resource/resource_style2.txt
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/resource_style2_pt.txt b/wicket-core/src/test/java/org/apache/wicket/core/request/resource/resource_style2_pt.txt
similarity index 100%
rename from wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/resource_style2_pt.txt
rename to wicket-core/src/test/java/org/apache/wicket/core/request/resource/resource_style2_pt.txt
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/resource_style2_pt_BR.txt b/wicket-core/src/test/java/org/apache/wicket/core/request/resource/resource_style2_pt_BR.txt
similarity index 100%
rename from wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/resource_style2_pt_BR.txt
rename to wicket-core/src/test/java/org/apache/wicket/core/request/resource/resource_style2_pt_BR.txt
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/resource_style_en.txt b/wicket-core/src/test/java/org/apache/wicket/core/request/resource/resource_style_en.txt
similarity index 100%
rename from wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/resource_style_en.txt
rename to wicket-core/src/test/java/org/apache/wicket/core/request/resource/resource_style_en.txt
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/resource_style_en_US.txt b/wicket-core/src/test/java/org/apache/wicket/core/request/resource/resource_style_en_US.txt
similarity index 100%
rename from wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/resource_style_en_US.txt
rename to wicket-core/src/test/java/org/apache/wicket/core/request/resource/resource_style_en_US.txt
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/resource_var.txt b/wicket-core/src/test/java/org/apache/wicket/core/request/resource/resource_var.txt
similarity index 100%
rename from wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/resource_var.txt
rename to wicket-core/src/test/java/org/apache/wicket/core/request/resource/resource_var.txt
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/resource_var_en.txt b/wicket-core/src/test/java/org/apache/wicket/core/request/resource/resource_var_en.txt
similarity index 100%
rename from wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/resource_var_en.txt
rename to wicket-core/src/test/java/org/apache/wicket/core/request/resource/resource_var_en.txt
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/resource_var_en_US.txt b/wicket-core/src/test/java/org/apache/wicket/core/request/resource/resource_var_en_US.txt
similarity index 100%
rename from wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/resource_var_en_US.txt
rename to wicket-core/src/test/java/org/apache/wicket/core/request/resource/resource_var_en_US.txt
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/resource_var_style.txt b/wicket-core/src/test/java/org/apache/wicket/core/request/resource/resource_var_style.txt
similarity index 100%
rename from wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/resource_var_style.txt
rename to wicket-core/src/test/java/org/apache/wicket/core/request/resource/resource_var_style.txt
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/resource_var_style2.txt b/wicket-core/src/test/java/org/apache/wicket/core/request/resource/resource_var_style2.txt
similarity index 100%
rename from wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/resource_var_style2.txt
rename to wicket-core/src/test/java/org/apache/wicket/core/request/resource/resource_var_style2.txt
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/resource_var_style2_pt.txt b/wicket-core/src/test/java/org/apache/wicket/core/request/resource/resource_var_style2_pt.txt
similarity index 100%
rename from wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/resource_var_style2_pt.txt
rename to wicket-core/src/test/java/org/apache/wicket/core/request/resource/resource_var_style2_pt.txt
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/resource_var_style2_pt_BR.txt b/wicket-core/src/test/java/org/apache/wicket/core/request/resource/resource_var_style2_pt_BR.txt
similarity index 100%
rename from wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/resource_var_style2_pt_BR.txt
rename to wicket-core/src/test/java/org/apache/wicket/core/request/resource/resource_var_style2_pt_BR.txt
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/resource_var_style_en.txt b/wicket-core/src/test/java/org/apache/wicket/core/request/resource/resource_var_style_en.txt
similarity index 100%
rename from wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/resource_var_style_en.txt
rename to wicket-core/src/test/java/org/apache/wicket/core/request/resource/resource_var_style_en.txt
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/resource_var_style_en_US.txt b/wicket-core/src/test/java/org/apache/wicket/core/request/resource/resource_var_style_en_US.txt
similarity index 100%
rename from wicket-core/src/test/java/org/apache/wicket/core/request/request/resource/resource_var_style_en_US.txt
rename to wicket-core/src/test/java/org/apache/wicket/core/request/resource/resource_var_style_en_US.txt
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/util/util/ExceptionTestBase.java b/wicket-core/src/test/java/org/apache/wicket/core/util/ExceptionTestBase.java
similarity index 98%
rename from wicket-core/src/test/java/org/apache/wicket/core/util/util/ExceptionTestBase.java
rename to wicket-core/src/test/java/org/apache/wicket/core/util/ExceptionTestBase.java
index c8081d7..d07375e 100644
--- a/wicket-core/src/test/java/org/apache/wicket/core/util/util/ExceptionTestBase.java
+++ b/wicket-core/src/test/java/org/apache/wicket/core/util/ExceptionTestBase.java
@@ -14,7 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.wicket.core.util.util;
+package org.apache.wicket.core.util;
 
 import static org.junit.jupiter.api.Assertions.assertEquals;
 import static org.junit.jupiter.api.Assertions.assertNotNull;
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/util/util/Log4jEventHistory.java b/wicket-core/src/test/java/org/apache/wicket/core/util/Log4jEventHistory.java
similarity index 97%
rename from wicket-core/src/test/java/org/apache/wicket/core/util/util/Log4jEventHistory.java
rename to wicket-core/src/test/java/org/apache/wicket/core/util/Log4jEventHistory.java
index 77e00df..e7939ac 100644
--- a/wicket-core/src/test/java/org/apache/wicket/core/util/util/Log4jEventHistory.java
+++ b/wicket-core/src/test/java/org/apache/wicket/core/util/Log4jEventHistory.java
@@ -14,7 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.wicket.core.util.util;
+package org.apache.wicket.core.util;
 
 import java.util.ArrayList;
 import java.util.List;
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/util/util/cookies/CookieUtilsTest.java b/wicket-core/src/test/java/org/apache/wicket/core/util/cookies/CookieUtilsTest.java
similarity index 99%
rename from wicket-core/src/test/java/org/apache/wicket/core/util/util/cookies/CookieUtilsTest.java
rename to wicket-core/src/test/java/org/apache/wicket/core/util/cookies/CookieUtilsTest.java
index a57fac7..b350b20 100644
--- a/wicket-core/src/test/java/org/apache/wicket/core/util/util/cookies/CookieUtilsTest.java
+++ b/wicket-core/src/test/java/org/apache/wicket/core/util/cookies/CookieUtilsTest.java
@@ -14,7 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.wicket.core.util.util.cookies;
+package org.apache.wicket.core.util.cookies;
 
 import static org.junit.jupiter.api.Assertions.assertEquals;
 import static org.junit.jupiter.api.Assertions.assertTrue;
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/util/util/cookies/CookieValuePersisterTestPage.html b/wicket-core/src/test/java/org/apache/wicket/core/util/cookies/CookieValuePersisterTestPage.html
similarity index 100%
rename from wicket-core/src/test/java/org/apache/wicket/core/util/util/cookies/CookieValuePersisterTestPage.html
rename to wicket-core/src/test/java/org/apache/wicket/core/util/cookies/CookieValuePersisterTestPage.html
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/util/util/cookies/CookieValuePersisterTestPage.java b/wicket-core/src/test/java/org/apache/wicket/core/util/cookies/CookieValuePersisterTestPage.java
similarity index 97%
rename from wicket-core/src/test/java/org/apache/wicket/core/util/util/cookies/CookieValuePersisterTestPage.java
rename to wicket-core/src/test/java/org/apache/wicket/core/util/cookies/CookieValuePersisterTestPage.java
index e8a46f1..f62f939 100644
--- a/wicket-core/src/test/java/org/apache/wicket/core/util/util/cookies/CookieValuePersisterTestPage.java
+++ b/wicket-core/src/test/java/org/apache/wicket/core/util/cookies/CookieValuePersisterTestPage.java
@@ -14,7 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.wicket.core.util.util.cookies;
+package org.apache.wicket.core.util.cookies;
 
 import org.apache.wicket.markup.html.WebPage;
 import org.apache.wicket.markup.html.form.Form;
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/util/util/cookies/PreserveRequestCookieAfterLinkClickTest.java b/wicket-core/src/test/java/org/apache/wicket/core/util/cookies/PreserveRequestCookieAfterLinkClickTest.java
similarity index 98%
rename from wicket-core/src/test/java/org/apache/wicket/core/util/util/cookies/PreserveRequestCookieAfterLinkClickTest.java
rename to wicket-core/src/test/java/org/apache/wicket/core/util/cookies/PreserveRequestCookieAfterLinkClickTest.java
index 6144635..0621f49 100644
--- a/wicket-core/src/test/java/org/apache/wicket/core/util/util/cookies/PreserveRequestCookieAfterLinkClickTest.java
+++ b/wicket-core/src/test/java/org/apache/wicket/core/util/cookies/PreserveRequestCookieAfterLinkClickTest.java
@@ -14,7 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.wicket.core.util.util.cookies;
+package org.apache.wicket.core.util.cookies;
 
 import static org.junit.jupiter.api.Assertions.assertEquals;
 
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/util/util/cookies/SetCookieAndRedirectStatefullTestPage.html b/wicket-core/src/test/java/org/apache/wicket/core/util/cookies/SetCookieAndRedirectStatefullTestPage.html
similarity index 100%
rename from wicket-core/src/test/java/org/apache/wicket/core/util/util/cookies/SetCookieAndRedirectStatefullTestPage.html
rename to wicket-core/src/test/java/org/apache/wicket/core/util/cookies/SetCookieAndRedirectStatefullTestPage.html
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/util/util/cookies/SetCookieAndRedirectStatefullTestPage.java b/wicket-core/src/test/java/org/apache/wicket/core/util/cookies/SetCookieAndRedirectStatefullTestPage.java
similarity index 97%
rename from wicket-core/src/test/java/org/apache/wicket/core/util/util/cookies/SetCookieAndRedirectStatefullTestPage.java
rename to wicket-core/src/test/java/org/apache/wicket/core/util/cookies/SetCookieAndRedirectStatefullTestPage.java
index c5db148..1eb316f 100644
--- a/wicket-core/src/test/java/org/apache/wicket/core/util/util/cookies/SetCookieAndRedirectStatefullTestPage.java
+++ b/wicket-core/src/test/java/org/apache/wicket/core/util/cookies/SetCookieAndRedirectStatefullTestPage.java
@@ -14,7 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.wicket.core.util.util.cookies;
+package org.apache.wicket.core.util.cookies;
 
 import org.apache.wicket.markup.html.WebPage;
 import org.apache.wicket.markup.html.form.Form;
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/util/util/cookies/SetCookieAndRedirectStatelessTestPage.html b/wicket-core/src/test/java/org/apache/wicket/core/util/cookies/SetCookieAndRedirectStatelessTestPage.html
similarity index 100%
rename from wicket-core/src/test/java/org/apache/wicket/core/util/util/cookies/SetCookieAndRedirectStatelessTestPage.html
rename to wicket-core/src/test/java/org/apache/wicket/core/util/cookies/SetCookieAndRedirectStatelessTestPage.html
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/util/util/cookies/SetCookieAndRedirectStatelessTestPage.java b/wicket-core/src/test/java/org/apache/wicket/core/util/cookies/SetCookieAndRedirectStatelessTestPage.java
similarity index 97%
rename from wicket-core/src/test/java/org/apache/wicket/core/util/util/cookies/SetCookieAndRedirectStatelessTestPage.java
rename to wicket-core/src/test/java/org/apache/wicket/core/util/cookies/SetCookieAndRedirectStatelessTestPage.java
index 345d5ba..57ed2ad 100644
--- a/wicket-core/src/test/java/org/apache/wicket/core/util/util/cookies/SetCookieAndRedirectStatelessTestPage.java
+++ b/wicket-core/src/test/java/org/apache/wicket/core/util/cookies/SetCookieAndRedirectStatelessTestPage.java
@@ -14,7 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.wicket.core.util.util.cookies;
+package org.apache.wicket.core.util.cookies;
 
 import org.apache.wicket.markup.html.WebPage;
 import org.apache.wicket.markup.html.form.Form;
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/util/util/cookies/SetCookieAndRedirectTest.java b/wicket-core/src/test/java/org/apache/wicket/core/util/cookies/SetCookieAndRedirectTest.java
similarity index 97%
rename from wicket-core/src/test/java/org/apache/wicket/core/util/util/cookies/SetCookieAndRedirectTest.java
rename to wicket-core/src/test/java/org/apache/wicket/core/util/cookies/SetCookieAndRedirectTest.java
index b8d758e..e0ac5c1 100644
--- a/wicket-core/src/test/java/org/apache/wicket/core/util/util/cookies/SetCookieAndRedirectTest.java
+++ b/wicket-core/src/test/java/org/apache/wicket/core/util/cookies/SetCookieAndRedirectTest.java
@@ -14,7 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.wicket.core.util.util.cookies;
+package org.apache.wicket.core.util.cookies;
 
 import static org.junit.jupiter.api.Assertions.assertEquals;
 
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/util/util/file/WebApplicationPathTest.java b/wicket-core/src/test/java/org/apache/wicket/core/util/file/WebApplicationPathTest.java
similarity index 94%
rename from wicket-core/src/test/java/org/apache/wicket/core/util/util/file/WebApplicationPathTest.java
rename to wicket-core/src/test/java/org/apache/wicket/core/util/file/WebApplicationPathTest.java
index b4966e1..a35e0bc 100644
--- a/wicket-core/src/test/java/org/apache/wicket/core/util/util/file/WebApplicationPathTest.java
+++ b/wicket-core/src/test/java/org/apache/wicket/core/util/file/WebApplicationPathTest.java
@@ -14,7 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.wicket.core.util.util.file;
+package org.apache.wicket.core.util.file;
 
 import static org.junit.jupiter.api.Assertions.assertNotNull;
 import static org.junit.jupiter.api.Assertions.assertNull;
@@ -22,7 +22,6 @@ import static org.junit.jupiter.api.Assertions.assertNull;
 import java.net.URL;
 import javax.servlet.ServletContext;
 
-import org.apache.wicket.core.util.file.WebApplicationPath;
 import org.apache.wicket.util.resource.IResourceStream;
 import org.junit.jupiter.api.Test;
 import org.mockito.ArgumentMatchers;
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/util/util/markup/xhtml/WellFormedXmlTest.java b/wicket-core/src/test/java/org/apache/wicket/core/util/markup/xhtml/WellFormedXmlTest.java
similarity index 95%
rename from wicket-core/src/test/java/org/apache/wicket/core/util/util/markup/xhtml/WellFormedXmlTest.java
rename to wicket-core/src/test/java/org/apache/wicket/core/util/markup/xhtml/WellFormedXmlTest.java
index 08d8c3e..fe2b182 100644
--- a/wicket-core/src/test/java/org/apache/wicket/core/util/util/markup/xhtml/WellFormedXmlTest.java
+++ b/wicket-core/src/test/java/org/apache/wicket/core/util/markup/xhtml/WellFormedXmlTest.java
@@ -14,7 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.wicket.core.util.util.markup.xhtml;
+package org.apache.wicket.core.util.markup.xhtml;
 
 import org.apache.wicket.util.markup.xhtml.WellFormedXmlTestCase;
 import org.junit.jupiter.api.Test;
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/util/util/template/CssTemplateTest.java b/wicket-core/src/test/java/org/apache/wicket/core/util/template/CssTemplateTest.java
similarity index 96%
rename from wicket-core/src/test/java/org/apache/wicket/core/util/util/template/CssTemplateTest.java
rename to wicket-core/src/test/java/org/apache/wicket/core/util/template/CssTemplateTest.java
index 99f3775..0454409 100644
--- a/wicket-core/src/test/java/org/apache/wicket/core/util/util/template/CssTemplateTest.java
+++ b/wicket-core/src/test/java/org/apache/wicket/core/util/template/CssTemplateTest.java
@@ -14,7 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.wicket.core.util.util.template;
+package org.apache.wicket.core.util.template;
 
 import java.util.Map;
 
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/BlockedResourceLinkPage.html b/wicket-core/src/test/java/org/apache/wicket/core/util/tester/BlockedResourceLinkPage.html
similarity index 100%
rename from wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/BlockedResourceLinkPage.html
rename to wicket-core/src/test/java/org/apache/wicket/core/util/tester/BlockedResourceLinkPage.html
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/BlockedResourceLinkPage.java b/wicket-core/src/test/java/org/apache/wicket/core/util/tester/BlockedResourceLinkPage.java
similarity index 96%
rename from wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/BlockedResourceLinkPage.java
rename to wicket-core/src/test/java/org/apache/wicket/core/util/tester/BlockedResourceLinkPage.java
index 8064d21..ed80c61 100644
--- a/wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/BlockedResourceLinkPage.java
+++ b/wicket-core/src/test/java/org/apache/wicket/core/util/tester/BlockedResourceLinkPage.java
@@ -14,7 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.wicket.core.util.util.tester;
+package org.apache.wicket.core.util.tester;
 
 import org.apache.wicket.markup.html.WebPage;
 import org.apache.wicket.markup.html.link.ResourceLink;
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/CookiePage.java b/wicket-core/src/test/java/org/apache/wicket/core/util/tester/CookiePage.java
similarity index 97%
rename from wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/CookiePage.java
rename to wicket-core/src/test/java/org/apache/wicket/core/util/tester/CookiePage.java
index 12f6943..8ae9698 100644
--- a/wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/CookiePage.java
+++ b/wicket-core/src/test/java/org/apache/wicket/core/util/tester/CookiePage.java
@@ -14,7 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.wicket.core.util.util.tester;
+package org.apache.wicket.core.util.tester;
 
 import static org.junit.jupiter.api.Assertions.assertEquals;
 
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/FormTesterSubmitLinkTest$TestPage.html b/wicket-core/src/test/java/org/apache/wicket/core/util/tester/FormTesterSubmitLinkTest$TestPage.html
similarity index 100%
rename from wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/FormTesterSubmitLinkTest$TestPage.html
rename to wicket-core/src/test/java/org/apache/wicket/core/util/tester/FormTesterSubmitLinkTest$TestPage.html
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/FormTesterSubmitLinkTest.java b/wicket-core/src/test/java/org/apache/wicket/core/util/tester/FormTesterSubmitLinkTest.java
similarity index 98%
rename from wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/FormTesterSubmitLinkTest.java
rename to wicket-core/src/test/java/org/apache/wicket/core/util/tester/FormTesterSubmitLinkTest.java
index 28410c2..029d03a 100644
--- a/wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/FormTesterSubmitLinkTest.java
+++ b/wicket-core/src/test/java/org/apache/wicket/core/util/tester/FormTesterSubmitLinkTest.java
@@ -14,7 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.wicket.core.util.util.tester;
+package org.apache.wicket.core.util.tester;
 
 import static org.junit.jupiter.api.Assertions.assertEquals;
 import static org.junit.jupiter.api.Assertions.assertTrue;
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/FormTesterTest.java b/wicket-core/src/test/java/org/apache/wicket/core/util/tester/FormTesterTest.java
similarity index 98%
rename from wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/FormTesterTest.java
rename to wicket-core/src/test/java/org/apache/wicket/core/util/tester/FormTesterTest.java
index a678123..ea83df0 100644
--- a/wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/FormTesterTest.java
+++ b/wicket-core/src/test/java/org/apache/wicket/core/util/tester/FormTesterTest.java
@@ -14,7 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.wicket.core.util.util.tester;
+package org.apache.wicket.core.util.tester;
 
 import static org.junit.jupiter.api.Assertions.assertEquals;
 import static org.junit.jupiter.api.Assertions.assertFalse;
@@ -156,7 +156,7 @@ class FormTesterTest extends WicketTestCase
 
 		FormTester formTester = tester.newFormTester("form");
 		formTester.setFile("file",
-			new File(getBasedir() + "src/test/java/org/apache/wicket/util/tester/bg.jpg"),
+			new File(getBasedir() + "src/test/java/org/apache/wicket/core/util/tester/bg.jpg"),
 			"image/jpeg");
 		formTester.setValue("text", "Mock value");
 		formTester.submit();
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/MockAjaxFormPage.html b/wicket-core/src/test/java/org/apache/wicket/core/util/tester/MockAjaxFormPage.html
similarity index 100%
rename from wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/MockAjaxFormPage.html
rename to wicket-core/src/test/java/org/apache/wicket/core/util/tester/MockAjaxFormPage.html
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/MockAjaxFormPage.java b/wicket-core/src/test/java/org/apache/wicket/core/util/tester/MockAjaxFormPage.java
similarity index 98%
rename from wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/MockAjaxFormPage.java
rename to wicket-core/src/test/java/org/apache/wicket/core/util/tester/MockAjaxFormPage.java
index 36c0a1c..a290ccc 100644
--- a/wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/MockAjaxFormPage.java
+++ b/wicket-core/src/test/java/org/apache/wicket/core/util/tester/MockAjaxFormPage.java
@@ -14,7 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.wicket.core.util.util.tester;
+package org.apache.wicket.core.util.tester;
 
 import java.io.Serializable;
 
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/MockFormFileUploadPage.html b/wicket-core/src/test/java/org/apache/wicket/core/util/tester/MockFormFileUploadPage.html
similarity index 100%
rename from wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/MockFormFileUploadPage.html
rename to wicket-core/src/test/java/org/apache/wicket/core/util/tester/MockFormFileUploadPage.html
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/MockFormFileUploadPage.java b/wicket-core/src/test/java/org/apache/wicket/core/util/tester/MockFormFileUploadPage.java
similarity index 98%
rename from wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/MockFormFileUploadPage.java
rename to wicket-core/src/test/java/org/apache/wicket/core/util/tester/MockFormFileUploadPage.java
index 2fab9ad..4b34d76 100644
--- a/wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/MockFormFileUploadPage.java
+++ b/wicket-core/src/test/java/org/apache/wicket/core/util/tester/MockFormFileUploadPage.java
@@ -14,7 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.wicket.core.util.util.tester;
+package org.apache.wicket.core.util.tester;
 
 import java.io.Serializable;
 
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/MockFormPage.html b/wicket-core/src/test/java/org/apache/wicket/core/util/tester/MockFormPage.html
similarity index 100%
rename from wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/MockFormPage.html
rename to wicket-core/src/test/java/org/apache/wicket/core/util/tester/MockFormPage.html
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/MockFormPage.java b/wicket-core/src/test/java/org/apache/wicket/core/util/tester/MockFormPage.java
similarity index 98%
rename from wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/MockFormPage.java
rename to wicket-core/src/test/java/org/apache/wicket/core/util/tester/MockFormPage.java
index 1048e9d..f115a54 100644
--- a/wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/MockFormPage.java
+++ b/wicket-core/src/test/java/org/apache/wicket/core/util/tester/MockFormPage.java
@@ -14,7 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.wicket.core.util.util.tester;
+package org.apache.wicket.core.util.tester;
 
 import java.io.Serializable;
 
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/MockFormSubmitsPage.html b/wicket-core/src/test/java/org/apache/wicket/core/util/tester/MockFormSubmitsPage.html
similarity index 100%
rename from wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/MockFormSubmitsPage.html
rename to wicket-core/src/test/java/org/apache/wicket/core/util/tester/MockFormSubmitsPage.html
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/MockFormSubmitsPage.java b/wicket-core/src/test/java/org/apache/wicket/core/util/tester/MockFormSubmitsPage.java
similarity index 97%
rename from wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/MockFormSubmitsPage.java
rename to wicket-core/src/test/java/org/apache/wicket/core/util/tester/MockFormSubmitsPage.java
index dbd8597..3c7674c 100644
--- a/wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/MockFormSubmitsPage.java
+++ b/wicket-core/src/test/java/org/apache/wicket/core/util/tester/MockFormSubmitsPage.java
@@ -14,7 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.wicket.core.util.util.tester;
+package org.apache.wicket.core.util.tester;
 
 import org.apache.wicket.ajax.AjaxRequestTarget;
 import org.apache.wicket.ajax.markup.html.form.AjaxButton;
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/MockPageAjaxSubmitLinkSubmitsWholeForm.html b/wicket-core/src/test/java/org/apache/wicket/core/util/tester/MockPageAjaxSubmitLinkSubmitsWholeForm.html
similarity index 100%
rename from wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/MockPageAjaxSubmitLinkSubmitsWholeForm.html
rename to wicket-core/src/test/java/org/apache/wicket/core/util/tester/MockPageAjaxSubmitLinkSubmitsWholeForm.html
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/MockPageAjaxSubmitLinkSubmitsWholeForm.java b/wicket-core/src/test/java/org/apache/wicket/core/util/tester/MockPageAjaxSubmitLinkSubmitsWholeForm.java
similarity index 98%
rename from wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/MockPageAjaxSubmitLinkSubmitsWholeForm.java
rename to wicket-core/src/test/java/org/apache/wicket/core/util/tester/MockPageAjaxSubmitLinkSubmitsWholeForm.java
index 421dba3..349506d 100644
--- a/wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/MockPageAjaxSubmitLinkSubmitsWholeForm.java
+++ b/wicket-core/src/test/java/org/apache/wicket/core/util/tester/MockPageAjaxSubmitLinkSubmitsWholeForm.java
@@ -14,7 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.wicket.core.util.util.tester;
+package org.apache.wicket.core.util.tester;
 
 import org.apache.wicket.ajax.AjaxRequestTarget;
 import org.apache.wicket.ajax.markup.html.form.AjaxSubmitLink;
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/MockPageParameterPage$MockInnerClassPage.html b/wicket-core/src/test/java/org/apache/wicket/core/util/tester/MockPageParameterPage$MockInnerClassPage.html
similarity index 100%
rename from wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/MockPageParameterPage$MockInnerClassPage.html
rename to wicket-core/src/test/java/org/apache/wicket/core/util/tester/MockPageParameterPage$MockInnerClassPage.html
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/MockPageParameterPage.html b/wicket-core/src/test/java/org/apache/wicket/core/util/tester/MockPageParameterPage.html
similarity index 100%
rename from wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/MockPageParameterPage.html
rename to wicket-core/src/test/java/org/apache/wicket/core/util/tester/MockPageParameterPage.html
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/MockPageParameterPage.java b/wicket-core/src/test/java/org/apache/wicket/core/util/tester/MockPageParameterPage.java
similarity index 97%
rename from wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/MockPageParameterPage.java
rename to wicket-core/src/test/java/org/apache/wicket/core/util/tester/MockPageParameterPage.java
index 55269f4..19a0465 100644
--- a/wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/MockPageParameterPage.java
+++ b/wicket-core/src/test/java/org/apache/wicket/core/util/tester/MockPageParameterPage.java
@@ -14,7 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.wicket.core.util.util.tester;
+package org.apache.wicket.core.util.tester;
 
 import org.apache.wicket.markup.html.WebPage;
 import org.apache.wicket.markup.html.basic.Label;
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/MockPageWithFormAndAjaxFormSubmitBehavior.html b/wicket-core/src/test/java/org/apache/wicket/core/util/tester/MockPageWithFormAndAjaxFormSubmitBehavior.html
similarity index 100%
rename from wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/MockPageWithFormAndAjaxFormSubmitBehavior.html
rename to wicket-core/src/test/java/org/apache/wicket/core/util/tester/MockPageWithFormAndAjaxFormSubmitBehavior.html
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/MockPageWithFormAndAjaxFormSubmitBehavior.java b/wicket-core/src/test/java/org/apache/wicket/core/util/tester/MockPageWithFormAndAjaxFormSubmitBehavior.java
similarity index 98%
rename from wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/MockPageWithFormAndAjaxFormSubmitBehavior.java
rename to wicket-core/src/test/java/org/apache/wicket/core/util/tester/MockPageWithFormAndAjaxFormSubmitBehavior.java
index 9bde2eb..e6fc39b 100644
--- a/wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/MockPageWithFormAndAjaxFormSubmitBehavior.java
+++ b/wicket-core/src/test/java/org/apache/wicket/core/util/tester/MockPageWithFormAndAjaxFormSubmitBehavior.java
@@ -14,7 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.wicket.core.util.util.tester;
+package org.apache.wicket.core.util.tester;
 
 import java.io.Serializable;
 
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/MockPageWithFormAndCheckGroup.html b/wicket-core/src/test/java/org/apache/wicket/core/util/tester/MockPageWithFormAndCheckGroup.html
similarity index 100%
rename from wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/MockPageWithFormAndCheckGroup.html
rename to wicket-core/src/test/java/org/apache/wicket/core/util/tester/MockPageWithFormAndCheckGroup.html
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/MockPageWithFormAndCheckGroup.java b/wicket-core/src/test/java/org/apache/wicket/core/util/tester/MockPageWithFormAndCheckGroup.java
similarity index 98%
rename from wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/MockPageWithFormAndCheckGroup.java
rename to wicket-core/src/test/java/org/apache/wicket/core/util/tester/MockPageWithFormAndCheckGroup.java
index d66ae18..ca20d1f 100644
--- a/wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/MockPageWithFormAndCheckGroup.java
+++ b/wicket-core/src/test/java/org/apache/wicket/core/util/tester/MockPageWithFormAndCheckGroup.java
@@ -14,7 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.wicket.core.util.util.tester;
+package org.apache.wicket.core.util.tester;
 
 import java.util.ArrayList;
 import java.util.Collection;
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/MockPageWithLabelInEnclosure.html b/wicket-core/src/test/java/org/apache/wicket/core/util/tester/MockPageWithLabelInEnclosure.html
similarity index 100%
rename from wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/MockPageWithLabelInEnclosure.html
rename to wicket-core/src/test/java/org/apache/wicket/core/util/tester/MockPageWithLabelInEnclosure.html
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/MockPageWithLabelInEnclosure.java b/wicket-core/src/test/java/org/apache/wicket/core/util/tester/MockPageWithLabelInEnclosure.java
similarity index 96%
rename from wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/MockPageWithLabelInEnclosure.java
rename to wicket-core/src/test/java/org/apache/wicket/core/util/tester/MockPageWithLabelInEnclosure.java
index 2755175..dfdbe05 100644
--- a/wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/MockPageWithLabelInEnclosure.java
+++ b/wicket-core/src/test/java/org/apache/wicket/core/util/tester/MockPageWithLabelInEnclosure.java
@@ -14,7 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.wicket.core.util.util.tester;
+package org.apache.wicket.core.util.tester;
 
 import org.apache.wicket.ajax.AjaxRequestTarget;
 import org.apache.wicket.ajax.markup.html.AjaxLink;
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/MockPageWithLinkAndLabel.html b/wicket-core/src/test/java/org/apache/wicket/core/util/tester/MockPageWithLinkAndLabel.html
similarity index 100%
rename from wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/MockPageWithLinkAndLabel.html
rename to wicket-core/src/test/java/org/apache/wicket/core/util/tester/MockPageWithLinkAndLabel.html
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/MockPageWithLinkAndLabel.java b/wicket-core/src/test/java/org/apache/wicket/core/util/tester/MockPageWithLinkAndLabel.java
similarity index 96%
rename from wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/MockPageWithLinkAndLabel.java
rename to wicket-core/src/test/java/org/apache/wicket/core/util/tester/MockPageWithLinkAndLabel.java
index d0f6c7e..85ff8ec 100644
--- a/wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/MockPageWithLinkAndLabel.java
+++ b/wicket-core/src/test/java/org/apache/wicket/core/util/tester/MockPageWithLinkAndLabel.java
@@ -14,7 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.wicket.core.util.util.tester;
+package org.apache.wicket.core.util.tester;
 
 import org.apache.wicket.markup.html.WebPage;
 
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/MockResourceLinkPage.html b/wicket-core/src/test/java/org/apache/wicket/core/util/tester/MockResourceLinkPage.html
similarity index 100%
rename from wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/MockResourceLinkPage.html
rename to wicket-core/src/test/java/org/apache/wicket/core/util/tester/MockResourceLinkPage.html
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/MockResourceLinkPage.java b/wicket-core/src/test/java/org/apache/wicket/core/util/tester/MockResourceLinkPage.java
similarity index 96%
rename from wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/MockResourceLinkPage.java
rename to wicket-core/src/test/java/org/apache/wicket/core/util/tester/MockResourceLinkPage.java
index e2a2559..b4c390e 100644
--- a/wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/MockResourceLinkPage.java
+++ b/wicket-core/src/test/java/org/apache/wicket/core/util/tester/MockResourceLinkPage.java
@@ -14,7 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.wicket.core.util.util.tester;
+package org.apache.wicket.core.util.tester;
 
 import org.apache.wicket.markup.html.WebPage;
 import org.apache.wicket.markup.html.link.ResourceLink;
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/NestedFormPage.html b/wicket-core/src/test/java/org/apache/wicket/core/util/tester/NestedFormPage.html
similarity index 100%
rename from wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/NestedFormPage.html
rename to wicket-core/src/test/java/org/apache/wicket/core/util/tester/NestedFormPage.html
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/NestedFormPage.java b/wicket-core/src/test/java/org/apache/wicket/core/util/tester/NestedFormPage.java
similarity index 96%
rename from wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/NestedFormPage.java
rename to wicket-core/src/test/java/org/apache/wicket/core/util/tester/NestedFormPage.java
index a43da37..bfca849 100644
--- a/wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/NestedFormPage.java
+++ b/wicket-core/src/test/java/org/apache/wicket/core/util/tester/NestedFormPage.java
@@ -14,7 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.wicket.core.util.util.tester;
+package org.apache.wicket.core.util.tester;
 
 import org.apache.wicket.markup.html.WebPage;
 import org.apache.wicket.markup.html.form.Button;
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/StartComponentInPageRedirectToRenderTest.java b/wicket-core/src/test/java/org/apache/wicket/core/util/tester/StartComponentInPageRedirectToRenderTest.java
similarity index 97%
rename from wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/StartComponentInPageRedirectToRenderTest.java
rename to wicket-core/src/test/java/org/apache/wicket/core/util/tester/StartComponentInPageRedirectToRenderTest.java
index a9b42e3..4ac8b9e 100644
--- a/wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/StartComponentInPageRedirectToRenderTest.java
+++ b/wicket-core/src/test/java/org/apache/wicket/core/util/tester/StartComponentInPageRedirectToRenderTest.java
@@ -14,7 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.wicket.core.util.util.tester;
+package org.apache.wicket.core.util.tester;
 
 
 import org.apache.wicket.markup.html.basic.Label;
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/TagTesterTest.java b/wicket-core/src/test/java/org/apache/wicket/core/util/tester/TagTesterTest.java
similarity index 99%
rename from wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/TagTesterTest.java
rename to wicket-core/src/test/java/org/apache/wicket/core/util/tester/TagTesterTest.java
index 30a9719..7ae7844 100644
--- a/wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/TagTesterTest.java
+++ b/wicket-core/src/test/java/org/apache/wicket/core/util/tester/TagTesterTest.java
@@ -14,7 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.wicket.core.util.util.tester;
+package org.apache.wicket.core.util.tester;
 
 import static org.assertj.core.api.Assertions.assertThat;
 import static org.junit.jupiter.api.Assertions.assertEquals;
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/WicketTesterClickExternalLinkTest.java b/wicket-core/src/test/java/org/apache/wicket/core/util/tester/WicketTesterClickExternalLinkTest.java
similarity index 96%
rename from wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/WicketTesterClickExternalLinkTest.java
rename to wicket-core/src/test/java/org/apache/wicket/core/util/tester/WicketTesterClickExternalLinkTest.java
index 805d51a..66b249e 100644
--- a/wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/WicketTesterClickExternalLinkTest.java
+++ b/wicket-core/src/test/java/org/apache/wicket/core/util/tester/WicketTesterClickExternalLinkTest.java
@@ -14,7 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.wicket.core.util.util.tester;
+package org.apache.wicket.core.util.tester;
 
 import org.apache.wicket.MockPageWithLink;
 import org.apache.wicket.markup.html.link.ExternalLink;
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/WicketTesterCookieTest.java b/wicket-core/src/test/java/org/apache/wicket/core/util/tester/WicketTesterCookieTest.java
similarity index 97%
rename from wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/WicketTesterCookieTest.java
rename to wicket-core/src/test/java/org/apache/wicket/core/util/tester/WicketTesterCookieTest.java
index 3243b81..bd2d14e 100644
--- a/wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/WicketTesterCookieTest.java
+++ b/wicket-core/src/test/java/org/apache/wicket/core/util/tester/WicketTesterCookieTest.java
@@ -14,7 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.wicket.core.util.util.tester;
+package org.apache.wicket.core.util.tester;
 
 import static org.junit.jupiter.api.Assertions.assertEquals;
 import static org.junit.jupiter.api.Assertions.assertNotNull;
@@ -29,10 +29,10 @@ import java.util.List;
 import java.util.Map;
 import javax.servlet.http.Cookie;
 
-import org.apache.wicket.core.util.util.tester.apps_1.CreateBook;
-import org.apache.wicket.core.util.util.tester.cookies.CollectAllRequestCookiesPage;
-import org.apache.wicket.core.util.util.tester.cookies.EndPage;
-import org.apache.wicket.core.util.util.tester.cookies.SetCookiePage;
+import org.apache.wicket.core.util.tester.apps_1.CreateBook;
+import org.apache.wicket.core.util.tester.cookies.CollectAllRequestCookiesPage;
+import org.apache.wicket.core.util.tester.cookies.EndPage;
+import org.apache.wicket.core.util.tester.cookies.SetCookiePage;
 import org.apache.wicket.protocol.http.mock.Cookies;
 import org.apache.wicket.util.tester.WicketTestCase;
 import org.apache.wicket.util.tester.WicketTester;
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/WicketTesterLazyIsPageStatelessBase.java b/wicket-core/src/test/java/org/apache/wicket/core/util/tester/WicketTesterLazyIsPageStatelessBase.java
similarity index 98%
rename from wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/WicketTesterLazyIsPageStatelessBase.java
rename to wicket-core/src/test/java/org/apache/wicket/core/util/tester/WicketTesterLazyIsPageStatelessBase.java
index 7c8a5c2..4a6d253 100644
--- a/wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/WicketTesterLazyIsPageStatelessBase.java
+++ b/wicket-core/src/test/java/org/apache/wicket/core/util/tester/WicketTesterLazyIsPageStatelessBase.java
@@ -14,7 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.wicket.core.util.util.tester;
+package org.apache.wicket.core.util.tester;
 
 import static org.junit.jupiter.api.Assertions.assertTrue;
 
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/WicketTesterLazyIsPageStatelessOnePassTest.java b/wicket-core/src/test/java/org/apache/wicket/core/util/tester/WicketTesterLazyIsPageStatelessOnePassTest.java
similarity index 96%
rename from wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/WicketTesterLazyIsPageStatelessOnePassTest.java
rename to wicket-core/src/test/java/org/apache/wicket/core/util/tester/WicketTesterLazyIsPageStatelessOnePassTest.java
index 3888994..8c9e268 100644
--- a/wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/WicketTesterLazyIsPageStatelessOnePassTest.java
+++ b/wicket-core/src/test/java/org/apache/wicket/core/util/tester/WicketTesterLazyIsPageStatelessOnePassTest.java
@@ -14,7 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.wicket.core.util.util.tester;
+package org.apache.wicket.core.util.tester;
 
 import org.apache.wicket.mock.MockApplication;
 import org.apache.wicket.protocol.http.WebApplication;
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/WicketTesterLazyIsPageStatelessRedirectToBufferTest.java b/wicket-core/src/test/java/org/apache/wicket/core/util/tester/WicketTesterLazyIsPageStatelessRedirectToBufferTest.java
similarity index 98%
rename from wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/WicketTesterLazyIsPageStatelessRedirectToBufferTest.java
rename to wicket-core/src/test/java/org/apache/wicket/core/util/tester/WicketTesterLazyIsPageStatelessRedirectToBufferTest.java
index 313f432..fbdf84c 100644
--- a/wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/WicketTesterLazyIsPageStatelessRedirectToBufferTest.java
+++ b/wicket-core/src/test/java/org/apache/wicket/core/util/tester/WicketTesterLazyIsPageStatelessRedirectToBufferTest.java
@@ -14,7 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.wicket.core.util.util.tester;
+package org.apache.wicket.core.util.tester;
 
 import org.apache.wicket.MarkupContainer;
 import org.apache.wicket.markup.IMarkupResourceStreamProvider;
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/WicketTesterLazyIsPageStatelessRedirectToRenderTest.java b/wicket-core/src/test/java/org/apache/wicket/core/util/tester/WicketTesterLazyIsPageStatelessRedirectToRenderTest.java
similarity index 96%
rename from wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/WicketTesterLazyIsPageStatelessRedirectToRenderTest.java
rename to wicket-core/src/test/java/org/apache/wicket/core/util/tester/WicketTesterLazyIsPageStatelessRedirectToRenderTest.java
index 1d68bfe..3fc94fa 100644
--- a/wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/WicketTesterLazyIsPageStatelessRedirectToRenderTest.java
+++ b/wicket-core/src/test/java/org/apache/wicket/core/util/tester/WicketTesterLazyIsPageStatelessRedirectToRenderTest.java
@@ -14,7 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.wicket.core.util.util.tester;
+package org.apache.wicket.core.util.tester;
 
 import org.apache.wicket.mock.MockApplication;
 import org.apache.wicket.protocol.http.WebApplication;
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/WicketTesterSessionCreationTest.java b/wicket-core/src/test/java/org/apache/wicket/core/util/tester/WicketTesterSessionCreationTest.java
similarity index 97%
rename from wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/WicketTesterSessionCreationTest.java
rename to wicket-core/src/test/java/org/apache/wicket/core/util/tester/WicketTesterSessionCreationTest.java
index 4fee700..800589d 100644
--- a/wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/WicketTesterSessionCreationTest.java
+++ b/wicket-core/src/test/java/org/apache/wicket/core/util/tester/WicketTesterSessionCreationTest.java
@@ -14,7 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.wicket.core.util.util.tester;
+package org.apache.wicket.core.util.tester;
 
 import static org.junit.jupiter.api.Assertions.assertEquals;
 
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/WicketTesterSessionInvalidateTest.java b/wicket-core/src/test/java/org/apache/wicket/core/util/tester/WicketTesterSessionInvalidateTest.java
similarity index 98%
rename from wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/WicketTesterSessionInvalidateTest.java
rename to wicket-core/src/test/java/org/apache/wicket/core/util/tester/WicketTesterSessionInvalidateTest.java
index ca14ce4..09b7815 100644
--- a/wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/WicketTesterSessionInvalidateTest.java
+++ b/wicket-core/src/test/java/org/apache/wicket/core/util/tester/WicketTesterSessionInvalidateTest.java
@@ -14,7 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.wicket.core.util.util.tester;
+package org.apache.wicket.core.util.tester;
 
 import static org.junit.jupiter.api.Assertions.assertEquals;
 import static org.junit.jupiter.api.Assertions.assertNull;
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/WicketTesterTest.java b/wicket-core/src/test/java/org/apache/wicket/core/util/tester/WicketTesterTest.java
similarity index 98%
rename from wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/WicketTesterTest.java
rename to wicket-core/src/test/java/org/apache/wicket/core/util/tester/WicketTesterTest.java
index faae56e..c51ff1d 100644
--- a/wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/WicketTesterTest.java
+++ b/wicket-core/src/test/java/org/apache/wicket/core/util/tester/WicketTesterTest.java
@@ -14,7 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.wicket.core.util.util.tester;
+package org.apache.wicket.core.util.tester;
 
 import static org.junit.jupiter.api.Assertions.assertEquals;
 import static org.junit.jupiter.api.Assertions.assertFalse;
@@ -44,14 +44,14 @@ import org.apache.wicket.authorization.IAuthorizationStrategy;
 import org.apache.wicket.core.request.handler.BookmarkablePageRequestHandler;
 import org.apache.wicket.core.request.handler.IPageProvider;
 import org.apache.wicket.core.request.handler.PageProvider;
-import org.apache.wicket.core.util.util.tester.apps_1.Book;
-import org.apache.wicket.core.util.util.tester.apps_1.CreateBook;
-import org.apache.wicket.core.util.util.tester.apps_1.MyMockApplication;
-import org.apache.wicket.core.util.util.tester.apps_1.SuccessPage;
-import org.apache.wicket.core.util.util.tester.apps_1.ViewBook;
-import org.apache.wicket.core.util.util.tester.apps_6.LinkPage;
-import org.apache.wicket.core.util.util.tester.apps_6.ResultPage;
-import org.apache.wicket.core.util.util.tester.apps_8.ComponentFeedbackResourceTestingPage;
+import org.apache.wicket.core.util.tester.apps_1.Book;
+import org.apache.wicket.core.util.tester.apps_1.CreateBook;
+import org.apache.wicket.core.util.tester.apps_1.MyMockApplication;
+import org.apache.wicket.core.util.tester.apps_1.SuccessPage;
+import org.apache.wicket.core.util.tester.apps_1.ViewBook;
+import org.apache.wicket.core.util.tester.apps_6.LinkPage;
+import org.apache.wicket.core.util.tester.apps_6.ResultPage;
+import org.apache.wicket.core.util.tester.apps_8.ComponentFeedbackResourceTestingPage;
 import org.apache.wicket.feedback.ExactLevelFeedbackMessageFilter;
 import org.apache.wicket.feedback.FeedbackMessage;
 import org.apache.wicket.markup.ComponentTag;
@@ -81,7 +81,7 @@ import org.apache.wicket.util.string.StringValue;
 import org.apache.wicket.util.tester.DummyHomePage;
 import org.apache.wicket.util.tester.DummyHomePage.TestLink;
 import org.apache.wicket.util.tester.FormTester;
-import org.apache.wicket.core.util.util.tester.MockPageWithFormAndAjaxFormSubmitBehavior.Pojo;
+import org.apache.wicket.core.util.tester.MockPageWithFormAndAjaxFormSubmitBehavior.Pojo;
 import org.apache.wicket.util.tester.Result;
 import org.apache.wicket.util.tester.WicketTestCase;
 import org.junit.jupiter.api.BeforeEach;
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/apps_1/Book.java b/wicket-core/src/test/java/org/apache/wicket/core/util/tester/apps_1/Book.java
similarity index 96%
rename from wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/apps_1/Book.java
rename to wicket-core/src/test/java/org/apache/wicket/core/util/tester/apps_1/Book.java
index ebc0d0a..a1ade72 100644
--- a/wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/apps_1/Book.java
+++ b/wicket-core/src/test/java/org/apache/wicket/core/util/tester/apps_1/Book.java
@@ -14,7 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.wicket.core.util.util.tester.apps_1;
+package org.apache.wicket.core.util.tester.apps_1;
 
 import java.io.Serializable;
 
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/apps_1/CreateBook.html b/wicket-core/src/test/java/org/apache/wicket/core/util/tester/apps_1/CreateBook.html
similarity index 100%
rename from wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/apps_1/CreateBook.html
rename to wicket-core/src/test/java/org/apache/wicket/core/util/tester/apps_1/CreateBook.html
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/apps_1/CreateBook.java b/wicket-core/src/test/java/org/apache/wicket/core/util/tester/apps_1/CreateBook.java
similarity index 97%
rename from wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/apps_1/CreateBook.java
rename to wicket-core/src/test/java/org/apache/wicket/core/util/tester/apps_1/CreateBook.java
index 9d7d3dd..2a8fda1 100644
--- a/wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/apps_1/CreateBook.java
+++ b/wicket-core/src/test/java/org/apache/wicket/core/util/tester/apps_1/CreateBook.java
@@ -14,7 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.wicket.core.util.util.tester.apps_1;
+package org.apache.wicket.core.util.tester.apps_1;
 
 import org.apache.wicket.Page;
 import org.apache.wicket.markup.html.WebPage;
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/apps_1/CreateBook.properties b/wicket-core/src/test/java/org/apache/wicket/core/util/tester/apps_1/CreateBook.properties
similarity index 100%
rename from wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/apps_1/CreateBook.properties
rename to wicket-core/src/test/java/org/apache/wicket/core/util/tester/apps_1/CreateBook.properties
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/apps_1/MyMockApplication.java b/wicket-core/src/test/java/org/apache/wicket/core/util/tester/apps_1/MyMockApplication.java
similarity index 94%
rename from wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/apps_1/MyMockApplication.java
rename to wicket-core/src/test/java/org/apache/wicket/core/util/tester/apps_1/MyMockApplication.java
index fc2c5c2..53777a8 100644
--- a/wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/apps_1/MyMockApplication.java
+++ b/wicket-core/src/test/java/org/apache/wicket/core/util/tester/apps_1/MyMockApplication.java
@@ -14,7 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.wicket.core.util.util.tester.apps_1;
+package org.apache.wicket.core.util.tester.apps_1;
 
 import org.apache.wicket.mock.MockApplication;
 
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/apps_1/MyMockApplication.properties b/wicket-core/src/test/java/org/apache/wicket/core/util/tester/apps_1/MyMockApplication.properties
similarity index 100%
rename from wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/apps_1/MyMockApplication.properties
rename to wicket-core/src/test/java/org/apache/wicket/core/util/tester/apps_1/MyMockApplication.properties
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/apps_1/MyMockApplication_de.properties b/wicket-core/src/test/java/org/apache/wicket/core/util/tester/apps_1/MyMockApplication_de.properties
similarity index 100%
rename from wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/apps_1/MyMockApplication_de.properties
rename to wicket-core/src/test/java/org/apache/wicket/core/util/tester/apps_1/MyMockApplication_de.properties
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/apps_1/MyMockApplication_nl.properties b/wicket-core/src/test/java/org/apache/wicket/core/util/tester/apps_1/MyMockApplication_nl.properties
similarity index 100%
rename from wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/apps_1/MyMockApplication_nl.properties
rename to wicket-core/src/test/java/org/apache/wicket/core/util/tester/apps_1/MyMockApplication_nl.properties
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/apps_1/SuccessPage.html b/wicket-core/src/test/java/org/apache/wicket/core/util/tester/apps_1/SuccessPage.html
similarity index 100%
rename from wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/apps_1/SuccessPage.html
rename to wicket-core/src/test/java/org/apache/wicket/core/util/tester/apps_1/SuccessPage.html
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/apps_1/SuccessPage.java b/wicket-core/src/test/java/org/apache/wicket/core/util/tester/apps_1/SuccessPage.java
similarity index 94%
rename from wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/apps_1/SuccessPage.java
rename to wicket-core/src/test/java/org/apache/wicket/core/util/tester/apps_1/SuccessPage.java
index 87c0d87..99a0382 100644
--- a/wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/apps_1/SuccessPage.java
+++ b/wicket-core/src/test/java/org/apache/wicket/core/util/tester/apps_1/SuccessPage.java
@@ -14,7 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.wicket.core.util.util.tester.apps_1;
+package org.apache.wicket.core.util.tester.apps_1;
 
 import org.apache.wicket.markup.html.WebPage;
 
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/apps_1/ViewBook.html b/wicket-core/src/test/java/org/apache/wicket/core/util/tester/apps_1/ViewBook.html
similarity index 100%
rename from wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/apps_1/ViewBook.html
rename to wicket-core/src/test/java/org/apache/wicket/core/util/tester/apps_1/ViewBook.html
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/apps_1/ViewBook.java b/wicket-core/src/test/java/org/apache/wicket/core/util/tester/apps_1/ViewBook.java
similarity index 96%
rename from wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/apps_1/ViewBook.java
rename to wicket-core/src/test/java/org/apache/wicket/core/util/tester/apps_1/ViewBook.java
index c4fb467..1c7d338 100644
--- a/wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/apps_1/ViewBook.java
+++ b/wicket-core/src/test/java/org/apache/wicket/core/util/tester/apps_1/ViewBook.java
@@ -14,7 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.wicket.core.util.util.tester.apps_1;
+package org.apache.wicket.core.util.tester.apps_1;
 
 import org.apache.wicket.markup.html.WebPage;
 import org.apache.wicket.markup.html.basic.Label;
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/apps_2/LoginPage.html b/wicket-core/src/test/java/org/apache/wicket/core/util/tester/apps_2/LoginPage.html
similarity index 100%
rename from wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/apps_2/LoginPage.html
rename to wicket-core/src/test/java/org/apache/wicket/core/util/tester/apps_2/LoginPage.html
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/apps_2/LoginPage.java b/wicket-core/src/test/java/org/apache/wicket/core/util/tester/apps_2/LoginPage.java
similarity index 94%
rename from wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/apps_2/LoginPage.java
rename to wicket-core/src/test/java/org/apache/wicket/core/util/tester/apps_2/LoginPage.java
index 092bcf7..5951d90 100644
--- a/wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/apps_2/LoginPage.java
+++ b/wicket-core/src/test/java/org/apache/wicket/core/util/tester/apps_2/LoginPage.java
@@ -14,7 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.wicket.core.util.util.tester.apps_2;
+package org.apache.wicket.core.util.tester.apps_2;
 
 import org.apache.wicket.markup.html.WebPage;
 
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/apps_2/RedirectPage.html b/wicket-core/src/test/java/org/apache/wicket/core/util/tester/apps_2/RedirectPage.html
similarity index 100%
rename from wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/apps_2/RedirectPage.html
rename to wicket-core/src/test/java/org/apache/wicket/core/util/tester/apps_2/RedirectPage.html
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/apps_2/RedirectPage.java b/wicket-core/src/test/java/org/apache/wicket/core/util/tester/apps_2/RedirectPage.java
similarity index 94%
rename from wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/apps_2/RedirectPage.java
rename to wicket-core/src/test/java/org/apache/wicket/core/util/tester/apps_2/RedirectPage.java
index be58983..959eb30 100644
--- a/wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/apps_2/RedirectPage.java
+++ b/wicket-core/src/test/java/org/apache/wicket/core/util/tester/apps_2/RedirectPage.java
@@ -14,7 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.wicket.core.util.util.tester.apps_2;
+package org.apache.wicket.core.util.tester.apps_2;
 
 import org.apache.wicket.markup.html.WebPage;
 
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/apps_2/Test.java b/wicket-core/src/test/java/org/apache/wicket/core/util/tester/apps_2/Test.java
similarity index 96%
rename from wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/apps_2/Test.java
rename to wicket-core/src/test/java/org/apache/wicket/core/util/tester/apps_2/Test.java
index 958163e..c04e9aa 100644
--- a/wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/apps_2/Test.java
+++ b/wicket-core/src/test/java/org/apache/wicket/core/util/tester/apps_2/Test.java
@@ -14,7 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.wicket.core.util.util.tester.apps_2;
+package org.apache.wicket.core.util.tester.apps_2;
 
 import org.apache.wicket.authorization.IAuthorizationStrategy;
 import org.apache.wicket.authorization.strategies.page.SimplePageAuthorizationStrategy;
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/apps_3/ChoicePage.html b/wicket-core/src/test/java/org/apache/wicket/core/util/tester/apps_3/ChoicePage.html
similarity index 100%
rename from wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/apps_3/ChoicePage.html
rename to wicket-core/src/test/java/org/apache/wicket/core/util/tester/apps_3/ChoicePage.html
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/apps_3/ChoicePage.java b/wicket-core/src/test/java/org/apache/wicket/core/util/tester/apps_3/ChoicePage.java
similarity index 98%
rename from wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/apps_3/ChoicePage.java
rename to wicket-core/src/test/java/org/apache/wicket/core/util/tester/apps_3/ChoicePage.java
index f2e75b0..dad21a2 100644
--- a/wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/apps_3/ChoicePage.java
+++ b/wicket-core/src/test/java/org/apache/wicket/core/util/tester/apps_3/ChoicePage.java
@@ -14,7 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.wicket.core.util.util.tester.apps_3;
+package org.apache.wicket.core.util.tester.apps_3;
 
 import java.io.Serializable;
 import java.util.ArrayList;
@@ -39,7 +39,7 @@ import org.apache.wicket.markup.html.list.ListItem;
 import org.apache.wicket.markup.html.list.ListView;
 import org.apache.wicket.model.CompoundPropertyModel;
 import org.apache.wicket.model.Model;
-import org.apache.wicket.core.util.util.tester.apps_1.Book;
+import org.apache.wicket.core.util.tester.apps_1.Book;
 
 
 /**
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/apps_3/FormTesterTest.java b/wicket-core/src/test/java/org/apache/wicket/core/util/tester/apps_3/FormTesterTest.java
similarity index 98%
rename from wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/apps_3/FormTesterTest.java
rename to wicket-core/src/test/java/org/apache/wicket/core/util/tester/apps_3/FormTesterTest.java
index 255697b..6d62689 100644
--- a/wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/apps_3/FormTesterTest.java
+++ b/wicket-core/src/test/java/org/apache/wicket/core/util/tester/apps_3/FormTesterTest.java
@@ -14,7 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.wicket.core.util.util.tester.apps_3;
+package org.apache.wicket.core.util.tester.apps_3;
 
 import static org.junit.jupiter.api.Assertions.assertEquals;
 import static org.junit.jupiter.api.Assertions.assertFalse;
@@ -27,7 +27,7 @@ import java.util.List;
 import org.apache.wicket.WicketRuntimeException;
 import org.apache.wicket.util.tester.FormTester;
 import org.apache.wicket.util.tester.WicketTestCase;
-import org.apache.wicket.core.util.util.tester.apps_1.Book;
+import org.apache.wicket.core.util.tester.apps_1.Book;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
 
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/apps_4/EmailPage.html b/wicket-core/src/test/java/org/apache/wicket/core/util/tester/apps_4/EmailPage.html
similarity index 100%
rename from wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/apps_4/EmailPage.html
rename to wicket-core/src/test/java/org/apache/wicket/core/util/tester/apps_4/EmailPage.html
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/apps_4/EmailPage.java b/wicket-core/src/test/java/org/apache/wicket/core/util/tester/apps_4/EmailPage.java
similarity index 96%
rename from wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/apps_4/EmailPage.java
rename to wicket-core/src/test/java/org/apache/wicket/core/util/tester/apps_4/EmailPage.java
index d4911ba..b0ca9a1 100644
--- a/wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/apps_4/EmailPage.java
+++ b/wicket-core/src/test/java/org/apache/wicket/core/util/tester/apps_4/EmailPage.java
@@ -14,7 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.wicket.core.util.util.tester.apps_4;
+package org.apache.wicket.core.util.tester.apps_4;
 
 import org.apache.wicket.markup.html.WebPage;
 import org.apache.wicket.markup.html.form.Form;
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/apps_4/EmailPage.properties b/wicket-core/src/test/java/org/apache/wicket/core/util/tester/apps_4/EmailPage.properties
similarity index 100%
rename from wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/apps_4/EmailPage.properties
rename to wicket-core/src/test/java/org/apache/wicket/core/util/tester/apps_4/EmailPage.properties
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/apps_4/FormTesterTest.java b/wicket-core/src/test/java/org/apache/wicket/core/util/tester/apps_4/FormTesterTest.java
similarity index 97%
rename from wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/apps_4/FormTesterTest.java
rename to wicket-core/src/test/java/org/apache/wicket/core/util/tester/apps_4/FormTesterTest.java
index 247cb76..b564504 100644
--- a/wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/apps_4/FormTesterTest.java
+++ b/wicket-core/src/test/java/org/apache/wicket/core/util/tester/apps_4/FormTesterTest.java
@@ -14,7 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.wicket.core.util.util.tester.apps_4;
+package org.apache.wicket.core.util.tester.apps_4;
 
 import static org.junit.jupiter.api.Assertions.assertEquals;
 import static org.junit.jupiter.api.Assertions.assertNull;
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/apps_5/AjaxLinkClickTest.java b/wicket-core/src/test/java/org/apache/wicket/core/util/tester/apps_5/AjaxLinkClickTest.java
similarity index 98%
rename from wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/apps_5/AjaxLinkClickTest.java
rename to wicket-core/src/test/java/org/apache/wicket/core/util/tester/apps_5/AjaxLinkClickTest.java
index 7c52d35..650b8bb 100644
--- a/wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/apps_5/AjaxLinkClickTest.java
+++ b/wicket-core/src/test/java/org/apache/wicket/core/util/tester/apps_5/AjaxLinkClickTest.java
@@ -14,7 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.wicket.core.util.util.tester.apps_5;
+package org.apache.wicket.core.util.tester.apps_5;
 
 import static org.junit.jupiter.api.Assertions.assertNotNull;
 import static org.junit.jupiter.api.Assertions.assertNull;
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/apps_5/AjaxSubmitLinkClickTest.java b/wicket-core/src/test/java/org/apache/wicket/core/util/tester/apps_5/AjaxSubmitLinkClickTest.java
similarity index 98%
rename from wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/apps_5/AjaxSubmitLinkClickTest.java
rename to wicket-core/src/test/java/org/apache/wicket/core/util/tester/apps_5/AjaxSubmitLinkClickTest.java
index fd69dfe..5a940e5 100644
--- a/wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/apps_5/AjaxSubmitLinkClickTest.java
+++ b/wicket-core/src/test/java/org/apache/wicket/core/util/tester/apps_5/AjaxSubmitLinkClickTest.java
@@ -14,7 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.wicket.core.util.util.tester.apps_5;
+package org.apache.wicket.core.util.tester.apps_5;
 
 import static org.junit.jupiter.api.Assertions.assertEquals;
 import static org.junit.jupiter.api.Assertions.assertTrue;
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/apps_5/MockPageWithFormAndContainedLink.html b/wicket-core/src/test/java/org/apache/wicket/core/util/tester/apps_5/MockPageWithFormAndContainedLink.html
similarity index 100%
rename from wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/apps_5/MockPageWithFormAndContainedLink.html
rename to wicket-core/src/test/java/org/apache/wicket/core/util/tester/apps_5/MockPageWithFormAndContainedLink.html
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/apps_5/MockPageWithFormAndContainedLink.java b/wicket-core/src/test/java/org/apache/wicket/core/util/tester/apps_5/MockPageWithFormAndContainedLink.java
similarity index 96%
rename from wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/apps_5/MockPageWithFormAndContainedLink.java
rename to wicket-core/src/test/java/org/apache/wicket/core/util/tester/apps_5/MockPageWithFormAndContainedLink.java
index 37f962b..686feaa 100644
--- a/wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/apps_5/MockPageWithFormAndContainedLink.java
+++ b/wicket-core/src/test/java/org/apache/wicket/core/util/tester/apps_5/MockPageWithFormAndContainedLink.java
@@ -14,7 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.wicket.core.util.util.tester.apps_5;
+package org.apache.wicket.core.util.tester.apps_5;
 
 import org.apache.wicket.markup.html.link.AbstractLink;
 
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/apps_5/MockPageWithFormAndLink.html b/wicket-core/src/test/java/org/apache/wicket/core/util/tester/apps_5/MockPageWithFormAndLink.html
similarity index 100%
rename from wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/apps_5/MockPageWithFormAndLink.html
rename to wicket-core/src/test/java/org/apache/wicket/core/util/tester/apps_5/MockPageWithFormAndLink.html
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/apps_5/MockPageWithFormAndLink.java b/wicket-core/src/test/java/org/apache/wicket/core/util/tester/apps_5/MockPageWithFormAndLink.java
similarity index 97%
rename from wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/apps_5/MockPageWithFormAndLink.java
rename to wicket-core/src/test/java/org/apache/wicket/core/util/tester/apps_5/MockPageWithFormAndLink.java
index 6590d9c..fe92c85 100644
--- a/wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/apps_5/MockPageWithFormAndLink.java
+++ b/wicket-core/src/test/java/org/apache/wicket/core/util/tester/apps_5/MockPageWithFormAndLink.java
@@ -14,7 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.wicket.core.util.util.tester.apps_5;
+package org.apache.wicket.core.util.tester.apps_5;
 
 import org.apache.wicket.markup.html.WebPage;
 import org.apache.wicket.markup.html.form.Form;
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/apps_5/MockPageWithLink.html b/wicket-core/src/test/java/org/apache/wicket/core/util/tester/apps_5/MockPageWithLink.html
similarity index 100%
rename from wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/apps_5/MockPageWithLink.html
rename to wicket-core/src/test/java/org/apache/wicket/core/util/tester/apps_5/MockPageWithLink.html
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/apps_5/MockPageWithLink.java b/wicket-core/src/test/java/org/apache/wicket/core/util/tester/apps_5/MockPageWithLink.java
similarity index 94%
rename from wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/apps_5/MockPageWithLink.java
rename to wicket-core/src/test/java/org/apache/wicket/core/util/tester/apps_5/MockPageWithLink.java
index 076ade1..5e61d45 100644
--- a/wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/apps_5/MockPageWithLink.java
+++ b/wicket-core/src/test/java/org/apache/wicket/core/util/tester/apps_5/MockPageWithLink.java
@@ -14,7 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.wicket.core.util.util.tester.apps_5;
+package org.apache.wicket.core.util.tester.apps_5;
 
 import org.apache.wicket.markup.html.WebPage;
 
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/apps_6/LinkPage.html b/wicket-core/src/test/java/org/apache/wicket/core/util/tester/apps_6/LinkPage.html
similarity index 100%
rename from wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/apps_6/LinkPage.html
rename to wicket-core/src/test/java/org/apache/wicket/core/util/tester/apps_6/LinkPage.html
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/apps_6/LinkPage.java b/wicket-core/src/test/java/org/apache/wicket/core/util/tester/apps_6/LinkPage.java
similarity index 98%
rename from wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/apps_6/LinkPage.java
rename to wicket-core/src/test/java/org/apache/wicket/core/util/tester/apps_6/LinkPage.java
index 6f7f205..0fbc278 100644
--- a/wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/apps_6/LinkPage.java
+++ b/wicket-core/src/test/java/org/apache/wicket/core/util/tester/apps_6/LinkPage.java
@@ -14,7 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.wicket.core.util.util.tester.apps_6;
+package org.apache.wicket.core.util.tester.apps_6;
 
 import java.util.Optional;
 
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/apps_6/ResultPage.html b/wicket-core/src/test/java/org/apache/wicket/core/util/tester/apps_6/ResultPage.html
similarity index 100%
rename from wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/apps_6/ResultPage.html
rename to wicket-core/src/test/java/org/apache/wicket/core/util/tester/apps_6/ResultPage.html
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/apps_6/ResultPage.java b/wicket-core/src/test/java/org/apache/wicket/core/util/tester/apps_6/ResultPage.java
similarity index 95%
rename from wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/apps_6/ResultPage.java
rename to wicket-core/src/test/java/org/apache/wicket/core/util/tester/apps_6/ResultPage.java
index ccc3660..3c3d6a8 100644
--- a/wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/apps_6/ResultPage.java
+++ b/wicket-core/src/test/java/org/apache/wicket/core/util/tester/apps_6/ResultPage.java
@@ -14,7 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.wicket.core.util.util.tester.apps_6;
+package org.apache.wicket.core.util.tester.apps_6;
 
 import org.apache.wicket.markup.html.WebPage;
 import org.apache.wicket.markup.html.basic.Label;
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/apps_7/HomePage.html b/wicket-core/src/test/java/org/apache/wicket/core/util/tester/apps_7/HomePage.html
similarity index 100%
rename from wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/apps_7/HomePage.html
rename to wicket-core/src/test/java/org/apache/wicket/core/util/tester/apps_7/HomePage.html
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/apps_7/HomePage.java b/wicket-core/src/test/java/org/apache/wicket/core/util/tester/apps_7/HomePage.java
similarity index 97%
rename from wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/apps_7/HomePage.java
rename to wicket-core/src/test/java/org/apache/wicket/core/util/tester/apps_7/HomePage.java
index a41d7db..ee9e37f 100644
--- a/wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/apps_7/HomePage.java
+++ b/wicket-core/src/test/java/org/apache/wicket/core/util/tester/apps_7/HomePage.java
@@ -14,7 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.wicket.core.util.util.tester.apps_7;
+package org.apache.wicket.core.util.tester.apps_7;
 
 import org.apache.wicket.ajax.AjaxRequestTarget;
 import org.apache.wicket.ajax.markup.html.form.AjaxButton;
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/apps_7/TestHomePage.java b/wicket-core/src/test/java/org/apache/wicket/core/util/tester/apps_7/TestHomePage.java
similarity index 96%
rename from wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/apps_7/TestHomePage.java
rename to wicket-core/src/test/java/org/apache/wicket/core/util/tester/apps_7/TestHomePage.java
index 90c7ea8..da91a05 100644
--- a/wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/apps_7/TestHomePage.java
+++ b/wicket-core/src/test/java/org/apache/wicket/core/util/tester/apps_7/TestHomePage.java
@@ -14,7 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.wicket.core.util.util.tester.apps_7;
+package org.apache.wicket.core.util.tester.apps_7;
 
 import org.apache.wicket.util.tester.WicketTestCase;
 import org.junit.jupiter.api.Test;
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/apps_7/WicketApplication.java b/wicket-core/src/test/java/org/apache/wicket/core/util/tester/apps_7/WicketApplication.java
similarity index 95%
rename from wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/apps_7/WicketApplication.java
rename to wicket-core/src/test/java/org/apache/wicket/core/util/tester/apps_7/WicketApplication.java
index 0b0f841..555b8e4 100644
--- a/wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/apps_7/WicketApplication.java
+++ b/wicket-core/src/test/java/org/apache/wicket/core/util/tester/apps_7/WicketApplication.java
@@ -14,7 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.wicket.core.util.util.tester.apps_7;
+package org.apache.wicket.core.util.tester.apps_7;
 
 import org.apache.wicket.protocol.http.WebApplication;
 
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/apps_8/ComponentFeedbackResourceTestingPage.html b/wicket-core/src/test/java/org/apache/wicket/core/util/tester/apps_8/ComponentFeedbackResourceTestingPage.html
similarity index 100%
rename from wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/apps_8/ComponentFeedbackResourceTestingPage.html
rename to wicket-core/src/test/java/org/apache/wicket/core/util/tester/apps_8/ComponentFeedbackResourceTestingPage.html
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/apps_8/ComponentFeedbackResourceTestingPage.java b/wicket-core/src/test/java/org/apache/wicket/core/util/tester/apps_8/ComponentFeedbackResourceTestingPage.java
similarity index 95%
rename from wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/apps_8/ComponentFeedbackResourceTestingPage.java
rename to wicket-core/src/test/java/org/apache/wicket/core/util/tester/apps_8/ComponentFeedbackResourceTestingPage.java
index 885f40f..8e5fab0 100644
--- a/wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/apps_8/ComponentFeedbackResourceTestingPage.java
+++ b/wicket-core/src/test/java/org/apache/wicket/core/util/tester/apps_8/ComponentFeedbackResourceTestingPage.java
@@ -14,7 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.wicket.core.util.util.tester.apps_8;
+package org.apache.wicket.core.util.tester.apps_8;
 
 import org.apache.wicket.markup.html.WebPage;
 
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/apps_8/TestResourceProvidingLabel.java b/wicket-core/src/test/java/org/apache/wicket/core/util/tester/apps_8/TestResourceProvidingLabel.java
similarity index 95%
rename from wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/apps_8/TestResourceProvidingLabel.java
rename to wicket-core/src/test/java/org/apache/wicket/core/util/tester/apps_8/TestResourceProvidingLabel.java
index 29b25a3..ff6c827 100644
--- a/wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/apps_8/TestResourceProvidingLabel.java
+++ b/wicket-core/src/test/java/org/apache/wicket/core/util/tester/apps_8/TestResourceProvidingLabel.java
@@ -14,7 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.wicket.core.util.util.tester.apps_8;
+package org.apache.wicket.core.util.tester.apps_8;
 
 import org.apache.wicket.markup.html.basic.Label;
 
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/apps_8/TestResourceProvidingLabel.properties b/wicket-core/src/test/java/org/apache/wicket/core/util/tester/apps_8/TestResourceProvidingLabel.properties
similarity index 100%
rename from wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/apps_8/TestResourceProvidingLabel.properties
rename to wicket-core/src/test/java/org/apache/wicket/core/util/tester/apps_8/TestResourceProvidingLabel.properties
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/bg.jpg b/wicket-core/src/test/java/org/apache/wicket/core/util/tester/bg.jpg
similarity index 100%
rename from wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/bg.jpg
rename to wicket-core/src/test/java/org/apache/wicket/core/util/tester/bg.jpg
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/cookies/CollectAllRequestCookiesPage.java b/wicket-core/src/test/java/org/apache/wicket/core/util/tester/cookies/CollectAllRequestCookiesPage.java
similarity index 95%
rename from wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/cookies/CollectAllRequestCookiesPage.java
rename to wicket-core/src/test/java/org/apache/wicket/core/util/tester/cookies/CollectAllRequestCookiesPage.java
index ddf3d4c..2de5aad 100644
--- a/wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/cookies/CollectAllRequestCookiesPage.java
+++ b/wicket-core/src/test/java/org/apache/wicket/core/util/tester/cookies/CollectAllRequestCookiesPage.java
@@ -14,7 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.wicket.core.util.util.tester.cookies;
+package org.apache.wicket.core.util.tester.cookies;
 
 import java.util.List;
 
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/cookies/EndPage.java b/wicket-core/src/test/java/org/apache/wicket/core/util/tester/cookies/EndPage.java
similarity index 94%
rename from wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/cookies/EndPage.java
rename to wicket-core/src/test/java/org/apache/wicket/core/util/tester/cookies/EndPage.java
index dd4b6b5..4b17864 100644
--- a/wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/cookies/EndPage.java
+++ b/wicket-core/src/test/java/org/apache/wicket/core/util/tester/cookies/EndPage.java
@@ -14,7 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.wicket.core.util.util.tester.cookies;
+package org.apache.wicket.core.util.tester.cookies;
 
 import org.apache.wicket.util.tester.DummyHomePage;
 
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/cookies/SetCookiePage.java b/wicket-core/src/test/java/org/apache/wicket/core/util/tester/cookies/SetCookiePage.java
similarity index 96%
rename from wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/cookies/SetCookiePage.java
rename to wicket-core/src/test/java/org/apache/wicket/core/util/tester/cookies/SetCookiePage.java
index ac05fe5..c6e6f3c 100644
--- a/wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/cookies/SetCookiePage.java
+++ b/wicket-core/src/test/java/org/apache/wicket/core/util/tester/cookies/SetCookiePage.java
@@ -14,7 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.wicket.core.util.util.tester.cookies;
+package org.apache.wicket.core.util.tester.cookies;
 
 import javax.servlet.http.Cookie;
 
diff --git a/wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/test.html b/wicket-core/src/test/java/org/apache/wicket/core/util/tester/test.html
similarity index 100%
rename from wicket-core/src/test/java/org/apache/wicket/core/util/util/tester/test.html
rename to wicket-core/src/test/java/org/apache/wicket/core/util/tester/test.html
diff --git a/wicket-core/src/test/java/org/apache/wicket/resource/InvalidResourceSpecificationExceptionTest.java b/wicket-core/src/test/java/org/apache/wicket/resource/InvalidResourceSpecificationExceptionTest.java
index e484887..c8b666e 100644
--- a/wicket-core/src/test/java/org/apache/wicket/resource/InvalidResourceSpecificationExceptionTest.java
+++ b/wicket-core/src/test/java/org/apache/wicket/resource/InvalidResourceSpecificationExceptionTest.java
@@ -17,7 +17,7 @@
 package org.apache.wicket.resource;
 
 import org.apache.wicket.WicketRuntimeException;
-import org.apache.wicket.core.util.util.ExceptionTestBase;
+import org.apache.wicket.core.util.ExceptionTestBase;
 
 
 /**