Applet nao carrega

12 respostas
F

Tenho um pequeno Applet que funciona direitinho quando o Java Plugin está ativado no IE.
Este applet deverá ser compativel com browsers que não tenham o Java Plugin instalado, desta forma - para testa-lo - eu desativo o Java Plugin, e quando faço isso o browser diz não encontrar meu Applet, retornando a mensagem na console:

Error loading class: <NomeDoMeuApplet>
java.lang.NoClassDefFoundError
java.lang.ClassNotFoundException: <NomeDoMeuApplet>
at com/ms/vm/loader/URLClassLoader.loadClass
at com/ms/vm/loader/URLClassLoader.loadClass
at com/ms/applet/AppletPanel.securedClassLoad
at com/ms/applet/AppletPanel.processSentEvent
at com/ms/applet/AppletPanel.processSentEvent
at com/ms/applet/AppletPanel.run
at java/lang/Thread.run

Para manter esta compatibilidade com browsers antigos, compilei o applet com um SDK mais antigo, porem o erro persiste.
Alguem teria alguma dica ?

Grato

12 Respostas

Paulo_Silveira

Nao existe isso.
Pra rodar um applet, voce PRECISA de java isntalado, nao existe outra maneira!

Ele nao esta achando o seu applet, tipo, NomeDoMeuApplet deveria ser o nome da sua classe, e pelo que me parece ela nao tem esse nome!

F

Ok Paulo, me corrija se eu estiver errado.

Os browsers atuais já vem com uma maquina virtual para execucao de codigos java, ok ?
A instalacao do Java Plugin 1.4 somente é necessária caso seu codigo vá usar alguma caracteristica de Java2 que não é suportada pelos browsers mais antigos, ok ?
Foi por essa razao que eu apenas desabilitei o uso do Java Plugin deixando que o browser utilize a sua propria maquina virtual para a execucao do codigo do applet. Tanto é que ele tenta chamar o Applet, mostra a janela cinza e registra os erros no console, ou seja, a maquina do browser está funcionando. O que eu nao estou entendendo é porque ele não está mais encontrando o meu Applet, já que o codigo HTML não mudou em nada e as referencias de codebase não mudaram. !?!?!?!

Grato

Paulo_Silveira

“fantomaz”:
Ok Paulo, me corrija se eu estiver errado.
Os browsers atuais já vem com uma maquina virtual para execucao de codigos java, ok ?

Nem todos.

Você precisa instalar se for utilizar alguma biblioteca que só apareceu no 1.4. Alguns browsers antigos nem Java vem junto, por isso voce precisa instalar.

A JVM pode até começar a rodar, mas chega um hora que ele ve que você o desabilitou, e da pau. Tem outra hipotese, se voce desabiltiar o java plugin 1.4 e habilitar a Microsoft VM, ai sim, tem de funcionar o que voce falou, porque ai a JVM da MS tomaria conta. Se os dois estiverem dasabilitados, nao vai ter nehuma JVM “default”, ai nao vai rodar mesmo.

F

!!?!?!?!?!?!?!?!
voce apenas confirmou o que eu havia escrito! porém sem responder a duvida.

Mais alguem aqui nesse forum saberia o motivo do Plugin da Sun encontrar meu applet e a Microsoft VM não ?
Obs: meu applet está compilado em uma versão suportada pela VM do windows IE e Netscape.

Paulo_Silveira

“estar compilado para funcionar em netscape”. Todos os applets estao compilados pra funcionar em netscape.

Entao, minha frase foi uma pergunta: voce tem certeza que a MS VM esta ativada? Voce tem certeza que nao desativou as duas? Porque tem como fazer isso, e se voce fizer da uns paus dete tipo.

F

certeza absoluta !

Paulo_Silveira

manda o TAG que voce ta usando no HTML pra chamar a applet.

F

<applet code=“MeuApplet” codebase="/doc/" width=500 height=200>
<param name=p1 value=1>
<param name=p2 value=2>
<param name=p3 value=3>
<param name=p4 value=4>
<param name=p5 value=5>
</applet>

Paulo_Silveira

A mensagem de erro que a VM deu nao bate com o nome da sua classe

La ele falou que nao encontrou a NomeDoMeuApplet, e no seu html voce pos MeuApplet.

Outra coisa, voce ta usando o jeito antigo de chamar applet. A tag applet ja nao eh mais usada. Hoje em dia voce usa acho que <object>. Alguem aqui lembra?

Dentro do seu /doc tem o MeuApplet.class? poe no codebase /doc/MeuApplet (pode tentar com o .class tambem, na especificacao disse q vale os dois)

F

Pô cara… desse jeito voce me decepciona… hehehehe
eu editei a mensagem e o fonte trocando o nome pra <MeuApplet>…
o original está ok…

quanto a tag <object> , de acordo com a documentacao da Sun, ela não funciona com o netscape 6. Nem a tag <embed>. Se voce usar o Java Plugin com Nestcape6 voce DEVE usar a tag <applet>.

Como minha aplicacao DEVE atender a uma gama ampla de browsers incluindo o Netscape6, eu DEVO continuar usando a tag <applet>.

vou tentar alterar o CODEBASE.
Valeu !!!

Paulo_Silveira

Voce pode fazer um javascript pra saber o browser do cara, mas acho isso porco.

Pelo que sei, applet esta realmente deprecated, de acordo com o w3c.org
Altera o codebase e conta pra gente, acho que funfa.

G

Colegas

Como faço para passar dois valores digitados em um HTML, serem capturados pelo applet e executar um operacao. isso depois que eu acionar um botao.
Sei como funciona a passagem de parametros(getParameter()etc…), mas tem como iniciar a applet quando for selecionado o botao?

Grato

Criado 24 de setembro de 2002
Ultima resposta 10 de out. de 2002
Respostas 12
Participantes 3