0

I'm using docker for Windows 10. I've tried to connect to my localhost but it gives an error. I have used command > docker start cassandra-ce ... which is successful but when I run the 'sbt run' command and entered my localhost:9000 in browser it gives error:

Uncaught error from thread [application-akka.actor.default-dispatcher-4]: null, s
hutting down JVM since 'akka.jvm-exit-on-fatal-error' is enabled for ActorSystem[
application]
java.lang.ExceptionInInitializerError
        at com.consultengine.services.InviteService.getAllInviteReceived(InviteSe
rvice.scala:54)
        at com.consultengine.controllers.v1.InviteController.$anonfun$getAllInvit
eReceived$2(InviteController.scala:130)
        at scala.concurrent.Future$.$anonfun$apply$1(Future.scala:655)
        at scala.util.Success.$anonfun$map$1(Try.scala:251)
        at scala.util.Success.map(Try.scala:209)
        at scala.concurrent.Future.$anonfun$map$1(Future.scala:289)
        at scala.concurrent.impl.Promise.liftedTree1$1(Promise.scala:29)
        at scala.concurrent.impl.Promise.$anonfun$transform$1(Promise.scala:29)
        at scala.concurrent.impl.CallbackRunnable.run(Promise.scala:60)
        at akka.dispatch.BatchingExecutor$AbstractBatch.processBatch(BatchingExec
utor.scala:55)
        at akka.dispatch.BatchingExecutor$BlockableBatch.$anonfun$run$1(BatchingE
xecutor.scala:91)
        at scala.runtime.java8.JFunction0$mcV$sp.apply(JFunction0$mcV$sp.java:12)

        at scala.concurrent.BlockContext$.withBlockContext(BlockContext.scala:81)

        at akka.dispatch.BatchingExecutor$BlockableBatch.run(BatchingExecutor.sca
la:91)
        at akka.dispatch.TaskInvocation.run(AbstractDispatcher.scala:40)
        at akka.dispatch.ForkJoinExecutorConfigurator$AkkaForkJoinTask.exec(ForkJ
oinExecutorConfigurator.scala:43)
        at akka.dispatch.forkjoin.ForkJoinTask.doExec(ForkJoinTask.java:260)
        at akka.dispatch.forkjoin.ForkJoinPool$WorkQueue.runTask(ForkJoinPool.jav
a:1339)
        at akka.dispatch.forkjoin.ForkJoinPool.runWorker(ForkJoinPool.java:1979)
        at akka.dispatch.forkjoin.ForkJoinWorkerThread.run(ForkJoinWorkerThread.j
ava:107)
Caused by: com.impetus.kundera.configure.schema.SchemaGenerationException: Error
while opening socket, Caused by: .
        at com.impetus.client.cassandra.schemamanager.CassandraSchemaManager.init
iateClient(CassandraSchemaManager.java:718)
        at com.impetus.kundera.configure.schema.api.AbstractSchemaManager.exportS
chema(AbstractSchemaManager.java:112)
        at com.impetus.client.cassandra.schemamanager.CassandraSchemaManager.expo
rtSchema(CassandraSchemaManager.java:166)
        at com.impetus.kundera.configure.SchemaConfiguration.configure(SchemaConf
iguration.java:191)
        at com.impetus.kundera.configure.ClientMetadataBuilder.buildClientFactory
Metadata(ClientMetadataBuilder.java:48)
        at com.impetus.kundera.persistence.EntityManagerFactoryImpl.configureClie
ntFactories(EntityManagerFactoryImpl.java:408)
        at com.impetus.kundera.persistence.EntityManagerFactoryImpl.configure(Ent
ityManagerFactoryImpl.java:161)
        at com.impetus.kundera.persistence.EntityManagerFactoryImpl.<init>(Entity
ManagerFactoryImpl.java:135)
        at com.impetus.kundera.KunderaPersistence.createEntityManagerFactory(Kund
eraPersistence.java:85)
        at javax.persistence.Persistence.createEntityManagerFactory(Persistence.j
ava:79)
        at com.consultengine.daos.InviteDAOImpl$.<init>(InviteDAO.scala:29)
        at com.consultengine.daos.InviteDAOImpl$.<clinit>(InviteDAO.scala)
        ... 20 more
