Risoluzione dei problemi comuni
Di seguito sono riportati alcuni errori che potrebbero verificarsi durante l'integrazione di Oracle E-Business Suite con IAM OCI utilizzando E-Business Suite Asserter.
Risolvere un errore di privilegi insufficienti
Dopo l'autenticazione IAM OCI, anziché ottenere l'accesso a Oracle E-Business Suite, l'utente viene reindirizzato a Oracle E-Business Suite con il messaggio di errore "Non si dispone di privilegi sufficienti per l'operazione corrente" e richiede all'utente di collegarsi di nuovo.
In genere, quando l'applicazione Oracle E-Business Suite genera questo errore, significa che il cookie è impostato con un dominio errato. Per confermare, controllare il log di debug dell'Asserter di E-Business Suite (<HOME DIR>/ebsasserter.log
). Il log di debug dell'Asserter di E-Business Suite mostra che il valore di sessionCookieDomain
non è corretto. CookieDomain
è stato impostato su .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 non deve essere impostato su un valore di alcun tipo. È necessario aggiornare l'impostazione SESSION_COOKIE_DOMAIN in ICX_PARAMETERS.
Risolvere un errore interno del server durante il logout
Quando si esegue il logout da Oracle E-Business Suite, il browser genera un messaggio di errore "Errore server interno".
Questo problema è dovuto a una versione precedente di AppsLogoutRedirect.java
sul lato Oracle E-Business Suite.
Controllare l'intestazione per AppsLogoutRedirect.java
sul lato 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 $
È necessario applicare l'ultimo aggiornamento di patch critiche di Oracle E-Business Suite versione 12 gennaio 2013 o superiore per risolvere il problema. Questo aggiornamento di patch critiche consente a AppsLogoutRedirect.java
di utilizzare i profili APPS_SSO
e APPS_AUTH_AGENT
. Consultare il documento informativo (luglio 2018) (ID documento 2379675.1) per tutti i dettagli relativi all'applicazione della patch.
Correggere un problema di sincronizzazione dell'ora
Durante l'accesso all'URL dell'applicazione E-Business Suite Asserter, il flusso di login dell'applicazione Oracle E-Business Suite ha restituito un errore interno del server.
Il trace di intestazione HTTP è simile al seguente:
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
Il log del dominio di E-Business Suite Asserter è simile al seguente:
####<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
Il log dell'Asserter di E-Business Suite è simile al seguente:
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"}
session_exp
è impostato su 1537715029
. Utilizzare EpochConverter
per convertire l'ora dell'epoca Unix corrente in una data e un'ora leggibili dall'utente. Di conseguenza, il tempo di scadenza nel token è impostato su Sunday, September 23, 2018 3:03:49 PM GMT
. Tuttavia, l'ora nel log del dominio Asserter di E-Business Suite è Sep 23, 2018 6:53:31,380 PM AST
. Si noti che Greenwich Mean Time è 4 ore prima dell'Atlantico Standard Time. Di conseguenza, il set di tempo è Sep 23, 2018 10:53:31 PM GMT
. Il sistema in cui è distribuito E-Business Suite Asserter non è sincronizzato in tempo con IAM OCI, pertanto il token passato da IAM OCI è effettivamente al di fuori del periodo di validità e quindi l'errore "Token scaduto".
Assicurarsi che la data e l'ora nel sistema in cui è distribuito E-Business Suite Asserter siano sincronizzate in tempo con i server NTP e quindi con l'host IAM OCI.
Gestisci errore Java ExceptionInInitializerError
Durante l'accesso all'URL dell'applicazione E-Business Suite Asserter, l'applicazione Oracle E-Business Suite genera l'errore java.lang.ExceptionInInitializerError.
Il log di debug di E-Business Suite Asserter mostra il seguente errore 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)
Ciò si verifica a causa di impostazioni errate nel file bridge.properties
. Verificare il file bridge.properties
e verificare che disponga della configurazione richiesta. Verificare inoltre che il percorso specificato in wallet.path
nel file bridge.properties
sia valido.
Gestisci errore Java RuntimeException
Durante l'accesso all'URL dell'applicazione E-Business Suite Asserter, l'applicazione Oracle E-Business Suite restituisce java.lang.RuntimeException.
Il log di debug di E-Business Suite Asserter mostra il seguente errore 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)
Controllare che il set di valori ebs.ds.name
corrisponda al nome dell'origine dati creato in WebLogic.
Correggi un problema di collegamento in profondità
Dopo l'autenticazione IAM OCI, invece di ottenere l'accesso a Oracle E-Business Suite, l'utente viene reindirizzato a Oracle E-Business Suite e richiede all'utente di collegarsi di nuovo.
Ciò si verifica perché il collegamento in profondità non funziona.
Controllare che la proprietà bridge whitelist.urls
sia configurata. Se il problema persiste, specificare in modo esplicito i numeri di porta nella configurazione whitelist.urls
. Ad esempio, whitelist.urls=http://ebs.oracle.com:80/OA_HTML…
. È inoltre possibile controllare il nome cookie ID JSESSION dell'applicazione E-Business Suite Asserter nel file weblogic.xml
. Se in WebLogic è presente un'altra applicazione Web con lo stesso nome cookie, si verificheranno conflitti.
Problemi durante il logout
Se si riscontrano problemi durante il processo di logout, verificare il valore del parametro URL di reindirizzamento dopo logout in IAM OCI e il valore del parametro post.logout.url nel file bridge.properties
.
Il parametro post.logout.url nel file bridge.properties
è facoltativo e per impostazione predefinita non è necessario fornire alcun valore. Utilizzare questo parametro per fare in modo che l'applicazione E-Business Suite Asserter reindirizzi il browser utente all'URL specificato dopo che E-Business Suite Asserter ha terminato il processo di logout.
Se abilitato, il valore di post.logout.url nel file bridge.properties
deve corrispondere al valore del parametro URL di reindirizzamento dopo logout per l'applicazione E-Business Suite Asserter in IAM OCI.
- Aprire l'applicazione E-Business Suite Asserter in IAM OCI e aggiornare il valore URL reindirizzamento dopo logout.
- Aprire il file
ebs.war
, aggiornare il filebridge.properties
, rigenerare il file war e ridistribuirlo nel server WebLogic. Assicurarsi che il valore di questo parametro corrisponda al parametro Post Logout Redirect URL in IAM OCI.