简体   繁体   English

HTTP状态500 - 未找到提供程序org.glassfish.json.JsonProviderImpl

[英]HTTP Status 500 - Provider org.glassfish.json.JsonProviderImpl not found

I am using netbeans-8, jdk 7,tomcat 8.05. 我使用netbeans-8, jdk 7,tomcat 8.05. I created a webapp in netbeans and added javax.json api to my project, the code shows no errors, but when i run my servlet the below error occurs. 我在netbeans创建了一个webapp并将javax.json api添加到我的项目中,代码显示没有错误,但是当我运行我的servlet时,会发生以下错误。

HTTP Status 500 - Provider org.glassfish.json.JsonProviderImpl not found

type Exception report

message Provider org.glassfish.json.JsonProviderImpl not found

description The server encountered an internal error that prevented it from fulfilling this request.

exception

javax.json.JsonException: Provider org.glassfish.json.JsonProviderImpl not found
    javax.json.spi.JsonProvider.provider(JsonProvider.java:97)
    javax.json.Json.createObjectBuilder(Json.java:266)
    NewServlet.doGet(NewServlet.java:24)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:618)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:725)
    org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
    org.netbeans.modules.web.monitor.server.MonitorFilter.doFilter(MonitorFilter.java:393)
root cause

java.lang.ClassNotFoundException: org.glassfish.json.JsonProviderImpl
    org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1284)
    org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1132)
    java.lang.Class.forName0(Native Method)
    java.lang.Class.forName(Class.java:190)
    javax.json.spi.JsonProvider.provider(JsonProvider.java:94)
    javax.json.Json.createObjectBuilder(Json.java:266)
    NewServlet.doGet(NewServlet.java:24)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:618)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:725)
    org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
    org.netbeans.modules.web.monitor.server.MonitorFilter.doFilter(MonitorFilter.java:393)
note The full stack trace of the root cause is available in the Apache Tomcat/8.0.3 logs.

Apache Tomcat/8.0.3

The javax.json api (provided in the JSON Processing API jar) is good only for compiling the application. javax.json api(在JSON Processing API jar中提供)仅适用于编译应用程序。

If you want to run the application, you have to download the JSON Processing RI jar , as explained here: https://jsonp.java.net/download.html 如果要运行该应用程序,则必须下载JSON Processing RI jar ,如下所述: https//jsonp.java.net/download.html

The JSON Processing RI jar contains the org.glassfish.json.JsonProviderImpl class you are missing. JSON Processing RI jar包含您缺少的org.glassfish.json.JsonProviderImpl类。

From this answer you could replace javax.json dependency by its org.glassfish implementation. 这个答案中,您可以通过其org.glassfish实现替换javax.json依赖项。

Maven repo , gives: Maven回购 ,给出:

<dependency>
  <groupId>org.glassfish</groupId>
  <artifactId>javax.json</artifactId>
  <version>1.0.4</version>
</dependency>

I managed to make it work in my webapp in NetBeans by manually installing the JSON Processing RI jar. 我设法通过手动安装JSON Processing RI jar使其在NetBeans中的webapp中工作。

The complete procedure is: 完整的程序是:

  • Download the jar: JSON Processing RI jar 下载jar: JSON处理RI jar
  • Right-click on Project --> Dependencies and add new dependency providing dummy Group ID, Artifact ID and Version number. 右键单击Project - > Dependencies并添加新依赖项,提供虚拟组ID,工件ID和版本号。
  • Right-click on the newly created dependency and select "Manually install artifact", provide the downloaded jar 右键单击新创建的依赖项并选择“手动安装工件”,提供下载的jar
  • Rebuild project, now it should work 重建项目,现在它应该工作

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 未找到提供者org.glassfish.json.JsonProviderImpl - Provider org.glassfish.json.JsonProviderImpl not found 在 javax.json.spi.JsonProvider.provider(JsonProvider.java:97) 中找不到提供程序 org.glassfish.json.JsonProviderImpl - Provider org.glassfish.json.JsonProviderImpl not found at javax.json.spi.JsonProvider.provider(JsonProvider.java:97) javax.json and jakarta.json in the same application: org.glassfish.json.JsonProviderImpl cannot be cast to jakarta.json.spi.JsonProvider - javax.json and jakarta.json in the same application: org.glassfish.json.JsonProviderImpl cannot be cast to jakarta.json.spi.JsonProvider 我的Glassfish异常报告HTTP状态500- - My Glassfish Exception report HTTP Status 500 - HTTP状态500-Glassfish上的内部服务器错误 - HTTP Status 500 - Internal Server Error on Glassfish GlassFish Http状态500-内部服务器错误 - GlassFish Http Status 500 - Internal Server Error GlassFish 5:错误:HTTP状态404-找不到 - GlassFish 5: Error: HTTP Status 404 - Not Found HTTP状态404-在JSP上找不到Glassfish - HTTP Status 404 - Not Found Glassfish on JSP JSP 返回 HTTP 状态 404 - Not Found glassfish - JSP returns HTTP Status 404 - Not Found glassfish GlassFish Server HTTP 状态 404 - 未找到 - GlassFish Server HTTP Status 404 - Not Found
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM