[dúvida]Problemas com servlets

3 respostas
E30L4

Galera, me ajuda pelo amor de Deus...
tenho 1 semana pra terminar de estudar para a minha prova, só que tem algo impedindo com que eu prossiga os estudos...
eu estou na parte de servlets...
o negócio é o seguinte:

esse é o meu servlet:
package br.com.estudo;

import java.io.IOException;
import java.io.PrintWriter;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

public class OiMundo extends HttpServlet
{
	@Override
	protected void service(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException
	{
		PrintWriter out = response.getWriter();
		
		out.print("<html>");
		out.print("Estudando Servlets");
		out.print("</html>");
		
	}
}

Essa servlet foi tirada da apostila FJ-21 da Caelum.. estou estudando por ela...
Tudo até agora estava fluindo bem, quando percebi que para essa servlet rodar eu teria de alterar o meu web.xml que DEVERIA estar dentro da pasta WEB-INF...
O meu web.xml está na msm pasta que meus jsp's e tudo tava rodando tranquilo!
quando eu movo o web.xml para dentro da pasta WEB-INF, NADA RODA!!!! dá o erro 404! página não encontrada!

eu já mexi ná configuração do tomcat, já mexi nesse web.xml, ja tentei apagar o cache do tomcat (deletando a pasta work) e reiniciando o mesmo e nada!

a servlet não roda se o arquivo web.xml estiver fora da WEB-INF, e nenhum JSP roda se o web.xml estiver dentro da WEB-INF!

aqui é o meu web.xml
<?xml version="1.0" encoding="ISO-8859-1"?>
<web-app xmlns="http://java.sun.com/xml/ns/j2ee" version="2.4">
<display-name>Aplicacao web simples</display-name>
<servlet>
	<servlet-name>servletDeTeste</servlet-name>
	<servlet-class>br.com.estudo.OiMundo</servlet-class>
</servlet>
<servlet-mapping>
	<servlet-name>servletDeTeste</servlet-name>
	<url-pattern>/oi</url-pattern>
</servlet-mapping>
</web-app>

existem alguns erros do tipo "SEVERE" que o console do eclipse acusa ao iniciar o tomcat:

Apr 23, 2008 12:46:42 PM org.apache.catalina.core.AprLifecycleListener lifecycleEvent
INFO: The Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: C:\Arquivos de programas\Java\jre1.6.0_05\bin;.;C:\WINDOWS\Sun\Java\bin;C:\WINDOWS\system32;C:\WINDOWS;C:\Arquivos de programas\Java\jre1.6.0_05\bin\client;C:\Arquivos de programas\Java\jre1.6.0_05\bin;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\Arquivos de programas\Arquivos comuns\Adobe\AGL;C:\Arquivos de programas\QuickTime\QTSystem\;c:\arquivos de programas\java\jdk1.5.0_06\bin;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\Arquivos de programas\Arquivos comuns\Adobe\AGL;C:\Arquivos de programas\QuickTime\QTSystem\;
Apr 23, 2008 12:46:42 PM org.apache.coyote.http11.Http11BaseProtocol init
INFO: Initializing Coyote HTTP/1.1 on http-8080
Apr 23, 2008 12:46:42 PM org.apache.catalina.startup.Catalina load
INFO: Initialization processed in 1547 ms
Apr 23, 2008 12:46:43 PM org.apache.catalina.core.StandardService start
INFO: Starting service Catalina
Apr 23, 2008 12:46:43 PM org.apache.catalina.core.StandardEngine start
INFO: Starting Servlet Engine: Apache Tomcat/5.5.26
Apr 23, 2008 12:46:43 PM org.apache.catalina.core.StandardHost start
INFO: XML validation disabled
Apr 23, 2008 12:46:44 PM org.apache.catalina.core.StandardContext resourcesStart
SEVERE: Error starting static Resources
java.lang.IllegalArgumentException: Document base C:\workspace\jspteste\web does not exist or is not a readable directory
	at org.apache.naming.resources.FileDirContext.setDocBase(FileDirContext.java:141)
	at org.apache.catalina.core.StandardContext.resourcesStart(StandardContext.java:3855)
	at org.apache.catalina.core.StandardContext.start(StandardContext.java:4024)
	at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:760)
	at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:740)
	at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:544)
	at org.apache.catalina.startup.HostConfig.deployDescriptor(HostConfig.java:626)
	at org.apache.catalina.startup.HostConfig.deployDescriptors(HostConfig.java:553)
	at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:488)
	at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1149)
	at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:311)
	at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:120)
	at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1022)
	at org.apache.catalina.core.StandardHost.start(StandardHost.java:736)
	at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1014)
	at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443)
	at org.apache.catalina.core.StandardService.start(StandardService.java:448)
	at org.apache.catalina.core.StandardServer.start(StandardServer.java:700)
	at org.apache.catalina.startup.Catalina.start(Catalina.java:552)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
	at java.lang.reflect.Method.invoke(Unknown Source)
	at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:295)
	at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:433)
