Pessoal, tenho esse codigo funcionando até o momento, mas estou com uma dúvida, como eu faço para chamar um dos métodos do servidor (Aviso ou Confirmação), a partir do cliente??
Classe Servidor:
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.net.ServerSocket;
import java.net.Socket;
import javax.swing.JOptionPane;
public class Servidor {
public static void main(String[] args) {
//Declaro o ServerSocket
ServerSocket serv = null;
Socket s = null;
//Declaro o Socket de comunicação
//Declaro o leitor para a entrada de dados
BufferedReader entrada=null;
try{
//Cria o ServerSocket na porta 7000 se estiver disponível
serv = new ServerSocket(40000);
//Aguarda uma conexão na porta especificada e cria retorna o socket que irá comunicar com o cliente
s = serv.accept();
//Cria um BufferedReader para o canal da stream de entrada de dados do socket s
entrada = new BufferedReader(new InputStreamReader(s.getInputStream()));
//Aguarda por algum dado e imprime a linha recebida quando recebe
System.out.println(entrada.readLine());
//trata possíveis excessões de input/output. Note que as excessões são as mesmas utilizadas para as classes de
//java.io
}
catch(IOException e){
//Imprime uma notificação na saída padrão caso haja algo errado.
System.out.println("Algum problema ocorreu para criar ou receber o socket.");
}finally{
try{
//Encerro o socket de comunicação
s.close();
//Encerro o ServerSocket
serv.close();
}catch(Exception e){
e.printStackTrace();
}
}
}
public void Aviso(String msg){
JOptionPane.showMessageDialog(null, msg);
}
public int Confirmacao(String msg){
Object[] opcao = { "Sim", "Não" };
int op = JOptionPane.showOptionDialog(null, msg , "Cuidado",
JOptionPane.DEFAULT_OPTION, JOptionPane.WARNING_MESSAGE, null,opcao, opcao[0]);
return op;
}
}
Classe Cliente:
import java.io.IOException;
import java.io.PrintStream;
import java.net.Socket;
import javax.swing.JOptionPane;
public class Cliente {
public static void main(String[] args) {
//Declaro o socket cliente
Socket s = null;
//Declaro a Stream de saida de dados
PrintStream ps = null;
try{
//Cria o socket com o recurso desejado na porta especificada
s = new Socket("127.0.0.1",40000);
//Cria a Stream de saida de dados
ps = new PrintStream(s.getOutputStream());
//Imprime uma linha para a stream de saída de dados
ps.println("agora esta conectando com sucesso");
//Trata possíveis exceções
}catch(IOException e){
System.out.println("Algum problema ocorreu ao criar ou enviar dados pelo socket.");
}finally{
try{
//Encerra o socket cliente
s.close();
}catch(Exception e){
e.printStackTrace();
}
}
}
}