Erro do TomCat com o Jersey

7 respostas
C

Bom Dia Pessoal

Estou começando a fazer um serviço web com o rest, estou com o TomCat 6.0.35 configurado, e na aplicação abriu um arquivo index.jsp com hello Word corretamente. estou seguindo o exemplo do link [url]http://www.k19.com.br/artigos/criando-um-webservice-restful-em-java/[/url]

acontece que quando insiro os arquivos java copiados do exemplo e altero o web.xml tá o seguinte erro no TomCat

HTTP Status 500 - 

--------------------------------------------------------------------------------

type Exception report

message 

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

exception 

javax.servlet.ServletException: Servlet.init() for servlet Jersey REST Service threw exception
	org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
	org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:293)
	org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:859)
	org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:602)
	org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
	java.lang.Thread.run(Unknown Source)


root cause 

com.sun.jersey.api.container.ContainerException: The ResourceConfig instance does not contain any root resource classes.
	com.sun.jersey.server.impl.application.RootResourceUriRules.<init>(RootResourceUriRules.java:99)
	com.sun.jersey.server.impl.application.WebApplicationImpl._initiate(WebApplicationImpl.java:1298)
	com.sun.jersey.server.impl.application.WebApplicationImpl.access$700(WebApplicationImpl.java:169)
	com.sun.jersey.server.impl.application.WebApplicationImpl$13.f(WebApplicationImpl.java:775)
	com.sun.jersey.server.impl.application.WebApplicationImpl$13.f(WebApplicationImpl.java:771)
	com.sun.jersey.spi.inject.Errors.processWithErrors(Errors.java:193)
	com.sun.jersey.server.impl.application.WebApplicationImpl.initiate(WebApplicationImpl.java:771)
	com.sun.jersey.server.impl.application.WebApplicationImpl.initiate(WebApplicationImpl.java:766)
	com.sun.jersey.spi.container.servlet.ServletContainer.initiate(ServletContainer.java:438)
	com.sun.jersey.spi.container.servlet.ServletContainer$InternalWebComponent.initiate(ServletContainer.java:287)
	com.sun.jersey.spi.container.servlet.WebComponent.load(WebComponent.java:587)
	com.sun.jersey.spi.container.servlet.WebComponent.init(WebComponent.java:213)
	com.sun.jersey.spi.container.servlet.ServletContainer.init(ServletContainer.java:342)
	com.sun.jersey.spi.container.servlet.ServletContainer.init(ServletContainer.java:516)
	javax.servlet.GenericServlet.init(GenericServlet.java:212)
	org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
	org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:293)
	org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:859)
	org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:602)
	org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
	java.lang.Thread.run(Unknown Source)


note The full stack trace of the root cause is available in the Apache Tomcat/6.0.35 logs.


--------------------------------------------------------------------------------

Apache Tomcat/6.0.35
O arquivo WEB.XML ficou assim
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
		 xmlns="http://java.sun.com/xml/ns/javaee" 
		 xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" 
		 xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" 
		 id="WebApp_ID" 
		 version="2.5">
  <display-name>ForçaVendasWebService</display-name>
  <servlet>
    <servlet-name>Jersey REST Service</servlet-name>
    <servlet-class>com.sun.jersey.spi.container.servlet.ServletContainer</servlet-class>
    <init-param>
      <param-name>com.sun.jersey.config.property.packages</param-name>
      <param-value>br.com.k19.resources</param-value>
    </init-param>
    <load-on-startup>1</load-on-startup>
  </servlet>
  <servlet-mapping>
    <servlet-name>Jersey REST Service</servlet-name>
    <url-pattern>/*</url-pattern>
  </servlet-mapping>

  
  <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>

Alguem poderia me ajudar em que devo fazer?

7 Respostas

P

E ae choma, conseguiu seguir o tutorial? To vendo que quase um mês depois ninguém respondeu...
Estou tendo o mesmo problema, com o mesmo tutorial. Vou dar uma olhada e se consegui fazer funcionar, eu explico aqui.

Vlw

choma:
Bom Dia Pessoal Estou começando a fazer um serviço web com o rest, estou com o TomCat 6.0.35 configurado, e na aplicação abriu um arquivo index.jsp com hello Word corretamente. estou seguindo o exemplo do link [url]http://www.k19.com.br/artigos/criando-um-webservice-restful-em-java/[/url] acontece que quando insiro os arquivos java copiados do exemplo e altero o web.xml tá o seguinte erro no TomCat [code]HTTP Status 500 - ... Alguem poderia me ajudar em que devo fazer?
C

Boa Tarde Paulo

Acabei montando o Web Service em PHP mesmo, dai fui fazer a parte do Android, mas é só uma coisa simples pra teste, se der certo me passe o caminho pra deixar funcionando no java TB.

Obrigado

P

Blz… to voltando agora ao tutorial. Também é coisa simples, pra teste com Android. Se eu tiver sucesso, eu digo aqui onde tá o erro.

choma:
Boa Tarde Paulo

Acabei montando o Web Service em PHP mesmo, dai fui fazer a parte do Android, mas é só uma coisa simples pra teste, se der certo me passe o caminho pra deixar funcionando no java TB.

Obrigado

P

choma, to seguindo por esse artigo e está funcionando… (pelo menos até agora) Hehe

http://www.vogella.de/articles/REST/article.html

choma:
Boa Tarde Paulo
Acabei montando o Web Service em PHP mesmo, dai fui fazer a parte do Android, mas é só uma coisa simples pra teste, se der certo me passe o caminho pra deixar funcionando no java TB.
Obrigado

S

O Jersey está procurando os WebResources no pacote br.com.k19.resources . Conforme você configurou no seu web.xml .
O erro indica que não existe nenhum WebResource nesse pacote.
Verifique se as classes HelloWorldResource e BandaResource estão no pacote br.com.k19.resources.
Se não estiverem mova elas para lá.
Deve funcionar.

J

ola pessoal descupa voltar o topico estou com mesmo erro acima cita e nao descobri o que fazer ainda sera que alguem tem alguma dica

J

boa tarde galera .
Tive o mesmo problema que vocês, mais apos algumas horas na base da tentativa e erro , baixei a versao 1.8 no site do Jersey e após por todas os .jars na pasta lib consegui fazer funcionar o hello word :smiley: .

em fim funcionou aqui e espero que essa dica seja útil .

Criado 10 de fevereiro de 2012
Ultima resposta 17 de jul. de 2014
Respostas 7
Participantes 5