Link to home
Start Free TrialLog in
Avatar of Richard Jebb
Richard Jebb

asked on

WebLogic 12c - "Unexpected CryptoAPI failure"

Hi

I have 4 copies of WebLogic 12c running on 64 bit VMs with Server 2008 R2 Standard SP1. They have been built with  the x64 version of JDK 1.7u75. The app servers are to run the DEV, TEST and PROD environments for one of our clients and are hosting various components of Oracle Primavera. The combination of WebLogic and JDK versions are as per the Primavera "supported configurations" documentation and the client's corporate standard for Java. Currently I am only using regular http, nothing is protected with SSL.

Each copy of WebLogic has a single domain containing an AdminServer and 2 or 3 managed servers associated with bits of Primavera. Oracle supply a script to start everything up cleanly and this is working fine. My problem is as follows:

After a (re)start, if I log in to the WebLogic Management Console and try to navigate around to carry out tasks on the servers by clicking on Environment/Servers in the tree in the lefthand pane (also happens if I click directly on the Servers link in the initial Summary of Environment page in the righthand pane) I am often getting the message "An unexpected error condition has been detected. Details have been recorded to the admin server log" in the righthand pane and I can no longer use the console. The only way to work around this is restart everything and hope it doesn't happen again for a while.

In the log, the error is

<BEA-423405> <Unexpected CryptoAPI failure generating seed> was thrown while reading content at /jsp/core/server/ServersControlTable.jsp
/

I can find nothing meaningful in the Oracle KB about this, or by general Googling. Can anyone offer any help?

If I manually start everything up from a DOS prompt I can see the following messages as the Node Manager starts up, I have no idea if these are related in some way:

<BEA-090905> <Disabling the CryptoJ JCE Provider self-integrity check for better startup performance. To enable this check, specify -Dweblogic.security.allowCryptoJDefaultJCEVerification=true.>
<BEA-090906> <Changing the default Random Number Generator in RSA CryptoJ from ECDRBG128 to FIPS186PRNG. To disable this change, specify -Dweblogic.security.allowCryptoJDefaultPRNG=true.>

All help/suggestions gratefully received
Avatar of gheist
gheist
Flag of Belgium image

BEA-423405 means null pointer exception

You can use standard JCE, as there is no benefit in using any RSA products for security ever,
Avatar of girionis
The BEA-423405 means an internal error, whether this is a NPE, a class  not found or anything else. The error suggests that somehow you have a corrupted console application. Can you try replacing it?

Shutdown the admin server. Rename the consoleapp folder (BEA_HOME\wlserver_<version>\server\lib\consoleapp) just to make sure that we won't loose it. Copy the consoleapp folder from another installation and then restart the admin server.
Avatar of Richard Jebb
Richard Jebb

ASKER

girionis

This procedure is suggested in the Oracle KB, and I have had someone from Oracle support ask me to try this as well. The problem is that on all 4 servers on which WebLogic has been installed I have the same situation occurring so I don't have a clean copy of this folder anywhere as far as I can tell - nor do I know how all 4 servers can be corrupted in the same way, unless this has been done by the Oracle wizard that is used to deploy the Primavera components.

Is the only way I have of getting a clean copy of consoleapp going to be to install WebLogic again somewhere else?
is it oracle JDK 1.7 ?
Yes, 1.7u75
@rjebb

I am afraid yes, you will have to install WebLogic again in order to get a clean consoleapp.

Does this problem render the console app unusable? If yes then you might want to try a different security provider (if you can).

Alternatively there is another explanation here (not sure if you've seen this link) http://sottamjr.blogspot.gr/2012/10/javalanginternalerror-unexpected.html, which basically says that you can point the jvm to another device in order to gather entropy (activity of the machine) since the problem is that the machine is not running long enough in order for the JVM to gather enough information to produce random results.
ASKER CERTIFIED SOLUTION
Avatar of Richard Jebb
Richard Jebb

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
So the solution was to make the user administrator. Nice one. Thanks for sharing.
I am closing this myself as I have found a workaround, and Oracle support were also unable to offer any definite insight into the cause of the problem