Your Christmas shopping troubles are over: more than 40 Java Markup Language Editors
A few weeks ago I published a quick roll-up of about 40 component
libraries for Swing applications that we plan to include in the
javadesktop.org Swing Depot
produced a nice bunch of feedback about libraries I'd failed to note and so I published
a follow up blog
with a dozen more. Since then I've been pointed at another 25, so I
hope to update the list again before too long. However in the interim
I've fielded questions from customers and partners and colleagues
about Java based tools for markup languages, notably UML, HTML, and
XML. So I've put together a list of those, at least the ones I'm aware
of. The list that follows strives for all the same high levels of
journalistic integrity that my previous efforts have:
in many cases I've lifted or crudely paraphrased vendor product
descriptions in the list below, rather than craft my own pithy
summary. It's not because I'm incapable of doing a good job of that,
it's because I'm lazy and life is short. It's also worth pointing out
that I'm not trying promote the relative merits of these applications,
just their existence.
As before, I'd appreciate pointers to products I've failed to
HTML Browsers and Editors
The Swing JEditorPane component provides extensible support for
rendering and editing HTML4.0. Although it's quite capable, it's not
intended to be sufficient for general purpose web browsing or for high
fidelity HTML authoring. Even applications that apply JEditorPane to more
modest tasks will still find that they need to create a composite
panel that adds GUI elements like menus and toolbars for common
operations. The HTML and XHTML components listed in this section are
extensions, encapsulations, or replacements for JEditorPane that
overcome these limitations.
If you want to put your small business on the web,
Yahoo! Small Business
is your one stop shop for helping you
get online, sell online, and market online through products and services
including domain registration, hosting, ecommerce, and customer
recruitment tools. SiteBuilder is a Yahoo Small Business product that
enables a user to create, publish, and update a web site from within one
of the most capable Swing applications we've seen in some time. It's a
complete HTML authoring tool, with templates, clip art, drag-and-drop
editing, and precise positioning and layout.
Yahoo Site Builder was covered in
Swing Sightings #21.
[I used Google to translate this site into English so I may have
missed some of the finer points.] Xpage Internet Studio is a complete
web site authoring system. It supports direct manipulation style
editing of HTML as well as publishing a complete site to your ISP.
ICESoft has been building pure Java web rendering software for quite a
long time. They now have three big products:
ICEbrowser SDK offers a compliant and configurable Web browser engine
proprietary plug-in interface to integrate third-party and custom
content handlers (such as JMF, XSL/XSLT, SVG, and PDF).
ICEreader SDK enables developers to render static HTML/XML content in
applications where secure or dynamic Web capabilities are not
ICEpdf SDK can be used as a standalone PDF document viewer
application, an embeddable PDF viewer component, or combined with
ICEbrowser SDK for a complete web-content rendering solution.
Loads of very high level parts here, beginning with the WebWindow
browser component. WebWindow is a small pure Java HTML viewer that's
intended to take up the slack from Swing's JEditorPane. JModeler is a
generic diagram editor for building modeling applications and the
Javaio Component Suite includes components like JOutlookBar (this sort
of thing is sometimes called an "accordion" control), JHelpView for
JavaHelp, and JSlidePanel for animating panels in and out of view.
Grand-Rapid Browser provides an extensive rendering & browsing
environment based on accepted and opened standards. Beyond the
browsing experience Grand-Rapid Browser offers an extensible
architecture that can embed various tools in the same application.
Sferyx JSyndrome HTMLEditor is a Java component suitable for use in
any Java application or applet which needs HTML document authoring.
JSyndrome was covered in
Swing Sightings #14.
With project SimplyHTML an application is built for working with text
documents. Text documents are stored in HTML and CSS format, but the
application is meant as a word processor rather than a code editor or
web site builder.
SimplyHTML was covered in
Swing Sightings #12.
The goal of the Browser component, org.jdesktop.jdic.browser, is to
provide a simple AWT component which enables Java applications and
applets to provide basic web browsing capability. The basic functionality
includes creating browser windows, rendering web content, navigation,
a basic history mechanism (back and forward), and progress
notification. The JDIC browser component encapsulates the native
browser's rendering panel (Mozilla Gecko or Internet Explorer).
WebRenderer is Java component that encapsulates the native browser.
It offers full multimedia support across platforms and most forms of
web content including the latest HTML standards such as SSL. Most
popular desktop platforms (and their browsers) are supported:
Windows, Linux, OSX, Solaris and JDS.
Clue Web Browser Components (WBC) is designed for desktop and server
applications. Developed on top of the Java2 platform, Clue WBC takes
full advantages of Java2's rich functionality and works seamlessly
with the Java Foundation Class.
Clue WBC also provides a rich set of APIs. The APIs have simple
methods to set a web address or a HTML string for rendering. There are
also sophisticated methods to control every aspect of the
browser. With the nicely defined APIs, developers can design powerful
applications quickly and easily.
EditLive! for Java is an online XHTML authoring tool that empowers
business users with an intuitive, easy-to-use interface for creating
and publishing web content.
JWebEdixx is a HTML Editor Applet for developers. It enables the
development of browser independent applications with advanced HTML
editing capabilities. By using a XML configuration file, JWebEdixx is
very customizable. Version 1.1 has many new features: table support,
available for the integration in Swing applications.
JWebDixx was covered in
Swing Sightings #21.
JXHTMLEDIT is a cross-platform WYSIWYG HTML/XHTML content authoring
tool, a very small Java applet based on the Java 2
Platform. JXHTMLEDIT provides word processor-like user interface that
allows to edit the document d irectly in the final form (as will be
rendered). JXHTMLEDIT is flexible and could be used to easily
integrate WYSIWYG authoring functionality into existing products or
services. Applet is less than 90 KB, so it loads very quickly.
Ekit is a free open source Java HTML editor applet and application. The
Ekit standalone also allows for HTML to be loaded and saved, as well
as serialized and saved as an RTF.
Some of the entries listed here were lifted from
Free XML tools and software,
a really helpful site maintained by Lars Marius Garshol.
TIBCO TurboXML is an Integrated Development Environment (IDE) for
developing and managing XML assets. With facilities for creating,
validating, converting, and managing XML schemas, XML files and DTDs,
TurboXML provides a best-of-class XML implementation platform that
combines industry leading XML solutions (XML schema authoring, XML
instance editing, and XML project management) into an simple and
intuitive IDE. TurboXML, which is currently deployed in thousands of
organizations around the world, is the first XML IDE to offer
comprehensive support for the latest XML standard - the XML Schema
TurbXML was covered in
Swing Sightings #6.
Exchanger from Cladonia is a very capabale XML editing tool. As they
say on their web site: "it features schema-based editing, tag
prompting, validation against a DTD, XML Schema*, RelaxNG, tree view
and outliner for tag free editing, XPath and regular expression
searches, schema conversion, XSLT and XSLFO transformations,
comprehensive project management, an SVG viewer and conversion, easy
SOAP invocations, and more."
Exchanger was covered in
Swing Sightings #20.
Comprehensive support for XML document editing, formatting and
validation including a "content assistant", an XML outliner, and much
more. <oXygen/> provides complete XSLT 2.0 support including
editing, validating and debugging XSLT 2.0 stylesheets as well as
transforming XML documents using XSLT 2.0 stylesheets. Additionally
there'san XPath 2.0 evaluator, an XQuery Editor, WSDL Editor and SOAP
Analyzer, SVG Viewer and many other features.
<oXygen/> was covered in
Swing Sightings #13.
EditiX is a Swing based XML editor designed to help web authors and
application programmers take advantage of the latest XML and
XML-related technologies such as XSLT / FO and XSD Schema. EditiX
provides users with an extensive range of XML functionality within a
refined IDE that guides you with intelligent entry helpers. EditiX
has realtime XPath location and syntax error detection. Helpers are
also provided with context syntax popup supporting DTD, Schema and
RelaxNG. EditiX supports multiple templates and project
management. User can apply XSLT or FO Transformation and show the
result with a dedicated view. All the process can be managed by
shortcuts. EditiX includes default templates with XML, DTD, XHTML,
and many more.
EditiX was covered in
Swing Sightings #21.
XMLEspresso 4.0 is a full featured XML editor for creating and
maintaining XML documents. It's available as an applet or an
Protege-2000 is a tool which allows the user to, construct a domain
ontology, customize data entry forms, enter data. It's also a
a platform which can be extended with graphical widgets for tables,
diagrams, animation components to access other knowledge-based systems
embedded applications; it's a a library which other applications can
use to access and display knowledge bases.
X-Smiles is an XML browser developed in Java. It has a
component-based architecture that allows it to run in many different
UI environments. In addition, XML vocabularies are rendered by Java
components, which can be plugged into the browser. XML documents can
also be displayed by using XSLT to transform them into an already
XPath Visualizer can be used to learn XPath and also debug XPath
expressions. The visualizer can show an XML document in a tree view
and then allows the user to execute an XPath expression against that
document, and see which nodes were matched.
Octopus is a simple Java-based Extraction, Transformation, and Loading
(ETL) tool. It may connect to any JDBC data sources and perform
transformations defined in an XML file.
GenDoc is an open source XML editor for data-oriented applications
which has a tree-view and a styled view. It has a plugin API that
allows the editing of some elements to be customized for specific
DTDs, and also allows publishing actions to be executed from the
editor. GenDoc is based on the now defunct Merlot project, and was
formerly known as GenDiapo.
Xmloperator is a tree-based XML editor, which can make use of a DTD
or a RELAX-NG schema to provide schema-driven editing. xmloperator is
mainly suitable for data-oriented XML rather than document-oriented
XML. The editor supports undo, and redo, comparison of documents, as
well as conversion using XSLT. It is based on the Xerces-J XML parser
and the Xalan-J XSLT engine.
XmlWrite is a powerful XML/XSL editing/transformation enviroment. It
features: syntax coloring, wizards and templates for xml/xsl files,
clipbook libraries for XHTML, SVG, XSLT, and much more.
An free open-source configurable and extensible XML editor. Among its
many features: HTML preview with an XSLT stylesheet, multiple
undo/redo, source code display, complete validation using Xerces, and
A comprehensive list of UML tools, both Java and native, can be
found on the
Objects by Design
Poseidon for UML is a popular, fully-fledged UML CASE tool. It evolved
from the open-source project ArgoUML and has turned it into a world
class modeling tool. Today, it has the fastest growing user community
and is famous for its superior usability. Poseidon for UML is
delivered in several editions to meet the needs of different users.
Poseidon for UML was covered in
Swing Sightings #5.
ArgoUML is the open source project behind Gentleware's Poseidon for UML product.
ArgoUML is licensed under the BSD license which also allows extensions to be commercialized.
ArgoUML was covered in:
Visual Paradigm for UML (VP-UML) is a powerful, cross-platform and yet
the most easy-to-use visual UML modeling and CASE tool. VP-UML
provides software developers the cutting edge development platform to
build quality applications faster, better and cheaper! It facilitates
excellent interoperability with other UML CASE tools and most of the
leading IDEs which excels your entire Model-Code-Deploy development
process in this one-stop-shopping solution.
Violet is a free UML editor written in Java and released under the GNU
Public License. The author, Cay Horstman , who's a Professor of
Computer Science in the Department of Mathematics & Computer Science
at San Jose State University, explained the origins of Violet like
this: "I wrote Violet for my students who were overwhelmed by the
functionality and/or price of Rational Rose, and it has since been
popular with other students and instructors. I couldn't have done it
without Swing. If you look inside the (GPL) source, you'll find a
really nifty application of Swing long-term bean persistence." Kind
words like that made more than one day over at Swing central. And in
case you're wondering, VIOLET is the "Very Intuitive Object Layout
The Violet UML Editor was covered in:
Swing Sightings #17.
MagicDraw is a visual UML modeling and CASE tool with teamwork
support. Designed for Business Analysts, Software Analysts,
Programmers, QA Engineers, and Documentation Writers, this dynamic and
versatile development tool facilitates analysis and design of Object
Oriented (OO) systems and databases. It provides the industry's best
code engineering mechanism (with full round-trip support for J2EE, C#,
C++, CORBA IDL programming languages, .NET, XML Schema, WSDL), as well
as database schema modeling, DDL generation and reverse engineering
UMLet is an open-source lightweight Java tool for drawing UML
diagrams. UMLet lets sketch diagrams quickly. You can export
diagrams to eps, pdf, jpg, svg, and the system clipboard. You can also
create your own custom graphical elements
SILVERRUN ModelSphere is an exciting and unique modeling tool that
combines many features, such as process modeling, data modeling and
UML modeling, and provides a flexible model management environment.
CodeLogic for Java is designed to allow developers to take advantage
of its power directly from their favorite Integrated Development
Environment (IDE). With plug-ins for Eclipse, JBuilder, JDeveloper
and IntelliJ IDEA users to extend these IDEs with tools that will
allow them to immediately gain insight and control over existing
ArcStyler provides a comprehensive, architecture-driven solution for
end-to-end model-driven development of modern, component-based
OptimalJ from Compuware accelerates J2EE development by generating
working applications directly from visual models. Through the power of
patterns and model-driven application design, OptimalJ decreases the
need for extensive coding and design skills, and delivers high
productivity and consistency.
JUDE is a modeling tool which supports your object-oriented software
designing in JavaTM and UML1.4(Unified Modeling Language).
Aris UML Designer convers technical requirements into the standard
modeling language UML, thus guaranteeing consistent, object-oriented
modeling of all program functionalities.
Visual CaseTM is a powerful AMD Tool for software development,
database design and business analysis. Visual Case combines the UML
modeling language, legacy diagrams and E/R (entity relationship)
design tools with a round-trip database engineering tool and a
sophisticated SQL editor in one integrated CASE tool.