前提・実現したいこと
jax-rsを用いてGETリクエストを受け取りたい。
発生している問題・エラーメッセージ
Eclipseコンソール上のエラー
[ERROR ] SRVE0271E: アプリケーション [gradletest] 内のサーブレット [javax.ws.rs.core.Application] によって作成された init() 例外を検出できません: javax.servlet.ServletException: At least one provider or resource class should be specified for application class "javax.ws.rs.core.Application
at com.ibm.ws.jaxrs20.server.LibertyJaxRsServerFactoryBean.doInit(LibertyJaxRsServerFactoryBean.java:288)
at [internal classes]
該当のソースコード
JaxRsTest.java
package test;
import javax.servlet.http.HttpServletRequest;
import javax.ws.rs.GET;
import javax.ws.rs.Path;
import javax.ws.rs.core.Context;
public class JaxRsTest {
@Context
HttpServletRequest request;
@GET @Path("/jaxrstest") public void test() { System.out.println("GETメソッドによるリクエスト受信"); }
}
web.xml
<?xml version="1.0" encoding="UTF-8"?><web-app id="WebApp_ID" version="3.0"
xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd">
<display-name>JAX-RS</display-name>
<!-- default生成 -->
<welcome-file-list>
<welcome-file>index.html</welcome-file>
<welcome-file>index.htm</welcome-file>
<welcome-file>index.jsp</welcome-file>
<welcome-file>default.html</welcome-file>
<welcome-file>default.htm</welcome-file>
<welcome-file>default.jsp</welcome-file>
</welcome-file-list>
</web-app><!-- (2)servletタグの設定 --> <servlet> <servlet-name>javax.ws.rs.core.Application</servlet-name> </servlet> <!-- (3)servlet-mappingタグの設定 --> <servlet-mapping> <servlet-name>javax.ws.rs.core.Application</servlet-name> <url-pattern>/api/*</url-pattern> </servlet-mapping>
試したこと
ブラウザから、
http://localhost:9080/gradletest/api/jaxrstest
を入力したところ上記エラーが出ました。
補足情報(FW/ツールのバージョンなど)
サーバーは、WAS Libertyを利用しています。
java version "1.8.0_171"
Gradle 4.7
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。