I'm trying to update MSN User's profile picture but i'm getting following exception.
My sample code is here :
Can you help me ? Is it possible to update user's profile picture in JML ?
publicstaticvoiduploadProfilePicture(MsnMessengermessenger){FilesourceFile=newFile("C:/test.png"); if (!sourceFile.isFile()) { System.err.println("SourceFileDoesnotexist");return;}byte[]avatarBytes;try{avatarBytes=getBytesFromFile(sourceFile);//xmppavatarisinbase64soweneedtodecodeitMsnObjectpic=MsnObject.getInstance(messenger.getOwner().getEmail().toString(),Base64.decode(avatarBytes));pic.setSize(avatarBytes.length);pic.setType(3);messenger.getOwner().setDisplayPicture(pic);//NextlineisnotnecessarybecausejmlcallsthatfunctioninsidesetDisplayPicture...//msnclient.getOwner().setInitDisplayPicture(pic);}catch(IOExceptione1){//TODOAuto-generatedcatchblocke1.printStackTrace();}}Jan17,20121:12:00PMnet.sf.jml.net.SessioncloseSEVERE:errorshuttingdowninputonsocketjava.net.SocketException:Socketisclosedatjava.net.Socket.shutdownInput(Socket.java:1339)atnet.sf.jml.net.Session.close(Session.java:378)atnet.sf.jml.protocol.MsnSession.close(MsnSession.java:176)atnet.sf.jml.impl.BasicSwitchboard.close(BasicSwitchboard.java:74)atnet.sf.jml.message.p2p.DisplayPictureRetrieveWorker.finishProcess(DisplayPictureRetrieveWorker.java:133)atnet.sf.jml.message.p2p.DisplayPictureRetrieveWorker.notifyFinalization(DisplayPictureRetrieveWorker.java:151)atnet.sf.jml.message.p2p.DisplayPictureRetrieveWorker.switchboardClosed(DisplayPictureRetrieveWorker.java:468)atnet.sf.jml.impl.AbstractMessenger.fireSwitchboardClosed(AbstractMessenger.java:726)atnet.sf.jml.impl.BasicSwitchboard$SBSessionListener.sessionClosed(BasicSwitchboard.java:191)atnet.sf.jml.net.Session.fireSessionClosed(Session.java:323)atnet.sf.jml.net.Session.close(Session.java:409)atnet.sf.jml.net.Session.close(Session.java:365)atnet.sf.jml.impl.BasicSwitchboard$SBSessionListener.sessionTimeout(BasicSwitchboard.java:184)atnet.sf.jml.net.Session.fireSessionTimeout(Session.java:356)atnet.sf.jml.net.Session.access$1600(Session.java:30)atnet.sf.jml.net.Session$TimeoutFire.run(Session.java:543)atjava.util.TimerThread.mainLoop(Timer.java:512)atjava.util.TimerThread.run(Timer.java:462)Jan17,20121:12:00PMnet.sf.jml.net.SessioncloseSEVERE:errorflushingremainingoutputonsocketjava.net.SocketException:Socketisclosedatjava.net.Socket.getOutputStream(Socket.java:802)atnet.sf.jml.net.Session.close(Session.java:385)atnet.sf.jml.protocol.MsnSession.close(MsnSession.java:176)atnet.sf.jml.impl.BasicSwitchboard.close(BasicSwitchboard.java:74)atnet.sf.jml.message.p2p.DisplayPictureRetrieveWorker.finishProcess(DisplayPictureRetrieveWorker.java:133)atnet.sf.jml.message.p2p.DisplayPictureRetrieveWorker.notifyFinalization(DisplayPictureRetrieveWorker.java:151)atnet.sf.jml.message.p2p.DisplayPictureRetrieveWorker.switchboardClosed(DisplayPictureRetrieveWorker.java:468)atnet.sf.jml.impl.AbstractMessenger.fireSwitchboardClosed(AbstractMessenger.java:726)atnet.sf.jml.impl.BasicSwitchboard$SBSessionListener.sessionClosed(BasicSwitchboard.java:191)atnet.sf.jml.net.Session.fireSessionClosed(Session.java:323)atnet.sf.jml.net.Session.close(Session.java:409)atnet.sf.jml.net.Session.close(Session.java:365)atnet.sf.jml.impl.BasicSwitchboard$SBSessionListener.sessionTimeout(BasicSwitchboard.java:184)atnet.sf.jml.net.Session.fireSessionTimeout(Session.java:356)atnet.sf.jml.net.Session.access$1600(Session.java:30)atnet.sf.jml.net.Session$TimeoutFire.run(Session.java:543)atjava.util.TimerThread.mainLoop(Timer.java:512)atjava.util.TimerThread.run(Timer.java:462)Jan17,20121:12:00PMnet.sf.jml.net.SessionfireSessionClosedSEVERE:errorfiringeventsforclosejava.lang.ArrayIndexOutOfBoundsException:-119atnet.sf.jml.util.Base64$Base64Encoder.decode(Base64.java:321)atnet.sf.jml.util.Base64.decode(Base64.java:115)atnet.sf.jml.example.HelloMessenger.uploadProfilePicture(HelloMessenger.java:284)atnet.sf.jml.example.HelloMessenger$1$1.notifyMsnObjectRetrieval(HelloMessenger.java:152)atnet.sf.jml.message.p2p.DisplayPictureRetrieveWorker.notifyFinalization(DisplayPictureRetrieveWorker.java:177)atnet.sf.jml.message.p2p.DisplayPictureRetrieveWorker.switchboardClosed(DisplayPictureRetrieveWorker.java:468)atnet.sf.jml.impl.AbstractMessenger.fireSwitchboardClosed(AbstractMessenger.java:726)atnet.sf.jml.impl.BasicSwitchboard$SBSessionListener.sessionClosed(BasicSwitchboard.java:191)atnet.sf.jml.net.Session.fireSessionClosed(Session.java:323)atnet.sf.jml.net.Session.close(Session.java:409)atnet.sf.jml.net.Session.close(Session.java:365)atnet.sf.jml.impl.BasicSwitchboard$SBSessionListener.sessionTimeout(BasicSwitchboard.java:184)atnet.sf.jml.net.Session.fireSessionTimeout(Session.java:356)atnet.sf.jml.net.Session.access$1600(Session.java:30)atnet.sf.jml.net.Session$TimeoutFire.run(Session.java:543)atjava.util.TimerThread.mainLoop(Timer.java:512)atjava.util.TimerThread.run(Timer.java:462)Jan17,20121:12:13PMnet.sf.jml.protocol.MsnSession$1messageSentINFO:alper.ozdamar@hotmail.comNS>>>PNGJan17,20121:12:13PMnet.sf.jml.protocol.MsnSession$1messageReceivedINFO:alper.ozdamar@hotmail.comNS<<<QNG49
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Hello,
I'm trying to update MSN User's profile picture but i'm getting following exception.
My sample code is here :
Can you help me ? Is it possible to update user's profile picture in JML ?