I want to share a solution for a problem that was recently encountered in one of our client environments.
The problem was on config.sh.. That is, config.sh was encountering ONS errors.. This was a fresh install and it wasn't expected to be that challenging.
Anyways there were multiple errors recorded in the flow..
The first one was ;
oracle.ons.NoServersAvailable: Subscription time out ->
java.lang.IllegalArgumentException: ONS configuration failed
BARMedataPlugin related errors were following it;
problem encountered when cleaning up SI using plugin:
oracle.bi.servicelcm.metadata.BARMetadataPlugin[[java.lang.NullPointerException at sun.nio.fs.UnixFileSystem.getPath(UnixFileSystem.java:272)
UnixFileSystem.getPath and UnixFileSystem.java were foundational. I checked their source code.. But! these were the results actually.
So the config.sh encountered a problem related with the ONS and then it understood that it has failed but continued and tried to clean the mess but can't find the mess / a specific file that it expected to be present in the filesystem.. Probably.. So that error in UnixFileSystem.java was a result of that.
I like interpreting the logs this way :) They tell me the story when I read them correctly :) They also give me the execution flow, so that I can guess the internal parts of the execution.
Anyways, I was already familiar with that ONS problem, so I revisited one my earlier posts -> https://ermanarslan.blogspot.com/2017/09/problem-installing-oracle-fusion.html
I tried that workround documented in that post.. (After all It saved my day earlier..)
The workaround for this was, to supply an argument in the config_internal.sh. (config.sh indirectly executes config_internal.sh) -> oracle.jdbc.fanEnabled=falseHowever; suprisingly this time it didn't work.. config.sh was still getting those ONS errors in the next runs.
So this time I implemented a fix and here I 'am writing this blog post for it..
So, we applied it to the WLS and then run config.sh without a problem..
Ofcourse these things are based on the DB layer configuration and if that ONS configuration was compatible with the expectations of config.sh, we wouldn't get any errors in the first place..
Stay tuned..