Azioni sul documento
Error al ejecutar importador de OCS
Vai al livello superiore
Hola a todos,
Estoy configurando el external connector para poder enlazar cmdbuild con OCS y siguiendo todos los pasos que vienen en el readme_en.txt me quedo en el último. Al ejecutar el jar, me da el siguiente error:
java -jar ExternalConnector1.2.2.jar ./conf ImportOCS
...
log4j: Finished configuring.
ERROR: an error has occurred retrieving this file: configuration.xml
Exception in thread "main" java.lang.reflect.InvocationTargetException
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.eclipse.jdt.internal.jarinjarloader.JarRsrcLoader.main(JarRsrcLoader.java:56)
Caused by: java.lang.NullPointerException
at org.cmdbuild.externalconnector.configuration.ConfigurationFile.<init>(ConfigurationFile.java:34)
at org.cmdbuild.externalconnector.update.UpdateCMDBuild.main(UpdateCMDBuild.java:37)
... 5 more
Me baje el codigo fuente y vi que la linea 34 del ConfigurationFile.java es un iterator xml de los elementos del fichero, en este caso configuration.xml, pero mi fichero contiene:
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<cmdbuild>
<ServerAddress>127.0.0.1</ServerAddress>
<ServerContext>cmdbuild</ServerContext>
<ServerPort>8080</ServerPort>
<Username>administrador</Username>
<Password>passwd</Password>
</cmdbuild>
<inventory>
<DbType>mysql</DbType>
<DbAddress>siurana</DbAddress>
<DbPort>3306</DbPort>
<DbName>ocsweb</DbName>
<DbUser>ocs</DbUser>
<DbPassword>passwd</DbPassword>
</inventory>
</configuration>
----------------------
Y aparentemente no tiene nada raro. Que se me escapa? Alguien puede hecharme una mano?
Un saludo.
Hola Jose,
Estoy intentando hacer lo mismo, podrías indicar si lo has conseguido y qué guía has seguido para llevarlo a cabo ?
Gracias
Estoy en el mismo caso, has conseguido hacer funcionar esta importación ?
Creo que hay que meterle datos a CMDBuild, para crear las clases con los atrubutos necesarios, que mapeen los datos de OCS.
Hay 3 ficheros de configuración, el que muestras que es el fácil, con datos de conexión a la base de datos de OCS y la aplicación CMDBuild. Los otros dos son los más complicados:
cmdbuild-schema.xml
transform.xsl
En el transform.xml se establecen los parámetros que vamos a leer del OCS y donde lo vamos a meter en la base de datos CMDBuild.
<xsl:template match="/inventory/device">
<Computer key="Code">
<Code>
<xsl:value-of select="/inventory/device/TAG"/>
</Code>
<Description>
<xsl:value-of select="NAME"/>
</Description>
<SO>
<xsl:value-of select="/inventory/device/OSNAME"/>
</SO>
<RAM>
<xsl:value-of select="sum(/inventory/memory/CAPACITY)"/>
</RAM>
</Computer>
</xsl:template>
<xsl:template match="/CMDBUILD/Computer">
<Computerkey="Code">
<xsl:attribute name="objid">
<xsl:value-of select="./@objid"/>
</xsl:attribute>
<Code>
<xsl:value-of select="./Code"/>
</Code>
<Description>
<xsl:value-of select="./Description"/>
</Description>
<SO>
<xsl:value-of select="./SO"/>
</SO>
<RAM>
<xsl:value-of select="./RAM"/>
</RAM>
</Computer>
</xsl:template>
Y en el cmdbuild-schema.xml establece la estructura que va a recibir:
<?xml version="1.0"?>
<CMDBUILD>
<Computer>
<Code/>
<Description/>
<NumeroSerie/>
<SO/>
<RAM/>
</Computer>
<SchedaRete>
<IndirizzoIP/>
<MACAddress/>
</SchedaRete>
</CMDBUILD>
En principio creando los atributos y la clase que tiene por defecto, será suficiente. Pero a mi me falla...
No están muy claros los pasos a seguir en la importación...
Puede alguien ayudar un poco con este tema ???
Gracias
Previously Josep wrote:
Hola a todos,
Estoy configurando el external connector para poder enlazar cmdbuild con OCS y siguiendo todos los pasos que vienen en el readme_en.txt me quedo en el último. Al ejecutar el jar, me da el siguiente error:
java -jar ExternalConnector1.2.2.jar ./conf ImportOCS
...
log4j: Finished configuring.
ERROR: an error has occurred retrieving this file: configuration.xml
Exception in thread "main" java.lang.reflect.InvocationTargetException
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.eclipse.jdt.internal.jarinjarloader.JarRsrcLoader.main(JarRsrcLoader.java:56)
Caused by: java.lang.NullPointerException
at org.cmdbuild.externalconnector.configuration.ConfigurationFile.<init>(ConfigurationFile.java:34)
at org.cmdbuild.externalconnector.update.UpdateCMDBuild.main(UpdateCMDBuild.java:37)
... 5 more
Me baje el codigo fuente y vi que la linea 34 del ConfigurationFile.java es un iterator xml de los elementos del fichero, en este caso configuration.xml, pero mi fichero contiene:<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<cmdbuild>
<ServerAddress>127.0.0.1</ServerAddress>
<ServerContext>cmdbuild</ServerContext>
<ServerPort>8080</ServerPort>
<Username>administrador</Username>
<Password>passwd</Password>
</cmdbuild>
<inventory>
<DbType>mysql</DbType>
<DbAddress>siurana</DbAddress>
<DbPort>3306</DbPort>
<DbName>ocsweb</DbName>
<DbUser>ocs</DbUser>
<DbPassword>passwd</DbPassword>
</inventory>
</configuration>
----------------------Y aparentemente no tiene nada raro. Que se me escapa? Alguien puede hecharme una mano?
Un saludo.



