...
Bloc de code |
---|
# mise en place du goulot d'étranglement pour les WS siham ne supportant pas la concurrence
# conf en lien avec 00-mpm.conf
# flushpackets=on ... à voir l'utilité ?
ProxyPass /DossierAgentDateWebService ajp://sachinsacha.univ-rouen.fr:8010/DossierAgentDateWebService retry=1 timeout=300 max=1 smax=50 flushpackets=on
ProxyPass /ListeAgentsWebService ajp://sachinsacha.univ-rouen.fr:8010/ListeAgentsWebService retry=1 timeout=300 max=1 smax=50 flushpackets=on
ProxyPass / ajp://sachinsacha.univ-rouen.fr:8010/ retry=1 timeout=3600 |
...
Bloc de code |
---|
|
List<Structures> sihamStructures = sihamService.getSihamStructures();
// ...
List<Repertoire> sihamRepertoiresNomenclatures = sihamService.getSihamNomenclaturesRepertoires();
// ...
Map<String, Individu> sihamIndividus = sihamService.getSihamIndividuFromNomUsuel("%");
for(String matricule : sihamIndividus.keySet()) {
Individu sihamIndividu = sihamIndividus.get(matricule);
if(sihamIndividu instanceof SihamIndividuAgentInError) {
// l'individu siham est en erreur - ne rien faire -> ne pas le supprimer notamment ;-)
} else {
// ...
}
} |
Contrainte supplémentaire Web Service Siham (février 2022).
Suite à la mise à jour des WebService Siham en janvier/février 2022, une nouvelle contrainte est apparue sur la récupération des matricules
La méthode recupListeAgents de /ListeAgentsWebService/ListeAgentsWebService?wsdl ne supporte pas l'absence de certains paramètres. Il est nécessaire de les positionner à vide, sous peine d'avoir une erreur du type
Bloc de code |
---|
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"><soap:Body><soap:Fault><faultcode>soap:Server</faultcode><faultstring>Fault occurred while processing.</faultstring></soap:Fault></soap:Body></soap:Envelope>
|
Ainsi la requête minimale est maintenant la suivante :
Bloc de code |
---|
|
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:sih="http://siham.amue.fr">
<soapenv:Header/>
<soapenv:Body>
<sih:recupListeAgents>
<ParamRecupListeAgents>
<listeTypeContrat>
<codeTypeContrat></codeTypeContrat>
<modeGest></modeGest>
</listeTypeContrat>
<temEtat>A</temEtat>
<temoinValide></temoinValide>
</ParamRecupListeAgents>
</sih:recupListeAgents>
</soapenv:Body>
</soapenv:Envelope> |
En Java, on a ainsi modifié notre code ainsi, suite à cette mise à jour :
Bloc de code |
---|
|
...
ParamListeAgents paramRecupListeAgents = new ParamListeAgents();
paramRecupListeAgents.setTemEtat("A");
/*
HACK WS SIHAM
Depuis la màj de février 2022, ces paramètres, même vides, doivent figurer dans l'appel SOAP
Sinon ça plante.
*/
paramRecupListeAgents.setTemoinValide("");
ListeTypeContrat dummyListeTypeContrat = new ListeTypeContrat();
dummyListeTypeContrat.setCodeTypeContrat("");
dummyListeTypeContrat.setModeGest("");
paramRecupListeAgents.getListeTypeContrat().add(dummyListeTypeContrat);
/*
FIN HACK WS SIHAM
*/
try {
List<ResultatsListeAgents> agents= getIListeAgentsWebService().recupListeAgents(paramRecupListeAgents);
...
|