Comunicação com Porta Serial e Interface Gráfica

Olá Pessoal.

Estou desenvolvendo uma aplicação que irá simular a comunicação entre duas portas seriais RS-232. Esta aplicação será idêntica ao HyperTerminal do Windows.
Usando a biblioteca java RxTx, as portas conseguem enviar e receber os dados corretamente através do evento (SerialEvent):
public void serialEvent(SerialPortEvent ev)
      {  
        StringBuffer bufferLeitura = new StringBuffer();
        int novoDado = 0;
        
        switch (ev.getEventType()) 
        {
            case SerialPortEvent.BI:
            case SerialPortEvent.OE:
            case SerialPortEvent.FE:
            case SerialPortEvent.PE:
            case SerialPortEvent.CD:
            case SerialPortEvent.CTS:
            case SerialPortEvent.DSR:
            case SerialPortEvent.RI:
            case SerialPortEvent.OUTPUT_BUFFER_EMPTY:
            break;

            case SerialPortEvent.DATA_AVAILABLE:

                //Novo algoritmo de leitura.
                while(novoDado != -1)
                {
                    try
                    {
                        novoDado = inputPorta.read();
                        if(novoDado == -1)
                        {
                            break;
                        }

                        if('\r' == (char)novoDado)
                        {
                            bufferLeitura.append('\n');
                        }
                        else
                        {
                            bufferLeitura.append((char)novoDado);
                        }
                    }
                    catch(IOException ioe)
                    {
                        System.out.println("Erro de recepcao de dados: " + ioe);
                    }
                }
                
                setDataReceived(new String(bufferLeitura));
                
                ((ViewSerialConection) caller).textArea.append(getDataReceived());
                
            break;
         }
      }

Consigo enviar e receber os dados de uma porta à outra sem problemas, mas não consigo setar os dados que estão sendo recebidos no TextBox da interface gráfica usando o evento acima (SerialEvent). Sempre que chamo a classe de conexao serial, passo a instância da interface para ter acesso ao Text e setar os valores.

O erro está sendo na linha:

((ViewSerialConnection) caller).textArea.append(getDataReceived());

onde caller é a instância da interface gráfica passado no construtor da classe de conexao Serial, getDataReceived() me retorna a String dos valores recebidos pela serial e ViewSerialConnection é o nome na classe da Interface Gráfica.

A mensagem de erro é a seguinte:

Exception in thread "Thread-1" java.lang.ClassCastException: subordSerialConection.ViewSerialConection$1 cannot be cast to subordSerialConection.ViewSerialConection
	at subordSerialConection.ConexaoSerial.serialEvent(ConexaoSerial.java:314)
	at gnu.io.RXTXPort.sendEvent(RXTXPort.java:732)
	at gnu.io.RXTXPort.eventLoop(Native Method)
	at gnu.io.RXTXPort$MonitorThread.run(RXTXPort.java:1575)

onde subordSerialConection.ViewSerialConection é o nome do pacote e da interface.

Alguém saberia me dizer, por gentileza, o que devo fazer para jogar os dados que estão sendo lidos na porta serial para a interface gráfica? Estou pesquisando e, pelo pouco que já sei a respeito, quando a aplicação está rodando, a interface roda em uma thread e este evento (SerialEvent) roda em outra thread. Se for mesmo isso, como faço para acessar a Thread da interface gráfica dentro da Thread do SerialEvent?
Minha interface gráfica é uma ViewPart, criada pelo Eclipse RCP.

Alguém poderia me ajudar??

Abs.