Apr 23, 2008 12:46:44 PM org.apache.catalina.core.StandardContext start
SEVERE: Error in resourceStart()
Apr 23, 2008 12:46:44 PM org.apache.catalina.core.StandardContext start
SEVERE: Error getConfigured
Apr 23, 2008 12:46:44 PM org.apache.catalina.core.StandardContext start
SEVERE: Context [/jspteste] startup failed due to previous errors
Apr 23, 2008 12:46:44 PM org.apache.catalina.core.StandardContext stop
INFO: Container org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/jspteste] has not been started
Apr 23, 2008 12:46:44 PM org.apache.catalina.core.StandardContext resourcesStart
SEVERE: Error starting static Resources
java.lang.IllegalArgumentException: Document base C:\workspace\jspteste2\web does not exist or is not a readable directory
	at org.apache.naming.resources.FileDirContext.setDocBase(FileDirContext.java:141)
	at org.apache.catalina.core.StandardContext.resourcesStart(StandardContext.java:3855)
	at org.apache.catalina.core.StandardContext.start(StandardContext.java:4024)
	at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:760)
	at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:740)
	at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:544)
	at org.apache.catalina.startup.HostConfig.deployDescriptor(HostConfig.java:626)
	at org.apache.catalina.startup.HostConfig.deployDescriptors(HostConfig.java:553)
	at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:488)
	at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1149)
	at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:311)
	at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:120)
	at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1022)
	at org.apache.catalina.core.StandardHost.start(StandardHost.java:736)
	at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1014)
	at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443)
	at org.apache.catalina.core.StandardService.start(StandardService.java:448)
	at org.apache.catalina.core.StandardServer.start(StandardServer.java:700)
	at org.apache.catalina.startup.Catalina.start(Catalina.java:552)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
	at java.lang.reflect.Method.invoke(Unknown Source)
	at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:295)
	at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:433)
