Está dando este erro ao abrir a página?

Quando digito http://127.0.0.1:8080, ele acha o index.jsp, mas dá uma menssagem de erro gigante, coloquei um pedaço abaixo.

type Exception report

message

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

exception

org.apache.jasper.JasperException: Unable to compile class for JSP

root cause

org.apache.jasper.JasperException: Unable to compile class for JSP

An error occurred at line: -1 in the jsp file: null

Generated servlet error:
[javac] Compiling 1 source file

Agora estou usando o XP, no ME não funciona nada!!!

Me… XP… não pode trabalhar com o Windows 2000 Pro??
A instalação do JDK correu tudo bem? Não teve nenhum erro??
Deu uma olhada nos logs do Tomcat para ver se tem alguma mensagem de erro?

[]s

Olá Darta

Verificasse se o erro ocorre somente neste arquivo index.jsp ou em qualquer jsp/servlet que você tente acessar?

Experimente acessar a pasta examples:

http://localhost:8080/examples/

e veja se ocorrem erros parecidos!!

[]s

Boa idéia Carlos!
Darta, navegue pelos links da página default do Tomcat. Acesse os JSP e Servlets que existem de exemplos.

As páginas no endereço http://localhost:8080/examples/ , funcionan numa boa, testei cada uma delas!!!

O que pode estar acontecendo!!!

Darta,
Tem como você instalar uma nova versão do Tomcat?
Baixa no site (http://jakarta.apache.org/builds/jakarta-tomcat-4.0/release/v4.1.12/bin/jakarta-tomcat-4.1.12.zip) a versão 4.1.12. Aí você tenta novamente.
O que é muito estranho é você não ter definido nenhuma variável de ambiente para o Tomcat. Tipo CATALINA_HOME ou JAVA_HOME ou TOMCAT_HOME… estranho. Na documentação diz que é preciso definir.

Antes de instalar a nova versão, tente criar uma variável de ambiente nomeada como JAVA_HOME e coloque o caminho do seu JDK nela. Por exemplo, JDK instalado no drive ‘D:’ na pasta ‘j2sdk1.4.0’:

d:\j2sdk1.4.0

Se mesmo assim não funcionar o seu JSP tente reinstalar o Tomcat utilizando a última versão.

[]s

Diogo, já criei a variável JAVA_HOME com o valor C:j2sdk1.4.1, mas meu jsp não funcionou!!!

Vou fazer o que você recomendou, intalar o tomcat 4.1.12!!

Me diz uma coisa, você definiu todas esta varíaveis:
CATALINA_HOME,JAVA_HOME e TOMCAT_HOME etc…, caso tenha você não pode me dar estas configurações??

Diogo, agora morreu tudo, desinstalei o tomcat e instalei o mais recente que você indicou, mas agora não funciona nada, quando digito no browser http://localhost:8080, dá o erro:

type Exception report

message

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

exception

org.apache.jasper.JasperException: Unable to compile class for JSP

An error occurred at line: -1 in the jsp file: null

Generated servlet error:
[javac] Compiling 1 source file



e continua um monte de coisa para baixo, axei melhor não colocar …

Quando rodo a stratup.bat passa um monte de menssagem rápidamente e fecha a janela, acho que colocar ela aqui vai ficar difícil pois é muito grande.

E agora, o que eu faço??

Show!!! (desculpe a empolgação, mas acho que agora estamos no caminho normal!)
Seguinte, abra um janela do DOS, vá até a pasta bin dentro da sua instalação do Tomcat e digite o seguinte comando:

[color=“red”]catalina run[/color]

e veja o erro que dá (qualquer coisa ponha o erro para nós vermos)!

[]s

Bem Diogo, como você já sabia ai está o erro!!

C:Program FilesApache GroupTomcat 4.1in>catalina run

The CATALINA_HOME environment variable is not defined correctly
This environment variable is needed to run this program

o que fazer agora??

Legal… Agora você precisa definir a variável de ambiente CATALINA_HOME.
Lembra como você definiu as variáveis no PATH e CLASSPATH.?
Nessa mesma janela, tem um botão ‘New…’ para você criar uma nova variável de ambiente. Cria uma nova e coloca no campo nome da variável, CATALINA_HOME (em maiúsculo mesmo). No campo valor da variável, coloca o diretório home que está instalado o Tomcat.
Por exemplo, tomcat instalado no diretório d:\Tomcat. A variável de ambiente CATALINA_HOME ficaria desse jeito:

[color=“red”]d:\Tomcat[/color]

Faça isso e vejamos…

[]s

Diogo, desculpe pela outra menssagem, é que pensei que você não iria ver mais esta menssagem aqui, pois já está na segunda página…

Bem, voltando ao Tomcat, fiz o seguinte:

NOME : CATALINA_HOME
VALOR: C:Program FilesApache GroupTomcat 4.1

ENTÃO DEI UM BOOT E FIZ O QUE VOCÊ TINHA FALADO ANTES,
C:Program FilesApache GroupTomcat 4.1in>catalina run

DEU A MENSSAGEM ABAIXO:

Using CATALINA_BASE: C:Program FilesApache GroupTomcat 4.1
Using CATALINA_HOME: C:Program FilesApache GroupTomcat 4.1
Using CATALINA_TMPDIR: C:Program FilesApache GroupTomcat 4.1 emp
Using JAVA_HOME: C:j2sdk1.4.1
08/11/2002 16:15:42 org.apache.commons.modeler.Registry loadRegistry
INFO: Loading registry information
08/11/2002 16:15:43 org.apache.commons.modeler.Registry getRegistry
INFO: Creating new Registry instance
08/11/2002 16:15:45 org.apache.commons.modeler.Registry getServer
INFO: Creating MBeanServer
08/11/2002 16:15:48 org.apache.coyote.http11.Http11Protocol init
SEVERE: Error initializing endpoint
java.net.BindException: Address already in use: JVM_Bind:8080
at org.apache.tomcat.util.net.PoolTcpEndpoint.initEndpoint(PoolTcpEndpoi
nt.java:268)
at org.apache.coyote.http11.Http11Protocol.init(Http11Protocol.java:150)

    at org.apache.coyote.tomcat4.CoyoteConnector.initialize(CoyoteConnector.

java:1002)
at org.apache.catalina.core.StandardService.initialize(StandardService.j
ava:579)
at org.apache.catalina.core.StandardServer.initialize(StandardServer.jav
a:2245)
at org.apache.catalina.startup.Catalina.start(Catalina.java:509)
at org.apache.catalina.startup.Catalina.execute(Catalina.java:400)
at org.apache.catalina.startup.Catalina.process(Catalina.java:180)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.
java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces
sorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:324)
at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:203)
Catalina.start: LifecycleException: Protocol handler initialization failed: jav
a.net.BindException: Address already in use: JVM_Bind:8080
LifecycleException: Protocol handler initialization failed: java.net.BindExcept
ion: Address already in use: JVM_Bind:8080
at org.apache.coyote.tomcat4.CoyoteConnector.initialize(CoyoteConnector.
java:1004)
at org.apache.catalina.core.StandardService.initialize(StandardService.j
ava:579)
at org.apache.catalina.core.StandardServer.initialize(StandardServer.jav
a:2245)
at org.apache.catalina.startup.Catalina.start(Catalina.java:509)
at org.apache.catalina.startup.Catalina.execute(Catalina.java:400)
at org.apache.catalina.startup.Catalina.process(Catalina.java:180)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.
java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces
sorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:324)
at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:203)
Catalina.stop: LifecycleException: This server has not yet been started
LifecycleException: This server has not yet been started
at org.apache.catalina.core.StandardServer.stop(StandardServer.java:2212
)
at org.apache.catalina.startup.Catalina.start(Catalina.java:541)
at org.apache.catalina.startup.Catalina.execute(Catalina.java:400)
at org.apache.catalina.startup.Catalina.process(Catalina.java:180)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.
java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces
sorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:324)
at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:203)

