Develop > Persistence layer > Work with WebSphere Commerce services
Java Emitter Template (JET) Component Projects pattern
The release of version 7.5 of the Rational Software Delivery Platform provides users of the Design Pattern Toolkit (DPTK) with equivalent functionality built into the IBM Rational modeling products. The new version of the Rational Software Delivery Platform includes new code-generation technology based on the Eclipse Modeling Framework Technologies Java Emitter Template (JET) open-source project. JET includes many technologies first demonstrated in the Design Pattern Toolkit (DPTK).
Java Emitter Template (JET) is the Rational Application Developer upgrade to the Design Pattern Toolkit (DPTK). It is an Eclipse-enabled template engine for generating applications based on customizable, model-driven architecture transformations. WebSphere Commerce uses the JET plug-in for creating WebSphere Commerce service modules from a simple XML file. By describing the service module in a specialized XML syntax, the service modules can be generated. This allows you to start directly with the service module implementation without having to spend hours with the setup and configuration of a service module.
Component Projects Pattern Input Definition
Component Projects Pattern Input Definition
Element Attribute Remark commerceComponent  The root node of a service module definition. name The service module name (Project). packagenameprefix The package name for generated class (com.mycompany.commerce). namespace The name space for the new services. nlsprefix The namespace prefix that associates an element with a particular namespace. The value is generally a four-character string. type Either SOI or BOD SOI: using existing task command and access beans.
BOD: using new commands and DSL.
internal Reserved for IBM internal use. noun  May define 1 to n of nouns under the Commerce-component element. name The noun's name. get Either true or false True: The noun provides get services.
False: The noun does not provide get services.
process Either true or false. change Either true or false. sync Either true or false. nounpart  May define 0 to n noun parts under each noun. name The name of the noun part. xpath The XPath of the noun part. For example, if a noun part name is Description, the XPath would be /Description[]
Generated files
The following files are generated when running the pattern, where:
- SOI/BOD
- The file is generated for either the BOD or SOI programming models. If no value is specified, the file is always generated.
- Verb
- The file will be generated when a noun is specified. If no value is specified, the file is always generated.
- Implement
- The file requires user implementation or modification.
- Regenerated
- The file will always be regenerated when running the pattern.
List of generated files for ServiceModule-Client.
 SOI/BOD Verb Implement Regenerated ServiceModule-Client     ServiceModuleFacade.java    Y NounException.java    Y AbstractServiceModuleFacadeClient.java    Y ServiceModuleFacadeConstants.java   Y  ServiceModuleFacadeClient.java   Y  ExternalServiceNameFacadeConstants   Y  AbstractExternalServiceNameFacadeClient    Y ExternalServiceNameClient   Y Â
List of generated files for ServiceModule-DataObjects.
 SOI/BOD Verb Implement Regenerated ServiceModule-DataObjects     BOD and Noun XSD files   Y  ServiceModuleServices.wsdl    Y genmodel   Reload  ecore   Reload Â
List of generated files for ServiceModule-Server.
 SOI/BOD Verb Implement Regenerated ServiceModule-Server     GetNounCmd  Get   GetNounCmdImpl  Get   ComposeNounCmd SOI Get   ComposeNounCmdImpl SOI Get Y  FetchNounCmd  Get   FetchNounCmdImpl  Get Y (SOI)  InsertMoreNounCmd  Get   InsertMoreNounCmdImpl  Get Y  ChangeNounCmd  Change   ChangeNounCmdImpl  Change   ChangeNounNounPartCmdImpl BOD Change Y  ChangeNounNounPartPostActionCmdImpl BOD Change Y  ChangeNounPartCmd BOD Change   ChangeNounPartPostActionCmd BOD Change   ProcessNounActionCmd BOD Process   ProcessNounCreateActionCmdImpl BOD Process Y  ProcessNounCmd  Process   ProcessNounCmdImpl  Process   ProcessNounDeleteActionCmdImpl BOD Process Y  SyncNounCmd  Sync   SyncNounCmdImpl  Sync   ReadNounMediator BOD Get Y  ReadNounNounPartMediator BOD Get Y  ChangeNounMediator BOD Process Change Sync Y  ChangeNounBasePartMediator BOD Process Change Sync Y  ChangeNounNounPartMediator BOD Process Change Sync Y  NounTypeProtectableProxy.java BOD  Y  ServiceModuleFacade.java    Y ServiceModuleFacadeBeanImpl.java    Y ServiceModuleFacadeImpl.java    Y ServiceModuleLocalFacade.java    Y ServiceModuleServicesImpl.java    Y ServiceModuleServicesPortType.java    Y ServiceModuleServicesPortType_RI.java    Y ServiceModuleServicesPortTypeHome.java    Y ServiceModuleApplicationException.java    Y ServiceModuleServices_mapping.xml    Y ServiceModuleServices.wsdl    Y ejb-jar.xml     webservices.xml     ibm-ejb-jar-bnd.xmi     ibm-ejb-jar-ext.xmi     ibm-webservices-bnd.xmi     ibm-webservices-ext.xmi     Manifest.mf     WcServiceModuleMessages.properties   Y  ServiceModule-cmdreg.xml   Y  ServiceModule-Server/sampleData     Noun-Access-Control.xml BOD  Y  CmdReg.xml   Y Â
List of generated configuration files for the WC project (WC/xml/config/packageNamePrefix.ServiceModule)
 SOI/BOD Verb Implement Regenerated Service module configuration   Y  SDO.properties   Y  wc-component-client.xml   Y  wc-component.xml   Y  wc-business-object-mediator.xml BOD  Y  wc-object-relational-metadata.xml BOD  Y  wc-query-noun-get.tpl BOD  Y  wc-query-noun-update.tpl BOD  Y Â
List of generated files for ServiceModuleServicesHTTPInterface.
 SOI/BOD Verb Implement Regenerated ServiceModuleServicesHTTPInterface     .websettings     website-config     Manifest.mf     ibm-web-bnd.xmi     ibm-web-ext.xmi     web.xml    Â
Generally, you should not need to modify the ServiceModuleServicesHTTPInterface project or its generated files.
List of generated files for ServiceModuleServicesJMSInterface.
 SOI/BOD Verb Implement Regenerated ServiceModuleServicesJMSInterface     ejb-jar.xml     ibm-ejbext.properties     ibm-ejb-jar-bnd.xmi     Manifest.mf    Â
Generally, you should not need to modify the ServiceModuleServicesJMSInterface project or its generated files.
Related concepts
WebSphere Commerce Web services
Create a WebSphere Commerce service module (SOI)
Related tasks
Work with WebSphere Commerce services
Related information
Tutorial: Creating a new WebSphere Commerce BOD service module