Calling the Wolfram Language from Java

KernelLink communicate with a Wolfram Language kernel

MathLink low-level methods for communicating with any Wolfram Symbolic Transfer Protocol (WSTP) program

MathLinkFactory create links

MathLinkException link errors

Monitoring Packet Flow

PacketListener, PacketArrivedEvent respond to arrival of WSTP packets

PacketPrinter print packet contents (useful for debugging)

Representing & Storing Expressions

Expr Java representation of Wolfram Language expressions

LoopbackLink temporary storage for expressions

User Interface Components

MathFrame, MathJFrame convenience classes for Wolfram Language-aware Java windows

MathCanvas, MathGraphicsJPanel display Wolfram Language graphics and typeset output

ConsoleWindow display Java console output

MathSessionPane fully functional user interface for Wolfram Language kernel sessions

InterruptDialog user interface for interrupting computations

BracketMatcher, SyntaxTokenizer utility classes for working with Wolfram Language input

Event Listeners

MathActionListener call a Wolfram Language function when an ActionEvent occurs in Java

MathWindowListener call a Wolfram Language function when a WindowEvent occurs in Java

MathAdjustmentListener  ▪  MathComponentListener  ▪  MathContainerListener  ▪  MathFocusListener  ▪  MathItemListener  ▪  MathKeyListener  ▪  MathMouseListener  ▪  MathMouseMotionListener  ▪  MathPropertyChangeListener  ▪  MathTextListener  ▪  MathVetoableChangeListener

LinkSnooper monitor the flow of packets between two WSTP programs

MathematicaTask Ant task for calling the Wolfram Language