RESTEASY003880:无法找到类型为:javax.servlet.http.HttpServletRequest



嗨,当我试图在浏览器上打开应用程序的登录页面时,我得到了这个例外。注:打开jdk zulu 11和wildfly 24进行部署。

org.jboss.resteasy.spi.LoggableFailure: RESTEASY003880: Unable to find contextual data of type: javax.servlet.http.HttpServletRequest
at org.jboss.resteasy.resteasy-jaxrs@3.15.1.Final//org.jboss.resteasy.core.ContextParameterInjector$GenericDelegatingProxy.invoke(ContextParameterInjector.java:77)
at javax.servlet.api@2.0.0.Final//com.sun.proxy.$Proxy163.getSession(Unknown Source)
at deployment.demo.ear.rest.war//com.demoapp.demo.rest.resources.Myclass.init(Myclass.java:107)

根据我的经验,@Context是按每个方法设置的。更像:

@POST
@Consumes(MediaType.APPLICATION_JSON)
@Produces(MediaType.APPLICATION_JSON)
public Response myMethod(String someString, @Context HttpServletRequest request) {

这样,HttpServletRequest是在方法基础上而不是在类基础上设置的。我不认为你希望它在类级别,好像类有许多方法,这些方法不应该共享同一个HttpServletRequest

检查Web-inf目录中是否有beans.xml文件。然后,删除并再次部署。

相关内容

最新更新