我正在开发一个jax-rs应用程序。以前,我将它作为一个war安装在tomcat服务器上,并使用:javax.servlet.http.HttpServletRequest.getMethod()
获取htttp请求方法。
但是,现在我正在应用程序上使用一个嵌入式grizzly服务器,在启动时发现以下错误:
Missing dependency for constructor public wci.api.resource.AudioSessionResource(javax.servlet.http.HttpServletRequest) at parameter index 0
我的所有资源都扩展了一个
MyHappyCustomResource
类,该类具有一个构造函数,该构造函数接收资源构造函数通过注入提供的HttpServletRequest
。这是一个资源构造函数的示例,
super
调用来自MyHappyCustomResource
:import javax.servlet.http.HttpServletRequest;
public AudioSessionResource(@Context HttpServletRequest request) {
super(request);
this.dao = new AudioSessionDao(this.sessionManager.getCurrentSession());
}
现在我需要这个只是为了得到http方法,所以,任何其他或更正确的方法来做它是值得赞赏的。
最佳答案
解决方案是使用grizzly的请求类,正如grizzly官方网站上的这一页所说:
https://grizzly.java.net/httpserverframework.html
类似于servlet规范提供的抽象:httphandler(servlet)、request(httpservletrequest)、response(httpservletresponse)。
关于java - 如何在内置Grizzly的Jersey应用程序上获取HTTP请求方法?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/19885411/