| <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" |
| "http://www.w3.org/TR/html4/loose.dtd"> |
| <html> |
| <head> |
| <meta |
| http-equiv="Content-Type" |
| content="text/html; charset=iso-8859-1"> |
| |
| <title>org.eclipse.wst.command.env.core</title> |
| |
| <link |
| rel="stylesheet" |
| type="text/css" |
| href="../sources/formate.css"> |
| </head> |
| |
| <body> |
| <p class="ueberschrift">EJB Generation Framework</p> |
| <ul> |
| <li>Component in JST |
| <ul> |
| <li>EJB Generation using Datamodels and Operations</li> |
| </ul> |
| </li> |
| <li>Functional Overview |
| <ul> |
| <li>The framework provides a means for defining EJB components using |
| DataModels, and provides and extensible way of generating ejb |
| components using operations.</li> |
| <li>Provides extensible wizards to define and trigger EJB generators |
| </li> |
| <li>Provides an example generator using XDoclet</li> |
| </ul> |
| </li> |
| <li>Extensible |
| <ul> |
| <li>IEJBGenerator extension point</li> |
| <li>Nested wizards to insert specific UrIs</li> |
| <li>Nested models to extend the models.</li> |
| </ul> |
| </li> |
| </ul> |
| <p class="ueberschrift">EJB Model</p> |
| <ul> |
| <li>J2EE models for ejb are available in JST |
| <ul> |
| <li>EMF models</li> |
| <li>Reflect the standards view of an ejb</li> |
| <li>org.eclipse.jst.j2ee.ejb</li> |
| </ul> |
| </li> |
| <li>EJB tooling needs more |
| <ul> |
| <li>Seperate the following views |
| <ul> |
| <li>J2EE Standard x Tooling API x Runtime Extensions</li> |
| </ul> |
| </li> |
| </ul> |
| </li> |
| </ul> |
| <p> </p> |
| <table |
| width="50%" |
| border="0" |
| cellspacing="10" |
| bgcolor="#00CCFF"> |
| <tr> |
| <td align="center">We use the delegate pattern to avoid the coupling |
| that can make j2ee models hard to maintain</td> |
| </tr> |
| </table> |
| <p class="ueberschrift">EJB Generation Datamodels</p> |
| <ul> |
| <li>Provides validation of properties</li> |
| <li>Event notification on property change</li> |
| <li>Usable with WTP operation |
| <ul> |
| <li>potential non-gui use</li> |
| </ul> |
| </li> |
| </ul> |
| <img |
| src="../sources/EJB_generation_datamodels.gif" |
| width="500" |
| height="200" |
| alt=""> |
| <p class="ueberschrift">Delegates</p> |
| <img |
| src="../sources/delegates.gif" |
| width="500" |
| height="250" |
| alt=""> |
| <p class="ueberschrift">Related Open Source Projects (IP)</p> |
| <ul> |
| <li>XDoclet</li> |
| <ul> |
| <li>XDoclet.sf.net</li> |
| <li>Only used for generating ejb code. Not a runtime framework</li> |
| </ul> |
| </ul> |
| <p class="ueberschrift">EJB Generator</p> |
| <ul> |
| <li>EJB Generaiton Tooling Provides an extension point |
| <ul> |
| <li>IEJBGenerator</li> |
| <br> |
| <div class="code">public interface IEJBGenerator { <br> |
| public void generateSession(ISessionBean |
| bean,IProgressMonitor monitor);<br> |
| public void |
| generateMessageDriven(IMessageDrivenBean bean,IProgressMonitor |
| monitor);<br> |
| }</div> |
| <br> |
| <br> |
| <li>An example implemention is XDoclet</li> |
| <br> |
| <div class="code"><extension<br> |
| point="org.eclipse.jst.j2ee.ejb.annotation.model.ejbGenerator"><br> |
| <br> |
| <ejbGenerator<br> |
| name="XDoclet"<br> |
| class="org.eclipse.jst.j2ee.....XDocletAnnotationProvider" |
| /><br> |
| <br> |
| </extension></div> |
| </ul> |
| </li> |
| </ul> |
| <p class="ueberschrift">EJB Bean wizards</p> |
| <table |
| width="90%" |
| border="0" |
| cellspacing="10"> |
| <tr> |
| <td> |
| <ul> |
| <li>WTP Extensible Wizards</li> |
| <ul> |
| <li>Single entry point that nests other ejb wizards</li> |
| <li>Creates an operationthat launches a generator</li> |
| </ul> |
| </ul> |
| </td> |
| <td><img |
| src="../sources/j2ee_8.jpg" |
| width="307" |
| height="372" |
| alt=""></td> |
| </tr> |
| </table> |
| </body> |
| </html> |