<?xml version="1.0" encoding="ISO-8859-1" ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta
    http-equiv="Content-Type"
    content="text/html; charset=ISO-8859-1" />
<title>Other Third Party Dependancies</title>
</head>
<body>
<h1>Other Third Party Dependancies</h1>
<h2>Other Third Party Dependancies</h2>
<p>This document is to list and describe relationships with third party software which WTP depends on or works with.
For background context, see <a
    href="http://www.eclipse.org/org/documents/Eclipse_Policy_and_Procedure_for_3rd_Party_Dependencies_Final.pdf">Eclipse
Policy and Procedure for Third Party Dependencies</a>.
<p><strong>Note: Where we list available third party software in this document, we do so only to
domonstrate there are many choices for end-users. We do not mean to say those are the only available options nor do we
advocate the use of any particular one.</strong></p>
<h2>Application Servers</h2>
<p>We depend on Application Servers in two ways. First, and least important, we do have one function, Web Service
Explorer that actually runs as a web application. We happen to depend on and use what ever Application Server ships in
the Eclipse Platform, which for the Ganymede releases happens to be Jetty Version 5.x. We could run our WSE web app on
any JEE compliant server, but we do need to know it in advance ... it can not be "swapped out" by users or adopters.</p>
<p>Second, and most important, creating web applications -- the whole purpose of WTP! -- depends on having some
application server available. Ultimately it is up to the end user to provide their own Application Server to use with
WTP, but there are some "ease of use" options that provide different paths to using one or more Application Servers:
<h3>Preview Server</h3>
<p>We do offer, and users can make use of, a "preview server" that is built in to WTP. This is actually just making
use of what ever Application server ships with the Eclipse Platform, which is currently Jetty Version 5.x. We, in WTP,
do not surface the fact that this is Jetty, in order to be more "vendor neutral" and in fact could work with any JEE
compliant server, but, we do need to know in advance what server it is, in order to adapt to it specifically. There is
also an HTTP Preview Server that non-java users can use to "run" HTML and Javascript documents. Under the covers, the
built in HTTP Preview Server is the same as the JEE Preview Server.</p>
<p>These Preview Servers are offered simply to improve "out of the box" experience for novice end-users. It provides
capabilities to run servlets and JSPs. Most professional web developers will want to use some specific application
server that has the capabilities they need.</p>
<h3>Server Adapters</h3>
<p>Any server that's used with WTP needs a server adapter. This just provides a common interface for WTP to interact
with the server; to start, stop, and publish to the server. There are some server adapters that are shipped with WTP,
and others that are available from any vendor that wants to provide one. In some cases, those other adapters have
provided us with URLs to update sites, to make it easier for users to get their server adatper. There are, undoubtedly
other server adapters (and servers) we know nothing about.
<h4>Server Adapters that are built-in (shipped with WTP)</h4>
<ul>
    <li>Tomcat v3.2</li>
    <li>Tomcat v4.0</li>
    <li>Tomcat v4.1</li>
    <li>Tomcat v5.0</li>
    <li>Tomcat v5.5</li>
    <li>Tomcat v6.0</li>
    <li>IBM WebSphere V6.0</li>
    <li>JBoss v3.2.3</li>
    <li>JBoss v4.0</li>
    <li>JBoss v4.2</li>
    <li>JBoss v5.0</li>
    <li>JOnAS v4</li>
    <li>Oracle OC4J Standalone 10.1.3</li>
    <li>Oracle OC4J Standalone 10.1.3.n</li>
</ul>
<h4>Server Adapters that are available from built-in update sites</h4>
<ul>
    <li>BEA WebLogic 10.3</li>
    <li>BEA WebLogic 10.0</li>
    <li>BEA WebLogic 9.x</li>
    <li>BEA WebLogic 8.1</li>
    <li>Pramati Server 4.1</li>
    <li>Pramati Server 5.0</li>
    <li>Geronimo v1.0</li>
    <li>Geronimo v1.1.x</li>
    <li>Geronimo v2.0</li>
    <li>Glassfish v1</li>
    <li>Glassfish v2</li>
    <li>Glassfish v3</li>
    <li>Jetty 6.0</li>
    <li>WASCE v1.1.x</li>
    <li>WASCE v2.0</li>
</ul>
<h4>Installable Runtimes</h4>
<p>Normally when users install their own Application Server, they simply tell us where, on their file system, it is
(already) installed. If someone picks that they want to use a Tomcat server, we do offer an option (along with the
already existing location option) that they can download and install Tomcat from the Apache download site. In that case,
we do show them the appropriate Apache license which they must agree to, before the download of the zip file proceeds.</p>
<p>This option is provided just as an ease-of-use option to allow beginning users to get started easier and more
quickly.</p>
<h2>Java Persistence Frameworks</h2>
<p>JPA runtimes come built in with some application servers, but if not, users would have to download and install
their own. Several of these frameworks are listed below to demonstrate the many options available to the end-user.</p>
<h3>JPA Open Source libraries</h3>
<ul>
    <li>EPL - EclipseLink</li>
    <li>Apache - Open JPA</li>
    <li>CDDL - TopLink Essentials (available from Glassfish project)</li>
    <li>GPL - JBoss Hibernate</li>
