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

Nouns

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


+

Search Tips   |   Advanced Search