Cool-jconon - Selezioni online

No, all’atto dell’invio di una Esclusione/Comunicazione/Convocazione oltre alla PEC verrà inviato un messaggio all’app IO prendendo il codice fiscale del candidato.

Allora avevamo capito bene.
Quindi non ci resta che portare avanti la procedura amministrativa e accreditarci, così da provare su alcuni codici fiscali reali.
Corretto?

Buongiorno a tutti,
scrivo per chiedere due informazioni, avendo in atto una procedura di concorso abbastanza impegnativa, ma che offre spunti di riflessione interessanti:

  1. Rispetto alla comunicazione dei punteggi delle prove, ho visto che è possibile generare comunicazioni/convocazioni col “tag” dei punteggi. Avendo una tipologia di candidati pochissimo avvezza alla tecnologia, abbiamo notato però che sono in difficoltà nella ricezione e nell’apertura delle PEC e dei relativi allegati. È presente, nel portale, una sezione personale dove visionare i propri punteggi? Se non lo è, è possibile pensare di strutturarla?
    Pensate possa essere utile?

  2. Sempre in considerazione delle difficoltà dei nostri candidati nella ricezione e apertura delle comunicazioni, abbiamo valutato la possibilità di pubblicare sul sito, in forma anonima, i punteggi. Per la pseudonomizzazione dei candidati, abbiamo visto che il sistema genera e attribuisce un codice univoco, ma è molto lungo ed elaborato. È possibile automatizzare la generazione, al momento della sottomissione della domanda, di un codice progressivo ai candidati, da far poi risultare nella ricevuta di presentazione domanda? Così da utilizzarlo per tutta la procedura.

Scusate se sono stato prolisso, ma spero possano essere spunti utili a tutti :slight_smile:

Grazie e buona giornata,
Karim

Ciao,

  • puoi aprire una issue su github come nuova feature, magari facendo anche una proposta di come te la immagini.

  • potresti usare il numero di protocollo come identificativo, in quanto è presente sia sulla domanda che sul pdf protocollato.

Ciao a tutti,

quali sono i passi da fare per aggiungere un nuovo elemento al curriculum sia quando ci sono bandi già presenti nell’applicativo sia quando non ci sono? Sono state fatte diverse prove, ad esempio “aggiungendo” il nuovo elemento nel file “cv” da Alfresco Share → Repository – > Data Dictionary → Models → cvElementModel.xml ma senza risultato evidente se non l’errore nel log “ERROR [main] RRDService: different md5 for element /Data Dictionary/Models/cvElementModel.xml”

Quali sono i passi corretti da fare?
Grazie!!!


Ho creato un nuovo branch con un esempio di curriculum: GitHub - consiglionazionaledellericerche/cool-jconon-template at cvelement cool-jconon-template/cvelement_nuovo_ente.xml at cvelement · consiglionazionaledellericerche/cool-jconon-template · GitHub

1 Mi Piace

Salve,
vorrei sapere se nella creazione di un nuovo aspect in bulkinfo per la creazione di una nuova dichiarazione era possibile creare dei campi condizionati alla selezione di uno o più valori di una select… provo a spiegarmi meglio: ho una select multipla (select_dich_1 nell’esempio) che mi permette di selezionare una o più scelte; selezionando una specifica opzione (key2 nell’esempio) dovrebbe apparire un ulteriore campo (dich_cond nell’esempio). Di seguito incollo il frammento di codice con cui ho tentato (senza successo) di riproporre questo comportamento…

.....
<fieldProperty inputType="SELECT" multiple="multiple" name="select_dich_1" property="jconon_application:selet_dich_1" widget="ui.select">
        <jsonlist>
            <listElement key="key1"/>
            <listElement key="key2"/>
            <listElement key="key3"/>
        </jsonlist>
</fieldProperty>
<fieldProperty name="dich_cond" property="jconon_application:dich_cond" inputType="TEXT"/>

<form name="P:jconon_application:aspect_dich_con_select">
        <formFieldProperty name="select_dich_1"/>
        <formFieldProperty class="select_dich_1_key2" name="dich_cond"/>
</form>
......

Mi chiedevo a questo punto se è possibile fare una cosa del genere e, nel caso, se sto sbagliando da qualche parte. Grazie in anticipo!

Ciao, al momento non è previsto, bisognerebbe intervenire qui: cool/cnr.ui.select.js at f468947b5c73b51cde79dfb866959fb7d22f31a3 · consiglionazionaledellericerche/cool · GitHub

1 Mi Piace

Per la select sono riuscito modificando il file che mi hai indicato e mettendolo nella folder resources/META-INF/js/cnr del template e ri-compilando il tutto. Se invece volessi customizzare altre sezioni (ad esempio ho visto la parte degli allegati vari è gestita tramite il file cnr.attachments.js) anche in quel caso è sufficiente copiare il file nel template e applicare le modifiche o c’è qualche altro passo da fare? Chiedo perché così facendo sembra che non veda le modifiche che applico in quel file, non so se mi manca qualcosa da fare o c’è qualche altro problema mio… Grazie!