C:Program FilesApache GroupTomcat 4.1in>cd program filesapache group omca
t 4.1in

Qual seria o próximo passo agora!!

Sem problemas… viu que agora apareceu tudo definido? JAVA_HOME e CATALINA_HOME?? SDB!!

Agora, dá uma olhada na mensagem… lendo a mensagem de erro, você vai ver que está escrito que a porta que o Tomcat está querendo utilizar já está sendo utilizada por um outro programa. Veja abaixo:

Using CATALINA_BASE: C:Program FilesApache GroupTomcat 4.1
Using CATALINA_HOME: C:Program FilesApache GroupTomcat 4.1
Using CATALINA_TMPDIR: C:Program FilesApache GroupTomcat 4.1 emp
Using JAVA_HOME: C:j2sdk1.4.1
08/11/2002 16:15:42 org.apache.commons.modeler.Registry loadRegistry
INFO: Loading registry information
08/11/2002 16:15:43 org.apache.commons.modeler.Registry getRegistry
INFO: Creating new Registry instance
08/11/2002 16:15:45 org.apache.commons.modeler.Registry getServer
INFO: Creating MBeanServer
08/11/2002 16:15:48 org.apache.coyote.http11.Http11Protocol init
SEVERE: Error initializing endpoint
[color=“red”]java.net.BindException: Address already in use: JVM_Bind:8080[/color] [color=“black”]AQUI!!![/color]


Você deve ter algum outro programa que já está utilizando a porta 8080 da sua máquina. Você tem que trocar a do outro programa ou a do Tomcat… basta decidir. Depois disso acho que vai funcionar sem problemas… (falta uns 5% para funcionar… rs… está perto).

[]s

Como eu faço para mudar a do tomcat, pois minha máquina está em rede, e a porta 8080 é do servidor internet!!!, se eu mudar já era!!!

Só me fala uma coisa… Você está desenvolvendo em um Servidor de Web???
Qual é o servidor que você está rodando na porta 8080??? O nome dele…

Não, minha máquina é um windows 2000 server conectado a uma rede, para eu poder ter acesso a internet tenho que configurar o endereço de proxy na porta 8080, o nome dele eu não sei pois não tenho acesso!!

Mas porque que o outro tomcat estava funcionando!??

Darta,

que tal mudar a porta em que o tomcat esta rodando?? Você define isso no arquivo server.xml dentro do diretório conf da sua instalação do tomcat.

Abraços!

Certo, mas para qual porta ??? Como posso saber se eu mudar para 8081 ele vai funcionar!! Não sei em qual porta colocar??

Um abraço,
Darta.

Você pode colocar na porta 8081, 8090, 9090, 90, tanto faz :slight_smile: desde que a porta não esteja sendo utilizada por nenhum outro serviço. Qualquer valor entre 1024 e 65535 é valido como uma porta, mas é recomendável você utilizar uma porta como as citadas acima por questões de conveniência :wink:

Para testar se a porta está sendo utilizada, faça o teste, troque e veja o resultado :wink:

Qualquer dúvida, estamos aí!

Abraços!

Bem, entrei no arquivo server.xml e modifiquei a porta 8080 para 8090, só que agora está dando a menssagem que a porta 8009 está em usu, então fiz a mesma coisa do 8080, modifiquei o 8008 para 8009, e rodei o tomcat novamente, só que está dando a mesma menssagem, que a porta 8009, está em uso, ele não modificou a porta para 8009, o que pode ser??