Herramientas de usuario

Herramientas del sitio


simo:documentos:tecnicos:configuracion

Diferencias

Muestra las diferencias entre dos versiones de la página.

Enlace a la vista de comparación

Ambos lados, revisión anterior Revisión previa
Próxima revisión
Revisión previa
simo:documentos:tecnicos:configuracion [2017/11/14 19:29]
lgomez
simo:documentos:tecnicos:configuracion [2017/11/14 19:57] (actual)
lgomez
Línea 21: Línea 21:
 **Generación de código** **Generación de código**
  
-Controla si hibernate genera DDL (crea tablas y demás) a partir de las anotaciones JPA+#Controla si hibernate genera DDL (crea tablas y demás) a partir de las anotaciones JPA
  
 spring.jpa.generate-ddl=false spring.jpa.generate-ddl=false
Línea 27: Línea 27:
 **Hibernate Search** **Hibernate Search**
  
-Directorio donde se almacenan indices si se tiene un directorio tipo [[:​simo:​documentos:​tecnicos:​filesystem|FileSystem]]+#Directorio donde se almacenan indices si se tiene un directorio tipo [[:​simo:​documentos:​tecnicos:​filesystem|FileSystem]]
  
 spring.jpa.properties.hibernate.search.default.indexBase = /​indexsimo/​lucene spring.jpa.properties.hibernate.search.default.indexBase = /​indexsimo/​lucene
  
-Tipo de directorio+#Tipo de directorio
  
 spring.jpa.properties.hibernate.search.default.directory_provider = infinispan spring.jpa.properties.hibernate.search.default.directory_provider = infinispan
  
-Configuración infinispan si se usa este tipo de directorio+#Configuración infinispan si se usa este tipo de directorio
  
 spring.jpa.properties.hibernate.search.infinispan.configuration_resourcename = file:/​datossimo/​archivos/​infinispan.xml spring.jpa.properties.hibernate.search.infinispan.configuration_resourcename = file:/​datossimo/​archivos/​infinispan.xml
Línea 49: Línea 49:
 sigeca.documents.reportDirectory=/​datossimo/​archivos/​report sigeca.documents.reportDirectory=/​datossimo/​archivos/​report
  
-Controla tamaños y tipos de archivo generales y excepciones+#Controla tamaños y tipos de archivo generales y excepciones
  
 multipart.maxRequestSize=80MB multipart.maxRequestSize=80MB
