Sunday, March 25, 2012

Integrating Docflex with XMLSpy

I install docflex
http://www.filigris.com/products/docflex_xml/integrations/xmlspy/

I install XMLSpy
http://www.altova.com/s

I find C:\Program Files\Altova\XMLSpy2012\XMLSpyInterface.jar

I adjust the classpath in generator.bat
I adjust also the parameters of the com.docflex.xml.Generator class, adding:
"-m:IMAGE_PROVIDER_CLASS=com.docflex.xml.xmlspy.SpyKit -m:XMLSPY_VERSION=2012"


I get this

================================================================================
DOCFLEX ERROR REPORT, 2012-03-25 00:08:07
================================================================================
DocFlex/XML, Version 1.8.5
Main class: com.docflex.xml.Generator
Arguments: -m:IMAGE_PROVIDER_CLASS=com.docflex.xml.xmlspy.SpyKit -m:XMLSPY_VERSION=2012
java.version=1.6.0_24
java.vendor=Sun Microsystems Inc.
os.name=Windows Vista
os.arch=x86
os.version=6.0
locale=en_US
--------------------------------------------------------------------------------
When processing: DocFlex/XML XSDDoc, Version 2.5.0
--------------------------------------------------------------------------------
Generator Exception:
When executing function 'spyStart'
java.lang.UnsatisfiedLinkError: C:\Windows\System32\XmlSpyLib.dll: Can't find dependent libraries
at Template Init Expression:
--------------------------------------------------------------------------------
spyStart (
getBooleanParam("integration.xmlspy.showApp"),
getStringParam ("integration.xmlspy.diagramFormat"),
getBooleanParam("integration.xmlspy.workarounds.fixCoords")
)
--------------------------------------------------------------------------------
Template Location Trace:
--------------------------------------------------------------------------------
at Template: C:\pierre\downloads\docflex-xml-1.8.5\docflex-xml-1.8.5\templates\XSDDoc\lib\integrations\xmlspy.tpl
at Call Template 'lib\integrations\xmlspy.tpl'
at Stock Section 'Init'
at Template: C:\pierre\downloads\docflex-xml-1.8.5\docflex-xml-1.8.5\templates\XSDDoc\FramedDoc.tpl
--------------------------------------------------------------------------------
When executing function 'callStockSection'
at Template Init Expression:
--------------------------------------------------------------------------------
callStockSection("Init");

setXMLNameForm (
getBooleanParam("show.nsPrefix") ? "qualified" : "unqualified"
);
--------------------------------------------------------------------------------
Template Location Trace:
--------------------------------------------------------------------------------
at Template: C:\pierre\downloads\docflex-xml-1.8.5\docflex-xml-1.8.5\templates\XSDDoc\FramedDoc.tpl
--------------------------------------------------------------------------------
Exception Stack Trace:
--------------------------------------------------------------------------------
java.lang.UnsatisfiedLinkError: C:\Windows\System32\XmlSpyLib.dll: Can't find dependent libraries
at java.lang.ClassLoader$NativeLibrary.load(Native Method)
at java.lang.ClassLoader.loadLibrary0(ClassLoader.java:1806)
at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1731)
at java.lang.Runtime.loadLibrary0(Runtime.java:823)
at java.lang.System.loadLibrary(System.java:1028)
at XMLSpyInterface.SpyApplication.(SpyApplication.java:423)
at com.docflex.xml.xmlspy.SpyKit.a(Unknown Source)
at com.docflex.xml.xmlspy.a.a(Unknown Source)
at com.docflex.a.d.a(Unknown Source)
at com.docflex.a.j.if(Unknown Source)
at com.docflex.e.d.bq.if(Unknown Source)
at com.docflex.e.d.i.lX(Unknown Source)
at com.docflex.e.d.ag.if(Unknown Source)
at com.docflex.e.d.i.a(Unknown Source)
at com.docflex.e.d.ak.else(Unknown Source)
at com.docflex.e.d.bt.else(Unknown Source)
at com.docflex.e.d.an.do(Unknown Source)
at com.docflex.e.d.au.if(Unknown Source)
at com.docflex.e.d.n.if(Unknown Source)
at com.docflex.e.d.ah.else(Unknown Source)
at com.docflex.e.d.ax.do(Unknown Source)
at com.docflex.e.d.au.if(Unknown Source)
at com.docflex.e.d.n.if(Unknown Source)
at com.docflex.e.d.ab.if(Unknown Source)
at com.docflex.e.d.a5.a(Unknown Source)
at com.docflex.e.d.a.l.a$b.a(Unknown Source)
at com.docflex.a.d.a(Unknown Source)
at com.docflex.a.y.a(Unknown Source)
at com.docflex.a.j.if(Unknown Source)
at com.docflex.e.d.bq.if(Unknown Source)
at com.docflex.e.d.i.lX(Unknown Source)
at com.docflex.e.d.ag.if(Unknown Source)
at com.docflex.e.d.i.mb(Unknown Source)
at com.docflex.e.d.i.mk(Unknown Source)
at com.docflex.e.d.i.l9(Unknown Source)
at com.docflex.e.d.i.a(Unknown Source)
at com.docflex.e.d.i.a(Unknown Source)
at com.docflex.xml.l.case(Unknown Source)
at com.docflex.xml.l.access$300(Unknown Source)
at com.docflex.xml.l$4.run(Unknown Source)
at java.lang.Thread.run(Thread.java:662)




What is missing? Widows doesn't tell you.

I download http://www.dependencywalker.com/

it turns out that ICCFM.DLL was missing. I find this file somewhere and copy it to C:\Windows\System32


Anyway the end result is GREAT, the HTML generated with XmlSpy graphs embedded is REALLY looking good. Awesome product this DocFlex


No comments: