Nuevo tipo encapsulado en un JAR

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

Nuevo tipo encapsulado en un JAR

Hola a todos,

Hace poquito he comenzado con Alfresco y llevo peleándome con la creación de espacios y contenidos.

Gracias a la Mini-Guia de creación de contenido, he aprendido bastante y he hecho mis primeros pinitos: He creado mis primeros espacios y contenidos ubicando los ficheros de configuración en {TOMCAT_HOME}\tomcat\shared\classes\alfresco\extension.

En estos momentos, estoy intentando encapsular en un jar la configuración de un contenido o espacio, pero no consigo que alfresco cargue el nuevo tipo cuando el context está dentro del jar, dándome el error de que no encuentra el espacio de nombres por el que lo intento cargar.

14:49:40,717 WARN  [org.alfresco.web.bean.spaces.CreateSpaceWizard] Failed to add 'aa:espacio' to the list of folder types as the prefix can not be resolved

El jar tiene la siguiente estructura:

Paquete: alfresco\extension, donde tengo los 2 ficheros  de definición del modelo y del context (ajCustomSpace.xml y module-context.xml)

module-context.xml:

<?xml version='1.0' encoding='UTF-8'?>
<!DOCTYPE beans PUBLIC '-//SPRING//DTD BEAN//EN' 'http://www.springframework.org/dtd/spring-beans.dtd'>
<beans>
    <!– Registration of new models –>   
    <bean id="extension.dictionaryBootstrap" parent="dictionaryModelBootstrap" depends-on="dictionaryBootstrap">
        <property name="models">
            <list>
                <value>alfresco/extension/ajCustomSpace.xml</value>               
            </list>
        </property>       
    </bean>         
</beans>

Si introduzco la línea <value>alfresco/extension/ajCustomSpace.xml</value>   en un fichero -context.xml ubicado en tomcat\shared… entonces lo carga sin problema.

¿Por qué no le gusta a alfresco mi fichero jar?   :x

Gracias por toda la ayuda de antemano
1 Reply
ajimenez
Member II

Re: Nuevo tipo encapsulado en un JAR

Después de dejarlo por imposible, esta mañana quise volver a intentarlo, porque por otro lado, uno de los ejemplos que trae la SDK del que había partido si que era cargado. La diferencia entre ambos proyectos, además de los cambios que pudiera haber entre en los xml de definición de tipos, residía en que el ejemplo lo había construido con ant, y mi proyecto con "export jar" de eclipse.


Probé a exportar a un jar el proyecto ejemplo, usando eclipse
Arranco alfresco y nada, alfresco pasa de cargar el jar del ejemplo que acabo de construir.  :evil:
Pues nada a destripar el jar del ant y el del eclipse, para ver la diferencia… la única.. el manifiest, que traía dos valores mas, una referencia a ant y otra a sun. Me extrañaba que esto fuera, pero por probar, construí un jar con eclipse, y luego le sobrescribí el manifiest y volví a probar. Pues nada, Alfresco seguía ignorando mi jar.  :shock:

Recapitulando, tenía que el jar consturido con ant era cargado, y el mismo proyecto, construido con el eclipse, incluyendo el manifiest no era cargado.

Pasé a comparar las propiedades de ambos jars, encontrando que eclipse usa la versión 2.0 del zip, y ant la 1.0.

No he encontrado información al respecto, pero por lo menos ya puedo construir módulos y Alfresco los carga.

Un saludo y espero que esto le sea de utilidad a alguien.