Molecule not communicating with platform Logs contain error messages: Error setting up signature missing private key

Document created by mike_aronson Employee on Feb 27, 2014
Version 1Show Document
  • View in full screen mode
Molecule is not communicating with Boomi platform. Repeated errors appear in the container logs with large Attempt: #'s and include messages like: 

java.lang.IllegalStateException: Error setting up signature. 


java.lang.IllegalStateException: missing private key

For example:

Mon DD, YYYY HH:MM:SS AM PST SEVERE [com.boomi.message.SendMessageTask sendMessages] [SendMultiSolrMessageTask[event;Account[account-id] Request: Attempt: 100]: Hit retry loop. Executing backoff strategy. 
java.lang.IllegalStateException: Error setting up signature. 
at com.boomi.container.config.ContainerCryptoUtil.sign( 
at com.boomi.container.config.ContainerCryptoUtil.access$700( 
at com.boomi.container.config.ContainerCryptoUtil$CryptoContext.sign( 
at com.boomi.container.config.RequestUtil$1.encode( 
at com.boomi.restlet.auth.RestEncodingAuthorizationProvider.formatAuthorizationCredentials( 
at com.boomi.restlet.auth.RestEncodingAuthorizationProvider.getChallengeResponse( 
at com.boomi.restlet.client.RequestUtil.formatRequest( 
at com.boomi.restlet.client.RequestUtil$3.createRequest( 
at com.boomi.restlet.client.ClientUtil.handle( 
at com.boomi.message.SendMessageTask.sendMessageBatch( 
at com.boomi.message.SendMessageTask.sendMessages( 
at java.util.concurrent.Executors$ Source) 
at java.util.concurrent.FutureTask$Sync.innerRunAndReset(Unknown Source) 
at java.util.concurrent.FutureTask.runAndReset(Unknown Source) 
at com.boomi.util.ExecutorUtil$ 
at com.boomi.util.ExecutorUtil$ 
at java.util.TimerThread.mainLoop(Unknown Source) 
at Source) 
Caused by: java.lang.IllegalStateException: missing private key 
at com.boomi.container.config.ContainerCryptoUtil$CryptoContext.getPrivateKey( 
at com.boomi.container.config.ContainerCryptoUtil$CryptoContext.access$200( 
at com.boomi.container.config.ContainerCryptoUtil.sign( 
... 18 more
This situation can occur if the molecule nodes are unable to access needed files on the fileshare to securely communicate with

In the molecule installation directory, go to the conf/ folder and check the file. 

If the file contains a local machine path, it may need to be changed to a UNC path so that the nodes can access the fileshare across your network.

For example, if the file contains the first two lines like this:

com.boomi.container.trustStorePassword=C\:\\Program Files\\Boomi AtomSphere\\Atom - MY_ATOM\\conf\\truststore
com.boomi.container.keyStoreLocation=C\:\\Program Files\\Boomi AtomSphere\\Atom - MY_ATOM\\conf\\keystore

change them to something like this:

com.boomi.container.trustStorePassword=\\\\filesharehostpath\\Boomi AtomSphere\\Atom - MY_ATOM\\conf\\truststore
com.boomi.container.keyStoreLocation=\\\\filesharehostpath\\Boomi AtomSphere\\Atom - MY_ATOM\\conf\\keystore

where filesharehostpath is a UNC mounted path that is accessible from the nodes.

(the extra backslashes in the paths above are needed because the syntax for the backslash character needs to be escaped with a backslash in order for Java to interpret the path syntax correctly..  so 

Java interpets \\\\filesharehostpath\\Boomi AtomSphere\\Atom - MY_ATOM\\conf\\keystore as the real UNC path: \\filesharehostpath\Boomi AtomSphere\Atom - MY_ATOM\conf\keystore )

Be sure to Restart the atom nodes after making this change and verify that the molecule nodes are clustering per the guidance at these links:

Also verify that the molecule is communicating with the platform by viewing the logs and by executing test processes on the molecule from Manage -> Process Reporting and verify the executions show up in Process Reporting.
2 people found this helpful