Microsoft Learn for the Win!

design from the Microsoft Lean website

Over the last ten years or so, I have worked with many different computer-based training (CBT) programs from various vendors, some paid, and some free. Of all the ones I’ve used, Microsoft Learn – which is free, as in “free beer”! – has been the best overall.

Not only is the variety of subjects available for study more diverse than the other sites I’ve used (though the Learn classes are all for only Microsoft-based technologies, as far as I know), but the quality of the lessons and the degree for which they can prepare one for at least some certifications is comparable with a paid class or set of Microsoft Press books.

I was particularly happy with the Power BI and Azure training that I took, and I plan to move on to some AI and Machine Learning courses this next year.

Ten Years of Deep in the Code!

10 Years of Deep in the Code

What a long strange trip it’s been! Ten years ago today I made my first blog post here, and since then, I’ve learned quite a bit, and I hope that I’ve helped more than a few people with all the various and sundry issues that I’ve had during my adventures in software development.

In 2012, I was focused more on ASP.NET development, and my hope was that I’d get more involved with Objective-C and other Mac-related projects. While I did dabble there for a bit, it seems that the majority of my work has been with relational databases, some Oracle Database and the occasional MySQL issue, but mostly SQL Server. 

It will be interesting to see where the next ten years takes me. Now I am learning more about Azure and Power BI, so I’m still heavily in the Microsoft world of technologies – and the road ahead looks bright.

Thanks for traveling with me on this journey! 

Fixing the “Identity key store file not found” Error in Primavera P6 EPPM

Oracle Primavera P6 EPPM

Recently, I’ve installed multiple instances of Oracle Primavera P6 EPPM version 21 on Windows servers running Oracle WebLogic 12. In each case, after installing WebLogic and P6 EPPM, I get an error similar to the one below when trying to start the Node Manager:

<Feb 6, 2018 9:58:31 PM JST>
<INFO> <Loading identity key store: FileName=<DOMAIN_HOME>/security/DemoIdentity.jks, Type=jks, PassPhraseUsed=true>
<Feb 6, 2018 9:58:31 PM JST> <SEVERE> <Fatal error in NodeManager server>
weblogic.nodemanager.common.ConfigException: Identity key store file not found: <DOMAIN_HOME>/security/DemoIdentity.jks
at weblogic.nodemanager.server.SSLConfig.loadKeyStoreConfig(SSLConfig.java:225)
at weblogic.nodemanager.server.SSLConfig.access$000(SSLConfig.java:33)
at weblogic.nodemanager.server.SSLConfig$1.run(SSLConfig.java:118)
at java.security.AccessController.doPrivileged(Native Method)
at weblogic.nodemanager.server.SSLConfig.<init>(SSLConfig.java:115)
at weblogic.nodemanager.server.NMServer.<init>(NMServer.java:169)
at weblogic.nodemanager.server.NMServer.getInstance(NMServer.java:134)
at weblogic.nodemanager.server.NMServer.main(NMServer.java:589)
at weblogic.NodeManager.main(NodeManager.java:31)

From what I can tell, this must be caused by a bug in the particular version of WebLogic I’m running. Fortunately, there is a fix. This is not the only fix (or only possible cause) of this error, but it is the fix that has worked for me every time, so far.

On Windows machines, execute the following statements:

> cd %ORACLE_HOME%\wlserver\server\bin

> .\setWLSEnv.cmd

> cd %DOMAIN_HOME%\security

> java utils.CertGen -keyfilepass DemoIdentityPassPhrase -certfile democert -keyfile demokey -strength 2048 <strong>-noskid</strong>

> java utils.ImportPrivateKey -keystore DemoIdentity.jks -storepass DemoIdentityKeyStorePassPhrase -keyfile demokey.pem -keyfilepass DemoIdentityPassPhrase -certfile democert.pem -alias demoidentity

For Linux/UNIX, it is slightly different:

> cd $ORACLE_HOME/wlserver/server/bin

> . ./setWLSEnv.sh (that is DOT SPACE DOT SLASH setWLSEnv.sh )

> cd $DOMAIN_HOME/security

> java utils.CertGen -keyfilepass DemoIdentityPassPhrase -certfile democert -keyfile demokey -strength 2048 <strong>-noskid</strong>

> java utils.ImportPrivateKey -keystore DemoIdentity.jks -storepass DemoIdentityKeyStorePassPhrase -keyfile demokey.pem -keyfilepass DemoIdentityPassPhrase -certfile democert.pem -alias demoidentity

This information can be found at Oracle WebLogic DemoIdentity.jks fix. I had to wade through several irrelevant articles before stumbling across this one, so I’d like to give it more attention, as it’s the fix that worked multiple times for me.