Apr 23, 2008 12:46:44 PM org.apache.catalina.core.StandardContext start
SEVERE: Error in resourceStart()
Apr 23, 2008 12:46:44 PM org.apache.catalina.core.StandardContext start
SEVERE: Error getConfigured
Apr 23, 2008 12:46:44 PM org.apache.catalina.core.StandardContext start
SEVERE: Context [/jspteste2] startup failed due to previous errors
Apr 23, 2008 12:46:44 PM org.apache.catalina.core.StandardContext stop
INFO: Container org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/jspteste2] has not been started
Apr 23, 2008 12:46:44 PM org.apache.catalina.startup.HostConfig deployWAR
INFO: Deploying web application archive teste-struts.war
Apr 23, 2008 12:46:45 PM com.opensymphony.xwork2.config.providers.XmlConfigurationProvider register
INFO: Parsing configuration file [struts-default.xml]
Apr 23, 2008 12:46:46 PM com.opensymphony.xwork2.config.providers.XmlConfigurationProvider register
INFO: Parsing configuration file [struts-plugin.xml]
Apr 23, 2008 12:46:46 PM com.opensymphony.xwork2.config.providers.XmlConfigurationProvider register
INFO: Parsing configuration file [struts.xml]
Apr 23, 2008 12:46:46 PM org.apache.struts2.config.Settings getLocale
WARNING: Settings: Could not parse struts.locale setting, substituting default VM locale
Apr 23, 2008 12:46:48 PM com.opensymphony.xwork2.util.ObjectTypeDeterminerFactory <clinit>
INFO: Setting DefaultObjectTypeDeterminer as default ...
Apr 23, 2008 12:46:49 PM org.apache.catalina.core.ApplicationContext log
INFO: org.apache.webapp.balancer.BalancerFilter: init(): ruleChain: [org.apache.webapp.balancer.RuleChain: [org.apache.webapp.balancer.rules.URLStringMatchRule: Target string: News / Redirect URL: http://www.cnn.com], [org.apache.webapp.balancer.rules.RequestParameterRule: Target param name: paramName / Target param value: paramValue / Redirect URL: http://www.yahoo.com], [org.apache.webapp.balancer.rules.AcceptEverythingRule: Redirect URL: http://jakarta.apache.org]]
Apr 23, 2008 12:46:50 PM com.opensymphony.xwork2.config.providers.XmlConfigurationProvider register
INFO: Parsing configuration file [struts-default.xml]
Apr 23, 2008 12:46:50 PM com.opensymphony.xwork2.config.providers.XmlConfigurationProvider register
INFO: Parsing configuration file [struts-plugin.xml]
Apr 23, 2008 12:46:50 PM com.opensymphony.xwork2.config.providers.XmlConfigurationProvider register
INFO: Parsing configuration file [struts.xml]
Apr 23, 2008 12:46:50 PM org.apache.struts2.config.Settings getLocale
WARNING: Settings: Could not parse struts.locale setting, substituting default VM locale
Apr 23, 2008 12:46:52 PM com.opensymphony.xwork2.util.ObjectTypeDeterminerFactory <clinit>
INFO: Setting DefaultObjectTypeDeterminer as default ...
Apr 23, 2008 12:46:53 PM org.apache.catalina.core.ApplicationContext log
INFO: ContextListener: contextInitialized()
Apr 23, 2008 12:46:53 PM org.apache.catalina.core.ApplicationContext log
INFO: SessionListener: contextInitialized()
Apr 23, 2008 12:46:53 PM org.apache.catalina.core.ApplicationContext log
INFO: ContextListener: contextInitialized()
Apr 23, 2008 12:46:53 PM org.apache.catalina.core.ApplicationContext log
INFO: SessionListener: contextInitialized()
Apr 23, 2008 12:46:54 PM com.opensymphony.xwork2.config.providers.XmlConfigurationProvider register
INFO: Parsing configuration file [struts-default.xml]
Apr 23, 2008 12:46:54 PM com.opensymphony.xwork2.config.providers.XmlConfigurationProvider register
INFO: Parsing configuration file [struts-plugin.xml]
Apr 23, 2008 12:46:54 PM com.opensymphony.xwork2.config.providers.XmlConfigurationProvider register
INFO: Parsing configuration file [struts.xml]
Apr 23, 2008 12:46:55 PM org.apache.struts2.config.Settings getLocale
WARNING: Settings: Could not parse struts.locale setting, substituting default VM locale
Apr 23, 2008 12:46:56 PM com.opensymphony.xwork2.util.ObjectTypeDeterminerFactory <clinit>
INFO: Setting DefaultObjectTypeDeterminer as default ...
Apr 23, 2008 12:46:57 PM org.apache.coyote.http11.Http11BaseProtocol start
INFO: Starting Coyote HTTP/1.1 on http-8080
Apr 23, 2008 12:46:57 PM org.apache.jk.common.ChannelSocket init
INFO: JK: ajp13 listening on /0.0.0.0:8009
Apr 23, 2008 12:46:58 PM org.apache.jk.server.JkMain start
INFO: Jk running ID=0 time=0/188  config=null
Apr 23, 2008 12:46:58 PM org.apache.catalina.storeconfig.StoreLoader load
INFO: Find registry server-registry.xml at classpath resource
Apr 23, 2008 12:46:58 PM org.apache.catalina.startup.Catalina start
INFO: Server startup in 15875 ms

a hierarquia de diretórios do meu workspace é essa:


-workspace
--------------jspServlets(pasta com os jsp's)
---------------------------------------------------bin
---------------------------------------------------src(pacote com os .java)
---------------------------------------------------web(pasta com os jsp's e com o WEB-INF)
---------------------------------------------------work

hierarquia da pasta web:
-web
-------WEB-INF
-------1.jsp
-------2.jsp
-------3.jsp
-------4.jsp
-------5.jsp
-------6.jsp
-------web.xml (ele tem que ficar aqui pro resto rodar... --')

conteúdo da pasta WEB-INF:
-classes (pacote onde tenho os meus .class)
-lib (pasta onde contém as minhas .jar)

é isso galera... alguém POR FAVOR pode dedicar um tempo da vida pra me ajudar? :\

valeu galera!

3 Respostas

D

Esse diretório existe ? “C:\workspace\jspteste2\web” ???

Você está fazendo o deploy da app através do eclipse?

E30L4

du123:
Esse diretório existe ? “C:\workspace\jspteste2\web” ???

Você está fazendo o deploy da app através do eclipse?

Esse diretório existe mas eu deletei os arquivos… mudei o diretório…

to fazendo o deploy através do eclipse

D

Cara,

Comece um novo Dynamic web project pelo eclipse. Ele vai gerar sozinho a atualização necessária no context.xml. É melhor do que ficar remendando o que já existe.

[]s

Criado 23 de abril de 2008
Ultima resposta 23 de abr. de 2008
Respostas 3
Participantes 2