> > De: Carlos Campos <[EMAIL PROTECTED]>
> > Para: [EMAIL PROTECTED]
> > Cc: [EMAIL PROTECTED]
> > Assunto: Handerson, corrija o endere�o para a lista caso eu tenha me
> enganado, ok?
> > Data: Quarta-feira, 18 de Agosto de 1999 22:45
> > 
> > Prezados Javaneses,
> > 
> > H� um tempo atr�s enviei minha primeira mensagem para esta Lista,
> > solicitando ajuda quanto � possibilidade ou n�o de INTEGRAR os campos
de
> um
> > formul�rio HTML com um APPLET Java.
> > 
> > Na ocasi�o, o nosso considerado Handerson Gomes relatou que j�
trabalhava
> > com Java h� bastante tempo e desconhecia esta possibilidade, me
> solicitando
> > que divulgasse para a Lista qualquer novidade de sucesso com rela��o a
> este
> > assunto. � o que discutiremos a seguir:
> > 
> > Mas qual a vantagem desta integra��o?
> > 
> > Todo mundo que j� testou programas em Java sabe que a Carga de um
Applet
> > Java ainda � muito lenta se comparada ao c�digo nativo em HTML; sabe
> tamb�m
> > que n�o � nada tranquilo criar telas com aqueles LAYOUTS infelizes
> (embora
> > idolatrados por poucos); sabe tamb�m que � poss�vel criar r�pidamente
com
> > um software do tipo VISUAL PAGE formul�rios em HTML melhor elaborados e
> de
> > melhor apar�ncia visual.
> > 
> > Para aqueles que desejam, como eu, utilizar uma Programa��o Java
> Orientada
> > para o Browser, mesclando c�digos em HTML, Applets e Servlets, esta
> > possibilidade de integra��o estava se tornando quase uma obsess�o.
> > 
> > Ap�s ralar muito, usando Decompiler nas Bibliotecas de JVM e em alguns
> > Applets dispon�veis na NET identifiquei uma solu��o:
> > 
> > Existe uma classe "JSObject" do "Package netscape.javascript" que
permite
> a
> > integra��o do Applet com o DOM - Document Object Model (Window ->
> Document
> > -> Form -> Element etc) do seu Browser. Mais ainda, esta classe permite
> que
> > voc� interaja com qualquer vari�vel, fun��o ou m�todo p�blico, seja do
> > APPLET JAVA ou do c�digo JAVASCRIPT que estiver definido no seu
documento
> > HTML.
> > 
> > Testei este recurso com o INTERNET EXPLORER 4.x/5.x e tudo funcionou
uma
> > BELEZA. Consegui recuperar campos de um formul�rio HTML e atribuir
> valores
> > de volta sem problema.
> > 
> > Para minha SURPRESA e frustra��o, embora o pacote tenha o nome de
> NETSCAPE,
> > come�aram a ocorrer os problemas quando testei no NETSCAPE COMMUNICATOR
> 4.6
> > : Recebo de cara a "Exception java.lang.NullPointerException".
> > 
> > Embora tenha localizado e recorrido ao site
> > http://developer.netscape.com/.../livecon.html e constatado que,
> > aparentemente, n�o cometi nenhum erro, mesmo porque funciona bem no
> > Internet Explorer, N�O ENTENDI porque o c�digo N�O est� funcionando no
NS
> > 4.x.
> > 
> > Estou disponibilizando abaixo os respectivos c�digos-fonte do documento
> > HTML e do APPLET e solicito AJUDA dos javaneses para desvendar este
> pequeno
> > MIST�RIO. Eu sei que a pol�tica de seguran�a do NETSCAPE � mais r�gida
do
> > que a do IEXPLORER mas n�o sei se tem algo a ver.
> > 
> > Outra coisa: Para compilar, � necess�rio acrescentar no CLASSPATH a
> > biblioteca JAWS.JAR dispon�vel no JRE 1.2 e, evidentemente, usar JDK
1.2
> ou
> > superior. Para que o Applet HABILITE a comunica��o com o Java Plugin
> tamb�m
> > � necess�rio que o autor do documento HTML autorize o acesso definindo
um
> > par�metro MAYSCRIPT com valor TRUE.
> > 
> > Ficou um pouco longo mas inevit�vel...
> > 
> > Um grande abra�o � todos e conto com a colabora��o de voc�s para a
> solu��o
> > do problema.
> > 
> > Carlos Campos
> > [EMAIL PROTECTED]
> > MCT/CNPq/CETEM
> > 55 21 5607222 Ext. 358
> > 
> > =======================================================================
> > 
> > C�DIGO DO DOCUMENTO HTML:
> > 
> > <html> <head></head><body>
> > 
> > <br>
> > <FORM name="form1">
> > <TABLE>
> > <tr><td>Seu Logon :</td><td><INPUT type="TEXT" name="logon"
> > value="Carlos"></td></tr>
> > <tr><td>Sua Password : </td><td><INPUT type="TEXT" name="password"
> > value="Andr�"></td></tr>
> > <tr><td></td>
> > </table>
> > </FORM>
> > 
> > <br>
> > <hr>
> > <br>
> > <applet code=Formulario.class width=572 height=500>
> > <param name="MAYSCRIPT" value="true">
> > </applet>
> > 
> > </body>
> > </html>
> > 
> > 
> > =======================================================================
> > 
> > C�DIGO-FONTE DO APPLET:
> > 
> > 
> > import java.awt.*;
> > import java.awt.Graphics;
> > import java.awt.event.*;
> > import java.applet.*;
> > import java.net.*;
> > import java.io.*;
> > import netscape.javascript.*;
> > 
> > public class Formulario extends Applet {
> > 
> >    JSObject win,doc,f_form1,e_logon,e_password;
> >     String   cp_logon,cp_password;
> > 
> >    TextField Txt_Logon      = new TextField("Carlos",50);
> >    TextField Txt_Password   = new TextField("Andr�",50);
> >    TextField Txt_Msg        = new TextField("",50);
> > 
> >     Button Btn_Ok  = new Button("Ok");
> > 
> >    public void init() {
> >             
> >        try {
> >             
> >               win  = JSObject.getWindow(this);
> >               doc = (JSObject)win.getMember("document");
> >         f_form1 = (JSObject)doc.getMember("form1");
> >         e_logon = (JSObject)f_form1.getMember("logon");
> >         e_password = (JSObject)f_form1.getMember("password");
> >               }
> >       catch(Exception e) {
> >         showStatus("Falha de Comunica��o com o Formul�rio! = Erro: " +
> > e.toString());
> >               Txt_Msg.setText("Erro 01 : " + e.toString());
> >         }
> > 
> > 
> >             this.setLocation(new Point(0,0));
> >             this.setSize(572,500);
> >             this.setBackground(Color.white);
> > 
> >             this.add(Txt_Logon);
> >             this.add(Txt_Password);
> >             this.add(Txt_Msg);
> >             this.add(Btn_Ok);
> > 
> >             Btn_Ok.addActionListener(new BTNOK());
> >    }
> > 
> >     // Controla Bot�o <OK> de mensagem do Applet
> >     class BTNOK implements ActionListener {
> >             public void actionPerformed(ActionEvent e) {
> >                     try {
> >                       cp_password="Carlos e Vicentina";
> >                                       
> > e_password.setMember("value",cp_password);
> >                        cp_logon = (String)e_logon.getMember("value");              
>   
> >                        cp_password = (String)e_password.getMember("value");        
>   
> >                             Txt_Msg.setText("Logon = " + cp_logon + "  &  Password 
>= " +
> > cp_password);
> >                     }       
> >                     catch(Exception ex) {
> >              showStatus("Falha de Comunica��o com o Formul�rio! = Erro: "
+
> > ex.toString());
> >                        Txt_Msg.setText("Erro 02 : " + ex.toString());
> >           }
> >             }
> >     }
> > 
> >     
> > }
> > 
> > 
> > =======================================================================
> > 
* Para n�o receber mais e-mails desta lista envie um e-mail para 
[[EMAIL PROTECTED]]
e no corpo do email escreva [unsubscribe <seu-email>]

Responder a