当前位置: 首页 > 知识库问答 >
问题:

javax。servlet。ServletException:Servlet。servlet resteasy servlet的init()引发异常

堵存
2023-03-14

消息

说明服务器遇到内部错误(),无法运行

   >exception

  >javax.servlet.ServletException: Servlet.init() for servlet resteasy-servlet >threw exception
org.jboss.as.web.security.SecurityContextAssociationValve.invoke(SecurityContextAssociationValve.java:153)
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:368)
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:877)
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:671)
org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:930)
java.lang.Thread.run(Thread.java:745)

根本原因

   >java.lang.RuntimeException: Failed to construct public com.ph.restful.main.StringServiceApplication()
org.jboss.resteasy.core.ConstructorInjectorImpl.construct(ConstructorInjectorImpl.java:144)
org.jboss.resteasy.spi.ResteasyDeployment.createFromInjectorFactory(ResteasyDeployment.java:282)
org.jboss.resteasy.spi.ResteasyDeployment.createApplication(ResteasyDeployment.java:259)
org.jboss.resteasy.spi.ResteasyDeployment.start(ResteasyDeployment.java:220)
org.jboss.resteasy.plugins.server.servlet.ServletContainerDispatcher.init(ServletContainerDispatcher.java:67)
org.jboss.resteasy.plugins.server.servlet.HttpServletDispatcher.init(HttpServletDispatcher.java:36)
org.jboss.as.web.security.SecurityContextAssociationValve.invoke(SecurityContextAssociationValve.java:153)
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:368)
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:877)
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:671)
org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:930)
java.lang.Thread.run(Thread.java:745)

根本原因

   >java.lang.StackOverflowError
java.util.HashMap.init(HashMap.java:330)
java.util.HashMap.<init>(HashMap.java:262)
java.util.HashMap.<init>(HashMap.java:281)
java.util.HashSet.<init>(HashSet.java:103)
com.ph.restful.main.StringServiceApplication.<init>(StringServiceApplication.java:12)
com.ph.restful.main.StringServiceApplication.<init>(StringServiceApplication.java:15)
com.ph.restful.main.StringServiceApplication.<init>(StringServiceApplication.java:15)
com.ph.restful.main.StringServiceApplication.<init>(StringServiceApplication.java:15)
com.ph.restful.main.StringServiceApplication.<init>(StringServiceApplication.java:15)
com.ph.restful.main.StringServiceApplication.<init>(StringServiceApplication.java:15)
com.ph.restful.main.StringServiceApplication.<init>(StringServiceApplication.java:15)
com.ph.restful.main.StringServiceApplication.<init>(StringServiceApplication.java:15)
com.ph.restful.main.StringServiceApplication.<init>(StringServiceApplication.java:15)

当我将浏览器用作http://localhost:8080/sample/rest/app/test将返回一个json数据类型。。

产品类

private String productname;
private String description;
private Integer price;

public String getProductname() {
    return productname;
}
public void setProductname(String productname) {
    this.productname = productname;
}
public String getDescription() {
    return description;
}
public void setDescription(String description) {
    this.description = description;
}
public Integer getPrice() {
    return price;
}
public void setPrice(Integer price) {
    this.price = price;
}

StringService类

    @Path("/app")
    public class StringService {

     @GET
     @Path("/test")
     @Produces("application/json")
     public Product printSample2(){
             Product prod = new Product();
             prod.setProductname("Alaska Milk");
             prod.setDescription("Milk for all");
             prod.setPrice(300);
            return prod;
     }
  }

StringServiceApplication

        public class StringServiceApplication extends Application{

        private Set<Object> singletons = new HashSet<Object>();

        public StringServiceApplication(){
                  singletons.add(new StringServiceApplication());
         }

        @Override
        public Set<Object> getSingletons(){
                  return singletons;
        }

     }

我的网络。xml

<context-param>
    <param-name>resteasy.servlet.mapping.prefix</param-name>
    <param-value>/rest</param-value>
</context-param>

<servlet>
    <servlet-name>resteasy-servlet</servlet-name>
    <servlet-class>
        org.jboss.resteasy.plugins.server.servlet.HttpServletDispatcher
            </servlet-class>
    <init-param>
        <param-name>javax.ws.rs.Application</param-name>
        <param-value>com.ph.restful.main.StringServiceApplication</param-value>
    </init-param>
</servlet>

<servlet-mapping>
    <servlet-name>resteasy-servlet</servlet-name>
    <url-pattern>/rest/*</url-pattern>
</servlet-mapping>

我的jboss网站。xml

      <?xml version="1.0" encoding="UTF-8"?>
      <jboss-web>
            <context-root>sample</context-root>
      </jboss-web>

构建路径上的我的库——javassist-3.12.1。GA-json-simple-1.1.1-resteasy-jaxb-provider-2.2.1。ga-resteasy-jaxrs-2.2.1。GA-resteasy抛弃提供商-scannotation-1.0.3

共有1个答案

车明贤
2023-03-14

JAVAStackOverflowerr先生

public class StringServiceApplication extends Application{
    public StringServiceApplication(){
        singletons.add(new StringServiceApplication());
    }
}

您会遇到堆栈溢出,因为您试图在自己的构造函数中实例化相同的类。

我想你的意思是实例化StringService

public StringServiceApplication(){
    singletons.add(new StringService());
}
 类似资料:
  • 问题是错误似乎只出现在我的Linux服务器上(Tomcat 9.0.22)。在Windows上根本没有问题(Tomcat 9.0.27)。服务器本身似乎是工作的,就在我试图调用应用程序的REST应用编程接口时,出现了这个奇怪的错误(重新恐惧堆栈跟踪)。 Maven依赖项: Stacktrace: 如果我错过了任何重要的信息,只是aks我,我很乐意提供它。 提前谢谢你,Sollder1。

  • 在eclipse中运行此程序时出现异常。Servlet。servlet示例的init()引发了异常描述服务器遇到了一个内部错误,使其无法满足此请求。

  • 我是编程初学者。我试图在windows版本中运行CTAKEAPI,但在试图通过Postman获得响应时出现以下错误。有人能告诉我正确的步骤吗?提前谢谢。

  • 我正在学习Spring MVC,当我试图运行html文件时,它会给出错误HTTP Status 500-引发异常 这是我的web.xml 这是我的Spring调度员Servlet 这是我的jsp页面 这是我的HelloController课程 这是我得到的一个例外 我正在使用Eclipse 4.5.1、Tomcat 8.0.30和Spring 4.2.3。

  • 在尝试使用Jersey访问资源时,我一直收到HTTP Status 500错误。我已经尝试了很多东西,到了谷歌搜索的第二页,哈哈,什么都没有。 这是我的代码: 资源类: 网状物xml文件: 波姆。xml文件: 下面是我得到的错误: 这是项目浏览器 有什么办法可以让这一切顺利进行吗?提前谢谢!

  • 我得到以下错误: HTTP状态500-Servlet。servlet示例API的init()引发异常 类型异常报告 消息Servlet.init()为servlet示例API抛出异常 描述服务器遇到了一个内部错误,使其无法完成此请求。 例外 javax。servlet。ServletException:Servlet。servlet示例API的init()引发了异常组织。阿帕奇。卡塔琳娜。验证者。