Momenteel ben ik bezig met een primitief chat-systeem (Client en Server)
Mijn server-programma bevat een class Message. Deze class stelt een bericht voor.
Members:
User FromUser (User object)
User ToUser (User object)
String msg
Nu heb ik ook een class UserPool waarin ik al de ingelogde gebruikers verzamel. Deze classe bevat een sendMessage(Message msg) method die dus, zoals je al kon vermoeden, een bericht verzend.
Mijn probleem is nu dat ik een Message-object zou willen kunnen verzenden naar de Client (en ook van Client naar Server).
Ik gebruik daarvoor een ObjectOutputStream.
Maar als ik mijn object heb verzonden naar het client-programma, kent de client het object Message niet natuurlijk.
Ik heb al geprobeerd om mijn Class Message ook in mijn Client-programma te implementeren, maar dan moet ik ook de Class User, Connection, ... ook implementeren en dat lijkt mij veel te omslachtig.
Kunnen jullie mij dus helpen om Custom objecten te versturen.
ps: ik heb al een tutorial gevonden op java.sun.com, maar in deze tutorial wordt er geen gebruik gemaakt van 2 verschillende projecten (wat bij mij wel het geval is)
volgende code-fragmenten ter verduidelijking:
SERVER-SIDE
Class UserPool
CLIENT-SIDE is helemaal nog niet af.
Class Main
Member-variabelen van Class Message
die transient was om te proberen
Mijn server-programma bevat een class Message. Deze class stelt een bericht voor.
Members:
User FromUser (User object)
User ToUser (User object)
String msg
Nu heb ik ook een class UserPool waarin ik al de ingelogde gebruikers verzamel. Deze classe bevat een sendMessage(Message msg) method die dus, zoals je al kon vermoeden, een bericht verzend.
Mijn probleem is nu dat ik een Message-object zou willen kunnen verzenden naar de Client (en ook van Client naar Server).
Ik gebruik daarvoor een ObjectOutputStream.
Maar als ik mijn object heb verzonden naar het client-programma, kent de client het object Message niet natuurlijk.
Ik heb al geprobeerd om mijn Class Message ook in mijn Client-programma te implementeren, maar dan moet ik ook de Class User, Connection, ... ook implementeren en dat lijkt mij veel te omslachtig.
Kunnen jullie mij dus helpen om Custom objecten te versturen.
ps: ik heb al een tutorial gevonden op java.sun.com, maar in deze tutorial wordt er geen gebruik gemaakt van 2 verschillende projecten (wat bij mij wel het geval is)
volgende code-fragmenten ter verduidelijking:
SERVER-SIDE
Class UserPool
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
| public void sendMessage(Message msg)
{
try
{
ObjectOutputStream objout = msg.getToUser().getConnection().getObjectOutputStream();
objout.writeObject(msg);
objout.flush();
}
catch(IOException e)
{
e.printStackTrace();
}
} |
CLIENT-SIDE is helemaal nog niet af.
Class Main
code:
1
2
3
| ObjectInputStream objin = new ObjectInputStream(new BufferedInputStream(s.getInputStream()));
Message msg = (Message)objin.readObject(); |
Member-variabelen van Class Message
code:
1
2
3
4
5
6
7
| public class Message
{
//private transient User fromUser;
//private transient User toUser;
private String message;
private String prefix; |
die transient was om te proberen
I must not fear. Fear is the mind-killer. Fear is the little-death that brings total obliteration. I will face my fear. I will permit it to pass over me and through me. Where the fear has gone there will be nothing. Only I will remain.