eu uso o comando rmic mais so da:
error: class not found.
ja to pirando… ta compilando e rodando numa boa mais eu preciso dos stubs e skeletons e n to conseguindo… alguem da 1 luz ae!
eu uso o comando rmic mais so da:
error: class not found.
ja to pirando… ta compilando e rodando numa boa mais eu preciso dos stubs e skeletons e n to conseguindo… alguem da 1 luz ae!
Com java 5 vc não usa mais o RMIC!
Javac ja faz td sozinho!
Não tem mais stub e nem aquelas babozeiras!
O java 5 faz uso de dynamic proxies em substituição à geração de classes Stub/Skeleton comuns. Não é o ‘javac’ que faz tudo sozinho’, não.
Coloquei como faz tudo sozinho pelo fato de não precisar mas usar coisas como RMIC como antigamente!
quando vc fala java 5 eh o sdk 5.0?
So mais 1 duvida… tipows eu to pegando dados de uns textfield e quero enviar pro servidor e o servidor enviar pro banco de dados.
A principio estava dando certo porem eu descobri q o proprio cliente estava enviado os dados para o banco (pelo fato q cliente e servidor ser a mesma maquina)… entao achei q o problema era a falta de stub e skeleton. Alguem pode dar 1 luz o q esta errado?
Servidor.java
package Servidor;
import java.rmi.Remote;
import java.rmi.RemoteException;
import Beans.*;
public interface Servidor extends Remote{
public Cadastro getCadastro() throws RemoteException;
}
ServidorImpl.java
package Servidor;
import java.rmi.registry.Registry;
import java.rmi.registry.LocateRegistry ;
import java.rmi.Naming;
import java.rmi.RMISecurityManager;
import java.rmi.RemoteException;
import java.rmi.AlreadyBoundException;
import java.rmi.server.UnicastRemoteObject;
import java.io.IOException;
import Beans.*;
public class ServidorImpl implements Servidor{
private Cadastro cadastro;
public ServidorImpl() {
cadastro = new Cadastro();
inicia();
}
public Cadastro getCadastro(){
return cadastro;
}
public void inicia(){
try{
Servidor stub = (Servidor) UnicastRemoteObject.exportObject (this, 0);
Registry registry = LocateRegistry.createRegistry(7000);
registry.bind ("War", stub);
System.out.println ("Servidor iniciado");
}catch(RemoteException Re){
System.out.println(Re.getMessage());
}catch(AlreadyBoundException ABe){
System.out.println(ABe.getMessage());
}catch(IOException IOe){
System.out.println(IOe.getMessage());
}
}
public static void main(String[] args) {
try {
new ServidorImpl();
} catch(Exception e) {
e.printStackTrace();
}
}
}
Cliente.java
package mCliente;
import java.rmi.registry.LocateRegistry;
import java.rmi.registry.Registry;
import java.rmi.RemoteException;
import java.rmi.NotBoundException;
import javax.swing.*;
import Beans.*;
import Servidor.*;
public class Cliente {
Registry registry;
Servidor stub;
boolean status;
public Cliente() {
status = false;
}
public boolean runConexao(){
try{
registry = LocateRegistry.getRegistry("localhost", 7000);
stub = (Servidor) registry.lookup ("War");
status = true;
}catch(RemoteException Re){
JOptionPane.showMessageDialog(null,Re.getMessage(),"ERROR!!",0);
}catch(NotBoundException NBe){
JOptionPane.showMessageDialog(null,NBe.getMessage(),"ERROR!!",0);
}
return status;
}
public void bdInsereDados(String nome, String nick, String email, String login, String senha, String cidade, String uf){
try{
Cadastro cadastro;
cadastro = stub.getCadastro();
cadastro.Cadastrar(nome, nick, email, login, senha, cidade, uf);
}catch (RemoteException e){
JOptionPane.showMessageDialog(null,"Erro ao enviar os dados!","ERROR!!",0);
}
}
}
O metodo q deveria enviar os dados para o servidor eh o bdInsereDados.
Obs: No caso cliente e servidor sao programas diferentes e estao em projetos diferentes!