</ul>
<h3>JPA Proprietary libraries</h3>
<ul>
    <li>Oracle TopLink</li>
    <li>BEA Kodo</li>
</ul>
<h2>JSF Runtimes and Component Libraries</h2>
<p>To execute a JSF application you need an implementation of the JSF spec and one or more component libraries. You
can get the implementation plus a core set of components from</p>
<ul>
    <li>Sun (https://javaserverfaces.dev.java.net/download.html)</li>
    <li>Apache MyFaces (http://myfaces.apache.org/download.html).</li>
</ul>
<p>JEE 5 compliant application servers implementations come with the JSF support built-in. Users can get additional
component libraries from a wide range of vendors including</p>
<ul>
    <li>Apache MyFaces Tomahawk</li>
    <li>Apache MyFaces Trinidad</li>
    <li>ICEFaces></li>
    <li>JBoss RichFaces</li>
    <li>Oracle's ADF Faces</li>
    <li>Project Woodstock</li>
</ul>
<h2>Axis2 Runtimes</h2>
<p>The Axis2 Web services tools in WTP are an optional feature. If users want to install those tools and make use of
them, they will need to have an Axis2 Runtime available. Users can download and install the Axis2 runtime from readily
available open source projects (e.g. see <a href="http://ws.apache.org/axis2/">Apache Axis2</a>). Then they will have to
specify the location of the Axis2 runtime to the WTP Axis2 tools.</p>
<h2>XDoclet</h2>
<p>For Java EE 1.4, EJB 2.1, there is a technique of developing (defining) EJBs that depend on having extra
annotations in JavaDoc comments. To make use of this technique, users have to download and install XDoclet, which is
readily available from free, open source projects (e.g. see <a href="http://xdoclet.sourceforge.net/xdoclet/index.html">XDoclet
at Sourceforge</a>. We do not ship this support built-in to WTP, simply because it would add a fairly substantial amount of
code (roughly 8 M Bytes) to the foot print, and we felt there are not enough users of this particular technique to
justify that increased footprint. In earlier versions of WTP, XDoclet was also (optionally) used in Servlet Wizards. But
this support is not needed anymore.</p>
<p>For the more recent JEE 5 servers and EJB 3 (and JPA) this annotation technique is simply built in to the Java 5
language.
<h2>XSLT Engines</h2>
<p>We provide one XSLT engine (Xalan 1.0) that works out of the box, but users can choose to install additional XSL
engines, such as Saxon 2.0 if they desire. There's no requirement to install it, but naturally every runtime (and
version) offers it's own special features.</p>
<h2>ICU</h2>
<p>ICU is some library code that improves the base internationalization support in Java (e.g. for sorting lists
correctly, etc). This comes shipped with the base Eclipse Platform, but our code does depend on it being present, so it
is technically a pre-req. We consider this an "exempt pre-req" (exempt from separate IP review) since the Eclipse
Foundation, via the Yearly Release Train requirements, requires its use where appropriate.</p>
<h2>Other Third Party Code from Eclipse Platform</h2>
<p>In addition to what ever application server happens to ship in the base platform, which we mentioned above, there
are some other packages that we depend on, but which are shipped as part of the platform. We do not re-distribute them
(though, we used to) but want to call them out here since we would still require them even if the platform decided not
to re-distribute them, or, for example, if someone was making a "custom install" and maybe not including the complete
platform.</p>
<table border="1">
    <tr>
        <th width="20%">Software</th>
        <th width="15%">Version</th>
        <th width="20%">License</th>
        <th>Introduced in Version</th>
        <th>Notes</th>
    </tr>
    <tr>
        <td>Jetty Web Server</td>
        <td>5.1.14 (<a href="https://dev.eclipse.org/ipzilla/show_bug.cgi?id=2296">CQ 2296</a>)</td>
        <td>Apache License, 2.0</td>
        <td>3.0</td>
        <td>&nbsp;</td>
    </tr>
    <tr>
        <td>Apache Jakarta Commons EL</td>
        <td>1.0 (<a href="https://dev.eclipse.org/ipzilla/show_bug.cgi?id=1547">CQ 1547</a>)</td>
        <td>Apache License, 2.0</td>
        <td>2.0</td>
        <td>&nbsp;</td>
    </tr>
    <tr>
        <td>javax.servlet</td>
        <td>2.4 (<a href="https://dev.eclipse.org/ipzilla/show_bug.cgi?id=1343">CQ 1343</a>)</td>
        <td>Apache License, 2.0</td>
        <td>2.0</td>
        <td>&nbsp;</td>
    </tr>
    <tr>
        <td>javax.servlet.jsp</td>
        <td>2.0 (<a href="https://dev.eclipse.org/ipzilla/show_bug.cgi?id=1344">CQ 1343</a>)</td>
        <td>Apache License, 2.0</td>
        <td>2.0</td>
        <td>&nbsp;</td>
    </tr>
</table>
</body>
</html>