javax.jdo.JDOUserCallbackException: An exception was thrown from the user callback "jdoPreStore".

GitHub | nlmarco | 3 months ago
  1. 0

    If we have following situation: interface: {code:title=ConsumerService.java |borderStyle=solid} public interface ConsumerService<TPayLoad> { void consume(TPayLoad message); } {code} and also following interface implementation: {code:title=TestingQueueConsumerServiceImpl.java |borderStyle=solid} @Component public class TestingQueueConsumerServiceImpl implements ConsumerService<DemoMessage> { private Log log = LogFactory.getLog(getClass()); @Transactional @RabbitListener(queues = "${rabbitmq.queue.demo}", id = "myuniquecustomid") public void consume(@Payload TestMessage message) { Assert.notNull(message); log.info(message.toString()); } } {code} on application start we gets following exception {noformat} 2016-03-24 09:26:48.971 INFO 58632 --- [ main] o.apache.catalina.core.StandardService : Stopping service Tomcat 2016-03-24 09:26:48.982 ERROR 58632 --- [ main] o.s.boot.SpringApplication : Application startup failed java.lang.IllegalStateException: Another endpoint is already registered with id 'myuniquecustomid' at org.springframework.util.Assert.state(Assert.java:392) ~[spring-core-4.2.5.RELEASE.jar:4.2.5.RELEASE] at org.springframework.amqp.rabbit.listener.RabbitListenerEndpointRegistry.registerListenerContainer(RabbitListenerEndpointRegistry.java:146) ~[spring-rabbit-1.5.4.RELEASE.jar:na] at org.springframework.amqp.rabbit.listener.RabbitListenerEndpointRegistry.registerListenerContainer(RabbitListenerEndpointRegistry.java:122) ~[spring-rabbit-1.5.4.RELEASE.jar:na] at org.springframework.amqp.rabbit.listener.RabbitListenerEndpointRegistrar.registerAllEndpoints(RabbitListenerEndpointRegistrar.java:134) ~[spring-rabbit-1.5.4.RELEASE.jar:na] at org.springframework.amqp.rabbit.listener.RabbitListenerEndpointRegistrar.afterPropertiesSet(RabbitListenerEndpointRegistrar.java:128) ~[spring-rabbit-1.5.4.RELEASE.jar:na] at org.springframework.amqp.rabbit.annotation.RabbitListenerAnnotationBeanPostProcessor.afterSingletonsInstantiated(RabbitListenerAnnotationBeanPostProcessor.java:209) ~[spring-rabbit-1.5.4.RELEASE.jar:na] at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:792) ~[spring-beans-4.2.5.RELEASE.jar:4.2.5.RELEASE] at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:839) ~[spring-context-4.2.5.RELEASE.jar:4.2.5.RELEASE] at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:538) ~[spring-context-4.2.5.RELEASE.jar:4.2.5.RELEASE] at org.springframework.boot.context.embedded.EmbeddedWebApplicationContext.refresh(EmbeddedWebApplicationContext.java:118) ~[spring-boot-1.3.3.RELEASE.jar:1.3.3.RELEASE] at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:766) [spring-boot-1.3.3.RELEASE.jar:1.3.3.RELEASE] at org.springframework.boot.SpringApplication.createAndRefreshContext(SpringApplication.java:361) [spring-boot-1.3.3.RELEASE.jar:1.3.3.RELEASE] at org.springframework.boot.SpringApplication.run(SpringApplication.java:307) [spring-boot-1.3.3.RELEASE.jar:1.3.3.RELEASE] at org.springframework.boot.SpringApplication.run(SpringApplication.java:1191) [spring-boot-1.3.3.RELEASE.jar:1.3.3.RELEASE] at org.springframework.boot.SpringApplication.run(SpringApplication.java:1180) [spring-boot-1.3.3.RELEASE.jar:1.3.3.RELEASE] {noformat} This is happening as @RabbitListener annotation creates two listener instances, one for interface method and one for implementing method. After implementation of `ConsumerService<DemoMessage>` is removed then everything is working as expected.

    Spring JIRA | 8 months ago | Josip Medic
    java.lang.IllegalStateException: Another endpoint is already registered with id 'myuniquecustomid'
  2. 0

    If we have following situation: interface: {code:title=ConsumerService.java |borderStyle=solid} public interface ConsumerService<TPayLoad> { void consume(TPayLoad message); } {code} and also following interface implementation: {code:title=TestingQueueConsumerServiceImpl.java |borderStyle=solid} @Component public class TestingQueueConsumerServiceImpl implements ConsumerService<DemoMessage> { private Log log = LogFactory.getLog(getClass()); @Transactional @RabbitListener(queues = "${rabbitmq.queue.demo}", id = "myuniquecustomid") public void consume(@Payload TestMessage message) { Assert.notNull(message); log.info(message.toString()); } } {code} on application start we gets following exception {noformat} 2016-03-24 09:26:48.971 INFO 58632 --- [ main] o.apache.catalina.core.StandardService : Stopping service Tomcat 2016-03-24 09:26:48.982 ERROR 58632 --- [ main] o.s.boot.SpringApplication : Application startup failed java.lang.IllegalStateException: Another endpoint is already registered with id 'myuniquecustomid' at org.springframework.util.Assert.state(Assert.java:392) ~[spring-core-4.2.5.RELEASE.jar:4.2.5.RELEASE] at org.springframework.amqp.rabbit.listener.RabbitListenerEndpointRegistry.registerListenerContainer(RabbitListenerEndpointRegistry.java:146) ~[spring-rabbit-1.5.4.RELEASE.jar:na] at org.springframework.amqp.rabbit.listener.RabbitListenerEndpointRegistry.registerListenerContainer(RabbitListenerEndpointRegistry.java:122) ~[spring-rabbit-1.5.4.RELEASE.jar:na] at org.springframework.amqp.rabbit.listener.RabbitListenerEndpointRegistrar.registerAllEndpoints(RabbitListenerEndpointRegistrar.java:134) ~[spring-rabbit-1.5.4.RELEASE.jar:na] at org.springframework.amqp.rabbit.listener.RabbitListenerEndpointRegistrar.afterPropertiesSet(RabbitListenerEndpointRegistrar.java:128) ~[spring-rabbit-1.5.4.RELEASE.jar:na] at org.springframework.amqp.rabbit.annotation.RabbitListenerAnnotationBeanPostProcessor.afterSingletonsInstantiated(RabbitListenerAnnotationBeanPostProcessor.java:209) ~[spring-rabbit-1.5.4.RELEASE.jar:na] at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:792) ~[spring-beans-4.2.5.RELEASE.jar:4.2.5.RELEASE] at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:839) ~[spring-context-4.2.5.RELEASE.jar:4.2.5.RELEASE] at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:538) ~[spring-context-4.2.5.RELEASE.jar:4.2.5.RELEASE] at org.springframework.boot.context.embedded.EmbeddedWebApplicationContext.refresh(EmbeddedWebApplicationContext.java:118) ~[spring-boot-1.3.3.RELEASE.jar:1.3.3.RELEASE] at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:766) [spring-boot-1.3.3.RELEASE.jar:1.3.3.RELEASE] at org.springframework.boot.SpringApplication.createAndRefreshContext(SpringApplication.java:361) [spring-boot-1.3.3.RELEASE.jar:1.3.3.RELEASE] at org.springframework.boot.SpringApplication.run(SpringApplication.java:307) [spring-boot-1.3.3.RELEASE.jar:1.3.3.RELEASE] at org.springframework.boot.SpringApplication.run(SpringApplication.java:1191) [spring-boot-1.3.3.RELEASE.jar:1.3.3.RELEASE] at org.springframework.boot.SpringApplication.run(SpringApplication.java:1180) [spring-boot-1.3.3.RELEASE.jar:1.3.3.RELEASE] {noformat} This is happening as @RabbitListener annotation creates two listener instances, one for interface method and one for implementing method. After implementation of `ConsumerService<DemoMessage>` is removed then everything is working as expected.

    Spring JIRA | 8 months ago | Josip Medic
    java.lang.IllegalStateException: Another endpoint is already registered with id 'myuniquecustomid'
  3. Speed up your debug routine!

    Automated exception search integrated into your IDE

  4. 0

    biome id conflict

    GitHub | 9 months ago | sikerow
    java.lang.IllegalStateException: There is a biome ID conflict between a biome from Dimensional Doors and another biome type. Fix your configuration!

    Not finding the right solution?
    Take a tour to get the most out of Samebug.

    Tired of useless tips?

    Automated exception search integrated into your IDE

    Root Cause Analysis

    1. java.lang.IllegalStateException

      Constraint violation: There is already another CryptoRepoFile (id=438) referencing the same RepoFile (id=242)!

      at org.subshare.local.persistence.CryptoRepoFile.assertUniqueRepoFile()
    2. org.subshare.local
      CryptoRepoFile.jdoPreStore
      1. org.subshare.local.persistence.CryptoRepoFile.assertUniqueRepoFile(CryptoRepoFile.java:283)[bin/:na]
      2. org.subshare.local.persistence.CryptoRepoFile.jdoPreStore(CryptoRepoFile.java:265)[bin/:na]
      2 frames
    3. DataNucleus JDO API plugin
      JDOCallbackHandler.preStore
      1. org.datanucleus.api.jdo.JDOCallbackHandler.preStore(JDOCallbackHandler.java:130)[datanucleus-api-jdo-4.0.3.jar:na]
      1 frame
    4. DataNucleus Core
      Query.executeWithArray
      1. org.datanucleus.state.StateManagerImpl.flush(StateManagerImpl.java:4639)[datanucleus-core-4.0.3.jar:na]
      2. org.datanucleus.flush.FlushOrdered.execute(FlushOrdered.java:107)[datanucleus-core-4.0.3.jar:na]
      3. org.datanucleus.ExecutionContextImpl.flushInternal(ExecutionContextImpl.java:3978)[datanucleus-core-4.0.3.jar:na]
      4. org.datanucleus.store.query.Query.prepareDatastore(Query.java:1632)[datanucleus-core-4.0.3.jar:na]
      5. org.datanucleus.store.query.Query.executeQuery(Query.java:1817)[datanucleus-core-4.0.3.jar:na]
      6. org.datanucleus.store.query.Query.executeWithArray(Query.java:1729)[datanucleus-core-4.0.3.jar:na]
      6 frames
    5. DataNucleus JDO API plugin
      JDOQuery.execute
      1. org.datanucleus.api.jdo.JDOQuery.execute(JDOQuery.java:268)[datanucleus-api-jdo-4.0.3.jar:na]
      1 frame
    6. co.codewizards.cloudstore
      RepoFileDao.getChildRepoFile
      1. co.codewizards.cloudstore.local.persistence.RepoFileDao.getChildRepoFile(RepoFileDao.java:70)[co.codewizards.cloudstore.local-0.9.11-SNAPSHOT.jar:na]
      1 frame
    7. org.subshare.local
      CryptreeImpl.putCryptoChangeSetDto
      1. org.subshare.local.CryptreeImpl.putDecryptedRepoFile(CryptreeImpl.java:688)[bin/:na]
      2. org.subshare.local.CryptreeImpl.putDecryptedRepoFile(CryptreeImpl.java:669)[bin/:na]
      3. org.subshare.local.CryptreeImpl.putDecryptedRepoFiles(CryptreeImpl.java:646)[bin/:na]
      4. org.subshare.local.CryptreeImpl.putCryptoChangeSetDto(CryptreeImpl.java:503)[bin/:na]
      4 frames
    8. org.subshare.rest
      CryptreeRestRepoTransportImpl.getChangeSetDto
      1. org.subshare.rest.client.transport.CryptreeRestRepoTransportImpl.syncCryptoKeysFromRemoteRepo(CryptreeRestRepoTransportImpl.java:209)[bin/:na]
      2. org.subshare.rest.client.transport.CryptreeRestRepoTransportImpl.getChangeSetDto(CryptreeRestRepoTransportImpl.java:160)[bin/:na]
      2 frames
    9. co.codewizards.cloudstore
      RepoToRepoSync.sync
      1. co.codewizards.cloudstore.core.repo.sync.RepoToRepoSync.sync(RepoToRepoSync.java:217)[co.codewizards.cloudstore.core-0.9.11-SNAPSHOT.jar:na]
      2. co.codewizards.cloudstore.core.repo.sync.RepoToRepoSync.syncDown(RepoToRepoSync.java:168)[co.codewizards.cloudstore.core-0.9.11-SNAPSHOT.jar:na]
      3. co.codewizards.cloudstore.core.repo.sync.RepoToRepoSync.sync(RepoToRepoSync.java:131)[co.codewizards.cloudstore.core-0.9.11-SNAPSHOT.jar:na]
      3 frames
    10. org.subshare.core
      MetaOnlyRepoSyncDaemonImpl.sync
      1. org.subshare.core.repo.sync.SsRepoToRepoSync.sync(SsRepoToRepoSync.java:65)[bin/:na]
      2. org.subshare.core.repo.metaonly.MetaOnlyRepoManagerImpl.sync(MetaOnlyRepoManagerImpl.java:116)[bin/:na]
      3. org.subshare.core.repo.metaonly.MetaOnlyRepoManagerImpl.sync(MetaOnlyRepoManagerImpl.java:75)[bin/:na]
      4. org.subshare.core.repo.metaonly.MetaOnlyRepoSyncDaemonImpl._sync(MetaOnlyRepoSyncDaemonImpl.java:100)[bin/:na]
      5. org.subshare.core.repo.metaonly.MetaOnlyRepoSyncDaemonImpl.sync(MetaOnlyRepoSyncDaemonImpl.java:91)[bin/:na]
      5 frames
    11. org.subshare.ls
      LocalServerInit$1.run
      1. org.subshare.ls.server.cproc.LocalServerInit$1.run(LocalServerInit.java:63)[bin/:na]
      1 frame