endptEnabler command
The endptEnabler command is used to enable a set of web services within an enterprise archive (EAR) file. The endptEnabler command must run on EAR files containing Enterprise JavaBeans (EJB) modules that are enabled for web services.
Each router module provides a web service endpoint for a particular transport. For example, you can add a HTTP router module so that the web service can receive requests over the HTTP transport. Or, you can add a Java™ Message Service (JMS) router module so that the web service can receive requests from a JMS queue or topic.
In its interactive mode, the endptEnabler command guides you through the required steps to enable one or more services within an application. The endptEnabler command makes a backup copy of your original EAR file in the event that you need to remove or add services at a later time. If your EAR file contains an enterprise bean Java archive (JAR) file that is enabled for web services, you must run the endptEnabler command before the EAR file is deployed. Otherwise, you do not need to run the command.

endptEnabler usage syntax
endptEnabler
[-verbose|-v]
[-quiet|-q]
[-help|-h|-?]
[-properties|-p properties-filename]
[-transport|-t default-transports]
[-enableHttpRouterSecurity]
[-enableClientCertSecurity]
[ear-filename]
[-classpath|-cp]
- -verbose, -v
- This parameter details and displays progress messages as the endptEnabler tool processes the EAR file. This command-line option is mapped to the verbose global property.
- -quiet, -q
- This parameter makes sure that there are no displays of per-module progress messages as the endptEnabler tool processes the EAR file. This command-line option is mapped to the quiet global property.
- -help, -h, -?
- This parameter displays a brief help message that explains the various options.
- -properties, -p <properties-filename>
- This parameter reads properties from the properties-filename properties and controls the behavior of the endptEnabler tool.
- -transport, -t <default-transports>
- This parameter specifies the default list of transports for which
router modules are created for each enterprise bean JAR file contained
in the EAR file. This command-line option is mapped to the defaultTransports global
property. The following are examples of this parameter:
-transport http (the default) -transport jms -t http,jms
- -enableHttpRouterSecurity
- This parameter enables you to add a security policy for all authenticated users to protect the HTTP router module if all the EJB modules are secured in the enterprise bean JAR file. This command-line option is mapped to the http.enableRouterSecurity global property.
- -enableClientCertSecurity
- This parameter enables you to add the following login-config stanza
to the web.xml file for certificate authentication,
instead of basic-auth or form-login. This command-line option is mapped
to the http.enableClientCertSecurity global property.
<login-config> <auth-method>CLIENT-CERT</auth-method> </login-config>
最佳作法: Use the -enableClientCertSecurity parameter with the -enableHttpRouterSecurity parameter.bprac
- <ear-filename>
- This parameter specifies the name of the EAR file to be processed.
If the ear-filename parameter is not entered on the command line, the interactive mode is used. In the interactive mode, you are prompted for the EAR file name, the router module names and other important values as the processing occurs. The following dialog is an example of the endptEnabler interactive mode.
In this dialog, the user input is in fixed width font and the endptEnabler output is in bold.
endptEnabler<enter> WSWS2004I: IBM WebSphere Application Server Release 5 WSWS2005I: Web Services Enterprise Archive Endpoint Enabler Tool. WSWS2007I: (C) COPYRIGHT International Business Machines Corp. 1997, 2003 WSWS2006I: Please enter the name of your EAR file: AddressBook.ear<enter> WSWS2003I: Backing up EAR file to: AddressBook.ear~ WSWS2016I: Loading EAR file: AddressBook.ear WSWS2017I: Found EJB Module: AddressBookEJB.jar WSWS2029I: Enter http router name for EJB Module AddressBookEJB [AddressBookEJB_HTTPRouter.war]:<enter> WSWS2030I: Enter http context root for EJB Module AddressBookEJB [/AddressBookEJB]:<enter> WSWS2024I: Adding http router for EJB Module AddressBookEJB.jar. WSWS2036I: Saving EAR file AddressBook.ear... WSWS2037I: Finished saving the EAR file. WSWS2018I: Finished processing EAR file AddressBook.ear.
If the ear-filename parameter is entered on the command-line, the non-interactive mode is used. In the non-interactive mode, the router module names and other important values are determined from the user-specified properties or default values.
- -classpath, -cp
- This parameter enables you to specify separate JAR files in the
class path for the endptEnabler command. Use this
parameter if the EJB file references Java types in separate JAR files
that do not exist within the EAR file. You can specify multiple values
for this parameter. For example:
endptEnabler -classpath C:\MyWork\Utility.jar;D:\SharedFiles\Hello.zip;HelloWorld.jar
When you do not specify this parameter, you might encounter an error that is similar to the following message:
WSWS2021I: Skipping the enterprise bean module module_name because it contains no web services.
endptEnabler properties
With the endptEnabler command you can control its runtime behavior by specifying a set of properties with the -properties command-line option. These properties are organized in one of two ways: global and per-module. Global properties affect the overall behavior of the tool as it processes multiple enterprise bean JAR modules within the EAR file. Per-module properties affect the processing of a particular enterprise bean JAR module.
Property name | Description | Default value |
---|---|---|
verbose | Displays detailed progress messages. | False |
quiet | Displays only brief progress messages. | False |
http.enableRouterSecurity | Enables you to add a security policy for all authenticated users to protect the HTTP router module if all the EJB modules are secured in the enterprise bean JAR file. | False |
http.enableClientCertSecurity | Enables you to add the following login-config
stanza to the web.xml file for certificate authentication,
instead of basic-auth or form-login:
|
False |
http.routerModuleNameSuffix | Specifies the suffix used to construct default HTTP router module names. The .war extension is added by the endptEnabler command. | _HTTPRouter |
jms.routerModuleNameSuffix | Specifies the suffix used to construct default JMS router module names. The .jar extension is added by the endptEnabler command. | _JMSRouter |
jms.defaultDestinationType | Specifies the default destination type to use for all JMS router modules that are added to the EAR file. This type is either queue or topic. | queue |
defaultTransports | Specifies the default list of transports for which router modules are created. The list can contain the values http and jms. Multiple values are separated by a comma. Examples are: http, jms and http,jms. | http |
The following table describes the per-module properties supported by the endptEnabler command. The ejbJarName variable refers to the name of an enterprise bean JAR module within the EAR file, without the .jar extension.
Property name | Description | Default value |
---|---|---|
|
Lists the transports for which router modules are created for a particular enterprise bean JAR file. The list can contain the values http and jms. Multiple values are separated by a comma. Examples are: http, jms and http,jms. | http |
|
Specifies the flag which bypasses the addition of an HTTP router module, even if it otherwise is added based on other properties. Valid values are true and false. | false |
|
Specifies the name of the HTTP router module for a particular enterprise bean JAR file. | ejbJarName_HTTPRouter |
|
Specifies the context root associated with the HTTP router module for a particular enterprise bean JAR file. | /ejbJarName |
|
Specifies the flag that bypasses the addition of an JMS router module even if it otherwise is added based on other properties. Valid values are true and false. | false |
|
Specifies the name of the JMS router module for a particular enterprise bean JAR file. | ejbJarName_JMSRouter |
|
Specifies the Java Naming and Directory Interface (JNDI) name of the activation specification that is configured for the Message Driven Bean (MDB) within the JMS router module. | null |
|
Specifies the name of the listener port to configure for the MDB within the JMS router module. The listener port is configured only if an activationSpecJndiName property is not specified. | null |
|
Specifies the JMS destination type associated with the MDB within the JMS router. Valid values are queue and topic. | queue |
|
Specifies the URL pattern for ports. If you have EJB module with the indicated name that has a port with the indicated local name, you can specify the HTTP URL pattern with this property. This property only applies to HTTP router modules. It has no affect on JMS router modules. | null |
Properties example
StockQuoteEJB.transports=http,jms
StockQuoteEJB.http.routerModuleName=StockQuoteEJB_HTTP
StockQuoteEJB.http.contextRoot=/StockQuote
StockQuoteEJB.jms.routerModuleName=StockQuoteEJB_JMS
StockQuoteEJB.jms.destinationType=queue
endptEnabler examples
endptEnabler MyApp.ear
endptEnabler -t jms,http MyApp.ear
endptEnabler -v -properties MyApp.props MyApp.ear
endptEnabler -q -t jms MyApp.ear
endptEnabler -v -t http,jms