You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@sling.apache.org by "Robert Munteanu (Jira)" <ji...@apache.org> on 2026/02/11 17:59:00 UTC

[jira] [Resolved] (SLING-13071) HTL use objects that adapt from the javax SlingHttpServletRequest cannot be instantiated in a Jakarta context

     [ https://issues.apache.org/jira/browse/SLING-13071?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Robert Munteanu resolved SLING-13071.
-------------------------------------
    Resolution: Fixed

> HTL use objects that adapt from the javax SlingHttpServletRequest cannot be instantiated in a Jakarta context 
> --------------------------------------------------------------------------------------------------------------
>
>                 Key: SLING-13071
>                 URL: https://issues.apache.org/jira/browse/SLING-13071
>             Project: Sling
>          Issue Type: Bug
>          Components: HTL
>            Reporter: Robert Munteanu
>            Assignee: Robert Munteanu
>            Priority: Major
>              Labels: sling-jakarta-servlet-javax-compat
>             Fix For: Engine 3.0.2
>
>
> The following preconditions are sufficient to trigger the error:
> - app running in a Jakarta context ( e.g. Sling Starter 14-SNAPSHOT)
> - a HTL has a data-sly-use instruction for a Pojo without a default constructor
> - an AdapterFactory exists that adapts from SlingHttpServletRequest to the Pojo
> The {{JavaUseProvider}} will fail to adapt from the request and fall back to trying the default constructor, with an error such as
> {noformat}
> Caused by: java.lang.NoSuchMethodException: org.apache.sling.starter.testservices.exported.RequestHashCodePojo.&lt;init&gt;()
> 	at java.base/java.lang.Class.getConstructor0(Class.java:3187)
> 	at java.base/java.lang.Class.getDeclaredConstructor(Class.java:2491)
> 	at org.apache.sling.scripting.sightly.impl.engine.extension.use.JavaUseProvider.loadObject(JavaUseProvider.java:244)
> 	at org.apache.sling.scripting.sightly.impl.engine.extension.use.JavaUseProvider.provide(JavaUseProvider.java:133)
> 	at org.apache.sling.scripting.sightly.impl.engine.extension.use.UseRuntimeExtension.call(UseRuntimeExtension.java:69)
> {noformat}



--
This message was sent by Atlassian Jira
(v8.20.10#820010)