#java #rest #maven #jax-rs #wildfly
#java #отдых #maven #jax-rs #wildfly
Вопрос:
РЕШАЕМАЯ: Проблема была связана с именем моего контекста, оно было определено как «Приложение», но мой браузер открывался с помощью «application», и эта заглавная буква A была ключом к решению проблемы.
Может кто-нибудь, пожалуйста, помочь мне с этим? Я не могу заставить JAX-RS работать, я использую WildFly 8.1.0.Final, и я настроил свой проект с помощью JBoss Forge 2, Чтобы получить доступ к моим файлам, так как я не получил никакой ошибки консоли
pom.xml
<dependency>
<groupId>javax</groupId>
<artifactId>javaee-api</artifactId>
<version>7.0</version>
<scope>provided</scope>
</dependency>
RestApplication.java
import javax.ws.rs.core.Application;
import javax.ws.rs.ApplicationPath;
@ApplicationPath("/api")
public class RestApplication extends Application {
@Override
public Set<Class<?>> getClasses() {
return new HashSet<Class<?>>(Arrays.asList(TestEndpoint.class));
}
}
TestEndpoint.java
import javax.ws.rs.GET;
import javax.ws.rs.Path;
import javax.ws.rs.Produces;
import javax.ws.rs.core.MediaType;
@Path("/test")
public class TestEndpoint {
@GET
@Produces(MediaType.TEXT_PLAIN)
public String getString() {
return "worked";
}
}
Я попытался получить к нему доступ с помощью
http://localhost:8080/application/api/test
но я получил страницу с ошибкой 404.
Заранее спасибо
Комментарии:
1. попробуйте @ApplicationPath(«/»)
2. Вы переопределили метод getClasses() вашего класса RestApplication, чтобы вернуть набор, содержащий ваш класс TestEndpoint?
3. Я сделал это сейчас, но я получил ту же ошибку, вы, ребята, думаете, что это может быть какая-то проблема с моими зависимостями? Должен ли я указать какой-либо другой? По-прежнему не было никакой ошибки консоли
4. Ребята, это сработало, я отредактирую свой вопрос, чтобы объяснить это, спасибо
5. Не могли бы вы поделиться решением вашей проблемы?