Solucionar Problemas Comuns

Aqui estão alguns erros que você pode encontrar ao integrar o Oracle E-Business Suite com o Oracle Identity Cloud Service usando o Asserter do E-Business Suite.

Resolver um erro de privilégios insuficientes

Após a autenticação do Oracle Identity Cloud Service, em vez de obter acesso ao Oracle E-Business Suite, o usuário é redirecionado de volta ao Oracle E-Business Suite com a mensagem de erro "Você não tem privilégios suficientes para a operação atual." e solicita que o usuário acesse novamente.

Geralmente, quando o aplicativo Oracle E-Business Suite gera esse erro, isso significa que o cookie é definido com um domínio incorreto. Para confirmar isso, verifique o log de depuração do Asserter do E-Business Suite (<HOME DIR>/ebsasserter.log). O log de depuração do Asserter do E-Business Suite mostra que o sessionCookieDomain tem um valor incorreto. O CookieDomain foi definido como .oracle.com.

Aug 22, 2018 2:26:34 PM oracle.apps.fnd.ext.common.EBiz init
FINE: Ebiz init(): sessionCookieDomain =.oracle.com ; protocol=https:; ssoCookieName= ORASSO_AUTH_HINT

ICX_PARAMETERS.SESSION_COOKIE_DOMAIN não deve ser definido como um valor de qualquer tipo. Você deve atualizar a definição SESSION_COOKIE_DOMAIN em ICX_PARAMETERS.

  1. Atualize o valor SESSION_COOKIE_DOMAIN em ICX_PARAMETERS:
    SQL> select SESSION_COOKIE_DOMAIN from ICX_PARAMETERS;
    
    SESSION_COOKIE_DOMAIN
    ------------------------------
    .oracle.com
  2. Defina session_cookie_domain como NULL no ICX_PARAMETERS:
    update ICX_PARAMETERS set SESSION_COOKIE_DOMAIN = NULL;
    commit;
  3. Reinicialize todos os serviços.
  4. Teste o problema novamente.

Resolver um erro interno do servidor durante o logout

Quando você faz logout do Oracle E-Business Suite, o navegador gera uma mensagem de erro "Erro Interno do Servidor".

Esse problema ocorreu por causa de uma versão mais antiga do AppsLogoutRedirect.java no lado do Oracle E-Business Suite.

Verifique o cabeçalho de AppsLogoutRedirect.java no lado do Oracle E-Business Suite:

adident Header $JAVA_TOP/oracle/apps/fnd/sso/AppsLogoutRedirect.class
$Header AppsLogoutRedirect.java 120.10.12010000.7 2010/01/19 20:18:52 rsantis ship $

Você deve aplicar a atualização de patch crítico de janeiro de 2013 ou acima do Oracle E-Business Suite mais recente para corrigir esse problema. Essa Atualização Crítica de Patches permite que AppsLogoutRedirect.java aproveite os perfis APPS_SSO e APPS_AUTH_AGENT. Verifique o Documento de Conhecimento (Julho de 2018) (ID de Documento 2379675.1) para obter todos os detalhes sobre como aplicar esse patch.

Corrigir um Problema de Sincronização de Tempo

Enquanto você acessa o URL do aplicativo Asserter do E-Business Suite, o fluxo de log-in do aplicativo Oracle E-Business Suite resultou em um erro interno do servidor.

O rastreamento do cabeçalho HTTP tem esta aparência:

GET https://xxxxxxxxxxxxxxxxxx.oracle.com:7002/ebs/response?code=AQIDBAVcZbun_M5qU4-t9LUCYDjAOgWYiDOrf1Kb5ndbWAEYd05C-uxDfSwP8Ejfn51WT-gTuYj6bLFFYAFHQEqgYy26MTEgRU5DUllQZZIIFFVElPTl9LRVkxNCB7djF9NCAFFFABCDEF= HTTP/1.1

Error 500--Internal Server Error
From RFC 2068 Hypertext Transfer Protocol -- HTTP/1.1:
10.5.1 500 Internal Server Error
The server encountered an unexpected condition which prevented it from fulfilling the request

O log de domínio do Asserter do E-Business Suite é semelhante a este:

####<Sep 23, 2018 6:53:31,380 PM AST> <Error> <HTTP> <ebshost01.oracle.com>
<AdminServer> <[ACTIVE] ExecuteThread: '6' for queue: 'weblogic.kernel.Default (self-
tuning)'> <<WLS Kernel>> <> <0b38f1ae-a3cb-48f6-80d9-00e3f3bdb263-000000a0>
<1537718011380> <[severity-value: 8] [rif: 0] [partition-id: 0] [partition-name:
DOMAIN]> <BEA-101020> <[ServletContext@44159983[app:ebs module:ebs.war
path:null spec-version:3.1]] Servelet failed with an Exception

O log do Asserter do E-Business Suite é semelhante a este:

FINE: validateToken return with result {"user_result":"America\/New_York",
"at_hash":"1A3gT4BT0WoWCTLE3IFa5A","sub":"john.doe@oracle.com","user_locale":"en",
"idp_name":"localIDP","idp_guid":"localIDP","a mr":["USERNAME_PASSWORD"],
"iss":"https: \/\/identity.oraclecloud.com\/","user_tenantname":"idcs-a61feab148e248508205cd98cdea4232",
"client_id":"67179f2609ab46309a75e5ca1f582a53","sid":"18ee87ea-04cf-4469-a565-48ccc763caf9",
"authn_strength":"2","azp":"67179f2609ab46309a75e5ca1f582a53","auth_time":"1536180435",
"session_exp":1537715029,"user_lang":"en","exp":1536209235,"iat":1536180437"idp_type":"LOCAL",
"tenant":"idcs-a61feab148e248508205cd98cdea4232","jti":"ed7be32b-d4e1-4e72-9868-6df142f07c6b",
"user_displayname":"John Doe","sub_mappingattr":"userName","tok_type":"IT",
"aud":["https:\/\/identity.oraclecloud.com\/","67179f2609ab46309a75e5ca1f582a53"],
"user_id":"63bf3d3f96094a66a6b7714218338116"}

