Utilizzare il servizio Web Integrazione programma di caricamento dati HCM
È possibile utilizzare un servizio Web SOAP del programma di caricamento dati HCM per importare e caricare i file di dati posizionati nell'area intermedia nel server WebCenter Content. È possibile elaborare manualmente questi file di dati dalla pagina Importa e carica dati nell'interfaccia utente di Oracle Cloud HCM.
È innanzitutto necessario installare Oracle JDeveloper 11.1.1.9 per ottenere le librerie necessarie per richiamare i Web Service SOAP da Oracle Cloud HCM.
Informazioni sul servizio di integrazione del programma di caricamento dati HCM
È possibile utilizzare un servizio Web SOAP Oracle Cloud HCM per caricare i file utilizzando l'API SOAP.
È possibile ottenere i dettagli del servizio Web Data Loader Service da Oracle Fusion Cloud Human Resources nel collegamento Developer Connect, sotto Strumenti nel menu Navigator, proprio come qualsiasi altro servizio Web SOAP.
È possibile richiamare il servizio Web SOAP dopo aver inserito il file ZIP che contiene i file DAT nel server WebCenter Content. Successivamente, è possibile proteggerlo con l'account hcm/dataloader/import
. Questo Web Service può essere utilizzato per importare e caricare i dati in Oracle Cloud HCM.
Informazioni sulle buste SOAP per il richiamo del programma di caricamento dati HCM
HCMDataLoader
: http://{Host}/hcmCommonDataLoader/HCMDataLoader
Informazioni sul metodo importAndLoadData
Il metodo importAndLoadData
avvia l'elaborazione di un file di dati ospitato nel server WebCenter Content. Si tratta di un job asincrono che restituisce solo ProcessId
del processo sottomesso.
Utilizzare questa busta per effettuare una chiamata alla funzione importAndLoadData
nel servizio Web SOAP.
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<ns1:importAndLoadData xmlns:ns1="http://xmlns.oracle.com/apps/hcm/common/dataLoader/core/dataLoaderIntegrationService/types/">
<ns1:ContentId></ns1:ContentId>
<ns1:Parameters></ns1:Parameters>
</ns1:importAndLoadData>
</soap:Envelope>
I parametri per il metodo importAndLoadData
inviati con l'envelope sono:
ContentId: ID contenuto del file nel server WebCenter Content (lo stesso valore del parametro dDocName
nella chiamata Java di WebCenter Content).
Parametri: coppie nome-valore. Sono disponibili i seguenti nomi di parametro, ma non sono obbligatori:
-
ImportMaximumErrors
: percentuale delle righe file in un errore che può verificarsi per un business object prima dell'interruzione del processo di importazione. -
LoadMaximumErrors
: percentuale di istanze di business object in un errore che può verificarsi per un business object prima dell'interruzione dei processi di convalida e caricamento. -
LoadConcurrentThreads
: numero di thread concorrenti durante la convalida o il caricamento. -
LoadGroupSize
: numero di business object elaborati come singola unità di lavoro da un thread concorrente. -
FileEncryption
: tipo di cifratura del file. Ad esempio, Cifratura basata su password (PBE, Password Based Encryption). -
DeleteSourceFile
: valoreY
oN
. Se impostato suY
o lasciato vuoto, il file di origine viene eliminato dal server WebCenter Content dopo che il contenuto del file viene trasferito nelle tabelle di staging del programma di caricamento dati HCM e non è più necessario.
Ad esempio, il tag <ns1:Parameters>
può contenere le seguenti coppie nome-valore:<ns1:Parameters>ImportMaximumErrors=100,LoadMaximumErrors=100,LoadConcurrentThreads=4,FileEncryption=PGPSIGNED,DeleteSourceFile=N</ns1:Parameters>
<env:Envelope xmlns:env="http://schemas.xmlsoap.org/soap/envelope/" xmlns:wsa="http://www.w3.org/2005/08/addressing">
<env:Header> <wsa:To>http://www.w3.org/2005/08/addressing/anonymous</wsa:To>
<wsa:Action>http://xmlns.oracle.com/apps/hcm/common/dataLoader/core/dataLoaderIntegrationService/HCMDataLoader/importAndLoadDataResponse</wsa:Action>
<wsa:MessageID>urn:uuid:ab36195f-775b-4688-a0e4-8a4e531e904c</wsa:MessageID>
<wsa:RelatesTo>urn:uuid:74c7b631-c20a-4d49-bf36-1f483f3dc43e</wsa:RelatesTo>
</env:Header>
<env:Body> <ns0:importAndLoadDataResponse xmlns:ns0="http://xmlns.oracle.com/apps/hcm/common/dataLoader/core/dataLoaderIntegrationService/types/"> <result xmlns="http://xmlns.oracle.com/apps/hcm/common/dataLoader/core/dataLoaderIntegrationService/types/">7958</result> </ns0:importAndLoadDataResponse>
</env:Body>
</env:Envelope>
Informazioni sul metodo getDataSetStatus
Il metodo getDataSetStatus
restituisce lo stato corrente del file di dati specificato.
Utilizzare questa busta per effettuare una chiamata alla funzione getDataSetStatus
nel servizio Web SOAP.
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<ns1:getDataSetStatus xmlns:ns1="http://xmlns.oracle.com/apps/hcm/common/dataLoader/core/dataLoaderIntegrationService/types/">
<ns1:Parameters></ns1:Parameters>
</ns1:getDataSetStatus>
</soap:Envelope>
I parametri per il metodo getDataSetStatus
inviati con l'envelope sono:
ContentId: ID contenuto del file nel server WebCenter Content (lo stesso valore del parametro dDocName
nella chiamata Java di WebCenter Content).
ProcessId: ID del processo avviato e restituito dal metodo importAndLoadData
.
Genera una classe proxy per richiamare HCM DataLoader
Un'opzione per richiamare un servizio Web SOAP di Oracle Cloud HCM consiste nell'utilizzare le classi proxy generate.
È possibile generare classi proxy fornendo l'URL del file WSDL del servizio al generatore desiderato. Queste classi proxy vengono utilizzate per richiamare il servizio Web.
Nota:
I servizi Web SOAP Oracle Cloud HCM sono protetti dai criteri di sicurezza di Oracle Web Services Manager (OWSM).Informazioni sulle implicazioni di sicurezza durante l'utilizzo del programma di caricamento dati HCM
Quando un client chiama un servizio Web SOAP del programma di caricamento dati HCM, in seguito deve soddisfare i criteri di protezione dei messaggi per assicurarsi che il payload venga trasportato in modo cifrato o attraverso il livello di trasporto SSL.
Il servizio Web HCMDataLoader
è protetto mediante il seguente criterio Oracle Web Services Manager: oracle/wss11_saml_or_username_token_with_message_protection_service_policy
.
Sul lato client è possibile utilizzare il seguente criterio di Oracle Web Services Manager:oracle/wss11_username_token_with_message_protection_client_policy
.
Per utilizzare questo criterio, il messaggio deve essere cifrato utilizzando una chiave pubblica fornita dal server. Quando il messaggio raggiunge il server, è possibile decifrare il messaggio in base alla chiave privata del server. È possibile creare un KeyStore
per importare il certificato fornito nel file WSDL del servizio, ma per motivi di sicurezza è necessario richiedere all'utente la password di Oracle Cloud HCM ogni volta che si esegue il codice.
È possibile creare un file di testo delle proprietà che può essere analizzato all'interno del codice per accedere alle informazioni Keystore
, ad esempio:
FUSION_USERNAME=<Your Oracle Global Human Resources Cloud User Name>
DATAPATH=C:\\My\\Assets\\cloud.asset.hcm.java-dataload-example\\data\\
HCM_DATA_LOADER_SERVICE_WSDL_LOCATION=https://<<FusionURL>/hcmCommonDataLoader/HCMDataLoader?wsdl
UCM_IDC_WEBSERVICE_LOCATION=https://<FusionURL>/idcws/GenericSoapPort
KEYSTORE_LOCATION=<Your Keystore trust location>
KEYSTORE_PASSWORD=<YourTrustPassword>
KEYSTORE_ALIAS=orakey
GETDATASETSTATUS_DELAY=5
OK=OK
ERROR=Error
WARNING=Warning
CSV_FILE_ENCODING=UTF-8
DATA_SEPERATOR=;
Richiedere all'utente le credenziali di Oracle Cloud HCM utilizzando quanto riportato di seguito.
// Accept password from user
Scanner scanReader = new Scanner(System.in); // Reading from System.in
System.out.println("Enter password for user "+propertiesFile.getProperty("FUSION_USERNAME")+" :");
fusionUserPass= scanReader.next(); // Scans the next token of the input as an int.
scanReader.close();
Nell'esempio, fusionUserPass
è una variabile che può essere utilizzata per memorizzare la password Oracle Cloud HCM dell'utente, quindi passata al servizio Web SOAP del programma di caricamento dati HCM.
Richiama il servizio Web SOAP DataLoader HCM
È possibile caricare i dati da un file ZIP in Oracle Cloud HCM utilizzando il servizio Web SOAP del programma di caricamento dati HCM da una classe Java.
In primo luogo, creare un file ZIP e caricarlo nel server WebCenter Content manualmente o a livello di programmazione. Sarà quindi possibile caricare i dati utilizzando il Web Service importAndLoadData
.
Nota:
Gli esempi di codice forniti in questa soluzione sono stati testati con JDK versione 8 per richiamare i servizi Web su Oracle WebLogic Server 12c. Per l'uso con altre versioni di JDK e Oracle WebLogic Server, eseguire il test del codice con le librerie specifiche delle versioni desiderate.