Soel
09-02-2009, 18:33
Salve a tutti, avrei due problemi con un programma che svolge una comunicazione client-server.
Innanzitutto, ho un client e un server scritti da altri (client in java, server in c++), e un programma in java scritto da me che si inserisce tra i due, riceve i dati del client, li analizza e poi li inoltra al server. I primi due programmi vengono lanciati da terminale, mentre il mio viene lanciato attraverso Eclipse.
Detto questo, il mio programma, privo di interfaccia grafica, funziona perfettamente. Il problema è nato quando ho creato un JFrame per inserire i dati di host e porte. Il funzionamento resta immutato, ma nel momento in cui lancio l'interfaccia grafica del client altrui mi viene stampata a terminale questa coppia di errori:
2009-02-09 10:34:53.657 java[392] CFLog (0): CFMessagePort: bootstrap_register(): failed 1103 (0x44f), port = 0x10103, name = 'java.ServiceProvider'
See /usr/include/servers/bootstrap_defs.h for the error codes.
2009-02-09 10:34:53.661 java[392] CFLog (99): CFMessagePortCreateLocal(): failed to name Mach port (java.ServiceProvider)
Specifico che comunque la comunicazione client-server continua a funzionare perfettamente. Di cosa potrebbe trattarsi?
Il secondo problema è relativo al server. Se lancio da Eclipse un server che gira su una determinata porta, e poi faccio partire sempre da Eclipse il mio programma sulla medesima porta, viene giustamente sollevata un'eccezione. Al contrario, se lancio il server C++ da terminale su una determinata porta e poi lancio da Eclipse il mio programma sulla medesima porta, non viene sollevata nessuna eccezione ed entrambi i server si comportano come se girassero sulla stessa porta. Come si potrebbe spiegare questo comportamento?
Grazie anticipatamente per l'aiuto.
Innanzitutto, ho un client e un server scritti da altri (client in java, server in c++), e un programma in java scritto da me che si inserisce tra i due, riceve i dati del client, li analizza e poi li inoltra al server. I primi due programmi vengono lanciati da terminale, mentre il mio viene lanciato attraverso Eclipse.
Detto questo, il mio programma, privo di interfaccia grafica, funziona perfettamente. Il problema è nato quando ho creato un JFrame per inserire i dati di host e porte. Il funzionamento resta immutato, ma nel momento in cui lancio l'interfaccia grafica del client altrui mi viene stampata a terminale questa coppia di errori:
2009-02-09 10:34:53.657 java[392] CFLog (0): CFMessagePort: bootstrap_register(): failed 1103 (0x44f), port = 0x10103, name = 'java.ServiceProvider'
See /usr/include/servers/bootstrap_defs.h for the error codes.
2009-02-09 10:34:53.661 java[392] CFLog (99): CFMessagePortCreateLocal(): failed to name Mach port (java.ServiceProvider)
Specifico che comunque la comunicazione client-server continua a funzionare perfettamente. Di cosa potrebbe trattarsi?
Il secondo problema è relativo al server. Se lancio da Eclipse un server che gira su una determinata porta, e poi faccio partire sempre da Eclipse il mio programma sulla medesima porta, viene giustamente sollevata un'eccezione. Al contrario, se lancio il server C++ da terminale su una determinata porta e poi lancio da Eclipse il mio programma sulla medesima porta, non viene sollevata nessuna eccezione ed entrambi i server si comportano come se girassero sulla stessa porta. Come si potrebbe spiegare questo comportamento?
Grazie anticipatamente per l'aiuto.