Je réalise une communication avec le serveur client. J'ai été à la fois connecté via URLConnection
classes.Communication du serveur Web du client de bureau
Maintenant, j'essaie d'envoyer des informations de connexion au serveur, le serveur vérifiera si les informations sont correctes sinon il me demandera de me connecter à nouveau et pour ce scénario, supposons que la connexion a échoué. Mais après avoir reçu la réponse du serveur lorsque je tente à nouveau d'envoyer les informations de connexion Je reçois
java.net.ProtocolException: Cannot write output after reading input.
Voici mon code:
URL url = new URL(uniRL);
java.net.URLConnection connection = url.openConnection();
connection.setAllowUserInteraction(true);
connection.setDoOutput(true);
while(true){
System.out.println("Enter 1-login , 2-Exit");
useroption = input.nextLine();
numOption = Integer.parseInt(useroption);
if(numOption == 1){
OutputStreamWriter writer = new OutputStreamWriter(
connection.getOutputStream());
user_login = login();
writer.write(user_login[0]+"@");
writer.write(user_login[1]);
writer.flush();
//out.close();
BufferedReader in = new BufferedReader(
new InputStreamReader(
connection.getInputStream()));
while ((tempString = in.readLine()) != null) {
decodedString = tempString;
//System.out.println(decodedString);
//System.out.println(decodedString.equalsIgnoreCase("unknown user"));
}
in.close();
if((decodedString.equalsIgnoreCase("unknown user"))){continue;}
else{break;}
}
Quelle est la ligne où vous obtenez cette exception? La publication de la trace d'exception aiderait. – Santosh
Je reçois une exception lorsque la boucle passe à sa deuxième itération. et essaie d'écrire quelque chose pour la deuxième fois. –