Hi,

I am trying to connect a gateway using code copied from this testcase:

http://www.jivesoftware.org/fisheye/viewrep/~raw,r=2739/svn-org/ transports/trunk/test/org/jivesoftware/messenger/gateway/test/ JEP_100.java

I am connected to im.apinc.org and tried using aim and msn gateways. The login/pass for both are working fine using PSI client.

But I get an error at the last line of the following code so I guess that the registration is failing. Am I doing things in the wrong order or is it a server problem ?

Thanks,
Cedric HYPPOLITE



... DiscoverInfo info set after service discovery  ...

if (! info.containsFeature("jabber:iq:register")) {
                        throw new Exception("Gateway does not support 
registering");
                }
                
PacketCollector collector = conn.createPacketCollector(new PacketFilter() {
                        public boolean accept(Packet arg0) {
                                return arg0 instanceof Registration;
                        }});
                
// 4.1.1.3 Jabber User sends IQ get qualified by the In-Band Registration
                Registration conv1 = new Registration();
                conv1.setType(IQ.Type.GET);
                conv1.setTo(gatewayName);
                conn.sendPacket(conv1);
                
// 4.1.1.4 Gateway returns IQ result to Jabber User, specifying information that
                //  is required in order to register
                Registration response = (Registration)collector.nextResult();
                
// 4.1.1.5 Jabber User sends IQ set qualified by the 'jabber:iq:register' namespace
                //  to Gateway
                Registration regRegister = new Registration();
                regRegister.setType(IQ.Type.SET);
                regRegister.setTo(response.getFrom());

                DataForm df = new DataForm("submit");
                FormField pwdField = new FormField("password");
                pwdField.addValue(password);
                FormField usrField = new FormField("username");
                usrField.addValue(username);
                
                df.addField(pwdField);
                df.addField(usrField);
                regRegister.addExtension(df);
                
PacketCollector subscription = conn.createPacketCollector(new PacketTypeFilter(Presence.class));
                
                conn.sendPacket(regRegister);
                
// 4.1.1.6 Gateway verifies that registration information provided by Jabber User is valid
                response = (Registration) collector.nextResult();
                XMPPError error = response.getError();
----->>>       if(error != null) { /// Here an error is found
throw new Exception("Cannot register to the gateway : " + error.toString() + " user '" + username + "' password '" + password + "'");
                }



Reply via email to