tranquility 2.10 : NoSuchMethodError for Module$SetupContext.setClassIntrospector

Hi,

I am using tranquility 2.10 version 0.3.1. Initially scala-util_2.10 version 1.8.43 and jackson-module-scala_2.10 version 2.4.4 was present in classpath while jackson-module-scala_2.10 version 2.2.2 was omitted. At this point i was receiving

java.lang.NoSuchMethodError: com.fasterxml.jackson.module.scala.deser.BigDecimalDeserializer$.handledType()Ljava/lang/Class;

at com.fasterxml.jackson.module.scala.deser.NumberDeserializers$.(ScalaNumberDeserializersModule.scala:49)

at com.fasterxml.jackson.module.scala.deser.NumberDeserializers$.(ScalaNumberDeserializersModule.scala)

at com.fasterxml.jackson.module.scala.deser.ScalaNumberDeserializersModule$class.init(ScalaNumberDeserializersModule.scala:61)

at com.fasterxml.jackson.module.scala.DefaultScalaModule.(DefaultScalaModule.scala:19)

at com.fasterxml.jackson.module.scala.DefaultScalaModule$.(DefaultScalaModule.scala:35)

at com.fasterxml.jackson.module.scala.DefaultScalaModule$.(DefaultScalaModule.scala)

at com.metamx.common.scala.Jackson$$anonfun$newObjectMapper$1.apply(Jackson.scala:70)

at com.metamx.common.scala.Jackson$$anonfun$newObjectMapper$1.apply(Jackson.scala:68)

at com.metamx.common.scala.Predef$EffectOps.withEffect(Predef.scala:44)

at com.metamx.common.scala.Jackson$class.newObjectMapper(Jackson.scala:67)

at com.metamx.common.scala.Jackson$.newObjectMapper(Jackson.scala:10)

at com.metamx.common.scala.Jackson$class.newObjectMapper(Jackson.scala:64)

at com.metamx.common.scala.Jackson$.newObjectMapper(Jackson.scala:10)

at com.metamx.common.scala.Jackson$class.init(Jackson.scala:14)

at com.metamx.common.scala.Jackson$.(Jackson.scala:10)

at com.metamx.common.scala.Jackson$.(Jackson.scala)

at com.metamx.tranquility.druid.DruidBeams$BuilderConfig$$anon$8.(DruidBeams.scala:233)

at com.metamx.tranquility.druid.DruidBeams$BuilderConfig.buildAll(DruidBeams.scala:232)

at com.metamx.tranquility.druid.DruidBeams$Builder.buildBeam(DruidBeams.scala:153)

at com.metamx.tranquility.druid.DruidBeams$Builder.buildService(DruidBeams.scala:202)

at com.metamx.tranquility.druid.DruidBeams$Builder.buildJavaService(DruidBeams.scala:206)

at stormSample.MyBeamFactory.makeBeam(MyBeamFactory.java:117)

at com.metamx.tranquility.storm.BeamBolt.prepare(BeamBolt.scala:55)

at backtype.storm.daemon.executor$fn__3441$fn__3453.invoke(executor.clj:692)

at backtype.storm.util$async_loop$fn__464.invoke(util.clj:461)

at clojure.lang.AFn.run(AFn.java:24)

at java.lang.Thread.run(Thread.java:745)

Following this i added scala-util_2.10 version 1.8.43 and jackson-module-scala_2.10 version 2.2.2 to my pom explicitly. Now though the earlier error has disappeared now a new error has come

java.lang.NoSuchMethodError: com.fasterxml.jackson.databind.Module$SetupContext.setClassIntrospector(Lcom/fasterxml/jackson/databind/introspect/ClassIntrospector;)V

at com.fasterxml.jackson.module.scala.introspect.ScalaClassIntrospectorModule$$anonfun$1.apply(ScalaClassIntrospector.scala:32)

at com.fasterxml.jackson.module.scala.introspect.ScalaClassIntrospectorModule$$anonfun$1.apply(ScalaClassIntrospector.scala:32)

at com.fasterxml.jackson.module.scala.JacksonModule$$anonfun$setupModule$1.apply(JacksonModule.scala:47)

at com.fasterxml.jackson.module.scala.JacksonModule$$anonfun$setupModule$1.apply(JacksonModule.scala:47)

at scala.collection.immutable.List.foreach(List.scala:318)

at com.fasterxml.jackson.module.scala.JacksonModule$class.setupModule(JacksonModule.scala:47)

at com.fasterxml.jackson.module.scala.DefaultScalaModule.setupModule(DefaultScalaModule.scala:18)

at com.fasterxml.jackson.databind.ObjectMapper.registerModule(ObjectMapper.java:525)

at com.metamx.common.scala.Jackson$$anonfun$newObjectMapper$1.apply(Jackson.scala:70)

at com.metamx.common.scala.Jackson$$anonfun$newObjectMapper$1.apply(Jackson.scala:68)

at com.metamx.common.scala.Predef$EffectOps.withEffect(Predef.scala:44)

at com.metamx.common.scala.Jackson$class.newObjectMapper(Jackson.scala:67)

at com.metamx.common.scala.Jackson$.newObjectMapper(Jackson.scala:10)

at com.metamx.common.scala.Jackson$class.newObjectMapper(Jackson.scala:64)

at com.metamx.common.scala.Jackson$.newObjectMapper(Jackson.scala:10)

at com.metamx.common.scala.Jackson$class.init(Jackson.scala:14)

at com.metamx.common.scala.Jackson$.(Jackson.scala:10)

at com.metamx.common.scala.Jackson$.(Jackson.scala)

at com.metamx.tranquility.druid.DruidBeams$BuilderConfig$$anon$8.(DruidBeams.scala:233)

at com.metamx.tranquility.druid.DruidBeams$BuilderConfig.buildAll(DruidBeams.scala:232)

at com.metamx.tranquility.druid.DruidBeams$Builder.buildBeam(DruidBeams.scala:153)

at com.metamx.tranquility.druid.DruidBeams$Builder.buildService(DruidBeams.scala:202)

at com.metamx.tranquility.druid.DruidBeams$Builder.buildJavaService(DruidBeams.scala:206)

at stormSample.MyBeamFactory.makeBeam(MyBeamFactory.java:117)

at com.metamx.tranquility.storm.BeamBolt.prepare(BeamBolt.scala:55)

at backtype.storm.daemon.executor$fn__3441$fn__3453.invoke(executor.clj:692)

at backtype.storm.util$async_loop$fn__464.invoke(util.clj:461)

at clojure.lang.AFn.run(AFn.java:24)

at java.lang.Thread.run(Thread.java:745)

could come one please help me with this…? Thank you in advance,

Hi Balakrishnan,

You should be able to get things working by using jackson 2.4.4 across the board, for all of these dependencies,

com.fasterxml.jackson.core:jackson-core

com.fasterxml.jackson.core:jackson-annotations

com.fasterxml.jackson.core:jackson-databind

com.fasterxml.jackson.dataformat:jackson-dataformat-smile

com.fasterxml.jackson.datatype:jackson-datatype-joda

com.fasterxml.jackson.module:jackson-module-scala

If you’re using Druid 0.7.x, you also may want to try tranquility 0.4.2. I just marked this version as stable; we’ve been using it in production for a while.

You may also be able to get

Thank you. Will check that.