ListOfValuesConstraint

cancel
Showing results for 
Search instead for 
Did you mean: 
msaenz
Member II

ListOfValuesConstraint

Jump to solution

Buenas noches amigos, molestando con una duda. Hace algunos mese se hizo un desarrollo donde metadatos de cierto tipo documental se integraron de manera que fueran dinámicos, es decir, alimentados desde una base de datos. En un prinicipio funcionaba bien, sin embargo cuando se ingresa o elimina un registro en la base de datos, la lista de valores no se actualiza, por lo que queda desempatado. Sabrán si me falta algún tipo de modificación? Anexo el código de la clase java y del modelo donde estoy realizando las modificaciones. Muchas gracias de antemano por sus respuestas, saludos!!

CLASE JAVA 


package conexion;
import java.sql.*;
import java.util.ArrayList;
import java.util.List;
import org.alfresco.repo.dictionary.constraint.ListOfValuesConstraint;
public class Conexion6 extends ListOfValuesConstraint{

@override
public void setAllowedValues(List allowedValues){}

@override
public void setCaseSensitive(boolean caseSensitive){}

public void initialize(){
super.setCaseSensitive(false);

try {
Connection conectar = DriverManager.getConnection("jdbcSmiley Tongueostgresql://XXXXX:5432/XXXXX", "XXXXX", "XXXXX");
System.out.println("Base de datos conectada");
java.sql.Statement st = conectar.createStatement();
String sql="select * from cat_expdig_tipodocto";
ResultSet result=st.executeQuery(sql);
List<String>allowedValueList=new ArrayList<String>();

while(result.next()){

String clave=result.getString("siglas_docto");
System.out.println(clave);
allowedValueList.add(clave);
}

result.close();
st.close();
conectar.close();
super.setAllowedValues(allowedValueList);

} catch (Exception e) {

System.out.println("Error al conectar la hase de datos"+e);
}
}}

 

 

MODELO 

 

<?xml version="1.0" encoding="UTF-8"?>
<model xmlns="http://www.alfresco.org/model/dictionary/1.0" name="servexpdigit:servexpdigit">
    <description>Servicios de Expediente Digital</description>
    <author>Alejandra Basurto</author>
    <imports>
        <import uri="pmxmoi" prefix="pmxmoi"/>
        <import uri="http://www.alfresco.org/model/dictionary/1.0" prefix="d"/>
    </imports>
    <namespaces>
        <namespace uri="servexpdigit" prefix="servexpdigit"/>
    </namespaces>
    <data-types/>
    <constraints>
        <constraint name="servexpdigitSmiley TongueropertyRef6" type="conexion.Conexion6">
            <parameter name="allowedValues">
                <list>
                </list>
            </parameter>
            <parameter name="caseSensitive">
                <value>false</value>
            </parameter>
            <parameter name="sorted">
                <value>false</value>
            </parameter>
        </constraint>
    </constraints>
    <types>
        <type name="servexpdigitSmiley Tonguex_exp_docmnt_trabj">
            <title>EXPDIG Documento de Trabajo</title>
            <parent>pmxmoiSmiley Tonguex_pce_docmnt_trabj</parent>
            <properties>
                <property name="servexpdigit:n_siglas_tipo_docto">
                    <title>Siglas TIpo de Documento</title>
                    <type>d:text</type>
                    <mandatory>false</mandatory>
                    <index enabled="true">
                        <tokenised>TRUE</tokenised>
                        <facetable>false</facetable>
                    </index>
                    <constraints>
                        <constraint ref="servexpdigitSmiley TongueropertyRef6"/>
                    </constraints>
                </property>
                <property name="servexpdigit:n_codfccn">
                    <title>Codificación</title>
                    <type>d:int</type>
                    <mandatory>false</mandatory>
                    <index enabled="true">
                        <tokenised>TRUE</tokenised>
                    </index>
                </property>
                <property name="servexpdigit:n_genrc_2">
                    <title>Información genérica 2</title>
                    <type>d:text</type>
                    <mandatory>false</mandatory>
                    <index enabled="true">
                        <tokenised>TRUE</tokenised>
                        <facetable>false</facetable>
                    </index>
                    <constraints>
                        <constraint name="servexpdigit:LENGTH_1e2c96d8-7f56-4213-8422-496abec8922b" type="LENGTH">
                            <parameter name="maxLength">
                                <value>40</value>
                            </parameter>
                            <parameter name="minLength">
                                <value>1</value>
                            </parameter>
                        </constraint>
                    </constraints>
                </property>
            </properties>
            <associations/>
            <overrides/>
            <mandatory-aspects/>
        </type>
    </types>
    <aspects/>
</model>
1 Solution

Accepted Solutions
angelborroy
Alfresco Employee

Re: ListOfValuesConstraint

Jump to solution

Esa inicialización de la lista de valores se realiza únicamente cuando se carga el modelo, así que los cambios en base de datos no son refrescados en la lista.

Si quieres recargar los valores cada vez que se muestra la lista, debería realizar un control de Share específico, que incluya una llamada al repositorio cada vez que se utiliza en una página.

Quizá este ejemplo te sirva de ayuda:

https://github.com/keensoft/alfresco-datalist-constraints/blob/master/datalist-model-share/src/main/...

Hyland Developer Evangelist

View solution in original post

1 Reply
angelborroy
Alfresco Employee

Re: ListOfValuesConstraint

Jump to solution

Esa inicialización de la lista de valores se realiza únicamente cuando se carga el modelo, así que los cambios en base de datos no son refrescados en la lista.

Si quieres recargar los valores cada vez que se muestra la lista, debería realizar un control de Share específico, que incluya una llamada al repositorio cada vez que se utiliza en una página.

Quizá este ejemplo te sirva de ayuda:

https://github.com/keensoft/alfresco-datalist-constraints/blob/master/datalist-model-share/src/main/...

Hyland Developer Evangelist