O session_exp é definido como 1537715029. Use EpochConverter para converter a hora da época do Unix atual em uma data e hora legíveis por humanos. Portanto, o tempo de expiração no token é definido como Sunday, September 23, 2018 3:03:49 PM GMT. No entanto, o horário no log de domínio do Asserter do E-Business Suite é Sep 23, 2018 6:53:31,380 PM AST. Observe que o Horário Médio de Greenwich está 4 horas à frente do Horário Padrão do Atlântico. Portanto, o conjunto de tempo é Sep 23, 2018 10:53:31 PM GMT. O sistema no qual o Mecanismo de Asserção do E-Business Suite está implantado não está em sincronia com o Oracle Identity Cloud Service. Como resultado, o token passado pelo Oracle Identity Cloud Service está efetivamente fora do período de validade e, portanto, o erro "Token Expirado".

Certifique-se de que a data e a hora no sistema em que o Asserter do E-Business Suite está implantado estejam sincronizados no tempo com servidores NTP e, consequentemente, com o host do Oracle Identity Cloud Service.

Tratar Erro Java ExceptionInInitializerError

Enquanto você acessa o URL do aplicativo Asserter do E-Business Suite, o aplicativo Oracle E-Business Suite gera o erro java.lang.ExceptionInitializerError.

O log de depuração do Asserter do E-Business Suite mostra o seguinte erro Java:

<Feb 26, 2019 2:17:16,884 PM PST> <Error> <HTTP> <BEA-101020> 
<[ServletContext@2100554246[app:ebs module:ebs.war path:null spec-version:3.1]] Servlet failed with an Exception
java.lang.ExceptionInInitializerError
at com.oracle.ebs.sso.ConnectionProvider.getConnection(ConnectionProvider.java:36)
at com.oracle.ebs.sso.RequestWrapperFilter.doFilter(RequestWrapperFilter.java:34)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:78)

Isso ocorre devido a configurações incorretas no arquivo bridge.properties. Verifique o arquivo bridge.properties e se ele tem a configuração necessária. Além disso, verifique se o caminho especificado em wallet.path no arquivo bridge.properties é válido.

Tratar Erro Java RuntimeException

Enquanto você acessa o URL do aplicativo Asserter do E-Business Suite, o aplicativo Oracle E-Business Suite gera java.lang.RuntimeException.

O log de depuração do Asserter do E-Business Suite mostra o seguinte erro Java:

<Feb 26, 2019 2:01:33,454 PM PST> <Error> <HTTP> <BEA-101020> 
<[ServletContext@1207779454[app:ebs module:ebs.war path:null spec-version:3.1]] Servlet failed with an Exception
java.lang.RuntimeException: javax.naming.NameNotFoundException: Unable to resolve 'visionDS1'. Resolved ''; remaining name 'visionDS1'
at com.oracle.ebs.sso.ConnectionProvider.getConnection(ConnectionProvider.java:42)
at com.oracle.ebs.sso.RequestWrapperFilter.doFilter(RequestWrapperFilter.java:34)

Verifique se o conjunto de valores ebs.ds.name corresponde ao nome da origem de dados criada em WebLogic.

Corrigir um Problema de Link Profundo

Após a autenticação do Oracle Identity Cloud Service, em vez de obter acesso ao Oracle E-Business Suite, o usuário é redirecionado de volta ao Oracle E-Business Suite e solicita que o usuário acesse novamente.

Isso ocorre porque o link profundo não está funcionando.

Verifique se a propriedade de ponte whitelist.urls está configurada. Se o problema persistir, especifique os números de porta explicitamente na configuração whitelist.urls. Por exemplo, whitelist.urls=http://ebs.oracle.com:80/OA_HTML…. Você também pode verificar o Nome do Cookie do ID JSESSION do Aplicativo Asserter do E-Business Suite no arquivo weblogic.xml. Se houver qualquer outro aplicativo Web no WebLogic com o mesmo nome de cookie, ele entrará em conflito.

Problemas Durante o Log-out

Se você encontrar problemas durante o processo de log-out, verifique o valor do parâmetro URL de Redirecionamento Pós-Log-out no Oracle Identity Cloud Service e o valor do parâmetro post.logout.url no arquivo bridge.properties.

O post.logout.url no arquivo bridge.properties é um parâmetro opcional e, por padrão, você não precisa fornecer um valor. Você usa esse parâmetro para fazer com que o aplicativo Asserter do E-Business Suite redirecione o navegador do usuário para o URL especificado depois que o Asserter do E-Business Suite finaliza o processo de logout.

Se ativado, o valor do post.logout.url no arquivo bridge.properties deverá corresponder ao valor do parâmetro URL de Redirecionamento Pós-Logout para o aplicativo Asserter do E-Business Suite no Oracle Identity Cloud Service.

  1. Abra o aplicativo Asserter do E-Business Suite no Oracle Identity Cloud Service e atualize o valor do URL de Redirecionamento Pós-Logout.
  2. Abra o arquivo ebs.war, atualize o arquivo bridge.properties, gere novamente o arquivo war e reimplante o arquivo no servidor WebLogic. Certifique-se de que o valor desse parâmetro corresponda ao parâmetro URL de Redirecionamento Pós-Logout no Oracle Identity Cloud Service.