Caused by: org.apache.thrift.transport.TTransportException: java.net.ConnectExcep
tion: Connection refused: connect
        at org.apache.thrift.transport.TSocket.open(TSocket.java:187)
        at com.impetus.client.cassandra.schemamanager.CassandraSchemaManager.init
iateClient(CassandraSchemaManager.java:695)
        ... 31 more
Caused by: java.net.ConnectException: Connection refused: connect
        at java.net.DualStackPlainSocketImpl.connect0(Native Method)
        at java.net.DualStackPlainSocketImpl.socketConnect(DualStackPlainSocketIm
pl.java:79)
        at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.jav
a:350)
        at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketI
mpl.java:206)
        at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:
188)
        at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:172)
        at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392)
        at java.net.Socket.connect(Socket.java:589)
        at org.apache.thrift.transport.TSocket.open(TSocket.java:182)
        ... 32 more
[error] a.a.ActorSystemImpl - Uncaught error from thread [application-akka.actor.
default-dispatcher-4]: null, shutting down JVM since 'akka.jvm-exit-on-fatal-erro
r' is enabled for ActorSystem[application]
java.lang.ExceptionInInitializerError: null
        at com.consultengine.services.InviteService.getAllInviteReceived(InviteSe
rvice.scala:54)
        at com.consultengine.controllers.v1.InviteController.$anonfun$getAllInvit
eReceived$2(InviteController.scala:130)
        at scala.concurrent.Future$.$anonfun$apply$1(Future.scala:655)
        at scala.util.Success.$anonfun$map$1(Try.scala:251)
        at scala.util.Success.map(Try.scala:209)
        at scala.concurrent.Future.$anonfun$map$1(Future.scala:289)
        at scala.concurrent.impl.Promise.liftedTree1$1(Promise.scala:29)
        at scala.concurrent.impl.Promise.$anonfun$transform$1(Promise.scala:29)
        at scala.concurrent.impl.CallbackRunnable.run(Promise.scala:60)
        at akka.dispatch.BatchingExecutor$AbstractBatch.processBatch(BatchingExec
utor.scala:55)
Caused by: com.impetus.kundera.configure.schema.SchemaGenerationException: Error
while opening socket, Caused by: .
        at com.impetus.client.cassandra.schemamanager.CassandraSchemaManager.init
iateClient(CassandraSchemaManager.java:718)
        at com.impetus.kundera.configure.schema.api.AbstractSchemaManager.exportS
chema(AbstractSchemaManager.java:112)
        at com.impetus.client.cassandra.schemamanager.CassandraSchemaManager.expo
rtSchema(CassandraSchemaManager.java:166)
        at com.impetus.kundera.configure.SchemaConfiguration.configure(SchemaConf
iguration.java:191)
        at com.impetus.kundera.configure.ClientMetadataBuilder.buildClientFactory
Metadata(ClientMetadataBuilder.java:48)
        at com.impetus.kundera.persistence.EntityManagerFactoryImpl.configureClie
ntFactories(EntityManagerFactoryImpl.java:408)
        at com.impetus.kundera.persistence.EntityManagerFactoryImpl.configure(Ent
ityManagerFactoryImpl.java:161)
        at com.impetus.kundera.persistence.EntityManagerFactoryImpl.<init>(Entity
ManagerFactoryImpl.java:135)
        at com.impetus.kundera.KunderaPersistence.createEntityManagerFactory(Kund
eraPersistence.java:85)
        at javax.persistence.Persistence.createEntityManagerFactory(Persistence.j
ava:79)
Caused by: org.apache.thrift.transport.TTransportException: java.net.ConnectExcep
tion: Connection refused: connect
        at org.apache.thrift.transport.TSocket.open(TSocket.java:187)
        at com.impetus.client.cassandra.schemamanager.CassandraSchemaManager.init
