Estou começando a utilizar JAX-RS
nas minhas aplicações, e gostaria de uma ajuda de vocês. Após tentar implementar rest em um CRUD de produtos estou recebendo o seguinte log pelo console:
[org.jboss.resteasy.core.ExceptionHandler] (default task-7) failed to execute: javax.ws.rs.NotFoundException: Could not find resource for full path:
http://localhost:8080/myStore/store/products.xhtml
Já tentei fazer o request por: http://localhost:8080/myStore/store/products e também por http://localhost:8080/myStore/products porém ambas não carregam o xml propriamente e também deixou de carregar a página jsf.
A minha classe de configuração está da seguinte forma:
package org.myStore.services;
public class ApplicationService extends Application{
@Override
public Map<String, Object> getProperties(){
Map<String, Object> properties = new HashMap<>();
properties.put("jersey.config.server.provider.packages", "org.myStore.managedbeans");
return properties;
}
}
e a classe qual estou chamando o meu serviço está assim:
package org.myStore.managedbean;
@Path("store/products")
@Consumes({MediaType.APPLICATION_XML})
@Produces({MediaType.APPLICATION_XML})
@Model
public class ProductsBean {
@Inject
private ProductDao productdao;
private List<Product> products = new ArrayList<Product>();
@GET
@PostConstruct
private void loadProducts(){
this.products = productdao.listProduct();
}
public List<Product> getProducts(){
return products;
}
}
e caso precisem ver como configurei o web.xml, eu o deixei desta forma:
<servlet>
<servlet-name>org.myStore.services.ApplicationService</servlet-name>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>org.myStore.services.ApplicationService</servlet-name>
<url-pattern>/*</url-pattern>
</servlet-mapping>
Desde já agradeço quem puder ajudar.