0
votes

While trying to learn how to use the Imap connector in Mule studio, I came across this tutorial. I downloaded it and imported it into AnyPoint studio as a project, and as it were in that tutorial, it worked great (after sending the connector to the right host/port etc.) I then did a quick edit to change the flow to something like this:

IMAP response -> Email to String transormer -> Log this string in the console

And all was well and good. I then went in to the properties of the connector configuration, and changed it so that emails would not be deleted after they're read in, and everything broke. When trying to run the Mule project, I get a long list of errors, starting with:

java.io.IOException: Invalid keystore format

And later down the list:

org.mule.module.launcher.DeploymentInitException: IOException: Invalid keystore format

Which is relentlessly frustrating because really I didn't do anything to the connector's configuration aside from allowing it to keep emails in the inbox of the email that is being used in the IMAP connector. Even if doing something like that were to throw this kind of exception, after changing the configuration back to the way it was when the tutorial was working fine, I still get the same errors and the project fails to deploy.

1

1 Answers

1
votes

I suspect that you edited the flow in visual mode instead of XML and that Studio has transformed this (which came from the download):

<imaps:connector checkFrequency="100" doc:name="IMAP" name="imapsConnector" validateConnections="true">        
</imaps:connector>

into that:

<imaps:connector checkFrequency="100" doc:name="IMAP" name="imapsConnector" validateConnections="true">        
  <imaps:tls-client path="" storePassword="" /> 
  <imaps:tls-trust-store path="" storePassword="password" />
</imaps:connector>

i.e. empty tls element(s) got injected thus messing your configuration up.