8.97 Business Services Server Reference 1
8.97 Business Services Server Reference 1
November 2007
The information contained in this document is subject to change without notice. If you find any problems in the
documentation, please report them to us in writing. This document is not warranted to be error-free. Except as may
be expressly permitted in your license agreement for these Programs, no part of these Programs may be reproduced
or transmitted in any form or by any means, electronic or mechanical, for any purpose.
If the Programs are delivered to the United States Government or anyone licensing or using the Programs on behalf
of the United States Government, the following notice is applicable:
The Programs are not intended for use in any nuclear, aviation, mass transit, medical, or other inherently dangerous
applications. It shall be the licensee's responsibility to take all appropriate fail-safe, backup, redundancy and other
measures to ensure the safe use of such applications if the Programs are used for such purposes, and we disclaim
liability for any damages caused by such use of the Programs.
The Programs may provide links to Web sites and access to content, products, and services from third parties. Oracle
is not responsible for the availability of, or any content provided on, third-party Web sites. You bear all risks
associated with the use of such content. If you choose to purchase any products or services from a third party, the
relationship is directly between you and the third party. Oracle is not responsible for: (a) the quality of third-party
products or services; or (b) fulfilling any of the terms of the agreement with the third party, including delivery of
products or services and warranty obligations related to purchased products or services. Oracle is not responsible for
any loss or damage of any sort that you may incur from dealing with any third party.
Oracle, JD Edwards, PeopleSoft, and Retek are registered trademarks of Oracle Corporation and/or its affiliates.
Other names may be trademarks of their respective owners.
Oracle takes no responsibility for its use or distribution of any open source or shareware software or documentation
and disclaims any and all liability or damages resulting from use of said software or documentation. The following
open source software may be used in Oracle's PeopleSoft products and the following disclaimers are provided.
This product includes software developed by the Apache Software Foundation (http://www.apache.org/). Copyright (c) 19992000
The Apache Software Foundation. All rights reserved. THIS SOFTWARE IS PROVIDED “AS IS’’ AND ANY EXPRESSED
OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
Table of Contents
Chapter 1 – Understanding Business Services Server ............................................. 1
Business Services Server Overview ................................................................................1
Server Manager
Beginning with JD Edwards EnterpriseOne Tools Release 8.97, a new tool called
Server Manager is provided. This tool is a complete replacement for the JD Edwards
EnterpriseOne legacy management and installation tools including internal
components known as Server Administration Workbench (SAW), Server
Management Console (SMC), and the InstallShield based installers previously used
to install or upgrade JD Edwards EnterpriseOne servers. As a result, you should
refer to the JD Edwards EnterpriseOne Server Manager Guide for details on
installing and configuring all JD Edwards EnterpriseOne server products. This guide
only contains reference information for functionality outside the Server Manager tool.
Note.
Management of JD Edwards EnterpriseOne Tools Release 8.96 or earlier must be
done using the existing tools. Server Manager cannot be used to manage any JD
Edwards EnterpriseOne Tools Release prior to 8.97
• Configuration Management
Server Manager provides a web-based interface for managing the
configuration of each managed server. Each configuration item is accessible
along with integrated help describing the configuration setting.
Note.
Beginning with the availability of Server Manager, it is strongly advised that all
configuration changes to configuration files (such as jde.ini, jas.ini, jdbj.ini,
jdelog.properties, and so on.) for any JD Edwards EnterpriseOne server managed by
Server Manager be accomplished only through the Management Console interface
of Server Manager. In addition to usability improvements, using Server Manager
reduces the risk of introducing configuration errors by providing drop-down lists with
the only valid values where applicable. Further, the tool provides a useful Audit
History for any modifications made to configurations using Server Manager.
• Audit History
Server Manager maintains a history of changes made to the managed
servers. This includes a history of each configuration change, each server
start and stop, and each tools release update, including the user that
performed the change or operation. The information is logged to a history file
that you can query from within Server Manager.
• Configuration Comparison
Use Server Manager to compare the configuration of two or more servers to
identify configuration differences. This can be done directly through the
Management Console application regardless of the platform or location of the
actual JD Edwards EnterpriseOne server. You can also compare individual
servers with the default configuration of the corresponding server group to
which the server belongs.
• Self-Contained Installation
The installation Server Manager delivers all components that are necessary
for the tool to run. There are no third-party requirements regardless of your
existing or intended middleware topology (for example, Oracle Application
Server, WebSphere Application Server, or no application server.
The current version of Server Manager can be used regardless of the service
pack level of JD Edwards EnterpriseOne Tools Release 8.97 or later of the
managed JD Edwards EnterpriseOne servers.
• Severe
• Warning
• Application
• Information
4. On the home page, access the Enable/Disable Features page using this
navigation:
Click the Web Services tab, web service link, Administration tab, and then
Enable/Disable Features.
This log shows the header information, arguments passed to the web service,
and values returned by the web service.
• Configure JDENet.
• Configure an HTTP Proxy server.
Configuring JDENet
The business services server uses JDENet to communicate with a JD Edwards
EnterpriseOne client (Microsoft Windows or HTML) or JD Edwards EnterpriseOne
enterprise server. The client or enterprise server uses Object Configuration Manager
(OCM) to look up the machine name and port of the business services server.
A JDENet kernel, SBFServerJavaKernel, is started on the Business Services Server.
The business service server listens for messages for this kernel. This kernel listens
for a Ping message and for messages that call a business service. The business
services server response to the Ping message indicates that the kernel is up and
running on the business services server.
Configure these settings in the [JDENET] section of the jdeinterop.ini file on the
Business Services Server:
Parameter Description
serviceNameListen= Enter the port on which the business service server listens for
JDENet messages. The setting for the business services server
and OCM must be the same. The port specified must be
different than the serviceNameConnect port setting.
maxKernelRanges= The maxKernelRanges setting defines the maximum allowed
kernels on the business services server. SBFServerJavaKernel
is the only kernel supported on the business services server,
and this kernel is responsible for processing web service call
messages from the client or enterprise server. Currently, the
only allowed value for this property is 1.
Note
Values for all of the properties except maxNumberOfThread are static and do not
change.
startMessageRange= 16201
endMessageRange= 16450
maxNumberOfThread= Defines the number of threads that will be started for the
SBFServerJavaKernel, thereby defining the number of
simultaneous web service call requests the kernel can process.
This maxNumberOfThread value must be set appropriately, based
on call volume, server machine size, and so on.
connection when calling an external web service. These HTTP proxy parameters are
available for the business services server:
Parameter Description
http.proxyHost The host name of the proxy server.
http.proxyPort The port number of the proxy server.
http.nonProxyHosts Optional. The machines and domains that do not need to be routed
through the proxy server. Typically, these are all machines on the
intranet. Multiple entries must be separated by a vertical bar (|).
http.proxyUser Optional. The user name to be used for authentication on the proxy
server.
http.proxyPassword Optional. The password for the user name that is being used for
authentication.
Configuring an HTTP Proxy Server for an Oracle Application Server
Perform these steps to set up an HTTP proxy server for an Oracle Application
Server’s (OAS) OC4J instance.
2. Locate the configuration for the OC4J instance that is running the business
services server.
You can search for the instance name by searching for the process-type
block in opmn.xml.
-Dhttp.proxyHost=www-proxy.us.oracle.com -Dhttp.proxyPort=80
Dhttp.proxySet=true
where: proxyHost is the address of proxy
server proxyPort is the port of proxy
server
Use these steps to set up an HTTP proxy server for an WebSphere Application
Server (WAS).
• http.nonProxyHosts
• http.proxyHost
• http.proxyPassword
• http.proxyPort
• http.proxyUser
• javax.xml.rpc.ServiceFactory - oracle.j2ee.ws.client.ServiceFactoryImpl
Allow a PS_TOKEN to be received by the JAAS Login ModuleIn order to support all
the mechanisms used by JD Edwards EnterpriseOne for authentication, the
E1LoginModule allows a PS_TOKEN to be received. To use a PS_TOKEN for
authentication, the web service call needs to provide additional information in the
username field. At minimum both "DN=<E1 user id>" and "PS_TOKEN=true" must
be specified. For example:
username - DN=<username>,PS_TOKEN=true
username - DN=<username>,ENV=STGAWSC1,ROLE=*ALL,PS_TOKEN=true
The sequence and case of the username values are not significant.
Note
When the security, and enterprise servers are bounced, or kernel recycling has
occurred, the Business Services server does not need to be bounced.
• Disabled E1 User accounts after the Business Services Server has already
acquired the token
• Timeout of the Java Connector Session
• Timeout of the JDBj Connection
• Communication with Enterprise Server is Unavailable
The connection from the Business Services Server to the Security Server is based
on a token. If the security server is down or can't be contacted the exception thrown
to the web service caller indicates that server login has failed. When the security
server comes back up, the token can be revalidated as necessary without any
administrator interaction.
When the first published Business Services call makes a new connection after the
security token expires:
Disabled E1 User accounts after the Business Services Server has already
acquired the token
When an EnterpriseOne user account becomes disabled:
• The Business Services Server JAAS authentication has the security token
cached by credentials
• The cached token gets revalidated after the configurable setting is passed
(default is 1 hour)
This happens in the next published Business Services call with same
credentials
The JAAS authentication module will detect this and follows the same
pattern as Token Expired
The first Business Services Call after the timeout detects that the session has timed
out and removes all cached connection information and recreates a new session
using the existing security token.
at com.jdedwards.system.connector.dynamic.Connector.loginBase(Unknown
Source)
at com.jdedwards.system.connector.dynamic.Connector.login(Unknown Source)
at oracle.e1.bssvfoundation.impl.security.E1Principal.login(Unknown
Source)
at
oracle.e1.bssvfoundation.impl.security.PrincipalCache.getIniPrincipal(Unknow
n Source)
at oracle.e1.bssvfoundation.impl.jdenet.CallSBFHandler.callSBF(Unknown
Source)
at
oracle.e1.bssvfoundation.base.TestBusinessService.callBSSVWithXMLFile(Unknow
n Source)
at
oracle.e1.bssv.JTRH90I10.RI_HTTP_ParseTransformSendMessage.main(RI_HTTP_Pars
eTransformSendMessage.java:22)
When the HTML Web Server is down, the Business Services log displays this error
message:
Note
In this example, the HTML Web Server is on localhost/6081.
xsm1Upgf%2BKx5mrcBaAOIRJI0WeYuB9F90K355TTaHt2DCrGgA9Q0yyQBG64npYURcZBGNla%2F
satjvcgIEYwumORJlsGoRISzpJl5O8vswYM%2BKw5O1iMYfL%2B3E1lDmS5UXzuTwz0j3KibdkV2
UngEj9hKxJjRXUAWb6fxf4TYLHGql7GNUmsMTvLZKPFk1sKdtTzF49FaYwLeRYO7zBs4RVnU1mPh
UNnF&bssv=oracle.e1.bssv.JPRH90I0.RI_HTTPResponseManager&bssvMethod=executeX
APICallMethod&xCID=176914329&xCPort=6080&xMagicNo=1&xBSFN=NotThereYetBSFN
When the Business Services Server is down, the Business Services log displays
these messages:
Note
This chapter covers the authentication of users of business services. For information
about authorizing users to access published business service objects, see “Managing
Published Business Services Security” in the JD Edwards EnterpriseOne Security
Administration Guide.
• Bootstrap User
• Bootstrap User Password
• Bootstrap Role
• Bootstrap Environment
Note.
The anonymous login has to be configured every time the Business Services server
is deployed to the server.
See “JDBJ Bootstrap Session” in the Server Manager Guide for information on how to
configure these settings.
<pcBindings xmi:id="PCBinding_1185554582312"
pcNameLink="RI_CustomerManagerHttpPort" scope="Application">
<securityRequestConsumerBindingConfig
xmi:id="SecurityRequestConsumerBindingConfig_1185554610375910436757521891737
910436757521891737">
<tokenConsumer xmi:id="TokenConsumer_1185554610375910436757521891737"
classname="com.ibm.wsspi.wssecurity.token.UsernameTokenConsumer"
name="UserTokenConsumer">
<valueType xmi:id="ValueType_1185554610375910436757521891737"
localName="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-
usernametoken-profile-1.0#UsernameToken" name="Username Token"/>
<jAASConfig xmi:id="JAASConfig_1186013028227"
configName="e1BssvLogin"/>
<partReference
xmi:id="PartReference_1185554610375910436757521891737" part="UserToken"/>
</tokenConsumer>
</securityRequestConsumerBindingConfig>
</pcBindings>
</wsdescBindings>
<pcBinding pcNameLink="RI_CustomerManagerHttpPort"
xmi:id="PcBinding_1185554582328">
<serverServiceConfig
xmi:id="ServerServiceConfig_118555460310966390350416797703696639035041679770
369">
<securityRequestConsumerServiceConfig
xmi:id="SecurityRequestConsumerBindingConfig_1185554603109663903504167977036
96639035041679770369">
</securityRequestConsumerServiceConfig>
</serverServiceConfig>
</pcBinding>
</wsDescExt>
4. Restart the application server
Note
The default settings for these parameters are blank.
The following parameters in the TRUST_STORE section of the jdeinterop.ini are used
for the SSL configuration for HTTP Request/Reply:
Parameter Description
truststorefile= The path to the truststore file. truststorepasswd= The truststore
password.
Note
The default settings for these parameters are blank.
The above command generates the certificate request and writes to a file
clientkeyCSR.
4. You obtain the user certificate from a certification authority by submitting the
generated CSR and saving it to a file HTTPAdapter.cer.
5. Obtain the certification authority root certificate (rootCA.cer) and intermediate
CA certificate (rootInterCA.cer).
6. Import the signer certificates rootCA.cer and rootInterCA.cer in to HTTP
Adapter’s keystore using this command:
<JAVA_HOME>\bin\keytool -import -alias rootCAcer -file rootCA.cer
keystore HTTAdapterKS.keystore -keypass httpadapter -storepass
httpadapter
-storepass httpadapter
3. Import the certificate ServerRoot.cer in to the HTTP Adapter’s trust store using
the following command:
<JAVA_HOME>\bin\keytool -import -v -trustcacerts -alias AliasName -file
ServerRoot.cer -keystore cacerts -keypass KeyPassword -storepass
changeit
For more details on importing certificate to keystore, please see the documentation of
keytool in Sun’s java documentation.
Configuring the Listener Service
2. Create a new Key Database File with Key database type as CMS.
4. Select Personal certificate requests from Key database content menu and
click New.
9. Select the Personal Certificates option from Key database content. Add the
certificate provided by CA by clicking the Receive option
10. Save the file. A key database file with extension .kdb is created.
11. Go to the file <IBM_HTTP_SERVER_INSTALL_ROOT>\conf\httpd.conf Add
the following for VirtualHost:
Listen 443
<VirtualHost <SERVERNAME>.mlab.jdedwards.com:443>
SSLEnable
SSLClientAuth none
</VirtualHost>
SSLDisable
Note
Webserver1 is the webserver name
14. Add:
<Uri AffinityCookie=”JSESSIONID” AffinityURLIdentifier=”jsessionid”
Name=”/ListenerService/ListenerService”/> under the node UriGroup.
15. Add:
<VirtualHost Name=”*:443”/> under node VirtualHostGroup
See Also
2. On New Wallet, complete the Wallet Password and Confirm Password fields
and then click OK.
3. On Oracle Wallet Manager, select the Certificate from the tree, right-click, and
then select Add Certificate Request.
See Also
• JD Edwards EnterpriseOne Tools 8.97 Business Services Development
Guide, Appendix B
• Exceptions
• JD Edwards EnterpriseOne Application Warnings
• Business Services Server logs
Exceptions
When an error occurs an exception will be thrown to the caller. These exceptions fall into
different categories.
This section discusses:
SOAP Faults
This is most generic of the categories, all exceptions in this category are expressed as
SOAP faults. For example, if something is incorrectly configured on the applications
server or connectivity problems exist you will see these as SOAP faults.
• Server Connectivity
• Authorization / Authentication
Server Connectivity
It is important to be aware that inside the Business Services Server the feature used to
contact the Enterprise server is the Dynamic Java Connector. If the configuration
settings for the Dynamic Java Connector are incorrect it could cause connectivity
problems with the Enterprise server.
Authorization/Authentication
The system is secure by default, if you are getting authorization / authentication errors
it is most likely that you are missing Security Workbench records.