Línea 64: Línea 64:
  
 **Roles permitidos por servidor** **Roles permitidos por servidor**
 +
 +simo.rol=CIUDADANO,​CARGADOR,​ADMINISTRADOR,​ADMIN_CONVOCATORIA,​ADMIN_ENTIDAD,​ADMIN_ENTIDAD_EDUCATIVA,​ANALISTA,​SUPERVISOR,​AUDITOR
 +
 +**Integración PENTAHO**
 +
 +pentaho.url=[[http://​192.168.52.37:​8181|http://​192.168.52.37:​8181]]\\
 +# ruta para consultar el estado de los trabajos (esta compuesto de url+getStatus+jobName)\\
 +pentaho.getStatus=/​kettle/​jobStatus/?​xml=y&​name=\\
 +#ruta para iniciar la tarea (esta compuesto de url+startJob+jobName)\\
 +pentaho.startJob=/​kettle/​runJob?​level=[[:​simo:​documentos:​tecnicos:​debuglevel|DebugLevel]]&​xml=y&​job=\\
 +pentaho.auth=Y2x1c3RlcjpjbHVzdGVy
 +
 +#Mensajes de retorno estado\\
 +pentaho.finishedStatus=OK,​Finished\\
 +pentaho.runnigStatus=Running\\
 +pentaho.errorStatus=Finished (with errors),​Stopped,​Stopped (with err**ors)**
 +
 +**Agendador Quartz**
 +
 +quartz.enabled=true**\\
 +**
 +
 +**Referencias a otros archivos de configuración**
 +
 +business-rules.properties=classpath:​business-rules.properties\\
 +#​business-rules.properties=file:/​datossimo/​archivos/​business-rules.properties\\
 +notificaciones.properties=file:/​datossimo/​archivos/​notificaciones.properties\\
 +messages.properties=file:/​datossimo/​archivos/​messages.properties\\
 +pse.properties=file:/​datossimo/​archivos/​pse.properties\\
 +cluster.properties=file:/​datossimo/​archivos/​cluster.properties\\
 +ayuda.properties=file:/​datossimo/​archivos/​ayuda.properties\\
 +jobs.properties=file:/​datossimo/​archivos/​jobs.properties\\
 +antecedentes.properties=file:/​datossimo/​archivos/​antecedentes.properties
 +
 +===== business-rules.properties =====
 +
 +Este archivo contiene todas las reglas de negocio que son aplicadas por recurso (Entidad JPA, DTO), el sistema evalua las reglas de negocio para un objeto que hereda de  Model y produce un mapa de permisos para un objeto en particular y segùn el contexto de ejecución en el cual se está utilizando el objeto Por ejemplo, al serializar un objeto de tipo convocatoria,​ el sistema lo aumenta con un campo llamado access que tiene un mapa de los permisos que sobre esa convocatoria tiene el usuario autenticado en el contexto de ejecución (estado de la aplicación) en el cual se serializa el objeto, es decir, para un momento especìfico,​ las reglas de negocio indican si un usuario puede editar, crear, activar una convocatoria,​ etc. De esta forma, el sistema de permisos es áltamente configurable y flexible.
 +
 +Las reglas de negocio son escritas usando Spring EL con ayuda del servicio **[[:​simo:​documentos:​tecnicos:​ruleservice|RuleService]],​ ** ej**\\
 +**
 +
 +br.co.gov.cnsc.sigeca.model.Convocatoria.view = #​getAuthUser()!=null\\
 +br.co.gov.cnsc.sigeca.model.Convocatoria.edit = #​userHasRole(#​currentUser,'​ADMINISTRADOR'​) || (#​userHasRole(#​currentUser,'​ADMIN_CONVOCATORIA'​) && #​conv.estaAsociado(#​currentUser,#​root))\\
 +br.co.gov.cnsc.sigeca.model.Convocatoria.create = #​userHasRole(#​currentUser,'​ADMIN_CONVOCATORIA'​)|| #​userHasRole(#​currentUser,'​ADMINISTRADOR'​)\\
 +br.co.gov.cnsc.sigeca.model.Convocatoria.delete = false\\
 +br.co.gov.cnsc.sigeca.model.Convocatoria.publicarOpec = estado==T(co.gov.cnsc.sigeca.model.[[:​simo:​documentos:​tecnicos:​estadoconvocatoria|EstadoConvocatoria]]).A || estado==T(co.gov.cnsc.sigeca.model.[[:​simo:​documentos:​tecnicos:​estadoconvocatoria|EstadoConvocatoria]]).S\\
 +#​br.co.gov.cnsc.sigeca.model.Convocatoria.gestionarCargador = #​userHasRole(#​currentUser,'​ADMINISTRADOR'​) || (#​userHasRole(#​currentUser,'​ADMIN_ENTIDAD'​) && #​currentUser.entidad.id == entidad.id) \\
 +br.co.gov.cnsc.sigeca.model.Convocatoria.gestionarCargador = #​userHasRole(#​currentUser,'​ADMINISTRADOR'​) || (#​userHasRole(#​currentUser,'​ADMIN_ENTIDAD'​) && #​usuario.isUsuarioEntidad(entidad.id))\\
 +br.co.gov.cnsc.sigeca.model.Convocatoria.crearEmpleo = #​userHasRole(#​currentUser,'​CARGADOR'​) && #​etapa.activa('​OPEC',#​root.id) \\
 +En este archivo también se especifican las reglas de excepción, estas son similares a las reglas de negocio pero su propósito es ser utilizadas cuando se quieren crear excepciones a las reglas de negocio regulares, ejemplo, cuando se debe permitir una inscripción extemporánea a una convocatoria a un solo usuario por fallo de tutela, algunas ​ reglas de excepción son:
 +
 +ex.co.gov.cnsc.sigeca.dto.[[:​simo:​documentos:​tecnicos:​inscripciondto|InscripcionDTO]].inscribir = #​currentUser!=null && !existeInscripcion && preInscripcion && pinInscripcion!=null && (#​excepcion.validarExcepcion('​exACRINSCRIBIR',​1,​ idEmpleo, '​EMPLEO'​))
 +
 +ex.co.gov.cnsc.sigeca.dto.[[:​simo:​documentos:​tecnicos:​inscripciondto|InscripcionDTO]].pagarPSE = #​currentUser!=null && !existeInscripcion && preInscripcion && pinInscripcion==null && (#​excepcion.validarExcepcion('​exACRPSE',​1,​ idEmpleo, '​EMPLEO'​))
 +
 +ex.co.gov.cnsc.sigeca.model.[[:​simo:​documentos:​tecnicos:​inscripcionconvocatoria|InscripcionConvocatoria]].inscribir = (#​excepcion.validarExcepcion('​exACRINSCRIBIR',​1,​ empleo.id, '​EMPLEO'​)) && !#​inscripcion.existeInscripcion(empleo.convocatoria,#​currentUser) && pinInscripcion!=null && estado==T(co.gov.cnsc.sigeca.model.[[:​simo:​documentos:​tecnicos:​estadoinscripcion|EstadoInscripcion]]).PI
 +
 +ex.co.gov.cnsc.sigeca.model.[[:​simo:​documentos:​tecnicos:​inscripcionconvocatoria|InscripcionConvocatoria]].pagarPSE = (#​excepcion.validarExcepcion('​exACRPSE',​1,​ empleo.id, '​EMPLEO'​)) && estado==T(co.gov.cnsc.sigeca.model.[[:​simo:​documentos:​tecnicos:​estadoinscripcion|EstadoInscripcion]]).PI && pinInscripcion==null && !#​inscripcion.existeInscripcion(empleo.convocatoria,#​currentUser)
 +
 +===== notificaciones.properties =====
 +
 +Contiene la configuración del sistema de envío de notificaciones y mensajes, tiene dos secciones principales,​ la primera es la configuración del servidor de correo y/o del servicio de envio masivo, así
 +
 +EMAIL NOTIFICATION\\
 +spring.mail.host=localhost\\
 +spring.mail.port=1025\\
 +spring.mail.username=simo\\
 +spring.mail.password=cnsc2016<​nowiki>​*</​nowiki>​\\
 +spring.mail.default-encoding=UTF-8\\
 +spring.mail.properties.<​nowiki>​*</​nowiki>​= # properties to set on the [[:​simo:​documentos:​tecnicos:​javamail|JavaMail]] session\\
 +spring.mail.transport.protocol=smtp\\
 +spring.mail.properties.mail.smtp.auth=true\\
 +spring.mail.properties.mail.smtp.socketFactory.port=25\\
 +spring.mail.properties.mail.smtp.starttls.enable=false\\
 +spring.mail.properties.mail.smtp.socketFactory.class=javax.net.ssl.[[:​simo:​documentos:​tecnicos:​sslsocketfactory|SSLSocketFactory]]\\
 +spring.mail.properties.mail.smtp.socketFactory.fallback=true\\
 +La segunda son las plantillas de los correos prefijados:
 +
 +###############​ MENSAJES PERSONALIZADAS ###################################​\\
 +##TODO Cambiar namespace a properties y unificar con mensajes de notificaciones\\
 +#REGISTRO NUEVO CORREO\\
 +spring.properties.encoder=CNSC\\
 +spring.mail.properties.registro.setfrom=sigeca@cnsc.gov.co\\
 +spring.mail.properties.registro.setSubject=CNSC,​ Confirmar registro de usuario\\
 +spring.mail.properties.registro.setUrl=[[http://​192.168.0.138:​8080/​index.html?​codigoVerificacion=xxxx#​confirmacionregistro|http://​192.168.0.138:​8080/​index.html?​codigoVerificacion=xxxx#​confirmacionregistro]]\\
 +spring.mail.properties.registro.template=registro.vm\\
 +#OLVIDO DE CONTRASE<​nowiki>​\</​nowiki>​u00d1A\\
 +spring.mail.properties.olvido.setfrom=sigeca@cnsc.gov.co\\
 +spring.mail.properties.olvido.setSubject=CNSC2 Cambiar contrase<​nowiki>​\</​nowiki>​u00F1a\\
 +spring.mail.properties.olvido.setUrl=[[http://​192.168.0.139:​8080/​index.html?​codigoVerificacion=xxxx#​cambiarcontrasena|http://​192.168.0.139:​8080/​index.html?​codigoVerificacion=xxxx#​cambiarcontrasena]]\\
 +spring.mail.properties.olvido.template=olvidocontrasena.vm\\
 +spring.mail.properties.olvido.template.multiples.usuarios=olvidocontrasenamultiplesusuarios.vm\\
 +#CAMBIAR DE CONTRASE<​nowiki>​\</​nowiki>​u00d1A\\
 +spring.mail.properties.cambio.setfrom=sigeca@cnsc.gov.co\\
 +spring.mail.properties.cambio.setSubject=CNSC2 Cambiar contrase<​nowiki>​\</​nowiki>​u00F1a\\
 +spring.mail.properties.cambio.setUrl=[[http://​192.168.0.139:​8080/​index.html?​codigoVerificacion=xxxx#​cambiarcontrasena|http://​192.168.0.139:​8080/​index.html?​codigoVerificacion=xxxx#​cambiarcontrasena]]\\
 +spring.mail.properties.cambio.template=cambiarcontrasena.vm\\
 +#​PREINSCRIPCION\\
 +spring.mail.properties.preinscripcion.setfrom=sigeca@cnsc.gov.co\\
 +spring.mail.properties.preinscripcion.setSubject=CNSC,​ Preinscripci<​nowiki>​\</​nowiki>​u00F3n a convocatoria.\\
 +spring.mail.properties.preinscripcion.template=preinscrito.vm\\
 +#​NOTIFICAR\\
 +spring.mail.properties.notificar.setfrom=sigeca@cnsc.gov.co\\
 +spring.mail.properties.notificar.setSubject=Notificación CNSC\\
 +spring.mail.properties.notificar.setUrl=[[http://​192.168.0.138:​8080/​|http://​192.168.0.138:​8080/​]]\\
 +spring.mail.properties.notificar.template=notificacion.vm
 +
 +===== messages.properties =====
 +
 +Mensajes de error e informativos al usuario, ejemplo
 +
 +sigeca.errorInesperado=Ocurrio un error inesperado, por favor comun<​nowiki>​\</​nowiki>​u00EDquese con la CNSC.\\
 +sigeca.acceso.noautorizado=No tiene permisos para esta opci<​nowiki>​\</​nowiki>​u00F3n,​ por favor ingrese al aplicativo con su usuario y contrase<​nowiki>​\</​nowiki>​u00F1a. O comun<​nowiki>​\</​nowiki>​u00EDquese con la CNSC.\\
 +sigeca.controladores.resultadobusqueda.error=No se encontraron resultados con los filtros aplicados.\\
 +sigeca.usuariocontrolador.cambiarcontrasena=Se cambio la contrase<​nowiki>​\</​nowiki>​u00F1a del usuario<​nowiki>​\</​nowiki>:​xxxx correctamente.\\
 +sigeca.usuariocontrolador.cambiarcontrasena.exception=Ocurrio un error inesperado cambiando la contrase<​nowiki>​\</​nowiki>​u00F1a,​ por favor comun<​nowiki>​\</​nowiki>​u00EDquese con la CNSC.\\
 +sigeca.usuariocontrolador.olvidocontrasena=Se envi<​nowiki>​\</​nowiki>​u00F3 un correo electr<​nowiki>​\</​nowiki>​u00F3nico con las instrucciones a seguir para recuperar su contrase<​nowiki>​\</​nowiki>​u00F1a.\\
 +sigeca.usuariocontrolador.olvidocontrasenaErrorUsuario=El usuario o correo no existe. Por favor valide sus datos o comun<​nowiki>​\</​nowiki>​u00EDquese con la CNSC.\\
 +sigeca.usuariocontrolador.registroexitoso=Usted recibir<​nowiki>​\</​nowiki>​u00E1 un correo electr<​nowiki>​\</​nowiki>​u00F3nico con la confirmaci<​nowiki>​\</​nowiki>​u00F3n del registro ​ y los pasos a seguir para activar su usuario<​nowiki>​\</​nowiki>:​xx
 +===== cluster.properties =====
 +
 +Contiene información específica del nodo, esta información es utilizada por subsistemas como Quartz, infinispan, y log, no debe ponerse en un recurso compartido, ejemplo
 +
 +sigeca.cluster.name=julian1\\
 +sigeca.envio.correo.pendiente.habilitado=true\\
 +sigeca.envio.notificaciones.habilitado=true\\
 +sigeca.validar.pagospse.pendientes.habilitado=true
 +
 +===== ayuda.properties =====
 +
 +Contiene la información necesaria para desplegar los controles de ayuda contextual (wiki y videos), ejemplo
 +
 +registro.wiki=[[http://​simo.cnsc.gov.co/​cnscwiki/​doku.php?​id=simo:​documentos:​manual_ciudadano#​como_registrarse|http://​simo.cnsc.gov.co/​cnscwiki/​doku.php?​id=simo:​documentos:​manual_ciudadano#​como_registrarse]]\\
 +formacion.wiki=[[http://​simo.cnsc.gov.co/​cnscwiki/​doku.php?​id=simo:​documentos:​manual_ciudadano#​formacion|http://​simo.cnsc.gov.co/​cnscwiki/​doku.php?​id=simo:​documentos:​manual_ciudadano#​formacion]]\\
 +experiencialaboral.wiki=[[http://​simo.cnsc.gov.co/​cnscwiki/​doku.php?​id=simo:​documentos:​manual_ciudadano#​experiencia|http://​simo.cnsc.gov.co/​cnscwiki/​doku.php?​id=simo:​documentos:​manual_ciudadano#​experiencia]]\\
 +produccionintelectual.wiki=[[http://​simo.cnsc.gov.co/​cnscwiki/​doku.php?​id=simo:​documentos:​manual_ciudadano#​produccion_intelectual|http://​simo.cnsc.gov.co/​cnscwiki/​doku.php?​id=simo:​documentos:​manual_ciudadano#​produccion_intelectual]]\\
 +otrosdocumentos.wiki=[[http://​simo.cnsc.gov.co/​cnscwiki/​doku.php?​id=simo:​documentos:​manual_ciudadano#​otros_documentos|http://​simo.cnsc.gov.co/​cnscwiki/​doku.php?​id=simo:​documentos:​manual_ciudadano#​otros_documentos]]\\
 +ofertaEmpleo.wiki=[[http://​simo.cnsc.gov.co/​cnscwiki/​doku.php?​id=simo:​documentos:​manual_ciudadano#​busqueda_empleo|http://​simo.cnsc.gov.co/​cnscwiki/​doku.php?​id=simo:​documentos:​manual_ciudadano#​busqueda_empleo]]\\
 +datosbasicos.wiki=[[http://​simo.cnsc.gov.co/​cnscwiki/​doku.php?​id=simo:​documentos:​manual_ciudadano#​datos_basicos|http://​simo.cnsc.gov.co/​cnscwiki/​doku.php?​id=simo:​documentos:​manual_ciudadano#​datos_basicos]]\\
 +registro.video=[[http://​www.youtube.com/​embed/​yyYvsEGNCik|http://​www.youtube.com/​embed/​yyYvsEGNCik]]\\
 +datosbasicos.video=[[http://​www.youtube.com/​embed/​YvNnKyC3VoY|http://​www.youtube.com/​embed/​YvNnKyC3VoY]]\\
 +formacion.video=[[http://​www.youtube.com/​embed/​blJndAlX66o|http://​www.youtube.com/​embed/​blJndAlX66o]]\\
 +experiencialaboral.video=[[http://​www.youtube.com/​embed/​blJndAlX66o|http://​www.youtube.com/​embed/​blJndAlX66o]]
 +
 +===== jobs.properties =====
 +
 +Contiene la configuración de los trabajos de ejecución fuera de máquina virtual, hasta el momento existen trabajos para ejecutar como procedimientos almacenados o como Pentaho, el prefijo de las propiedades (después de la palabra job) constituye el identificados del trabajo, ejemplo
 +
 +#Trabajo de distribucion automatico\\
 +job.dist.servidor=julian1\\
 +job.dist.clase=co.gov.cnsc.sigeca.jobs.CallStoredProcedureJob\\
 +job.dist.descripcion=Distribución automática para una prueba\\
 +job.dist.recordable=true\\
 +job.dist.repetible=true\\
 +job.dist.startNow=true\\
 +job.dist.procedureName=public.distribucionautomatica\\
 +job.dist.inParameters=tipo\\
 +#​job.dist.allowedRoles=ADMINISTRADOR,​ADMIN_ENTIDAD_EDUCATIVA
 +
 +===== antecedentes.properties =====
 +
 +Contiene configuración de calificación automática de valoración de antecedentes
  
simo/documentos/tecnicos/configuracion.1510687765.txt.gz · Última modificación: 2017/11/14 19:29 por lgomez