| <?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> </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> </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> </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> </td> |
| </tr> |
| </table> |
| </body> |
| </html> |