Alguem me ajuda?

3 respostas
S

estou tentando fazer uma aplicação usando rmi... porem não estou conseguindo...

segue o codigo:

pacote conexao:

package conexao;

import domino.usuarios;
import java.net.*;
import java.rmi.*;
import java.rmi.registry.*;
import java.rmi.server.*;

public class Servidor{
public static void main(String args[]) {
        try {
         usuarios usu = new usuarios();
             Naming.rebind("//localhost/con", usu);
                 System.out.println("Cadastro do objeto usu no registry");
        } catch (Exception e) {
				System.out.println("erro: " +e.getMessage());
    	}
   }
}
package conexao;

import java.sql.Connection;
import java.sql.DriverManager;


public class conexao
{
    /**
     * Cria uma conexao com o banco de dados.
     */
    public static Connection getConnection()
    {
        Connection conn1 = null;

        try {
            // Informa qual o driver jdbc
            Class.forName("org.postgresql.Driver");

            // Cria uma conexão com o banco de dados
            conn1 = DriverManager.getConnection ("jdbc:postgresql://127.0.0.1:5432/tcc?user=postgres&password=jhonatan");
        }
        catch (Exception e)
        {
            System.out.println("Ocorreu um erro no metodo Util.getConexao(): " + e.getMessage());
        }

        return(conn1);

dao:

public class cliente implements Icliente {
public boolean inserir()throws  RemoteException  {
         usuarios usuarios = new usuarios();

        try {
            //Obtendo a conexão com o BD
            Connection conn1= conexao.getConnection();
  

            //Criando a string com sql a ser executada
            String sql = "INSERT INTO cliente VALUES ( ?, ? )";

            //Tratando a sql  a ser executada
            PreparedStatement pst = conn1.prepareStatement( sql );
            //Definindo o primeiro parâmetro
            pst.setInt(1, usuarios.getCodigocliente());
            //Definindo o segundo parâmetro
            pst.setString(2, usuarios.getData());

            //Definindo o terceiro parâmetro

            //Executando a sql
            pst.executeUpdate();

            //Fechando o tratamento da sql
            pst.close(); }

catch (Exception e){ return false;
        }return true;}
public interface Icliente extends Remote {
public boolean inserir()throws  RemoteException;
}

dominio

*/
public class usuarios extends UnicastRemoteObject implements Iusuarios  {
private int codigocliente;
private String Data;

   public usuarios() throws RemoteException
    {
	  }
     
    public int getCodigocliente() {
        return codigocliente;
    }

    /**
     * @param codigocliente the codigocliente to set
     */
    public void setCodigocliente(int codigocliente) {
        this.codigocliente = codigocliente;
    }

    /**
     * @return the Data
     */
    public String getData() {
        return Data;
    }

    /**
     * @param Data the Data to set
     */
    public void setData(String Data) {
        this.Data = Data;
    }
*/
public interface Iusuarios  extends Remote{
public void setCodigocliente(int codigocliente) throws RemoteException;
    public void setData(String Data)throws RemoteException;
 
}
private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {                                         

        
        try {
            Icliente cli = (Icliente)Naming.lookup ("//localhost/conexao");


            if(cli.inserir())

				JOptionPane.showMessageDialog(null,"produto inserido com sucesso");
			else
	 		JOptionPane.showMessageDialog(null,"produto não inserido");


        } catch (Exception h) {
            h.printStackTrace();
         		JOptionPane.showMessageDialog(null,h.getMessage());
        }

segue o erro na hora de compilar

//java servidor exception in thread main.java.lang.noclassdefounderror: Servidor

3 Respostas

pmlm

A classe Servidor está na package conexao, certo? Entãojava conexao.Servidor

S

agora compilou mais na hora de rodar no netbeans… olha o erro:

java.rmi.UnmarshalException: error unmarshalling return; nested exception is: java.lang.ClassNotFoundException: domino.usuarios_Stub (no security manager: RMI class loader disabled) at sun.rmi.registry.RegistryImpl_Stub.lookup(Unknown Source) at java.rmi.Naming.lookup(Naming.java:84) at visão.NewJFrame.jButton1ActionPerformed(NewJFrame.java:106) at visão.NewJFrame.access$000(NewJFrame.java:25) at visão.NewJFrame$1.actionPerformed(NewJFrame.java:50) at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1995) at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2318) at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:387) at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:242) at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:236) at java.awt.Component.processMouseEvent(Component.java:6216) at javax.swing.JComponent.processMouseEvent(JComponent.java:3265) at java.awt.Component.processEvent(Component.java:5981) at java.awt.Container.processEvent(Container.java:2041) at java.awt.Component.dispatchEventImpl(Component.java:4583) at java.awt.Container.dispatchEventImpl(Container.java:2099) at java.awt.Component.dispatchEvent(Component.java:4413) at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4556) at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4220) at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4150) at java.awt.Container.dispatchEventImpl(Container.java:2085) at java.awt.Window.dispatchEventImpl(Window.java:2475) at java.awt.Component.dispatchEvent(Component.java:4413) at java.awt.EventQueue.dispatchEvent(EventQueue.java:599) at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:269) at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:184) at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:174) at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:169) at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:161) at java.awt.EventDispatchThread.run(EventDispatchThread.java:122) Caused by: java.lang.ClassNotFoundException: domino.usuarios_Stub (no security manager: RMI class loader disabled) at sun.rmi.server.LoaderHandler.loadClass(LoaderHandler.java:375) at sun.rmi.server.LoaderHandler.loadClass(LoaderHandler.java:165) at java.rmi.server.RMIClassLoader$2.loadClass(RMIClassLoader.java:620) at java.rmi.server.RMIClassLoader.loadClass(RMIClassLoader.java:247) at sun.rmi.server.MarshalInputStream.resolveClass(MarshalInputStream.java:197) at java.io.ObjectInputStream.readNonProxyDesc(ObjectInputStream.java:1575) at java.io.ObjectInputStream.readClassDesc(ObjectInputStream.java:1496) at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1732) at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1329) at java.io.ObjectInputStream.readObject(ObjectInputStream.java:351) ... 30 more

S

mexi em outra coisa aki e olha esse erro tbm

java.rmi.ConnectException: Connection refused to host: localhost; nested exception is:

java.net.ConnectException: Connection refused: connect

at sun.rmi.transport.tcp.TCPEndpoint.newSocket(TCPEndpoint.java:601)

at sun.rmi.transport.tcp.TCPChannel.createConnection(TCPChannel.java:198)

at sun.rmi.transport.tcp.TCPChannel.newConnection(TCPChannel.java:184)

at sun.rmi.server.UnicastRef.newCall(UnicastRef.java:322)

at sun.rmi.registry.RegistryImpl_Stub.lookup(Unknown Source)

at java.rmi.Naming.lookup(Naming.java:84)

at rmi.tela.jButton1ActionPerformed(tela.java:85)

at rmi.tela.access$000(tela.java:21)

at rmi.tela$1.actionPerformed(tela.java:46)

at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1995)

at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2318)

at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:387)

at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:242)

at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:236)

at java.awt.Component.processMouseEvent(Component.java:6216)

at javax.swing.JComponent.processMouseEvent(JComponent.java:3265)

at java.awt.Component.processEvent(Component.java:5981)

at java.awt.Container.processEvent(Container.java:2041)

at java.awt.Component.dispatchEventImpl(Component.java:4583)

at java.awt.Container.dispatchEventImpl(Container.java:2099)

at java.awt.Component.dispatchEvent(Component.java:4413)

at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4556)

at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4220)

at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4150)

at java.awt.Container.dispatchEventImpl(Container.java:2085)

at java.awt.Window.dispatchEventImpl(Window.java:2475)

at java.awt.Component.dispatchEvent(Component.java:4413)

at java.awt.EventQueue.dispatchEvent(EventQueue.java:599)

at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:269)

at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:184)

at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:174)

at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:169)

at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:161)

at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)

Caused by: java.net.ConnectException: Connection refused: connect

at java.net.PlainSocketImpl.socketConnect(Native Method)

at java.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:333)

at java.net.PlainSocketImpl.connectToAddress(PlainSocketImpl.java:195)

at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:182)

at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:366)

at java.net.Socket.connect(Socket.java:519)

at java.net.Socket.connect(Socket.java:469)

at java.net.Socket.(Socket.java:366)

at java.net.Socket.(Socket.java:180)

at sun.rmi.transport.proxy.RMIDirectSocketFactory.createSocket(RMIDirectSocketFactory.java:22)

at sun.rmi.transport.proxy.RMIMasterSocketFactory.createSocket(RMIMasterSocketFactory.java:128)

at sun.rmi.transport.tcp.TCPEndpoint.newSocket(TCPEndpoint.java:595)

 33 more
Criado 31 de outubro de 2009
Ultima resposta 2 de nov. de 2009
Respostas 3
Participantes 2