Hi Andreas
I don't use tapestry runner myself, but I notice there is a
tapestry-runner-jakarta which might be what you are supposed to use.
I use `mvn jetty:run` to run my apps. You could try that. I posted an
email on 10-Oct-2024 which detailed some fixes to get quickstart working
in the preview. I have copied it here and updated some of the version
numbers.
mvn archetype:generate \
-DinteractiveMode=false \
-DarchetypeGroupId=org.apache.tapestry \
-DarchetypeArtifactId=quickstart \
-DarchetypeVersion=5.9.0 \
-DgroupId=com.example.quickstart \
-DartifactId=tap590 \
-Dversion=1.0-SNAPSHOT \
-Dpackage=com.example.quickstart.tap590
cd tap590
mvn jetty:run
*ISSUE 1*: Caused by: java.lang.ClassNotFoundException:
javax.servlet.Filter
*FIX 1*: Realised that I needed to change the artifactIds in pom.xml
tapestry-core => tapestry-core-jakarta
tapestry-webresources => tapestry-webresources-jakarta
Now the app would run http://localhost:8080
*ISSUE 2*: Lots of classes scanned from multiple locations.
For example
[WARNING] com.google.common.annotations.Beta scanned from multiple
locations:
jar:file:///home/user/.m2/repository/com/google/guava/guava/31.1-jre/guava-31.1-jre.jar!/com/google/common/annotations/Beta.class,
jar:file:///home/user/.m2/repository/com/google/javascript/closure-compiler-unshaded/v20220502/closure-compiler-unshaded-v20220502.jar!/com/google/common/annotations/Beta.class
*FIX 2*: Removing tapestry-webresources-jakarta from the pom.xml
eliminated all of these warnings. I don't know what the fix is if you
want to keep tapestry-webresources-jakarta in the pom.
*ISSUE 3*: The POM for
org.apache.maven.plugins:maven-surefire-plugin:jar:3.1 is missing, no
dependency information available
*FIX 3*: I think this is a typo in pom.xml. Should be
<maven-surefire-version>3.5.2</maven-surefire-version>
*ISSUE 4*: Red Hat Overview of security issues identified 5 high
vulnerabilities and 5 medium vulnerabilities, all to do with
com.fasterxml.jackson.dataformat:jackson-dataformat-yaml 2.13.1 and
com.fasterxml.jackson.core:jackson-databind 2.13.1.
*FIX 4*: pom.xml. Upgrading jackson-version to 2.18.3 solved the problem
<jackson-version>2.18.3</jackson-version>
While upgrading, the following dependencies could also be upgraded.
(from `mvn versions:display-dependency-updates`)
<junit-version>5.12.0</junit-version>
<yasson-version>3.0.4</yasson-version>
*ISSUE 5*: [ERROR] Project requires an incorrect minimum version of
Maven. (as highlighted by `mvn versions:display-plugin-updates`)
*FIX 5*: pom.xml update maven-enforcer-plugin version and required maven
version
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-enforcer-plugin</artifactId>
<version>3.5.0</version>
<executions>
<execution>
<id>enforce-maven</id>
<goals>
<goal>enforce</goal>
</goals>
<configuration>
<rules>
<requireMavenVersion>
<version>3.6.3</version>
</requireMavenVersion>
</rules>
</configuration>
</execution>
</executions>
</plugin>
While upgrading plugins, could also upgrade to the following versions
<maven-compiler-version>3.14.0</maven-compiler-version>
<maven-war-version>3.4.0</maven-war-version>
*ISSUE 6*: src/main/webapp/WEB-INF/web.xml uses old namespaces linked to
javaee
<web-app xmlns="https://xmlns.jcp.org/xml/ns/javaee"
xmlns:xsi="https://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="https://xmlns.jcp.org/xml/ns/javaee
https://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"
version="3.1">
*FIX 6*: should be
<web-app xmlns="https://jakarta.ee/xml/ns/jakartaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="https://jakarta.ee/xml/ns/jakartaee
https://jakarta.ee/xml/ns/jakartaee/web-app_5_0.xsd"
version="5.0">
*ISSUE 7*: Jetty 12 now available
*FIX 7*: pom.xml update the new version in properties and update the plugin
<maven-jetty-version>12.0.14</maven-jetty-version>
<plugin>
<groupId>org.eclipse.jetty.ee9</groupId>
<artifactId>jetty-ee9-maven-plugin</artifactId>
<version>${maven-jetty-version}</version>
<configuration>
<webApp>
<contextPath>/</contextPath>
</webApp>
<scan>10</scan>
<httpConnector>
<port>8080</port>
</httpConnector>
</configuration>
</plugin>
Regards
Tim
On 5/3/25 02:56, Andreas Ernst wrote:
Hi,
i did a Quickstart today, and i got some Javax Test Errors:
org.eclipse.jetty.util.component.AbstractLifeCycle FAILED app:
java.lang.IllegalStateException: class
org.apache.tapestry5.TapestryFilter is not a javax.servlet.Filter
I changed it to:
<dependency>
<groupId>org.apache.tapestry</groupId>
<artifactId>tapestry-core-jakarta</artifactId>
<version>${tapestry-version}</version>
<scope>compile</scope>
<exclusions>
<exclusion>
<groupId>jakarta.xml.bind</groupId>
<artifactId>jaxb-api</artifactId>
</exclusion>
<exclusion>
<groupId>jakarta.xml.ws</groupId>
<artifactId>jaxws-api</artifactId>
</exclusion>
<exclusion>
<groupId>jakarta.annotation</groupId>
<artifactId>jakarta.annotation-api</artifactId>
</exclusion>
</exclusions>
</dependency>
I seems it's comming from tapestry-runner.
I updated all dependencys in the POM.
What is missing? Is there a Apache Tapestry 5.9.0 Jakarta Maven
Quickstart available?
Thx
Andreas
---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org
For additional commands, e-mail: users-h...@tapestry.apache.org