Я пытался разобрать документ mathml с помощью JScience, но безуспешно. Ниже приведен мой фрагмент кода.
import JSci.io.*;
import JSci.mathml.*;
.
.
public class ParsingMathML(){
try {
....
//inputFile is an xml file containing mathml code
InputSource file = new InputSource(new FileReader(inputFile));
MathMLParser parser = new MathMLParser();
parser.parse(file);
Object[] parseList = parser.translateToJSciObjects();
}catch (Exception e) {
e.printStackTrace();
}
}
Я получил ошибку отсюда, поэтому я не мог ничего сделать дальше. Ниже приведен StackTrace:
Exception in thread "AWT-EventQueue-0" java.lang.NoClassDefFoundError: JSci/maths/fields/Ring$Member
at JSci.io.MathMLParser.translateToJSciObjects(Unknown Source)
at JSci.io.MathMLParser.translateToJSciObjects(Unknown Source)
at mathML.ProcessMathML.processFile(ParsingMathML.java:109)
at mathML.ProcessMathML.actionPerformed(ParsingMathML.java:72)
at javax.swing.AbstractButton.fireActionPerformed(Unknown Source)
at javax.swing.AbstractButton$Handler.actionPerformed(Unknown Source)
at javax.swing.DefaultButtonModel.fireActionPerformed(Unknown Source)
at javax.swing.DefaultButtonModel.setPressed(Unknown Source)
at javax.swing.AbstractButton.doClick(Unknown Source)
at javax.swing.plaf.basic.BasicMenuItemUI.doClick(Unknown Source)
at javax.swing.plaf.basic.BasicMenuItemUI$Handler.mouseReleased(Unknown Source)
at java.awt.Component.processMouseEvent(Unknown Source)
at javax.swing.JComponent.processMouseEvent(Unknown Source)
at java.awt.Component.processEvent(Unknown Source)
at java.awt.Container.processEvent(Unknown Source)
at java.awt.Component.dispatchEventImpl(Unknown Source)
at java.awt.Container.dispatchEventImpl(Unknown Source)
at java.awt.Component.dispatchEvent(Unknown Source)
at java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source)
at java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)
at java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)
at java.awt.Container.dispatchEventImpl(Unknown Source)
at java.awt.Window.dispatchEventImpl(Unknown Source)
at java.awt.Component.dispatchEvent(Unknown Source)
at java.awt.EventQueue.dispatchEvent(Unknown Source)
at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.run(Unknown Source)
Caused by: java.lang.ClassNotFoundException: JSci.maths.fields.Ring$Member
at java.net.URLClassLoader$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClassInternal(Unknown Source)
... 31 more
Кроме того, кто-нибудь знает, как использовать MathMLApplyElementImpl, MathMLDocumentImpl или любые другие классы из пакета JSci.mathml?
Было бы здорово, если бы вы предоставили пример кода для разбора документа mathml.
Любая идея будет высоко оценена. Спасибо