I have a problem with an applet I wrote few months ago. The applet worked fine in collaboration with Jive messenger server, but now refuses to log in to the Wildfire.
I’'m making the connection using the traditional way
XMPPConnection conn=new XMPPConnection(“server”, “port”);
but when I try to login, I’'m getting the ClassCastException thrown at SASLAuthentication.java, method authenticate, line 175 (Smack 2.0).
I tried Smack 2.1, and I get the same exception from the same method, but only this time the exception was in fact thrown out of bindResourceAndEstablishSession method, at line 300 of SASLAuthentication.java file.
Then I checked out the newest Smack build from svn repository to see what the problem might be, and I found out that in bindResourceAndEstablishSession method, a Bind object is expected from the PacketCollector, but instead of that object, method is getting an IQ object! And that would be a particular IQ object created in the PacketReader, in method parseIQ, in the part where the method is determining what to do if an IQ packet was not understood (I think it’‘s either line 610 or line 625 of PacketReader.java, but I’'m betting on the second one).
I really didn’‘t want to go any further before consulting with the forum. Does anyone know what might be causing the problem? I guess it’‘s the Wildfire responding in a way that Smack doesn’'t understand?
Also, I found in nightly build that the System.getProperty(“java.home”) is used in the ConnectionConfiguration.java constructor, and I want to inform the developers that that particular property is not available in applets. I guess you’'ll want to change that so that newest Smack code could be used in applets as well