Crypto class missing in TEI ODD transformation

Having trouble installing Oxygen? Got a bug to report? Post it all here.
whyme
Posts: 89
Joined: Fri Mar 08, 2013 8:58 am

Crypto class missing in TEI ODD transformation

Post by whyme »

I'm trying to do an ANT-based transformation of an ODD file and getting this error:

Code: Select all

Description
Transformation failed. /Applications/Oxygen XML Editor/frameworks/tei/xml/tei/stylesheet/common/teianttasks.xml:389: java.lang.NoClassDefFoundError: ro/sync/basic/util/Crypto
Severity
Fatal
Scenario
TAN schemas: TEI ODD to RelaxNG Compact
Build file
/Applications/Oxygen XML Editor/frameworks/tei/xml/tei/stylesheet/rnc/build-to.xml
Engine name
ANT
I'm not sure how to fix this. The ANT report is here:

Code: Select all

BUILD FAILED
/Applications/Oxygen XML Editor/frameworks/tei/xml/tei/stylesheet/rnc/build-to.xml:30: The following error occurred while executing this line:
/Applications/Oxygen XML Editor/frameworks/tei/xml/tei/stylesheet/common/teianttasks.xml:389: java.lang.NoClassDefFoundError: ro/sync/basic/util/Crypto
at ro.sync.xml.transformer.n.f(Unknown Source)
at ro.sync.xml.transformer.saxonee.SaxonEEUtilImpl.supplySaxonLicenseAndSchemaResolver(Unknown Source)
at net.sf.saxon.Configuration.newConfiguration(Unknown Source)
at net.sf.saxon.s9api.Processor.<init>(Processor.java:66)
at net.sf.saxon.jaxp.SaxonTransformerFactory.<init>(Unknown Source)
at net.sf.saxon.TransformerFactoryImpl.<init>(TransformerFactoryImpl.java:46)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
at java.lang.Class.newInstance(Class.java:442)
at org.apache.tools.ant.taskdefs.optional.TraXLiaison.getFactory(TraXLiaison.java:427)
at org.apache.tools.ant.taskdefs.optional.TraXLiaison.getSource(TraXLiaison.java:257)
at org.apache.tools.ant.taskdefs.optional.TraXLiaison.readTemplates(TraXLiaison.java:309)
at org.apache.tools.ant.taskdefs.optional.TraXLiaison.createTransformer(TraXLiaison.java:328)
at org.apache.tools.ant.taskdefs.optional.TraXLiaison.transform(TraXLiaison.java:188)
at org.apache.tools.ant.taskdefs.XSLTProcess.process(XSLTProcess.java:881)
at org.apache.tools.ant.taskdefs.XSLTProcess.execute(XSLTProcess.java:419)
at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:293)
at sun.reflect.GeneratedMethodAccessor4.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106)
at org.apache.tools.ant.Task.perform(Task.java:348)
at org.apache.tools.ant.taskdefs.Sequential.execute(Sequential.java:68)
at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:293)
at sun.reflect.GeneratedMethodAccessor4.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106)
at org.apache.tools.ant.Task.perform(Task.java:348)
at org.apache.tools.ant.taskdefs.MacroInstance.execute(MacroInstance.java:402)
at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:293)
at sun.reflect.GeneratedMethodAccessor4.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106)
at org.apache.tools.ant.Task.perform(Task.java:348)
at org.apache.tools.ant.Target.execute(Target.java:435)
at org.apache.tools.ant.Target.performTasks(Target.java:456)
at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1405)
at org.apache.tools.ant.Project.executeTarget(Project.java:1376)
at org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:41)
at org.apache.tools.ant.Project.executeTargets(Project.java:1260)
at org.apache.tools.ant.Main.runBuild(Main.java:857)
at org.apache.tools.ant.Main.startAnt(Main.java:236)
at org.apache.tools.ant.launch.Launcher.run(Launcher.java:287)
at org.apache.tools.ant.launch.Launcher.main(Launcher.java:113)
Caused by: java.lang.ClassNotFoundException: ro.sync.basic.util.Crypto
at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
alex_jitianu
Posts: 1008
Joined: Wed Nov 16, 2005 11:11 am

Re: Crypto class missing in TEI ODD transformation

Post by alex_jitianu »

Hello,

There is a jar missing from the scenario's configuration. Are you using the built-in TEI ODD framework or have you installed the add-on provided by the TEI Consortium?

Anyway, here is how to add the missing jar:
1. go to Options, Preferences... , on page Document Type Associations and edit the TEI ODD framework. In case there are multiple frameworks with this name, please edit the one that is above in the list. Chances are this is the one being used...
2. go on the Transformation tab and edit the desired scenario. In this case it's the one named TEI ODD to RelaxNG Compact but all of them need this change if they are to work.
3. in the scenario edit dialog, click on the Libraries button from bottom right.
4. in the Libraries dialog add a new entry: ${oxygenHome}/lib/oxygen-basic-utilities.jar
5. Exit with OK all the way out.

One more thing to take care of... to make sure Oxygen isn't using an old, cached version of the scenario, when you return to the TEI ODD document, please use Configure Transformation Scenario(s) from the toolbar to select and run the scenario.

Best regards,
Alex
whyme
Posts: 89
Joined: Fri Mar 08, 2013 8:58 am

Re: Crypto class missing in TEI ODD transformation

Post by whyme »

Thank you, Alex.

It turns out that I needed to do what you suggested, but in a different area. I document it here in case others stumble across this thread.

The problem lay in the Ant Transformation Scenario I had already set up. I needed to go into Configure Transformation Scenarios and edit the chosen Scenario. Under the Options tab there's a button in the bottom right corner, Libraries. The jar file you mentioned was not in that list, so I added it. After saving and closing the scenario I ran the transformation, and it worked fine.
Post Reply