This post is also available in:
English
Durante alguns dias, quando eu estava testando e criando a integração dos meus bancos de dados Oracle com o OUD 11.1.2.2.0 (OUD-EUS integration), recebi o erro abaixo:
No arquivo de trace gerado pelo dbca na pasta “cfgtoollogs/dbca“, encontrei:
java.lang.NullPointerException
at oracle.net.TNSAddress.Description.toString(Unknown Source)
at java.lang.String.valueOf(String.java:2615)
at java.util.AbstractCollection.toString(AbstractCollection.java:454)
at java.util.Vector.toString(Vector.java:946)
at java.lang.String.valueOf(String.java:2615)
at java.lang.StringBuilder.append(StringBuilder.java:116)
at oracle.sysman.assistants.util.NetworkUtils.registerDBWithDirSrvc(NetworkUtils.java:1917)
at oracle.sysman.assistants.util.NetworkUtils.registerDBWithDirSrvc(NetworkUtils.java:1833)
at oracle.sysman.assistants.util.step.network.DirServiceStep.executeImpl(DirServiceStep.java:248)
at oracle.sysman.assistants.util.step.BasicStep.execute(BasicStep.java:210)
at oracle.sysman.assistants.util.step.BasicStep.callStep(BasicStep.java:251)
at oracle.sysman.assistants.dbca.backend.PreDBConfigureStep.executeImpl(PreDBConfigureStep.java:265)
at oracle.sysman.assistants.util.step.BasicStep.execute(BasicStep.java:210)
at oracle.sysman.assistants.util.step.Step.execute(Step.java:140)
at oracle.sysman.assistants.util.step.StepContext$ModeRunner.run(StepContext.java:2711)
at java.lang.Thread.run(Thread.java:637)
[Thread-32] [ 2015-04-06 11:12:11.380 BRT ] [SQLEngine.done:2189] Done called
Tentei alguns workarounds da Oracle, como:
- Oracle Support Document 1573358.1 (OUD-EUS Integration: Wallet not Created When Running DBCA) can be found at: https://support.oracle.com/epmos/faces/DocumentDisplay?id=1573358.1
- Oracle Support Document 188134.1 (Tracing the Database Configuration Assistant (DBCA)) can be found at: https://support.oracle.com/epmos/faces/DocumentDisplay?id=188134.1
Porém nenhum deles funcionou ou me deu qualquer pista do que estava acontecendo.
Eu sabia que era um bug desde o início. Primeiro eu pensei que estava relacionado a algum problema ao detectar o OCR home já que aparecia em algumas linhas antes do log:
PRCT-1011 : Failed to run "getcrshome". Detailed error: []
Mas esse não era o problema. Mais tarde, eu pensei que estava relacionado de alguma forma com o SSLv3 por causa de algumas outras entradas no trace:
[Thread-32] [ 2015-04-06 18:56:42.823 BRT ] [NetworkUtils.bindToDirSrvc:1478] NNFL_AUTH_SSL_NOAUTH failed
oracle.net.config.ConfigException: TNS-04409: Directory service error
caused by: oracle.net.config.DirectoryServiceException: TNS-04427: DirectoryService: could not connect
caused by: oracle.net.ldap.NNFLException
oracle.net.config.DirectoryServiceException: TNS-04427: DirectoryService: could not connect
caused by: oracle.net.ldap.NNFLException
oracle.net.ldap.NNFLException
at oracle.net.config.DirectoryService.throwException(Unknown Source)
at oracle.net.config.DirectoryService.getNNFLWrapperRNE(Unknown Source)
at oracle.net.config.DirectoryService.getNNFLWrapper(Unknown Source)
at oracle.net.config.DirectoryService.bind(Unknown Source)
at oracle.net.config.Config.bind(Unknown Source)
at oracle.sysman.assistants.util.NetworkUtils.bindToDirSrvc(NetworkUtils.java:1471)
at oracle.sysman.assistants.util.step.StepContext.doDirServiceBind(StepContext.java:1239)
at oracle.sysman.assistants.util.step.StepContext.doDirServiceBind(StepContext.java:1224)
at oracle.sysman.assistants.util.step.network.DirServiceStep.executeImpl(DirServiceStep.java:227)
at oracle.sysman.assistants.util.step.BasicStep.execute(BasicStep.java:210)
at oracle.sysman.assistants.util.step.BasicStep.callStep(BasicStep.java:251)
at oracle.sysman.assistants.dbca.backend.PreDBConfigureStep.executeImpl(PreDBConfigureStep.java:265)
at oracle.sysman.assistants.util.step.BasicStep.execute(BasicStep.java:210)
at oracle.sysman.assistants.util.step.Step.execute(Step.java:140)
at oracle.sysman.assistants.util.step.StepContext$ModeRunner.run(StepContext.java:2711)
at java.lang.Thread.run(Thread.java:637)
Esse também não foi o motivo. Esta mensagem SSLv3 era apenas mais uma exceção não tratada .. as linhas posteriores mostraram que o dbca tentou uma outra abordagem.
Então, finalmente, depois de comparar alguns bancos de dados que funcionaram com outros que estavam recebendo exatamente o mesmo erro, percebi que a falha foi causada somente em BDs com listeners dinâmicos.
Todos os bancos de dados que foram configurados com um listener dinâmico, usando o host e porta padrões, sem o listener ter ser indicado no listener.ora, eu tive os mesmos problemas.
Como workaround, eu inseri no arquivo listener.ora:
LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = myhostname)(PORT = 1521))
)
)
Em seguida, depois de reiniciar o listener e chamar o dbca novamente, tudo funcionou.
10 dias .. experiências, tentativas e cansaço. Isso é o que me custou o bug acima.
Gostou? Não deixe de comentar ou deixar um 👍!