Ciao, ho creato un branch con un esempio, e qui puoi vedere il risultato:

1 Mi Piace

Buongiorno a tutti, ci ritroviamo con cool-jconon che non accetta più login tramite SPID

All’utente appare:

timestamp 2022-07-13T07:22:10.983+00:00
status 500
error Internal Server Error
exception java.lang.NullPointerException
message pattern
path /spid/send-response

Lato server appare:

2022-07-13T07:11:45.658416040Z [INFO] it.cnr.cool.service.PageService:233 - User: guest with IP: [...] Path: GET /page/login
2022-07-13T07:12:04.781701123Z [INFO] it.cnr.si.cool.jconon.spid.service.SPIDIntegrationService:539 - Validating SAML response: <?xml version="1.0" encoding="UTF-8" standalone="no"?><saml2p:Response xmlns:saml2p="urn:oasis:names:tc:     SAML:2.0:protocol" Destination="https://bandi.aspbassaromagna.it/spid/send-response" ID="_ae84d5a8-5272-4286-aeac-d9846624711d" InResponseTo="_b51f59df-043e-4359-80f5-99d98d7526ce" IssueInstant="2022-07-13T07:12:05.610Z" Version="2.     0"><saml2:Issuer xmlns:saml2="urn:oasis:names:tc:SAML:2.0:assertion">https://posteid.poste.it</saml2:Issuer><Signature xmlns="http://www.w3.org/2000/09/xmldsig#"><SignedInfo><CanonicalizationMethod Algorithm="http://www.w3.org/2001/     10/xml-exc-c14n#"/><SignatureMethod Algorithm="http://www.w3.org/2001/04/xmldsig-more#rsa-sha256"/><Reference URI="#_ae84d5a8-5272-4286-aeac-d9846624711d"><Transforms><Transform Algorithm="http://www.w3.org/2000/09/xmldsig#enveloped     -signature"/><Transform Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#"/></Transforms>
[...]
2022-07-13T07:12:04.948330128Z [INFO] it.cnr.si.cool.jconon.spid.service.SPIDIntegrationService:554 - Total of SPIDRequest 1
2022-07-13T07:12:05.008596731Z [ERROR] org.apache.catalina.core.ContainerBase.[Tomcat].[localhost].[/].[dispatcherServlet]:175 - Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception [Request proc     essing failed; nested exception is java.lang.NullPointerException: pattern] with root cause
2022-07-13T07:12:05.008679381Z java.lang.NullPointerException: pattern
2022-07-13T07:12:05.008698378Z  at java.util.Objects.requireNonNull(Objects.java:228)
2022-07-13T07:12:05.008714408Z  at java.time.format.DateTimeFormatterBuilder.appendPattern(DateTimeFormatterBuilder.java:1569)
2022-07-13T07:12:05.008729795Z  at java.time.format.DateTimeFormatter.ofPattern(DateTimeFormatter.java:536)
2022-07-13T07:12:05.008745160Z  at it.cnr.si.cool.jconon.spid.service.SPIDIntegrationService.lambda$idpResponse$60(SPIDIntegrationService.java:814)
2022-07-13T07:12:05.008760402Z  at java.util.Optional.map(Optional.java:215)
2022-07-13T07:12:05.008796208Z  at it.cnr.si.cool.jconon.spid.service.SPIDIntegrationService.idpResponse(SPIDIntegrationService.java:809)
2022-07-13T07:12:05.008812108Z  at it.cnr.si.cool.jconon.spid.rest.SPID.idpResponse(SPID.java:129)
2022-07-13T07:12:05.008826491Z  at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
2022-07-13T07:12:05.008840786Z  at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
2022-07-13T07:12:05.008855118Z  at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
2022-07-13T07:12:05.008869741Z  at java.lang.reflect.Method.invoke(Method.java:498)
[...]
2022-07-13T07:12:05.016214810Z [WARN] it.cnr.si.cool.jconon.rest.openapi.controllers.IndexController:62 - ERROR Page Controller Status:500 Message:pattern

La nostra installazione è disponibile su Github

Qualche idea?

Grazie
Luca

Ciao, mi sembra strano perchè la variabile è valorizzata qui: cool-jconon/idp.yml at 427e4c9a93af530dafd3aa5ba89c3008aeb94b8c · consiglionazionaledellericerche/cool-jconon · GitHub

Da noi non era valorizzata (il file non è pubblicato su github perché contiene password del keystore). Probabilmente è stata una modifica recente e non sapevamo di dover aggiornare idp.yml. Aggiungendo quella riga funziona, grazie!

Se mi permetti un consiglio, non ti conviene sovrascrivere tutto il file, ma intervenire tramite le variabili di ambiente, così tutte le nuove modifche al file non intaccheranno la tua installazione.