iateClient(CassandraSchemaManager.java:695)
        at com.impetus.kundera.configure.schema.api.AbstractSchemaManager.exportS
chema(AbstractSchemaManager.java:112)
        at com.impetus.client.cassandra.schemamanager.CassandraSchemaManager.expo
rtSchema(CassandraSchemaManager.java:166)
        at com.impetus.kundera.configure.SchemaConfiguration.configure(SchemaConf
iguration.java:191)
        at com.impetus.kundera.configure.ClientMetadataBuilder.buildClientFactory
Metadata(ClientMetadataBuilder.java:48)
        at com.impetus.kundera.persistence.EntityManagerFactoryImpl.configureClie
ntFactories(EntityManagerFactoryImpl.java:408)
        at com.impetus.kundera.persistence.EntityManagerFactoryImpl.configure(Ent
ityManagerFactoryImpl.java:161)
        at com.impetus.kundera.persistence.EntityManagerFactoryImpl.<init>(Entity
ManagerFactoryImpl.java:135)
        at com.impetus.kundera.KunderaPersistence.createEntityManagerFactory(Kund
eraPersistence.java:85)
Caused by: java.net.ConnectException: Connection refused: connect
        at java.net.DualStackPlainSocketImpl.connect0(Native Method)
        at java.net.DualStackPlainSocketImpl.socketConnect(DualStackPlainSocketIm
pl.java:79)
        at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.jav
a:350)
        at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketI
mpl.java:206)
        at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:
188)
        at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:172)
        at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392)
        at java.net.Socket.connect(Socket.java:589)
        at org.apache.thrift.transport.TSocket.open(TSocket.java:182)
        at com.impetus.client.cassandra.schemamanager.CassandraSchemaManager.init
iateClient(CassandraSchemaManager.java:695)

I've also change my application.conf

application.baseUrl="http://localhost:9000"
ce.webserver.url="http://localhost:8100"
ce.cassandra.host="localhost"
version=33

and my persistance.xml file to localhost and port 9160:

<properties>
            <property name="kundera.nodes" value="localhost" />
            <property name="kundera.port" value="9160" />
            <property name="kundera.keyspace" value="cedb" />
            <property name="kundera.dialect" value="cassandra" />
            <property name="kundera.ddl.auto.prepare" value="update" />
            <property name="kundera.client.lookup.class" value="com.impetus.client.cassandra.thrift.ThriftClientFactory" />
        </properties>
Jeffrey Chung
  • 19,319
  • 8
  • 34
  • 54

1 Answers1

1

This is because you haven't done the port mapping when starting Cassandra in docker. The your Cassandra is only visible in that particular docker network. Use following command to start Cassandra with port mapping.

docker run -p 9042:9042 cassandra

Then you will see 0.0.0.0:9042->9042/tcp in docker ps

For the second error if you don't want auto manage the schema, change <property name="kundera.port" value="9160" /> port to 9042 and remove <property name="kundera.ddl.auto.prepare" value="update" />

If you want to auto manage the schema, then change <property name="kundera.port" value="9160" /> port to 9042 and use following command to start Cassandra in docker starting Cassandra thrift server and port mapping the thrift port.

docker run -p 9042:9042 -p 9160:9160 -e CASSANDRA_START_RPC=true cassandra
Hansika Weerasena
  • 3,046
  • 1
  • 13
  • 22
  • Previously error is with docker. not doing the port mapping. Now the issue is with Kundera configurations. Simillar error can be found here (https://stackoverflow.com/questions/42374743/kundera-with-datastax-ds-driver-connection-port) Seems like you want to either remove auto manage of schema or open the thrift port in cassandra server. Do you need to auto manage the schema? – Hansika Weerasena Dec 27 '18 at 09:27
  • Thanks, Its Working! – Shrikant Lahane Dec 27 '18 at 12:24