...
| Bloc de code | ||
|---|---|---|
| ||
<bean id="pegaseAuthProvider" class="org.esupportail.sgc.services.rest.BearerTokenAuthProvider">
<property name="tokenEndpoint" value="https://authn-app.test-example.pc-scol.fr/cas/v1/tickets"/>
<property name="bodyCredentials">
<map>
<entry key="username" value="usernamePegaseApi"/>
<entry key="password" value="passwordDePegaseApi"/>
<entry key="token" value="true"/>
</map>
</property>
</bean>
<bean id="pegaseUserInfoService" class="org.esupportail.sgc.services.userinfos.RestUserInfoService" p:order="3">
<property name="authProvider" ref="pegaseAuthProvider"/>
<property name="spelFilter" value="#userInfosInComputing['supannEtuId'] != null and !#userInfosInComputing['supannEtuId'].isEmpty()"/>
<property name="url" value="https://ins.test-univ-example.pc-scol.fr/api/ins/ext/v2/gestion/inscription/ETAB00/{supannEtuId}/"/>
<property name="sgcParam2jsonPath">
<map>
<entry key="name" value="$.apprenant.etatCivil.nomDeNaissance"/>
</map>
</property>
</bean>
<bean id="photoPegaseUserInfoService" class="org.esupportail.sgc.services.userinfos.RestUserInfoService" p:order="3">
<property name="authProvider" ref="pegaseAuthProvider"/>
<property name="spelFilter" value="#userInfosInComputing['supannEtuId'] != null and !#userInfosInComputing['supannEtuId'].isEmpty()"/>
<property name="url" value="https://piece.test-univ-example.pc-scol.fr/api/pie/ext/v1/etablissements/ETAB00/codeApprenant/{supannEtuId}/codePeriode/2025/codeChemin/DAN31-111>DAN331-111/photo"/>
<property name="sgcParam2jsonPath">
<map>
<entry key="jpegPhoto" value=""/>
</map>
</property>
</bean> |
...
Un jsonPath vide fait qu'esup-sgc prend le contenu de la réponse dans son ensemble, en texte, ou en binaire/fichier si le contentType de la réponse comme par "image/"
Enfin notez ici l'usage de spelFilter qui permet de limiter ce userInfoService aux seuls utilisateurs ayant un supannEtuId de renseigné. Cette possibilité est disponbile pour tous les userInfoService depuis la version 3.3.1 d'esup-sgc. Précédemment seul le filtre eppnFilter (limité à une expression régulière sur l'eppn simplement) était diponible.
SpelUserInfoService
SpelUserInfoService permet de remanipuler les données calculés par des UserInfoService afin de les reformatter par exemple, d'en déduire des données adaptées à ce que demande esup-sgc.
...