Obba provides a bridge from spreadsheets to Java classes. With Obba, you can easily build spreadsheet GUIs (Excel or OpenOffice) to Java code. Its main features are:
* Loading of arbitrary jar or class files at runtime through an spreadsheet function.
* Instantiation of Java objects, storing the object reference under a given object label.
* Invocation of methods on objects referenced by their object handle, storing the handle to the result under a given object label.
* Asynchronous method invocation and tools for synchronization, turning your spreadsheet into a multi-threaded calculation tool.
* Allows arbitrary number of arguments for constructors or methods (avoids the limitation of the number of arguments for Excel worksheet functions).
* Serialization and de-serialization (save Serializable objects to a file, restore them any time later).
* All this though spreadsheet functions, without any additional line of code (no VBA needed, no additional Java code needed).
For a more detailed introduction see the Obba documentation
Components
Obba is small.
Obba for Excel consists of three files (these files will be installed by an an installer Install Obba for Excel.exe):
* Obba.xla: An Excel Add-in providing workbook functions like obMake(), obCall(), obGet().
* Obba.dll: The bridge from Excel to Java.
* Obba.jar: The Java object handler and the Obba control panel.
Obba for OpenOffice consists of one file:
* Obba.oxt: The Obba Add-in including the OpenOffice adapter and Obba.jar (the Java object handler and the Obba control panel).
Your users want to customize formulas. They know Excel or OpenOffice.
// Compile price finding factory and strategy implementation from spreadsheet:
EngineBuilder builder = SpreadsheetCompiler.newEngineBuilder();
builder.loadSpreadsheet( new File( PATH, "CustomPriceFormula.xls" ) );
builder.setFactoryClass( PriceFinderFactory.class );
builder.bindAllByName();
Engine engine = builder.compile();
PriceFinderFactory factory = (PriceFinderFactory) engine.getComputationFactory();
// Use it to compute a line item price:
LineItem item = getCurrentLineItem();
PriceFinder priceFinder = factory.newInstance( item );
BigDecimal price = priceFinder.getPrice();
Compile parametrized spreadsheets directly to bytecode.
* No need to have Excel, OpenOffice, or a JDK installed.
* Native speed, thread safe execution.
* Bind directly to your computation strategy interfaces.
* Using double, or BigDecimal for financial applications.
* Available under the GPL and commercially (details).
Aspose.Words enables .NET and Java applications to read, modify and write Word® documents without utilizing Microsoft Word®. Aspose.Words supports a wide array of features including document creation, content and formatting manipulation, powerful mail merge abilities, comprehensive support of DOC, RTF, WordprocessingML, HTML and PDF formats. Aspose.Words is truly the most affordable, fastest and feature rich Word component on the market.
JOOReports, the Open Source Java/OpenOffice Document and Report Generator, is a solution for creating office documents and reports in OpenDocument Text (ODT), PDF, Word and RTF starting from templates created with OpenOffice.org Writer.