I'm upgrading my maven application to use spring 6.x from 5.x. Spring 6.x is based on Jakarta EE so I've updated my dependencies accordingly. But with JasperReports I've defined a servlet in web.xml file:
<servlet>
<servlet-name>PdfServlet</servlet-name><servlet-class>net.sf.jasperreports.j2ee.servlets.PdfServlet</servlet-class>
</servlet>
it is throwing error: Caused by: java.lang.IllegalArgumentException: UT010009: Servlet PdfServlet of type class net.sf.jasperreports.j2ee.servlets.PdfServlet does not implement jakarta.servlet.Servlet.
Similarly, getting error for shiro library as well, error: Caused by: java.lang.IllegalArgumentException: UT010011: Filter ShiroFilter of type class org.apache.shiro.web.servlet.ShiroFilter does not implement jakarta.servlet.Filter.
<filter>
<filter-name>ShiroFilter</filter-name>
<filter-class>org.apache.shiro.web.servlet.ShiroFilter</filter-class>
</filter>
when I'm trying to run my application on Wildfly 27 app server. I'm using 6.20.0 version of JasperReports library and 1.10.0 version of shiro (core, web, ehcache and spring).
Which version of JasperReports support Jakarta EE or when will the latest version released supporting Jakarta EE, any suggestions for a workaround?
I've updated JasperReports library from 6.15.0 to 6.20.0
For JasperReports you still be able to use it with Jakarta EE 10 just implement your proper servlet
For shiro according to Apache Shiro Jakarta EE Integration add jakarta
classifier to dependencies in pom.xml like that:
<dependency>
<groupId>org.apache.shiro</groupId>
<artifactId>shiro-core</artifactId>
<version>1.11.0</version>
<classifier>jakarta</classifier>
</dependency>
<dependency>
<groupId>org.apache.shiro</groupId>
<artifactId>shiro-web</artifactId>
<version>1.11.0</version>
<classifier>jakarta</classifier>
</dependency>