RESOLVENDO
PROBLEMAS: FAQ
Sistemas Requeridos:
Java funciona no Netscape
versões 2 e posteriores, MS Explorer versões 3 e posteriores,
HotJava e outros navegadores, em sistemas operacionais de 32 bit (Windows 95/NT,
Mac OS, Sparc, Linux, etc.). Java applets não funcionam no Windows 3.1,
ou num navegador de 16 bit (Netscape 4 para Win 3.1 suporta java mas não
tão bem como no Win 95). O suporte para Java deverá estar acionado
nos navegdores, senão você receberá a mensagem de que seu
navegador nao suporta Java. O programa Anfy Java requer Win 95/98/NT.
Diferenças entre Java
e Javascript
Java é diferente de
JavaScript: Java é feito criando-se arquivos .class e é mais
poderoso do que JavaScript (que é uma linguagem de script/batch feita
diretamente numa página html ). O pacote Anfy Java contem apenas
applets Java.
Como acrescentar Java
applets a um documento html:
1) Copie o arquico
.class para o mesmo diretório da sua página .html, junto com todas
as imagens GIF e JPG. No assistente (wizard) do Anfy Java isso pode ser feito
com a função "Copy all files to".
2) Acrescente a tag
<applet> no documento html. Alguns editores html não fazem
isso ou então possuem formas especiais de fazê-lo. Se isso ocorrer
então primeiro salve o arquivo .html, depois edite em qualquer editor de
textos salvando no formato "apenas texto", notepad ou qualquer outro
editor de texto ASCII. Então manualmente acrescente a tag <applet>. O
assistente Anfy Java wizard lhe ajuda a criar a tag <applet> com os parâmetros
corretos para seus própositos e suas imagens, mesmo assim vc ainda terá
que copiar a tag resultante e colar no seu documento html. Você pode usar
a função "Copy all files to" para salvar um documento
html que contém apenas o applet, e então abri-lo num editor de
html de sua preferência e fazer as alterações que você
quiser.
3) Faça Upload
dos arquivos .html, .class e todos os outros que compõem sua página
(de imagens, etc.) para seu site como faz usualmente. Quando fizer upload
dos arquivos .class usando FTP, use o modo BINÁRIO (BINARY mode) e não
o modo ASCII !! Caso contrário os applets não funcionarão
(uma mensgem de erro "java.lang.ClassFormat" ou "java.lang.MethodVerification"
ou "Bad Magic Number" será mostrada). Certifique-se
que os tamanhos dos arquivos e seus nomes, inclusive suas extenções,
não se modificaram no processo de upload: se os arquivos uploaded tiverem
tamanhos ou nomes diferentes (por exemplo terminarem com .cla em vez de .class)
algum erro ocorreu no processo de upload.
Erros mais comuns:
A) TRUNCAGEM DE
ARQUIVOS COM NOMES LONGOS OU DIFERENÇAS ENTRE MAIÚSCULAS E MINÚSCULAS:
Muitos usuários do MS-DOS ainda fazem uso do PKUNZIP para descomprimir
arquivos zip ou de programas de 16 bit para copiar e fazer upload que
desconsideram as diferenças entre FiLe.ExE, FILE.EXE and fILe.eXe. Há
que se ter cuidado por várias razões: A primeira se refere ao
uso de arquivos com nomes longos: msdos (e programas velhos destinados
ao uso com o win 3.1 que é de 16 bit) suportam apenas nomes de arquivos
com 8+3 caracteres. Win 95 e outros sistemas operacionais mais novos
suportam arquivos com nomes mais longos, por exemplo MyNiceApplet.class, que tem
extenção de 5 caracteres, se você usar o PKUNZIP para
descomprimi-lo, ou fizer o upload do arquivo .class para o servidor com um
programa velho de FTP ou similar, você TRUNCARÁ o nome do arquivo,
e o resultado será MYNICEAP.CLA ! Assim, ao tentar rodar o applet
receberá a seguinte mensagem de erro "java.lang.ClassNotFound".
Assegure-se que faz uso de uma arquivo unzip tipo "winzip 32" ou
similar no win95, e para copiar e fazer upload faça uso de programas 32
bit que não truncam os nomes de arquivos longos. Lembre-se que
servidores da internet (tipo Unix) fazem diferença entre minúsculas
e maiúsculas. Por exemplo, se o nome do applet for "MyNiceApplet.class"
e você escreve "Myniceapplet.class", o applet não
funcionará. O erro mais comum ocorre com os nomes de imagens, isto porque
o win95 não faz diferença entre maiúsculas e minúsculas. Veja,
se você salva uma imagem como "image1.jpg" lhe será possível
carregar essa imagem do seu disco local (winchester) mesmo que se refira a ela
como IMAGE1.JPG, image1.JPG ou IMAGE1.jpg. Mas uma vez que você a coloca
num servidor ISP ela somente será carregada se você se referir a
ela como image1.jpg. Assegure-se que os nomes das imagens utilizadas num
applet sejam idênticas em maiúsculas e minúsculas na sua
totalidade.
B) Imagem errada ou
tamanho do applet: leia as instruções para fazer o applet
cuidadosamente porque usualmente as imagens têm tamanhos fixos (por
exemplo 64*64, 128*128 etc.). Recomendamos não fazer uso de applets em
tamanho maior que 600 pixels, pois eles não ficarão visíveis
corretamente para quem faz uso de 640*480 pixels. Em muitos casos, o Anfy
Java wizard (assistente) pode detectar um tamanho incorreto de imagem ou de
applet, alertando-o quanto a possíveis erros.
Erros menos comuns:
A) "Usando
Netscape Gold 3, os applets trabalham sem erros offline mas falham para
trabalhar online, mostrando a mensagem de erro java.lang.NullPointerException." Este
é um bug (erro) que eventualmente ocorre nesse navegador. Se lhe
acontecer, tente recarregar (reload), limpando o cache, ou ainda, em casos mais
raros, deletar o cache manualmente na pasta (diretório). Similarmente
mensagens de erros "NullPointer" ocorrem no Netscape 4.04. Por
outro lado, os visitantes não terão problemas em ver o applet.
B) "Eu atualizei
todos meus arquivos .class no meu site da GEOCITIES, e quanto
recarreguei a página veio a mensagem de erro (java.lang.NoClassDefFoundException)
nos applets". Este é um problema temporário gerado na
Geocities e alguns outros sites. Se vc recarregar a página após
alguns minutos, os applets serão executados corretamente. Em outras
circunstâncias, este erro pode indicar que vc esqueceu de fazer upload de
algum arquivo .class(por exemplo anfy.class).
C) "Usando o
Netscape 3, me veio a mensagem de erro (java.awt.image.Memory ImageSource:
method newPixels(), ou java.lang.NoSuchMethodError: java.awt.image.
Memory ImageSource) nos applets". Este problema é relativo
ao anfy.class: provavelmente vc está usando uma versão antiga ou
incorreta do arquivo anfy.class, ou tem no cache uma versão antiga. Verifique
se está usando o mesmo anfy.class que veio com os applets, e limpe o seu
cachê.
D) "Estou usando
o AOL browser, e tudo na minha página aparece exceto o applet. No
lugar aparece uma mensagem -Loading image-, mas a imagem nunca aparece, apenas
um retângulo cinza. Neste caso, você tem que desabilitar a
compressão de gráficos no navegador da AOL em preferências
como segue: Na barra de ferramentas do AOL (Toolbar), clique Membros
(Members), clique Preferences, Clique WWW Icon (Figura do globo terrestre), e
verá uma caixa de diálogo. Clique em "Web Graphics", e
aparecerá uma página com a interrogação "Do you
want Web Graphics to be compressed. This will display pages faster";
Torne-a desmarcada.
E) "Eu estou
usando uma imagem de gif transparente num applet (lens, water, lake,
etc.) como imagem principal, e vejo apenas uma imagem de fundo cinza em
vez da transparência". Isto ocorre porque
fundos transparentes não são suportados em java. você
pode fazer uso de imagens transparentes apenas como imagens sobrepostas.
F) Estranhamente,
algumas vezes GIF's sobrepostos ao fundo do applet não carregam
totalmente no Netscape, mas carregam completos no Explorer. Em muitos
casos, você apenas terá que salvar a sua imagem GIF como intrelaçada
se ela estava em modo normal, ou vice-versa, então ela será
mostrada corretamente. Este problema ocorre mais frequentemente com imagens
grandes.
G) "Eu
removi o parâmetro<param name="credits", e os applets
nao estão mais funcionando, mesmo registrado". Com o
registro, você adquire um código de registro (regcode) que lhe
permite fazer uso dos links de parâmetos e remove a janela de créditos
(pop ups) quando o applet é clicado. Isto não inclui o parâmetro
de "credits": é apenas uma assinatura do applet, que não
é visível pelos visitantes (exceto para quem olhar o código
da página html), porisso não é modificado quando do
registro. E por que quer removê-lo? Este parâmetro não é
removível.
Truques e Conselhos:
1) Talvez se
questione, "O que pessoas sem navegadores Java verão no
lugar do applet ?" Você pode especificar um texto alternativo,
imagem, ou um completo código html para substituir o applet:
<applet code="MyApplet.class"
width=150 height=150> <param name=param1 value="1234"> <param
name=param2 value="5678"> <IMG ALT="*"
ALIGN=center SRC="alternateimage.gif" border=0> </applet>
Você pode até
carregar imagens para os applets de um cgi-bin/ dir, até um 'pic do dia'
cgi ou similar:
<applet code="MyApplet.class"
width=150 height=150> <param name=image value="/cgi-bin/Image.cgi"> <param
name=param2 value="5678"> <IMG ALT="*"
ALIGN=center SRC="/cgi-bin/Image.cgi" border=0> </applet>
Assim, você pode
mostrar uma imagem normal se o Java não pode ser carregado, melhor que
manipulações de Java da imagem se o Java estiver presente. No próprio
Anfy Java wizard(assistente), você pode entrar com um texto alternativo ou
código html no campo "For no java browser".
2) Se você quiser
carregar arquivos .class de um outro diretório ou caminho, use o seguinte
código tag:
<applet codebase="http://www.app.com/app/"
code="MyApplet.class" width=150 height=150> <param
name=param1 value="1234"> <param name=param2 value="5678"> Desculpe,
seu navegador nao suporta Java. </applet>
3) Se ao fazer uso de
uma máscara (imagem sobreposta) aparece uma borda fina (cerca de 1-2
pixel) no alto do applet, circundando a imagem: Para removê-la use os
tags HSPACE="0" e VSPACE="0", dentro do tag
<applet>:
<applet code="MyApplet.class"
hspace=0 vspace=0 width=150 height=150>
Usuários do Frontpage:
Descrevemos aqui um exemplo
de configuração, passo a passo, para gerar o applet Water no Anfy
Java:
1) Caso ainda não
disponha de uma imagem, use o Image Composer ( FrontPage's Tool - Ferramentas)
para criar e salvar uma imagem como "water.gif" por exemplo, em uma
pasta nova e vazia.
2) Na tela principal
do Anfy Java wizard, selecione WATER, pressione o botão NEXT, em seguida
pressione o botão "browse" e selecione a imagem que salvou para
o efeito. Pressione então o botão NEXT 4 vezes, e use a função
(clique no botão) "Copy all files to" para salvar todos
os arquivos necessários na nova pasta que criou.
3) Abra o FrontPage:
no FrontPage Explorer, importe (import) os Applets Java, incluindo
anwater.html, anfy.class, AnWater.class, Lware.class, e waterscr.txt. Ou seja,
certifique-se de que esses arquivos estejam presentes na mesma pasta (diretório)
do documento html que vc irá editar.
4) No Editor do
FrontPage, abra anwater.html, então selecione-o e click copy button
na barra de ferramentas.
5) Abra uma nova página
(new web page), ou o documento html no qual você deseja inserir o applet,
e click no paste button na barra de ferramentas.
Uma forma mais rápida
poderia ser:
4) Abra o FRONTPAGE. 5)
Abra a página web que você quer. 6) Arraste o arquivo
para a página aberta. 7) Click na página web page
dentro do editor e ela abrirá com o applet no lugar, e você poderá
continuar editando. Click na JBAR no applet para ajustar os controles.
Isto
deixará o applet pronto para funcionar. Se desejar alterar os parâmetros,
dê duplo click no applet, então poderá abrir a caixa "Java
Applet Properties". Você poderá ter problemas de
especificação de diretório no servidor, porque o FrontPage
requer um servidor da web e força a importação dos arquivos
.class para a web. Se você copiá-los para diretórios da
web, certifique-se de colocá-los no lugar correto e selecione "Recalculate
Hyperlinks" no explorer. Assegure-se que os caminhos contidos nos parâmetros
dos applets estejam corretos.
Nota: Para alterar o texto
que rola (scrolltext), modifique o conteúdo do arquivo waterscr.txt.
Bugs (erros) já
conhecidos:
- Não salve
imagens .JPG do Adobe PhotoShop 4 com a opção "thumbnail"
acionada, pois algumas versões de Java (Netscape 3) não as
abrirão. Desabilite a opção thumbnail ou use o PhotoShop 3.
- MS Explorer 3.02 (e
algumas versões beta do 4.0) possuem um bug que causa um erro de exceção
exception: com.ms.applet.Security.Couldn`t connect quando o Java carrega imagens do disco local. Os
Applets funcionarão quando você estiver online, mas não
conseguirá testá-los offline, porisso consiga uma versão
mais antiga (3.01) ou mais recente(4.0 final), por exemplo. A URL para
atualizar Java do IE é
http://www.microsoft.com/java/vm/vmdownload.htm.
Compatibilidade de parâmetros:
INTRODUÇÃO:
Algumas pessoas julgam o Java como algo perigoso, pouco seguro e que faz travar
muitos navegadores. Isto é verdade para applets mal desenvolvidos e para
páginas sobrecarregadas com 10 applets, e, ainda, para computadores mais
antigos. Se você usar os applets do Anfy Java com a opção
"Optimize for compatibility" selecionada, colocar NÃO MAIS que
um applet em cada página html, nenhum navegador travará ao abrir a
página.
O que fazer se um APPLET JAVA
ocupar 100% da capacidade da minha CPU, deixar o navegador lento, ou utilizar
toda a memória do meu micro?
A) Quando o applet
esta rodando, o Netscape ou o Explorer podem ficar lentos, e algumas
vezes o Sistema Operacional (Win95, WinNT, MacOS etc.) travam ou ficam lentos
também. Se isso ocorrer você deve aumentar o parâmetro
MinSYNC até um valor que o sistema opere normalmente. Este valor
usualmente é 10, mas você aumentar para 20,40,60,100 ou até
mais para diminuir a velocidade do applet, deixando maior capacidade da CPU para
o navegador e o sistema operacional. Você pode diminuir ainda o parâmetro
"priority".
B) Quando o applet
esta rodando por alguns segundos ou minutos a memória se esgota e
o disco rígido é acionado constantemente (no caso o sistema
operacional passa a utilizar o disco rígido como memória virtual). Se
isso ocorrer, você estará usando uma versão com bugs do
Netscape 3 ou MS Explorer 3. Este problema não está presente nas
versões corrigidas desses navegadores, mas uma forma de resolver é
diminuir o parâmetro
memdelay para 10 - 16: O Anfy Java wizard possui 3 opções
predefinidas no "expert mode panel":
Standard settings configuram MinSYNC para 10 e priority para 3, sendo
essas configurações aceitas por 99% dos navegadores.
Se você quiser se
assegurar de que o applet será carregado mesmo nas versões com bug
do Explorer e do Netscape e não ligar se a velocidade do applet ficar
muito lenta, utilize a opção Optimize for compatibility.
Isto configurará MinSYNC para 30, priority para 1 e memdelay para 15. Se
quiser dar máxima prioridade aos applets, e não liga se isso trará
problemas para navegadores mais antigos, além de diminuir a capacidade da
CPU alheia, selecione Optimize for speed. Isto deixará o valor de
MinSYNC como 2 e o de priority como 6. É possível manualmente
deixar o MinSYNC como 0 e o priority como 10, para aqueles que queiram testar o
applet em velocidade total num P200MMX ou Pentium II.
Lembre-se, o mais importante
conselho é:
NÃO INSIRA MAIS DE
UM APPLET EM UMA PÁGINA
Se você realmente
NECESSITAR colocar mais de um applet por página (faça por sua própria
conta e risco!), assegure-se de alterar o parâmetro priority para 5 em
todos os applets. Se desejar que um rode mais rápido que o outro,
modifique a "priority" para a velocidade desejada.
Algum outro questionamento?
Se você for um
usuário registrado do Anfy Java (ou seja: se comprou pelo menos
um código de registro - regcode) e possui algum problema técnico não
descrito neste documento, pode nos consultar (texto em inglês)
gratuitamente em
anjsupp@anfiteatro.it.
NOTA: o suporte
gratuito (aceito apenas em inglês) é garantido somente para usuários
registrados e, por favor, certifique-se que o seu questionamento não
esta contido neste documento, assim você estará evitando perguntas
já respondidas aqui.
|