redis - ERR only (P)SUBSCRIBE / (P)UNSUBSCRIBE / PING / QUIT allowed in this context -


i using jdish.publish in web app , jedis.subscribe in desktop app. both separate app.

i have pubsub class

public class redisnewpostlistener extends jedispubsub {      private final jedis jedis;     private final appinstances appinstances;      public redisnewpostlistener(appinstances instances, jedis jedis) {         this.jedis = jedis;         appinstances = instances;     }      @override     public void onmessage(string channel, string message) {         string[] pos = message.split("##");         double lat = double.parsedouble(pos[0]);         double lon = double.parsedouble(pos[1]);          list<georadiusresponse> members = jedis.georadius("usersbylocation", lon, lat, geo_search_range, geounit.km); 

i calling like

redisnewpostlistener postlistener = new redisnewpostlistener(instances, jedis); jedis.subscribe(postlistener, "newpostarrived"); 

i getting error:

redis.clients.jedis.exceptions.jedisdataexception: err (p)subscribe / (p)unsubscribe / ping / quit allowed in context     @ redis.clients.jedis.protocol.processerror(protocol.java:117)     @ redis.clients.jedis.protocol.process(protocol.java:151)     @ redis.clients.jedis.protocol.read(protocol.java:205)     @ redis.clients.jedis.connection.readprotocolwithcheckingbroken(connection.java:297)     @ redis.clients.jedis.connection.getrawobjectmultibulkreply(connection.java:242)     @ redis.clients.jedis.connection.getobjectmultibulkreply(connection.java:248)     @ redis.clients.jedis.jedis.georadius(jedis.java:3452)     @ com.app.redis.redisnewpostlistener.onmessage(redisnewpostlistener.java:39)     @ redis.clients.jedis.jedispubsub.process(jedispubsub.java:129)     @ redis.clients.jedis.jedispubsub.proceed(jedispubsub.java:102)     @ redis.clients.jedis.jedis.subscribe(jedis.java:2628) 


Comments