Erro em projeto de TCC

0 respostas
C

Olá, boa tarde.Alguém poderia me ajudar? Estou com um projeto de TCC que lê os dados da porta paralela, atualiza um db e lista num jsp.
Isto funciona, adicionando os valores no objeto evento no MySQL direitinho eu consigo listar os dados via jsp:

Public void adiciona(){
Evento evento = new Evento();
Evento.setEvento0 = ?1?;
Evento.setEvento0 = ?0?;
Evento.setEvento0 = ?1?;
Evento.setEvento0 = ?1?;
Evento.setEvento0 = ?o?;
This.session.save(evento)
}
Só que isto é só um teste. Eu preciso pegar os valores do Evento de outra classe, tipo assim:
Public void adiciona(){
Evento evento = new Evento();
IotesteLogic teste = new IotesteLogic();
evento = teste.readLogic();
This.session.save(evento)
}
Entendeu? Eu preciso que os dados do objeto evento venham da classe que faz a leitura da porta paralela. Esta leitura funciona, só que ela está numa classe que tem main (desktop). Eu mando executar no Eclipse e ela roda e lê os valores da porta direitinho ou seja, desktop a partir do main, não tem problema algum. Só que eu preciso que tudo funcione a partir de uma chamada do adiciona. Aí eu não consigo chamar a partir do main não né (como eu faço num desktop)? E aí, como eu faço para instanciá-la nesta situação?

Segue a classe que faz a leitura:

package logic;
import java.awt.Toolkit;
import java.util.List;
import java.util.Timer;
import java.util.TimerTask;

import jnpout32.pPort;
import modelo.Evento;

import org.hibernate.Session;
import org.hibernate.Transaction;
import org.vraptor.annotations.Component;

import util.HibernateUtil;
import dao.EventoDao;


public class IotesteLogic{ 
         private List<Evento> eventos;
         private static Evento e;
         
        static short datum;
        static short Addr;
             static pPort lpt;
            
            
    static void do_read()
    {
          // Read from the port
          datum = (short) lpt.input(Addr);

         
     }

  static Evento readLogic()
     {
         String leitura0;
         String leitura1;
         String leitura2;
         String leitura3;
         String leitura4;
         Converter converter = new Converter();
         
          // Try to read 0x378..0x37F, LPT1:
          for (Addr=0x379; (Addr<0x37a); Addr++) {

               //Read from the port
               datum = (short) lpt.input(Addr);
            int aByte = (datum & 248);
                   aByte = (aByte ^ 128);
                   System.out.println(aByte);
                   System.out.println("Input from parallel port: "
                                      + converter.decToBinary(aByte));
                   String str = converter.decToBinary(aByte);
                   
                            leitura0 = str.substring(0, 1);
                            leitura1 = str.substring(1, 2);
                            leitura2 = str.substring(2, 3);
                            leitura3 = str.substring(3, 4);
                            leitura4 = str.substring(4, 5);
                            System.out.println(leitura0);
                   
                   Evento e = new Evento();
                   e.setEvento0(leitura0);
                   e.setEvento1(leitura1);
                   e.setEvento2(leitura2);
                   e.setEvento3(leitura3);
                   e.setEvento4(leitura4);
                   System.out.println("evento 2:" + e.getEvento2());
                   
         }
          return e;
        }
          
     public  static void main(String args[])
     {
          new  IotesteLogic();
             lpt = new pPort();
 
          // Try to read 0x378..0x37F, LPT1:

      //     do_read_range();


     // And read back to verify
     do_read();

     //  One more time, different value
     datum=0xAA;
    
     // And read back to verify
     do_read();

     // etc...

     Addr++;
     do_read();

     Addr--;
     do_read();

     readLogic();

    }
     public void formulario() {
     }

         public List<Evento> getEventos() {
                   return eventos;
         }

         public Evento getE() {
                   return e;
         }

         public void setE(Evento e) {
                   this.e = e;
         }


}
Preciso que os dados que vão popular o evento venham daqui... Se puderem me ajudar agradeço. A conclusão de meu TCC tá dependendo disto.
Criado 15 de abril de 2009
Respostas 0
Participantes 1