Buongiorno Marco, grazie per il suggerimento delle variabli d’ambiente. Lo implementeremo il prima possibile.
In seguito alla nuova release 5.0.0, abbiamo fatto quanto indicato (modificato due file ed esecuzione script). Due dubbi:

  1. In Alfresco, in seguito allla modifica, con show models, otteniamo:
    IsLoaded: Y , RepoVersion: null , RepoName: jconon_call_folder.xml mentre tutti gli altri models hanno RepoVersion: 1.0. E’ normale?

  2. Al momento dell’esecuzione script otteniamo l’errore:
    JavaException: org.alfresco.error.AlfrescoRuntimeException: 06271209 Failed to execute search: select * from jconon_call:folder where IN_TREE('workspace://SpacesStore/a970030d-17a8-40e2-a5d9-e40f23b33de7') and (jconon_call:data_inizio_invio_domande IS NULL or jconon_call:data_fine_invio_domande is null)

Suggerimenti?

Ciao, mi sembra strano, prova a fare dalla console dei modelli di alfresco:

activate model jconon_call:folder

E vedi cose risponde.

org.alfresco.error.AlfrescoRuntimeException: 06271235 Attivazione del modello non riuscita
	at org.alfresco.repo.admin.RepoAdminServiceImpl.activateModel(RepoAdminServiceImpl.java:340)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.base/java.lang.reflect.Method.invoke(Method.java:566)
	at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:344)
	at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:198)
	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:163)
	at net.sf.acegisecurity.intercept.method.aopalliance.MethodSecurityInterceptor.invoke(MethodSecurityInterceptor.java:80)
	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:186)
	at org.alfresco.repo.security.permissions.impl.ExceptionTranslatorMethodInterceptor.invoke(ExceptionTranslatorMethodInterceptor.java:53)
	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:186)
	at org.alfresco.repo.audit.AuditMethodInterceptor.invoke(AuditMethodInterceptor.java:166)
	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:186)
	at org.alfresco.repo.transaction.RetryingTransactionInterceptor$1.execute(RetryingTransactionInterceptor.java:95)
	at org.alfresco.repo.transaction.RetryingTransactionHelper.doInTransaction(RetryingTransactionHelper.java:450)
	at org.alfresco.repo.transaction.RetryingTransactionInterceptor.invoke(RetryingTransactionInterceptor.java:85)
	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:186)
	at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:215)
	at com.sun.proxy.$Proxy72.activateModel(Unknown Source)
[...]
Caused by: org.alfresco.error.AlfrescoRuntimeException: 06271234 Impossibile trovare il modello personalizzato 'jconon_call:folder'
	at org.alfresco.repo.admin.RepoAdminServiceImpl.activateOrDeactivate(RepoAdminServiceImpl.java:368)
	at org.alfresco.repo.admin.RepoAdminServiceImpl.activateModel(RepoAdminServiceImpl.java:336)
	... 192 more

Il file jconon_call_folder.xml è stato scaricato da qui e messo su WebDav Alfresco senza alcuna modifica. Nel filesystem del server non esiste (cartella cool-jconon-template), come tanti altri file modelli che si vedono solo su WebDav Alfresco.
L’operazione di scrittura su WebDav falliva (errore 500), ma seguendo le istruzioni fornite qui Cool-jconon - Selezioni online - n°119 da mspasiano siamo riusciti a sbloccarlo e a sostituirlo.

–EDIT–

Se può servire, con il comando activate model jconon_call_folder.xml invece fa così:

org.alfresco.error.AlfrescoRuntimeException: 06271243 Attivazione del modello non riuscita
	at org.alfresco.repo.admin.RepoAdminServiceImpl.activateModel(RepoAdminServiceImpl.java:340)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
[...]
	at com.sun.proxy.$Proxy72.activateModel(Unknown Source)
[...]
Caused by: org.alfresco.error.AlfrescoRuntimeException: 06271242 Attivazione del modello non riuscita. Il modello '{http://www.cnr.it/model/jconon_call/cmis}jconon_callModel' è già attivato
	at org.alfresco.repo.admin.RepoAdminServiceImpl.activateOrDeactivate(RepoAdminServiceImpl.java:408)
	at org.alfresco.repo.admin.RepoAdminServiceImpl.activateModel(RepoAdminServiceImpl.java:336)

Si scusa avevo omesso .xml, ora lo script dovrebbe funzionare

Ciao Marco, abbiamo caricato il tuo esempio, ma quello che si ottiene è la finestra con il solo titolo senza alcun campo da poter digitare


cosa non abbiamo fatto?
Grazie in anticipo
Antonella

Ciao, ho aggiornato la versione del parent nel pom.xml Upgrade version of parent artifact · consiglionazionaledellericerche/cool-jconon-template@f3e8032 · GitHub ed ora dovrebbe funzionare

1 Mi Piace