java - Having problems login into Gmail imaps (not using javamail) tag error -
i trying create typestate client program in java speaks gimaps having trouble getting login in. when enter details sends * bad invalid tag. presume tag sending. here's code i'll explain more.
public class cmain { static final string crlf = "\r\n"; public static string saferead(bufferedreader readerc) { string readline = ""; try { readline = readerc.readline(); } catch(ioexception e) { system.out.println("input/output error, unable read"); system.exit(+1); } return readline; } public static void main(string[] args) { crole currentc = new crole(); bufferedreader readerc = new bufferedreader(new inputstreamreader(system.in)); system.out.println("connecting: "); string payload2 = currentc.receive_acceptedstringfroms(); system.out.println("received s: " + payload2); //connected - decide if want login system.out.print("choose label among [login, quit]: "); string label1 = saferead(readerc).equals("login") ? "1" : "2"; switch(currentc.send_choice1labeltos(label1).getenum()){ case choice1.login: system.out.print("send s: "); //when here enter username@gmail.com password string payload3 = saferead(readerc); currentc.send_loginstringtos(payload3); string response = currentc.receive_choice2labelfroms(); system.out.println("server: " + response); string payload4 = currentc.receive_okstringfroms(); system.out.println("received s: " + payload4); system.out.print("choose label among [inbox, quit]: "); string label2 = saferead(readerc).equals("inbox") ? "1" : "2"; switch(currentc.send_choice3labeltos(label2).getenum()){ case choice3.inbox: system.out.print("send s: "); string payload5 = saferead(readerc); currentc.send_inboxstringtos(payload5); break; case choice3.quit: system.out.print("send s: "); string payload6 = saferead(readerc); currentc.send_quitstringtos(payload6); break; } break; case choice1.quit: system.out.print("send s: "); string payload8 = saferead(readerc); currentc.send_quitstringtos(payload8); break; } } } public class crole { private bufferedreader socketsin = null; private printwriter socketsout = null; private socket client; public crole(){ sslsocketfactory sslsocketfactory = (sslsocketfactory)sslsocketfactory.getdefault(); try { client = (sslsocket) sslsocketfactory.createsocket("imap.gmail.com", 993); system.out.println("connect host"); } catch(ioexception e) { system.out.println("unable listen on ports"); system.exit(+1); } try { socketsin = new bufferedreader(new inputstreamreader(client.getinputstream())); socketsout = new printwriter(client.getoutputstream(), true); } catch(ioexception e) { system.out.println("read failed"); system.exit(+1); } } public void send_connectstringtos(string payload) { this.socketsout.println(payload); } public string receive_acceptedstringfroms() { string line = ""; try { line = this.socketsin.readline(); } catch(ioexception e) { system.out.println("input/outpur error."); system.exit(+1); } return line; } public choice1 send_choice1labeltos(string payload) { this.socketsout.println(payload); int intlabelchoice1 = integer.parseint(payload); //int intlabelchoice1 = 1; switch(intlabelchoice1){ case 1: return new choice1(choice1.login); case 2: default: return new choice1(choice1.quit); } } public void send_loginstringtos(string payload) { this.socketsout.println(payload); } public string receive_choice2labelfroms() { string line = ""; try { line = this.socketsin.readline(); } catch(ioexception e) { system.out.println("input/outpur error."); system.exit(+1); } return line; } public string receive_okstringfroms() { string line = ""; try { line = this.socketsin.readline(); } catch(ioexception e) { system.out.println("input/outpur error."); system.exit(+1); } return line; } public choice3 send_choice3labeltos(string payload) { this.socketsout.println(payload); int intlabelchoice3 = integer.parseint(payload); switch(intlabelchoice3){ case 1: return new choice3(choice3.inbox); case 2: default: return new choice3(choice3.quit); } } public void send_inboxstringtos(string payload) { this.socketsout.println(payload); } public void send_quitstringtos(string payload) { this.socketsout.println(payload); } public string receive_quitstringfroms() { string line = ""; try { line = this.socketsin.readline(); } catch(ioexception e) { system.out.println("input/outpur error."); system.exit(+1); } return line; } }
so case of string sending gmail? have sent following strings: username@gmail.com password; a001 login username@gmail.com password; a001 username@gmail.com password; username@gmail.com, password. , have had no luck these.
or oauth?
i not using javamail , not wish use it.
thank
problem semi fixed. rewrote simple program not using typestating method of programming , work not sending incorrect tag there in typestated code causing problems.
Comments
Post a Comment