NonStop SOAP for Java User s Manual

Size: px
Start display at page:

Download "NonStop SOAP for Java User s Manual"

Transcription

1 NonStop SOAP for Java User s Manual Abstract This manual provides reference and user information for NonStop SOAP for Java, a product that runs on a Compaq NonStop server and provides Simple Object Access Protocol (SOAP) access to NonStop Java classes and NonStop Enterprise Java Bean (EJB) environments. Product Version NonStop SOAP for Java Release 1.0 Supported Releases NonStop SOAP for Java is compatible with the Compaq NonStop Kernel G06 release version update (RVU) and subsequent RVUs. Part Number Published August 2002

2 Document History Part Number Product Version Published NonStop SOAP for Java 1.0 August 2002

3 NonStop SOAP for Java User s Manual Glossary Index Examples Figures Tables What s New in This Manual v Manual Information v New and Changed Information v About This Manual vii Prerequisites vii Your Comments Invited viii Notation Conventions ix Abbreviations xiii 1. Introduction to NonStop SOAP for Java Brief Introduction to Web Services 1-2 WSDL 1-2 Creating a NonStop Web Service for Java 1-2 Features and Functions of NonStop SOAP for Java 1-4 Architectural Overview 1-4 Transport Wrapper 1-4 Web Services Engine 1-4 Web Service Provider 1-5 SOAP Deployment Descriptor 1-5 Administration Tools 1-5 SOAP Client APIs for Java 1-5 Prerequisite Software 1-6 Supported Standards 1-6 Interoperability Installing NonStop SOAP for Java Copying the Software from the CD 2-1 Installation Overview 2-1 NonStop SOAP for Java Directory Structure Configuring NonStop SOAP for Java Run the Setup Script 3-1 Compaq Computer Corporation i

4 Contents 4. SOAP Deployment Descriptor 4. SOAP Deployment Descriptor Deployment Descriptors 4-1 SOAP to Java Class Deployment Descriptor 4-1 SOAP to EJB Deployment Descriptor 4-3 Specifying Type Mapping in a Deployment Descriptor File 4-5 Fault Handling 4-8 Registering Fault Handlers 4-8 Creating New Fault Handlers Using the Administration Tools Using the NskSoapManager Administration Tool 5-1 Using Java Mode 5-2 Using EJB Mode 5-5 Using the Apache Admin Tool 5-11 Using the Apache Admin Tool (Web-Based) 5-11 Service Deployment Information 5-12 Deploying EJB Applications as Web Services 5-14 Types of Enterprise Beans 5-15 Deploying a Stateless Session Bean 5-17 Deploying a Stateful Session Bean 5-18 Deploying an Entity Bean 5-19 First Request SOAP Message 5-20 First Response SOAP Message 5-21 Second Request SOAP Message 5-22 Second Response SOAP Message 5-23 Using the Apache Admin Tool (Command-Line) 5-24 Tracing SOAP Messages 5-25 Using Command-Line Based Tcp Tunnel 5-25 Enabling Server-Side Tracing 5-25 Additional Tools Using the SOAP Client APIs Client APIs 6-1 Interacting with Stateful Services 6-2 Using Attachments 6-3 Background 6-3 Using Attachments on the Client 6-3 Using Attachments on the Server 6-4 Referencing Attachments From Within a SOAP Message 6-4 ii

5 Contents 7. Samples Deploying NonStop SOAP for Java 7. Samples Deploying NonStop SOAP for Java Deploying a Java Class as a Web Service 7-1 Deployment Using NskSoapManager 7-2 Deployment Using Apache SOAP Admin Troubleshooting Tips for NonStop for Java What to Do if You Can t Solve a Problem 8-1 What to Do if the Samples Don t Work 8-1 What to Do if the Tools in the bin Directory Don t Run 8-2 A. Locating the ContextProviderURL Glossary Index Examples Example 4-1. Deployment Descriptor File (SOAP to Java Class) 4-1 Example 4-2. Deployment Descriptor File (SOAP to EJB) 4-3 Example 4-3. Deployment Descriptor with Type Mappings 4-5 Example 4-4. Example Deployment Descriptor 4-7 Example 5-1. First Request SOAP Message 5-20 Example 5-2. First Response SOAP Message 5-21 Example 5-3. Second Request SOAP Message 5-22 Example 5-4. Second Response SOAP Message 5-23 Figures Tables Figure 1-1. SOAP Client Access to NonStop Java Classes and EJB 1-1 Figure 5-1. Apache SOAP Admin Screen 5-12 Figure 5-2. Apache SOAP Admin Deploying an EJB Application 5-15 Figure 7-1. Apache SOAP Admin Screen 7-2 Figure A-1. NonStop Console Main Panel A-2 Figure A-2. NonStop(TM) Distributed Components Console A-3 Figure A-3. ILSD Server Configuration A-4 Table 5-1. Deploying Stateless Session Bean 5-17 Table 5-2. Deploying a Stateful Session Bean 5-18 Table 5-3. Deploying an Entity Bean 5-19 Table 7-1. Sample Form 7-3 iii

6 Contents iv

7 What s New in This Manual Manual Information Abstract NonStop SOAP User s Manual This manual provides reference and user information for NonStop SOAP for Java, a product that runs on a Compaq NonStop server and provides Simple Object Access Protocol (SOAP) access to NonStop Java classes and NonStop Enterprise Java Bean (EJB) environments. NonStop SOAP for Java allows Java-based services to be made available in a Web services environment. Product Version NonStop SOAP for Java Release 1.0 Supported Releases NonStop SOAP for Java is compatible with the Compaq NonStop Kernel G06 release version update (RVU) and subsequent RVUs. Part Number Published August 2002 Document History Part Number Product Version Published NonStop SOAP for Java Release 1.0 August 2002 New and Changed Information This is a new manual. v

8 What s New in This Manual New and Changed Information vi

9 About This Manual This manual describes NonStop SOAP for Java, a product that runs on a Compaq NonStop Himalaya S-series server and provides Simple Object Access Protocol (SOAP) access to NonStop Java classes and NonStop Enterprise Java Bean (EJB) environments. NonStop SOAP for Java allows Java-based services to be made available in a Web services environment. Section 1, Introduction to NonStop SOAP for Java, describes the features and architecture of NonStop SOAP for Java. Section 2, Installing NonStop SOAP for Java, describes how to install the NonStop SOAP for Java software from the product CD. Section 3, Configuring NonStop SOAP for Java, describes how to configure NonStop SOAP for Java and run the setup script to install NonStop SOAP for Java under the itp WebServer and NonStop Servlets JavaServer Pages (NSJSP) environments. Section 4, SOAP Deployment Descriptor, describes the SOAP deployment descriptor file and how to expose Java classes and Enterprise Java Beans (EJBs) as a Web service. Section 5, Using the Administration Tools, describes how to use the NskSoapManager tool and the Apache Admin tool to deploy a Web service. The NskSoapManager tool is used to generate a SOAP deployment descriptor file, generate WSDL, and deploy a Java class or an EJB as a Web service. Section 6, Using the SOAP Client APIs, describes how you can build a SOAP client API. It also describes how SOAP attachments are implemented on the client and server. Section 7, Samples Deploying NonStop SOAP for Java, includes samples deploying NonStop SOAP for Java. Section 8, Troubleshooting Tips for NonStop for Java, describes troubleshooting tips for the NonStop SOAP for Java product. The manual also includes a Glossary and an Index. Prerequisites To use this manual and the NonStop SOAP for Java product successfully, you should be familiar with the technologies and products listed below. Underlying Technologies The following technologies are used with NonStop SOAP for Java and are described in specifications available online: vii

10 About This Manual Related Compaq Products Extensible Markup Language (XML) Simple Object Access Protocol (SOAP) Simple Object Access Protocol (SOAP) with Attachments Web Services Description Language (WSDL) Apache SOAP version Related Compaq Products To use NonStop SOAP for Java, you must have some knowledge of the following NonStop server products: NonStop Kernel Operating System Open System Services (OSS) NonStop Server for Java (NSJ) itp Secure WebServer NonStop Servlets for JavaServer Pages (NSJSP) NonStop Enterprise Application Server (EAS) Each of the products listed above has a manual set available as a TIM collection. Your Comments Invited After using this manual, please take a moment to send us your comments. You can do this by : Completing a Contact NonStop Server Publications form online at Faxing or mailing the form, which is included as a separate file in Total Information Manager (TIM) collections and located at the back of printed manuals. Our fax number and mailing address are included on the form. Sending an message to the address included on the form. We'll immediately acknowledge receipt of your message and send you a detailed response as soon as possible. Be sure to include your name, company name, address, and phone number in your message. If your comments are specific to a particular manual, also include the part number and title of the manual. viii

11 About This Manual Notation Conventions Many of the improvements you see in manuals are a result of suggestions from our customers. Please take this opportunity to help us improve future manuals. Notation Conventions Hypertext Links Blue underline is used to indicate a hypertext link within text. By clicking a passage of text with a blue underline, you are taken to the location described. For example: This requirement is described under Backup DAM Volumes and Physical Disk Drives on page 3-2. General Syntax Notation The following list summarizes the notation conventions for syntax presentation in this manual. UPPERCASE LETTERS. Uppercase letters indicate keywords and reserved words; enter these items exactly as shown. Items not enclosed in brackets are required. For example: MAXATTACH lowercase italic letters. Lowercase italic letters indicate variable items that you supply. Items not enclosed in brackets are required. For example: file-name computer type. Computer type letters within text indicate C and Open System Services (OSS) keywords and reserved words; enter these items exactly as shown. Items not enclosed in brackets are required. For example: myfile.c italic computer type. Italic computer type letters within text indicate C and Open System Services (OSS) variable items that you supply. Items not enclosed in brackets are required. For example: pathname [ ] Brackets. Brackets enclose optional syntax items. For example: TERM [\system-name.]$terminal-name INT[ERRUPTS] A group of items enclosed in brackets is a list from which you can choose one item or none. The items in the list may be arranged either vertically, with aligned brackets on ix

12 About This Manual General Syntax Notation each side of the list, or horizontally, enclosed in a pair of brackets and separated by vertical lines. For example: FC [ num ] [ -num ] [ text ] K [ X D ] address { } Braces. A group of items enclosed in braces is a list from which you are required to choose one item. The items in the list may be arranged either vertically, with aligned braces on each side of the list, or horizontally, enclosed in a pair of braces and separated by vertical lines. For example: LISTOPENS PROCESS { $appl-mgr-name } { $process-name } ALLOWSU { ON OFF } Vertical Line. A vertical line separates alternatives in a horizontal list that is enclosed in brackets or braces. For example: INSPECT { OFF ON SAVEABEND } Ellipsis. An ellipsis immediately following a pair of brackets or braces indicates that you can repeat the enclosed sequence of syntax items any number of times. For example: M address [, new-value ] [ - ] { } An ellipsis immediately following a single syntax item indicates that you can repeat that syntax item any number of times. For example: "s-char " Punctuation. Parentheses, commas, semicolons, and other symbols not previously described must be entered as shown. For example: error := NEXTFILENAME ( file-name ) ; LISTOPENS SU $process-name.#su-name Quotation marks around a symbol such as a bracket or brace indicate the symbol is a required character that you must enter as shown. For example: "[" repetition-constant-list "]" Item Spacing. Spaces shown between items are required unless one of the items is a punctuation symbol such as a parenthesis or a comma. For example: CALL STEPMOM ( process-id ) ; If there is no space between two items, spaces are not permitted. In the following example, there are no spaces permitted between the period and any other items: $process-name.#su-name x

13 About This Manual Notation for Messages Line Spacing. If the syntax of a command is too long to fit on a single line, each continuation line is indented three spaces and is separated from the preceding line by a blank line. This spacing distinguishes items in a continuation line from items in a vertical list of selections. For example: ALTER [ / OUT file-spec / ] LINE [, attribute-spec ]!i and!o. In procedure calls, the!i notation follows an input parameter (one that passes data to the called procedure); the!o notation follows an output parameter (one that returns data to the calling program). For example: CALL CHECKRESIZESEGMENT ( segment-id!i, error ) ;!o!i,o. In procedure calls, the!i,o notation follows an input/output parameter (one that both passes data to the called procedure and returns data to the calling program). For example: error := COMPRESSEDIT ( filenum ) ;!i,o!i:i. In procedure calls, the!i:i notation follows an input string parameter that has a corresponding parameter specifying the length of the string in bytes. For example: error := FILENAME_COMPARE_ ( filename1:length!i:i, filename2:length ) ;!i:i!o:i. In procedure calls, the!o:i notation follows an output buffer parameter that has a corresponding input parameter specifying the maximum length of the output buffer in bytes. For example: error := FILE_GETINFO_ ( filenum!i, [ filename:maxlen ] ) ;!o:i Notation for Messages The following list summarizes the notation conventions for the presentation of displayed messages in this manual. Bold Text. Bold text in an example indicates user input entered at the terminal. For example: ENTER RUN CODE?123 CODE RECEIVED: The user must press the Return key after typing the input. xi

14 About This Manual Notation for Messages Nonitalic text. Nonitalic letters, numbers, and punctuation indicate text that is displayed or returned exactly as shown. For example: Backup Up. lowercase italic letters. Lowercase italic letters indicate variable items whose values are displayed or returned. For example: p-register process-name [ ] Brackets. Brackets enclose items that are sometimes, but not always, displayed. For example: Event number = number [ Subject = first-subject-value ] A group of items enclosed in brackets is a list of all possible items that can be displayed, of which one or none might actually be displayed. The items in the list might be arranged either vertically, with aligned brackets on each side of the list, or horizontally, enclosed in a pair of brackets and separated by vertical lines. For example: proc-name trapped [ in SQL in SQL file system ] { } Braces. A group of items enclosed in braces is a list of all possible items that can be displayed, of which one is actually displayed. The items in the list might be arranged either vertically, with aligned braces on each side of the list, or horizontally, enclosed in a pair of braces and separated by vertical lines. For example: obj-type obj-name state changed to state, caused by { Object Operator Service } process-name State changed from old-objstate to objstate { Operator Request. } { Unknown. } Vertical Line. A vertical line separates alternatives in a horizontal list that is enclosed in brackets or braces. For example: Transfer status: { OK Failed } % Percent Sign. A percent sign precedes a number that is not in decimal notation. The % notation precedes an octal number. The %B notation precedes a binary number. The %H notation precedes a hexadecimal number. For example: % %B %H2F P=%p-register E=%e-register xii

15 About This Manual Change Bar Notation Change Bar Notation Change bars are used to indicate substantive differences between this edition of the manual and the preceding edition. Change bars are vertical rules placed in the right margin of changed portions of text, figures, tables, examples, and so on. Change bars highlight new or revised information. For example: The message types specified in the REPORT clause are different in the COBOL85 environment and the Common Run-Time Environment (CRE). The CRE has many new message types and some new message type codes for old message types. In the CRE, the message type SYSTEM includes all messages except LOGICAL-CLOSE and LOGICAL-OPEN. Abbreviations The glossary of this manual includes abbreviations. xiii

16 About This Manual Abbreviations xiv

17 1 Introduction to NonStop SOAP for Java NonStop SOAP for Java runs on a NonStop server and allows a Simple Object Access Protocol (SOAP) client to communicate with NonStop Java classes and NonStop Enterprise Java Beans (EJB) as shown in Figure 1-1. NonStop SOAP for Java allows Java-based services to be made available in a Web services environment. Figure 1-1. SOAP Client Access to NonStop Java Classes and EJB NonStop SOAP for Java S O A P M E S S A G E HTTP Transport Wrapper Web Service Engine Java Provider EJB Provider Java Class Enterprise Java Bean (EJB) SOAP Client APIs for Java SOAP Deployment Descriptor Administration Tools VST001.vsd NonStop SOAP for Java implements Apache SOAP version 2.2. Apache SOAP is an open-source implementation of SOAP version 1.1 and the SOAP Messages with Attachments specifications in Java. Apache SOAP is developed by the Apache SOAP community. Apache SOAP also provides a client library to invoke SOAP services available remotely or as a server-side tool to implement SOAP accessible services. 1-1

18 Introduction to NonStop SOAP for Java Brief Introduction to Web Services Brief Introduction to Web Services WSDL A Web service is a collection of functions that are packaged as a single-entity and published to the network for use by other programs. A Web service has the following features: It is accessible through a SOAP (Simple Object Access Protocol) interface It s interface is described in a WSDL (Web Services Definition Language) document SOAP is an extensible XML messaging protocol that forms the foundation of Web services. SOAP provides a simple and consistent mechanism that allows one application to send an XML message to another application. A SOAP message is a one-way transmission from a SOAP sender to a SOAP receiver, and any application can participate in an exchange as either sender or receiver. SOAP messages may be combined to support many communications behaviors, including request/response, solicit response, one-way asynchronous messaging, or event notification. SOAP is a high-level protocol that defines only the message structure and a few rules for message processing. It is completely independent of the underlying transport protocol, so SOAP messages can be exchanged over HTTP (Hypertext Transfer Protocol), JMS (Java Message Service), or mail transport protocols. Note. Currently, the HTTP protocol is the most frequently used transport for SOAP messages and the only transport protocol supported by NonStop SOAP for Java. WSDL is an XML document that contains a set of definitions that describes a Web service. WSDL provides all the information needed to access and use a Web service. A WSDL document describes what the Web service does, how it communicates, and where it resides. You use the WSDL document at development-time to create your service interfaces. Creating a NonStop Web Service for Java You can describe, deploy, and invoke new and legacy software components on a NonStop server as a Web service. For example, you can expose a component such as a Java class or Enterprise Java Bean (stateless, stateful, or an entity bean described later). The steps to create and execute a NonStop Web service in Java are: 1. Describe. To describe a component as a Web service requires that a WSDL document is created so that clients of the Web service know what structure to use when creating the SOAP message and where to deliver the message. The NonStop SOAP for Java infrastructure facilitates the creation of WSDL documents using the Administration tools. To generate WSDL, see Using the Administration Tools on page

19 Introduction to NonStop SOAP for Java Creating a NonStop Web Service for Java 2. Deploy. To deploy a component as a Web service you must describe the component and associated configuration to the NonStop Web service infrastructure Administration tool, NskSoapManager. You can also use the Apache Admin tool. You use the Administration tools to create and deploy the SOAP deployment descriptor file. See Using the Administration Tools on page Invoke. To invoke a component requires that you provide and configure the appropriate transport element(s) over which the Web service messages are received from and replied to. The only transport supported by NonStop SOAP for Java is HTTP. Invoking a component requires processing a Web service message, unmarshalling the message and invoking the appropriate software component (including parameters, processing the response, marshalling it, and replying back.) See Using the SOAP Client APIs on page

20 Introduction to NonStop SOAP for Java Features and Functions of NonStop SOAP for Java Features and Functions of NonStop SOAP for Java NonStop SOAP for Java includes: A configuration file and setup script to install NonStop SOAP for Java under the itp WebServer and NSJSP environments. See Configuring NonStop SOAP for Java on page 3-1. A deployment descriptor file that exposes a service implemented using a standard Java class (including a normal Java bean) or an Enterprise Java Bean (EJB). See SOAP Deployment Descriptor on page 4-1. Administration tools to generate a SOAP deployment descriptor file for a Java class or Enterprise Java Bean (EJB). The Administration tools can also be used to generate WSDL and deploy a Java class or an EJB as a Web service. See Using the Administration Tools on page 5-1. SOAP client APIs help you build a SOAP client that can invoke a Web service. See Using the SOAP Client APIs on page 6-1. Support for SOAP attachments on the client and server. See Using Attachments on page 6-3. Samples which utilize the SOAP for Java features. See Samples Deploying NonStop SOAP for Java on page 7-1. A tool for tracing SOAP messages. See Tracing SOAP Messages on page Architectural Overview NonStop SOAP for Java includes the following components. Transport Wrapper The Transport Wrapper facilitates how a SOAP message gets in and out of the SOAP server. The NonStop SOAP server is a Java servlet running in the NSJSP servlet engine. The NonStop SOAP server gets a SOAP message in its dopost() method, processes the request (by invoking the appropriate Service Provider), and replies back with a SOAP response. Web Services Engine The Web Services Engine orchestrates the flow of messages from a transport to a particular Web service provider. The Web Services Engine uses the SOAP deployment descriptor to determine the appropriate provider. 1-4

21 Introduction to NonStop SOAP for Java Web Service Provider Web Service Provider The Web Service Provider acts as a bridge between the web service engine and the end-point that provides the service. NonStop SOAP for Java has the following providers: Java provider which allows you to expose Java classes. Enterprise Java Bean (EJB) provider which allows you to expose EJB (stateless, stateful, or entity beans.) SOAP Deployment Descriptor A SOAP deployment descriptor is an XML document which contains information about a service, the provider of the service, the Java class and so on. NonStop SOAP for Java uses a SOAP deployment descriptor at execution time to service a request. See SOAP Deployment Descriptor on page 4-1. Administration Tools The Administration tools help in deploying a Web service. You can use the NskSoapManager tool or the Apache Admin tool to deploy a service for NonStop SOAP for Java. See Using the Administration Tools on page 5-1. SOAP Client APIs for Java The SOAP client APIs help you build a SOAP client that can invoke a Web service. See Using the SOAP Client APIs on page

22 Introduction to NonStop SOAP for Java Prerequisite Software Prerequisite Software NonStop Kernel Operating System (G06 or later) OSS (T8620) installed and running Transaction Monitoring Facility (TMF) of NonStop TMF installed and running NonStop Server for Java (NSJ) version (IPM AAG or later) installed and running itp WebServer version 5.0 installed and running NonStop Servlets for JavaServer Pages (NSJSP) version 1.0 NonStop Enterprise Application Server (EAS) version 1.1 (if you are planning to expose EJBs as a Web service) The following components are packaged in the lib directory: A JAXP compatible, namespace aware XML parser: Xerces (xerces.jar from xml.apache.org/xerces-j/index.html) JavaMail version 1.2 (mail.jar from java.sun.com) JavaBeans Activation Framework version (activation.jar from java.sun.com) Supported Standards NonStop SOAP for Java complies with the following standards: XML version 1.0 SOAP version 1.1 Java Servlet API version 1.1 HTTP version 1.1 WSDL specification 1.1 Interoperability The WSDL files generated can be consumed by.net, by which the utility WSDL.exe can generate proxy code (in C#, VB, or JScript). The generated proxy code helps you to write.net clients to invoke services exposed by NonStop SOAP servers. 1-6

23 2 Installing NonStop SOAP for Java The NonStop SOAP for Java CD includes: NonStop SOAP for Java This section describes how to install NonStop SOAP for Java. For information about installing itp Webserver and NonStop Servlets for JavaServer Pages (NSJSP), see the documentation for those products. Copying the Software from the CD Consult the NonStop SOAP for Java softdoc for last-minute changes to the installation instructions given here. Installation Overview To install the files required for access to NonStop SOAP for Java: 1. From the NonStop SOAP for Java CD, use FTP to copy the PAX file T2764PAX to the OSS environment on the NonStop server. 2. Use the OSS cd command to navigate to the directory where you placed the PAX file, for example: cd /mydir 3. Run the pax command to unpax the file: pax -rvf T2764PAX This command unpacks the NonStop SOAP for Java product files and installs them under the directory /usr/tandem/nssoap/t2764v10. NonStop SOAP for Java Directory Structure After installation, the T2764V10 directory contains the following subdirectories: /bin Contains scripts to execute basic NonStop SOAP for Java utilities. /doc Contains /apache (Apache SOAP documentation). /lib Contains soap.jar. This JAR (Java Archive) file contains Apache's SOAP client classes. xerces.jar. This JAR file contains Apache's Xerces-J classes. A JAXP compatible, namespace aware XML parser. mail.jar. This JAR file includes extensions to implement the Java Mail API and are used when processing SOAP messages with attachments. 2-1

24 Installing NonStop SOAP for Java NonStop SOAP for Java Directory Structure activation.jar. This JAR file contains the classes that make up JavaBeans Activation Framework. nssoap.jar. This JAR file contains NonStop SOAP for Java specific classes. /samples Contains.java and.class files. The.java files contain the code for the SOAP client and the SOAP service including some helper classes. Samples like SOAP-EJB, contain just the SOAP client files. The.class files are the compiled.java files. DeploymentDescriptor.xml. This file contains the deployment descriptor for the sample. Most of the samples can be run using this file unchanged. However, for specific samples, you need to edit this file. For example, the SOAP-EJB samples you need to include the information for the ContextProviderURL (which is NSEJB installation specific). README. The README file contains details about the sample and includes information on using the sample and pre-requisites to building and running the samples. run.sh. This script file does the following: Deploysthe service described by the DeploymentDescriptor.xml file. Verifies that the service deployed is present. Executes the client.class file and display the results. Undeploys the service. Verifies that the service is undeployed. /war Contains soap.war. This WAR (Web Application Resource) file contains a collection of files needed to create a Web application in a single file using the Zip compression algorithm. /etc Contains soap4java.config. This file contains the NonStop SOAP for Java configuration file. env.sh. This file contains the environment variable. 2-2

25 3 Configuring NonStop SOAP for Java This section describes how to configure NonStop SOAP for Java. Before you configure NonStop SOAP for Java, you must do the following: Install and configure the itp WebServer as described in the itp Secure WebServer System Administrator s Guide. NonStop SOAP for Java does not require the secure version of the itp WebServer, but that manual describes installation and configuration for all versions of the itp WebServer. Install and configure the NonStop Servlets for JavaServer Pages (NSJSP) as described in the itp Secure WebServer System Administrator s Guide. Run the Setup Script A setup script for NonStop SOAP for Java is located in the directory /usr/tandem/nssoap/t2764v10 The setup script installs the NonStop SOAP for Java product under the itp WebServer and NSJSP environments. Use this procedure to install the setup script. 1. Log on as the owner of the /usr/tandem/nssoap/t2764v10 directory. 2. Use the cd command to go to the directory where the setup script is located; for example: OSS: cd /usr/tandem/nssoap/t2764v10 3. Run this setup command in the OSS environment: OSS:./setup The setup script prompts you for the following information: itp WebServer installation directory NSEJB installation directory (required only for SOAP-to-EJB capabilities) NSEJB configuration database location (required only for SOAP-to-EJB capabilities) Note. If you do not have NSEJB installed, you should accept the defaults provided. The setup script copies the necessary files to the correct directory under the itp WebServer installation location. It will also modify the itp_server.xml file to indicate the addition of NonStop SOAP for Java in the servlet environment. The itp_server.xml file is located in /usr/tandem/webserver/servlet_jsp/conf/. 3-1

26 Configuring NonStop SOAP for Java Run the Setup Script After doing these steps, the setup script prompts you to make changes at specific locations in the file usr/tandem/webserver/conf/servlet.config. These changes are shown in Steps 4 & 5 (typical values). 4. Using the editor of your choice, modify the /usr/tandem/webserver/conf/servlet.config file as follows: a. Locate the statement: Server $server_objectcode { Insert these lines directly above it: ####################################################### # # config file for SOAP 4 Java # if { [file exists $root/conf/soap4java.config] } { source $root/conf/soap4java.config } 5. Add an option to Arglist. In the Arglist of the "Server $server_objectcode" in the /usr/tandem/webserver/conf/servlet.config file, add another -D variable as follows: -DORBdbm=$env(SOAP_NSDOM_CFG_DBM) 6. Restart the itp WebServer by executing these commands: OSS: cd /usr/tandem/webserver/conf OSS:./restart Note. If the itp WebServer or the NSJSP product has MAXSERVERS > 1, then the SOAP services under the NSJSP environment has the following behavior: If a service is being deployed, it is available on all the NSJSP instances. If a service is being undeployed, it may still be available on some of the NSJSP instances. For consistent behavior across all NSJSP instances, you need to restart the itp WebServer when undeploying services. 3-2

27 4 SOAP Deployment Descriptor This section describes how to expose a Web service by using deployment descriptors. Deployment descriptors are an integral part of the Java 2 Platform Enterprise Edition (J2EE) Web applications. Deployment descriptors help manage the configuration of Web applications once the Web applications are deployed. Deployment Descriptors NonStop SOAP for Java uses deployment descriptors (XML documents) to provide information to the SOAP runtime about the services that should be made available to clients. The deployment descriptors provide a wide array of information such as, the URN for the service (which is used to route the request when it comes in), and the method and class details if a Java class is providing the service. The exact content of the deployment descriptor depends upon the type of artifact that is being exposed using SOAP. SOAP to Java Class Deployment Descriptor Example 4-1 shows a deployment descriptor file that exposes a service implemented using a standard Java class (including a normal Java bean). Example 4-1. Deployment Descriptor File (SOAP to Java Class) <isd:service xmlns:isd=" id="urn:service-urn" [type="message"] [checkmustunderstand="true false"]> <isd:provider type="java" scope="request Session Application" methods="exposed-methods"> <isd:java class="implementing-class" [static="true false"]/> </isd:provider> <isd:faultlistener>org.apache.soap.server.domfaultlistener </isd:faultlistener> </isd:service> isd:service This tag defines the isd namespace and gives the name of the service as urn:service-urn in the id attribute. This attribute is required. type attribute If the service is message-oriented instead of being RPC, use type= message. This attribute is optional. 4-1

28 SOAP Deployment Descriptor SOAP to Java Class Deployment Descriptor checkmustunderstand attribute This attribute is either true or false. If true, the server must be able to throw a fault when the SOAP message has headers marked as MustUnderstand. This attribute is optional. isd:provider type attribute This attribute designates the language to be used. isd:java class attribute The fully-qualified name of the Java class that implements the service. For example, packagename.classname. isd:java static attribute This attribute is either true or false, depending on whether or not the methods that are exposed are static or not. This attribute is optional. isd:provider scope attribute The scope attribute corresponds to the scope term used in Java servlets and JSP for various objects. In NonStop SOAP for Java, the scope attribute refers to the object that the server creates to respond to requests directed to the urn:servicerun. The values for the scope attribute are: Application the object lasts until the servlet that is servicing the requests is terminated. Session the object lasts for the current lifetime of the HTTP session. Request the object lasts only for the duration of the request. isd:provider methods attribute This attribute is a list of names of methods that the service implements. The list items are separated by spaces. This attribute has the same meaning as in the standard Java class deployment descriptor. isd:faultlistener This attribute designates the Java class that processes the SOAPFaultEvent events. 4-2

29 SOAP Deployment Descriptor SOAP to EJB Deployment Descriptor SOAP to EJB Deployment Descriptor Example 4-2 shows a deployment descriptor file that exposes a service implemented using an Enterprise Java Bean (EJB). Example 4-2. Deployment Descriptor File (SOAP to EJB) <isd:service xmlns:isd=" id="urn:service-urn"> <isd:provider type="provider-class" scope="application" methods="exposed-methods"> <isd:option key="jndiname" value="jndi-name"/> <isd:option key="fullhomeinterfacename" value="home-name" /> <isd:option key="contextproviderurl" value="context-provider" /> <isd:option key="fullcontextfactoryname" value="factory-name" /> </isd:provider> <isd:faultlistener>org.apache.soap.server.domfaultlistener </isd:faultlistener> </isd:service> isd:service This tag defines the isd namespace and gives the name of the service as urn:service-urn in the id attribute. This attribute is required. isd:provider type attribute This attribute designates the provider-class to be used. Values are: com.tandem.soap.providers.statelessnsejbprovider com.tandem.soap.providers.statefulnsejbprovider com.tandem.soap.providers.entitynsejbprovider This attribute depends on whether the implementation is a stateless session bean, a stateful session bean, or an entity bean. isd:provider scope attribute The scope attribute corresponds to the scope term used in Java servlets and JSP for varoius objects. In NonStop SOAP for Java, the scope attribute refers to the object that the server creates to respond to requests directed to the urn:servicerun. The value for the scope attribute is: 4-3

30 SOAP Deployment Descriptor SOAP to EJB Deployment Descriptor Application the object lasts until the servlet that is servicing the requests is terminated. isd:provider methods attribute This attribute is a list of names of methods that the service implements. The list items are separated by spaces. This attribute has the same meaning as in the standard Java class deployment descriptor. isd:option key attribute The jndi-name is the registered JNDI name of the EJB. The home-name is the fully qualified class name of the EJB's home. The context-provider is the URL associated with the JNDI context provider. The factory-name is the name of the JNDI context factory. 4-4

31 SOAP Deployment Descriptor Specifying Type Mapping in a Deployment Descriptor File Specifying Type Mapping in a Deployment Descriptor File Each type of variable is transmitted to a server by a SOAP message must be translated from XML to Java primitive or reference variable and, in turn, variables returned by the RPC must be encoded from Java into XML. Selecting the right method for a conversion is accomplished by type mapping data. This data lives in a registry, which, by default, is an object of the type org.apache.soap.encoding.soapmappingregistry. Type mapping information for RPC services may also be specified in the deployment descriptors. Mappings are specified through the use of a <mappings> element that may optionally appear as a child of the <service> element. Mappings specified in this manner are available only to the services described by the deployment descriptor in which they appear. Example 4-3 show a deployment descriptor file with type mappings. Example 4-3. Deployment Descriptor with Type Mappings <isd:service xmlns:isd=" id="..."> <isd:provider.../> <isd:faultlistener.../> <isd:mappings [defaultregistryclass="registry-class"]> <isd:map encodingstyle="encoding-uri" xmlns:x="qname-namespace" qname="x:qname-element" javatype="java-type" java2xmlclassname="serializer" xml2javaclassname="deserializer"/>... </isd:mappings> </isd:service> isd:mappings This optional tag encloses one or more isd:map tags that define how to serialize specific Java types not included in the set of basic serializers provided with NonStop SOAP. An optional attribute name defaultregistryclass, whose value (indicated by registry-class) is the fully-qualifed Java class (which is a subclass of org.apache.soap.encoding.soapmappingregistry) that you want to use as the default type mapping registry. isd:map Each map tag contains attributes describing how a Java type is converted from Java to XML and back. 4-5

32 SOAP Deployment Descriptor Specifying Type Mapping in a Deployment Descriptor File isd:map encodingstyle attribute is the URI for the encoding method. For standard SOAP encoding: isd:map xlmns:x attribute is the namespace for the XML element. isd:map qname attribute is the name of the XML element. isd:map java-type attribute is the fully qualified Java class that you are providing the mapping for (for example, samples.date,). isd:map java2xmlclassname attribute is the fully qualified Java class that implements org.apache.soap.util.xml.serializer. isd:map xml2javaclassname is the fully qualified Java class that implements org.apache.soap.util.xml.deserializer. On the <mappings> element is an optional attribute called defaultregistryclass, whose value (indicated by registry-class) is the fully qualified Java class (which is a subclass of org.apache.soap.encoding.soapmappingregistry) that you wish to use as the default type mapping registry. 4-6

33 SOAP Deployment Descriptor Specifying Type Mapping in a Deployment Descriptor File For example, the following deployment descriptor can be seen in the Address Book sample. The mappings are provided under the <isd:mappings> element as a separate <isd:map> element for each mapping provided. Example 4-4. Example Deployment Descriptor <isd:service xmlns:isd=" id="urn:addressbook"> <isd:provider type="java"...> <isd:java class="samples.addressbook.addressbook" static="false"/> </isd:provider> <isd:faultlistener>...</isd:faultlistener> <isd:mappings> <isd:map encodingstyle=" xmlns:x=" qname="x:address" javatype="samples.addressbook.address" java2xmlclassname="org.apache.soap.encoding.soapenc.beanserializer" xml2javaclassname="org.apache.soap.encoding.soapenc.beanserializer"/> <isd:map encodingstyle=" /> </isd:mappings> </isd:service> Therefore, in an XML document an element with type "ns1:address" (where ns1 defines the namespace " can be converted to an object of type "samples.addressbook.address" using the org.apache.soap.encoding.soapenc.beanserializer (as defined by the attribute "xml2javaclassname"). Similarly, using the org.apache.soap.encoding.soapenc.beanserializer (as defined by the attribute "java2xmlclassname") class, objects of type "samples.addressbook.address" can be serialized to XML. 4-7

34 SOAP Deployment Descriptor Fault Handling Fault Handling Occasionally, an error occurs on the server side. It could be a bad service implementation, a bad client request, or normal operating difficulties. The SOAP specification provides for the communication of these errors through the transmittal of a SOAP Fault body element within a SOAP Envelope. The SOAP server tries to capture an error state and then construct a SOAP Fault message containing a base set of information about the error. To augment the fault information for a particular service or to perform one or more additional tasks when an error state arises, the SOAP server provides a pluggable fault-handling mechanism into which one or more fault listeners may be registered to process faults. (The pluggable fault-handling mechanism in Apache SOAP works on the event/listener model.). There are two basic fault-handlers: org.apache.soap.server.domfaultlistener org.apache.soap.server.exceptionfaultlistner Both fault-handlers augment the SOAP Fault message with additional information about the fault; the first by adding a DOM element representing the root exception which occurred, and the second by wrapping the root exception in a parameter. Registering Fault Handlers Fault handlers are registered by including one or more <faultlistener> elements within the deployment descriptor of a service. Creating New Fault Handlers Writing a Java class which implements the org.apache.soap.server.soapfaultlistener interface can create a new fault handler. The single method which one needs to implement, fault (), takes in a SOAPFaultEvent. The SOAPFaultEvent wraps the SOAP Fault and SOAP Exception objects that were created due to the error. Once the new fault-handler class is created, it has to be registered, see Registering Fault Handlers. 4-8

35 5 Using the Administration Tools This section describes how to use the Administration tools. The Administration tools enables you to deploy a Web service. The Administration tools are Java-based tools that provide administrative functions to deploy a Web service. You invoke the Administrative tools through a command-line or web-based interface. The tools deploy automatically when started in Java mode or EJB mode. The Administration tools available with NonStop SOAP for Java are: Using the NskSoapManager Administration Tool on page 5-1 Using the Apache Admin Tool on page 5-11 Using the NskSoapManager Administration Tool The NskSoapManager Administration tool is a command-line interface that provides a local command-line tool for a Java or EJB administrator to deploy a Web service. NskSoapManager can generate a SOAP deployment descriptor file, generate a WSDL file, and deploy a Web service. You can invoke the command-line interface from Java mode or EJB mode. Select one of the following modes based on the software you are using: Using Java Mode on page 5-2 Using EJB Mode on page

36 Using the Administration Tools Using Java Mode Using Java Mode In Java mode, NskSoapManager assists you in exposing and deploying the methods of a Java class which is locatable by using the program s CLASSPATH. Note. Before starting the NskSoapManger tool, verify that the class to be deployed is in the CLASSPATH. Also, verify that you have sourced the env.sh file located in the /usr/tandem/nssoap/t2764v10/etc directory. 1. Use these commands to start the NskSoapManager tool in Java mode. OSS: cd usr/tandem/nssoap/t2764v10/bin OSS:./soapMgr -c classname a. The program looks for the fully-qualified Java class name. Specifying an invalid file name or non-existent class name ends the program. However, if you entered nothing, you are given an option to retry or exit the program. NskSoapManager then prompts you to select the methods to be exposed from the given Java class. The list of methods in class is displayed, and you must choose which methods should be exposed. If a selection is invalid, an error is displayed and you are given the option to retry or exit. Once a selection is made, you are required to confirm the selected methods, or to go back and re-select the methods. The class 'java.lang.object' has the following methods: Method[0] = notifyall Method[1] = tostring Method[2] = equals Method[3] = wait Method[4] = clone Method[5] = finalize Method[6] = java.lang.object Method[7] = hashcode Method[8] = getclass Method[9] = notify Method[10] = registernatives Select the methods that you want to expose in the SOAP service: 1,3-5 You have selected the following methods: Method[1]=toString Method[3]=wait Method[4]=clone Method[5]=finalize Press C to change your selection or any other key to continue: 2. Create a WSDL file for the Java class. To create a WSDL file, NskSoapManager needs the following: 5-2

37 Using the Administration Tools Using Java Mode A URI name for the service A target server for the SOAP binding A file name to which the WSDL will be written a. Each service to be deployed needs a URI name. NskSoapManager prompts you to specify a URI name as follows: /***********************/ Creating WSDL Files /***********************/ Enter a URI name for the class java.lang.object [urn:object]: To select the NskSoapManager generated URI name, press Enter. To enter a specific URI name, enter the name and press Enter. b. If you successfully deployed the SOAP service in Step 2, NskSoapManager prompts you for the value of the URL as the target server location where the implementation of the SOAP service is located. Enter the target service location: c. NskSoapManager automatically generates a WSDL file name for each service. You can either accept the NskSoapManager generated file name (which will be created in the directory where the tool resides) or provide a new file name. To select the NskSoapManager generated file name, press Enter. To write to a specific file, enter the name and location of the target file. If the file exists, its contents are overwritten. Enter the WSDL file [Object.wsdl]: 3. Create SOAP deployment descriptors for the Java class. To create SOAP deployment descriptors, NskSoapManager needs the following: A URI name for the service A file name to which the deployment descriptor will be written a. NskSoapManager automatically generates a deployment descriptor file name for the class. You can accept the file name generated by NskSoapManager (which will be created in the directory where the tool is run from) or provide a different file name. 5-3

38 Using the Administration Tools Using Java Mode To select the NskSoapManager generated file name, press Enter. To write to a specific file, enter the name and location of the target file. If the file exists, its contents are overwritten. ******* Creating Deployment Descriptors ******** Values in [] indicate default values. Press enter to accept the default values or enter a new value at the prompt Enter a deployment descriptor file name for the class java.lang.object [Object_DD.xml]: Once the deployment descriptor file name and the URI name are entered (default or user-specified), you must confirm the selections or re-specify the URI name. You have selected the following values: Deployment Descriptor file name: Object_DD.xml Press C to change your selection or any other key to continue: 4. As an option, you can deploy the Java class as a SOAP service on the SOAP for Java server. You can choose whether the Java class should be deployed as a SOAP service. If chosen, you are prompted for the target server URL where the service is to be deployed. NskSoapManager then tries to deploy the service at the target server. If no errors occur, NskSoapManager displays a message indicating a successful deployment. In the event of an error, an error message is displayed. Deploy java.lang.object?? [Y to deploy, any other key to continue]: Y Enter the target server: Deployment successful 5. NskSoapManager writes the contents of the deployment descriptor file to the file specified in Step 3. Writing the Deployment Descriptor details to the Object_DD.xml 5-4

39 Using the Administration Tools Using EJB Mode Using EJB Mode In EJB mode, the NskSoapManager tool assists you in exposing and deploying the methods of multiple NSEJBs contained in a.jar file. Given the location of the NSEJB.jar file name, NskSoapManager generates a SOAP deployment descriptor and a WSDL file as an output for each EJB selected to be deployed from the.jar file. NskSoapManager can register the service with the SOAP server. Note. Before starting the NskSoapManager tool, verify that you have sourced the env.sh file located in the /usr/tandem/nssoap/t2764v10/etc directory. 1. Use these commands to start the NskSoapManager tool in EJB mode: OSS: cd usr/tandem/nssoap/t2764v10/bin OSS:./soapMgr -j EJBJarFile.jar a. Enter the name and location of the NSEJB.jar file. Note. Specifying an invalid file name ends the program. However, if you enter nothing, you are given an option to retry or quit the program. NskSoapManager expects two XML files to be present within the NSEJB.jar file: META-INF/ejbTandem-jar.xml META-INF/ejb-jar.xml These files include the EJB module packaged into JAR files, with a deployment descriptor(ejb-jar.xml) in the META-INF directory of the JAR file. If the.jar file entered does not comply with the NSEJB's.jar file standards, an error is generated and the program is terminated. Errors can result if an XML file is missing in the.jar file, the bean specification is incomplete, or a particular bean property is not present within an.xml file. However, if the.jar file complies with the.jar file standards, a list of the beans present is displayed. Here are the EJBs present in /usr/tandem/nsejb/ejbsamples/slotmachine/slotdeploy.jar: EJB[0] : ComputationEngineBean EJB[1] : PlayerSessionBean EJB[2] : PlayerBean EJB[3] : MachineBean 2. Select which beans should be deployed. The beans are numbered from [0] forward. You can select the beans that should be deployed by entering the numbers separated by a comma or by selecting a range. For example, to specify beans from 0-15, but not including 1,8, and 13, you could enter the following: 0,3,4-7,9-12,14 5-5

40 Using the Administration Tools Using EJB Mode If the selection is invalid, an error is displayed and you are given the option to retry or exit. Once a valid selection is made, you must confirm the selection and proceed, or go back and re-select the EJBs. Based on the sample, choosing EJBs 0, 1, and 2 results in the following: Select the EJBs you want to deploy: 0-1,2 You have selected the following 3 EJBs: EJB[0] = ComputationEngineBean EJB[1] = PlayerSessionBean EJB[2] = PlayerBean Press C to change your selection or any other key to continue: 3. Select the methods to be exposed from each of the selected EJBs. After selecting the EJBs, NskSoapManager prompts you to select the methods to be exposed from each of the selected EJBs. The list of methods for each of EJB is displayed, and you must choose which methods should be exposed. The selection and error handling is done in the same way as described in Step 2. Once you have made selections for all the EJBs, you must confirm the selected methods, or go back and re-select the methods. 5-6

41 Using the Administration Tools Using EJB Mode For example, continuing with the selection of EJBs, you receive the following screens: The ComputationEngineBean has the following methods: Method[0] = compute Select the methods that you want to expose in the SOAP service: 0 The PlayerSessionBean has the following methods: Method[0] = bet Method[1] = getavailablemachines Method[2] = selectmachine Method[3] = signoff Method[4] = signon Method[5] = unselectmachine Method[6] = create Select the methods that you want to expose in the SOAP service: 0,2-4 The PlayerBean has the following methods: Method[0] = getbalance Method[1] = decrementbalance Method[2] = incrementbalance Method[3] = create Method[4] = findbyprimarykey Select the methods that you want to expose in the SOAP service: 0,2,4 You have selected the following methods from the selected EJBs: You selected the following methods from the ComputationEngineBean: method[0] = compute You selected the following methods from the PlayerSessionBean: method[0] = bet method[2] = selectmachine method[3] = signoff method[4] = signon You selected the following methods from the PlayerBean: method[0] = getbalance method[2] = incrementbalance method[4] = findbyprimarykey Press C to change your selection or any other key to continue: 4. Create WSDL files for each of the EJBs selected in Step 2. To create a WSDL file, the NskSoapManager needs the following: A URI name for the service A target server for the SOAP binding A file name to which the WSDL will be written to a. Specify a URI name. Each service to be deployed needs a URI name. NskSoapManager prompts you to specify a URI for each of the selected EJBs in Step 2. You can accept the tool-generated file name or provide a new URI name. To select the URI name generated by NskSoapManager, press Enter. To enter a specific URI name, enter the name and press Enter. 5-7

42 Using the Administration Tools Using EJB Mode Once all the URI names are entered (default or user-specified), you must confirm the selection or re-specify each URI name. /***********************/ Creating WSDL Files /***********************/ Enter a URI name for the EJB named ComputationEngineBean[urn:ComputationEngineBean]: Enter a URI name for the EJB named PlayerSessionBean[PlayerSessionBean]: Enter a URI name for the EJB named Player Bean[urn:PlayerBean]: b. Specify a target server. If you have successfully deployed the SOAP service, NskSoapManager prompts you for the value of the URL of the target server location where the implementation of the SOAP service will be present. For the first bean you enter a value for this location. However, for subsequent beans, the last value entered becomes the default value (you select by pressing Enter). c. NskSoapManager automatically generates a WSDL file name for each service. You can either accept the tool-generated file name (which will be created in the directory where the tool is run from) or provide a new file name. To select the tool-generated file name, press Enter. To write to a specific file, enter the name and location of the target file. If the file exists, its contents are overwritten. *** For ComputationEngineBean *** Enter the target service location: Enter the WSDL file[computationenginebean.wsdl]: Writing the WSDL contents to ComputationEngineBean.wsdl...Done *** For PlayerSessionBean *** Enter the target service location [ Enter the WSDL file[playersessionbean.wsdl]: Writing the WSDL contents to PlayerSessionBean.wsdl...Done *** For PlayerBean *** Enter the target service location [ Enter the WSDL file[playerbean.wsdl]: Writing the WSDL contents to PlayerBean.wsdl...Done 5. Create SOAP deployment descriptors for each of the beans specified in Step 2. a. NskSoapManager automatically generates a deployment descriptor file name for each of the beans. You can accept the file name generated by the NskSoapManager (which will be created in the directory where the tool resides) or provide a different file name. To select the NskSoapManager generated file name, press Enter. To write to a specific file, enter the name and location of the target file. If the file exists, its contents are overwritten. 5-8

43 Using the Administration Tools Using EJB Mode Once all the file names are entered (default or user-specified), you must confirm their selection or re-specify each file name. ******* Creating Deployment Descriptors ******** Values in [] indicate default values. Press enter to accept the default values or enter a new value at the prompt Enter deployment descriptor file name for the EJB named ComputationEngineBean[ComputationEngineBean_DD.xml]: Enter deployment descriptor file name for the EJB named PlayerSessionBean[PlayerSessionBean_DD.xml]: Enter deployment descriptor file name for the EJB named PlayerBean[PlayerBean_DD.xml]: b. Enter a ContentProvidedURL. Before deploying each EJB, you must indicate its location. This is provided by the ContextProviderURL. While creating each deployment descriptor, you need to enter this value. You will need to enter the value for the first NSEJB, and for subsequent NSEJBs, NskSoapManager prompts you with a value as the default value. c. Enter the ContextFactoryName for each of the EJB deployed. The default is com.tandem.nsdom.jndi.cosnaming.cncontextfactory, which you can change. ** For each of the selected EJBs, enter the following additional information ** *** For the ComputationEngineBean *** Enter the ContextProviderURL: corbaloc://localhost:2809 Enter the ContextFactoryName [com.tandem.nsdom.jndi.cosnaming.cncontextfactory]: *** For the PlayerSessionBean *** Enter the ContextProviderURL [corbaloc://localhost:2809]: Enter the ContextFactoryName [com.tandem.nsdom.jndi.cosnaming.cncontextfactory]: *** For the PlayerBean ** Enter the ContextProviderURL [ corbaloc://localhost:2809]: Enter the ContextFactoryName [com.tandem.nsdom.jndi.cosnaming.cncontextfactory]: 6. Optionally, deploy selected EJBs as SOAP services on the SOAP for Java server. You can choose whether to deploy a particular EJB as a SOAP service. If chosen, you are prompted for the target server URL where the service is to be deployed. The NskSoapManager then tries to deploy the service at the target server. If no errors are received, the NskSoapManager displays a message indicating a successful deployment. In the event of errors, it displays the error and moves on to deploying the next EJB-SOAP service. 5-9

44 Using the Administration Tools Using EJB Mode The default value of the server is the value that was entered in Step 4. After attempting to deploy, NskSoapManager writes the contents of the deployment descriptor to the file name specified in Step 5. Deploy ComputationEngineBean?? [Y to deploy, any other key to continue]: n Skipping deployment. Writing the Deployment Descriptor details to ComputationEngineBean_DD.xml...Done Deploy PlayerSessionBean?? [Y to deploy, any other key to continue]: n Skipping deployment. Writing the Deployment Descriptor details to PlayerSessionBean_DD.xml...Done 5-10

45 Using the Administration Tools Using the Apache Admin Tool Using the Apache Admin Tool Apache SOAP also provides an Administration tool to manage services. Two clients are available to manage services: a web-based version using a browser and a command-line tool. Using the Apache Admin Tool (Web-Based) on page 5-11 Using the Apache Admin Tool (Command-Line) on page 5-24 Using the Apache Admin Tool (Web-Based) The Apache SOAP Admin tool allows you to use a web browser to deploy and undeploy services, and to review the list and the definitions of the services deployed on a given SOAP server. Type in the URL The Apache SOAP Admin screen appears with the following options: Deploy to deploy a new service. Un-deploy to remove a deployed service. List to see the list of services currently deployed in the server. When you click Deploy, the screen in Figure 5-1 appears. The fields in the web page represent the properties of the services being deployed. 5-11

46 Using the Administration Tools Using the Apache Admin Tool (Web-Based) Figure 5-1. Apache SOAP Admin Screen Service Deployment Information This section describes the information you must provide to deploy a service. Provide the following information when you use the Deploy function. You can list this information by using the List function. This information is referred as properties of the service. ID An URN uniquely identifies the service to clients. It must be unique among the deployed services, and be encoded as a URI. The commonly used format is urn:uniqueserviceid which corresponds to the target object ID, in the terminology of the SOAP specification. Scope Defines the lifetime of the object serving the invocation request. This corresponds to the scope attribute of the <jsp:usebean> tag in the JavaServer Pages. The values can be: 5-12

47 Using the Administration Tools Using the Apache Admin Tool (Web-Based) page: the object is available until the target JSP page (in this case, the rpcrouter.jsp) sends a response back or the request is forwarded to another page (if you are using the standard deployment mechanism this is unlikely to happen). request: the object is available for the complete duration of the request, regardless of forwarding. session: the object is available for the complete duration of the session. application: any page within the application may access the object. In particular, successive service invocations belonging to different sessions will share the same instance of the object. Be aware to observe that the value of this attribute can have important security implications. The page and request scopes assure the isolation of successive calls. In addition, application scope implies that all service objects are shared among different users of the SOAP server. Method list Defines the names of the method that can be invoked on this service object. Provider type Indicates whether the service is implemented using Java, a scripting language, or a user-defined provider. If you are using a user-defined provider, you also need to specify the fully qualified class name of the provider, as well as any options (key/value pairs) that you wish to pass to it. For Java services, Provider class Fully specified class name of the target object that services the request. For Java services, Use static class If set to "Yes" the class method made available is a static method, and no object is instantiated. When static invocation is used, the "scope" property is not applicable. Type mappings To control the serialization and deserialization of specific Java types to and from XML in a particular encoding style, you may need to provide serialization and deserialization classes that know how to perform the correct conversions for those types. The SOAP server already includes serialization classes for most basic types in the SOAP encoding style, as well as a Bean encoding class that can provide a generic serialization of a bean in terms of its properties. Since different types may require additional support for correct serialization, the SOAP server maintains a registry of Serializers and Deserializers. The registry is accessible to service administrators through the SOAP Administration tool, as well as through a program API. To register a (de)serializer class, the class must implement the Serializer or Deserializer interfaces. For more information, see org.apache.soap.util.xml.serializer and com.org.apache.soap.util.deserializer. Default Mapping Registry Fully-qualified classname of a customized registry that will manage the serializer/deserializers for the service. Must be a subclass of org.apache.soap.encoding.soapmappingregistry. In the XML deployment 5-13

48 Using the Administration Tools Deploying EJB Applications as Web Services descriptor, this can be specified in a defaultregistryclass attribute of the isd:mappings element. Deploying EJB Applications as Web Services This section discusses the deployment of NonStop EJB applications as Web services using the web-based Apache Admin tool. Also needed for successful deployment is a value called ContextProviderURL. Before you can deploy NonStop EJB applications as Web services, you must provide the value of ContextProviderURL. For detailed instructions on how to locate the value of the ContextProviderURL, see Appendix A, Locating the ContextProviderURL. To start deploying the NonStop EJB applications as Web services: 1. Type in the URL 2. Click the Deploy button. A form for specifying the attributes appears in Figure

49 Using the Administration Tools Deploying EJB Applications as Web Services Figure 5-2. Apache SOAP Admin Deploying an EJB Application Types of Enterprise Beans The two types of enterprise bean types are: Session Beans and Entity Beans. Session Beans A session bean is similar to an interactive session. A session bean is not shared it can just have one client, in the same way that an interactive session has just one user. Like an interactive session, a session bean is not persistent. When the client terminates, its session bean appears to terminate and is no longer associated with the client. Session beans can be either stateful or stateless. A stateful session bean holds conversational state when used by a client. A stateless session bean does not hold conversational state. 5-15

50 Using the Administration Tools Deploying EJB Applications as Web Services Entity Beans An entity bean represents an entity kept in a persistent storage mechanism, usually a database. A business application, for example, might use a database to store business entity objects such as accounts, customers, orders, and products. Inside the NonStop EJB application server, this application would represent the business entity objects with entity beans. Entity beans differ from session beans in several ways. Entity beans are persistent, allow shared access, and have primary keys. For additional information on Enterprise Bean Types, see the NonStop EJB User s Guide. Sample applications released with NonStop SOAP for Java demonstrate using the various enterprise bean types. The sample applications and the enterprise bean types that they demonstrate are: TranslatorBean stateless session bean. This sample provides a service to translate English language words into another language. See Deploying a Stateless Session Bean on page CartBean stateful session bean. This sample models a shopping cart into which and out of which you can add and remove items. See Deploying a Stateful Session Bean on page AccountBean(CMP) entity bean with container-managed persistence (CMP). This sample models a bank account. See Deploying an Entity Bean on page

51 Using the Administration Tools Deploying a Stateless Session Bean Deploying a Stateless Session Bean Table 5-1 deploys a stateless session bean called TranslatorBean which is a sample provided with the NSEJB product. Type the following information in the form (refer to the Apache SOAP Admin Screen on page Table 5-1. Deploying Stateless Session Bean ID Scope Methods Provider Type Java Provider urn:translator Application translate User-Defined FULL Class Name Number of Options com.tandem.soap.providers.statelessnsejbprovider 4 Provider Class Static Key FullHomeInterfaceName JNDIName ContextProviderURL FullContextFactoryName Translator No Value TranslatorHome TranslatorSample corbaloc://ip-address-of-nsk-system:ilsd_port com.tandem.nsdom.jndi.cosnaming.cncontextfactory The ID must be unique, see the Service Deployment Information on page The Scope should be set to Application. The Methods in the NSEJB that need to be exposed are listed in the Methods field. The Provider Type must always be User-Defined. Since the TranslatorBean is a Stateless Session bean, the value of the FULL Class Name field must be com.tandem.soap.providers.statelessnsejbprovider. The Number of Options while deploying NSEJBs as Web services MUST be 4. Note. The order in which the options are entered have no significance. Option 1: Key : FullHomeInterfaceName Value: TranslatorHome (This must be the Home class of the NSEJB) Option 2: Key : JNDIName Value : TranslatorSample (This must be the JNDI name specified at EJB deployment) 5-17

52 Using the Administration Tools Deploying a Stateful Session Bean Option 3: Key : ContextProviderURL Value : corbaloc://ip-address-of-nsk-system:ilsd_port (see Appendix A, Locating the ContextProviderURL) Option 3: Key : FullContextFactoryName Value : com.tandem.nsdom.jndi.cosnaming.cncontextfactory (This value is fixed and defines the Context Factory class to use for JNDI lookups for NSEJBs.) The Provider Class of the Java Provider Class is Translator which must be the name of the EJBObject class for the particular NSEJB. For all the other fields, use the default values specified. Deploying a Stateful Session Bean Table 5-2 deploys a stateful session bean called CartBean which is a sample provided with the NSEJB product. Type the following information in the form. Table 5-2. Deploying a Stateful Session Bean ID Scope Methods Provider Type Java Provider urn:cartsample Application removeitem additem create User-Defined FULL Class Name Number of Options com.tandem.soap.providers.statelessnsejbprovider 4 Provider Class Static Key FullHomeInterfaceName JNDIName ContextProviderURL FullContextFactoryName Cart No Value CartHome CartSample corbaloc://ip-address-of-nsk-system:ilsd_port com.tandem.nsdom.jndi.cosnaming.cncontextfactory 5-18

53 Using the Administration Tools Deploying an Entity Bean Deploying an Entity Bean Table 5-3 deploys an entity bean called the AccountBean (CMP) which is a sample provided with the NSEJB product. Type the following information in the form. Table 5-3. Deploying an Entity Bean ID Scope Methods Provider Type Java Provider urn:cmpaccount Application debit credit getbalance create findbyprimarykey User-Defined FULL Class Name Number of Options org.apache.soap.providers.entitynsejbprovider 4 Provider Class Static Key FullHomeInterfaceName JNDIName ContextProviderURL FullContextFactoryName Account No Value AccountHome CMPAccountSample corbaloc://ip-address-of-nsk-system:ilsd_port com.tandem.nsdom.jndi.cosnaming.cncontextfactory In the case of stateful session beans a call to a specific "create" method has to be made before any other bean specific methods can be invoked. Similarly, in the case of entity beans, either a call to a specific "create" or "find" method has to be made before any other bean specific methods can be invoked. As an example, we show the request response messages for two consecutive client SOAP messages to a stateful session bean (The CartBean sample discussed previously). Note. For the SOAP-EJB call to work correctly on the server side, the EJB being exposed as a Web service should be deployed and running (See the NonStop EJB User s Guide.) The.jar file that contains the deployed EJB should be added to the location <Webserverlocation>/conf/soap4java.config file. After the.jar file is added to the soap4java.config file, the itp WebServer must be restarted. 5-19

54 Using the Administration Tools Deploying an Entity Bean First Request SOAP Message Example 5-1 deploys a stateful session bean and shows the "create" method being invoked.. Example 5-1. First Request SOAP Message POST /servlet_jsp/soap-2_2/servlet/rpcrouter HTTP/1.0Host: localhost Content-Type: text/xml; charset=utf-8 Content-Length: 447 SOAPAction: "" <?xml version='1.0' encoding='utf-8'?> <SOAP-ENV:Envelope xmlns:soap-env=" xmlns:xsi=" xmlns:xsd=" <SOAP-ENV:Body> <ns1:create xmlns:ns1="urn:cartsample"> <name xsi:type="xsd:string" SOAP-ENV:encodingStyle=" encoding/"> Test Person </name> </ns1:create> </SOAP-ENV:Body> </SOAP-ENV:Envelope> 5-20

55 Using the Administration Tools Deploying an Entity Bean First Response SOAP Message Example 5-2 shows the SOAP response to the "create" method response. Example 5-2. First Response SOAP Message HTTP/ Date: xxxxxxx Server: itp Secure WebServer/5.0 MIME-version: 1.0 Connection: close Content-Length: 1811 Servlet-Engine: itp WebServer with NonStop Servlets and JSP/1.0 (JSP 1.1; Servlet 2.2; Java 1.2.2; NONSTOP_KERNEL G06 mips; java.vendor=compaq Computer Inc.) Set-Cookie: JSESSIONID=$Z86L$nz072cz8o1;Expires=xxxxx;Path=/servlet_jsp/soap- 2_2 Set-Cookie2: JSESSIONID=$Z86L$nz072cz8o1;Version=1;MaxAge=1800;Path="/servlet_jsp/soap- 2_2" Content-Language: en Content-Type: text/xml; charset=utf-8 <?xml version='1.0' encoding='utf-8'?> <SOAP-ENV:Envelope xmlns:soap-env=" xmlns:xsi=" xmlns:xsd=" <SOAP-ENV:Body> <ns1:createresponse SOAP-ENV:encodingStyle=" </ns1:createresponse> </SOAP-ENV:Body> </SOAP-ENV:Envelope> Note. The namespace of the response method is The value following symbol is a lengthy string representation of the EJB object on the server-side. This namespace is used for all methods in subsequent SOAP messages. 5-21

56 Using the Administration Tools Deploying an Entity Bean Second Request SOAP Message Example 5-3 shows the "additem" method being invoked. Example 5-3. Second Request SOAP Message POST /servlet_jsp/soap-2_2/servlet/rpcrouter HTTP/1.0Host: localhost Content-Type: text/xml; charset=utf-8 Content-Length: 1844 SOAPAction: "" Cookie: JSESSIONID=$Z86L$nz072cz8o1 Cookie2: JSESSIONID=$Z86L$nz072cz8o1 <?xml version='1.0' encoding='utf-8'?> <SOAP-ENV:Envelope xmlns:soap-env=" xmlns:xsi=" xmlns:xsd=" <SOAP-ENV:Body> <ns1:additem Stringified-IOR-from-server"> <item xsi:type="xsd:string" SOAP-ENV:encodingStyle=" /encoding/">shirt</item> </ns1:additem> </SOAP-ENV:Body> </SOAP-ENV:Envelope> 5-22

57 Using the Administration Tools Deploying an Entity Bean Second Response SOAP Message Example 5-4 shows the response to the "additem" method response. Example 5-4. Second Response SOAP Message HTTP/ Date: xxxxxx Server: itp Secure WebServer/5.0 MIME-version: 1.0 Connection: close Content-Length: 1813 Servlet-Engine: itp WebServer with NonStop Servlets and JSP/1.0 (JSP 1.1; Servlet 2.2; Java 1.2.2; NONSTOP_KERNEL G06 mips; java.vendor=compaq Computer Inc.) Set-Cookie: JSESSIONID=$Z86L$nz072cz8o1;Expires=xxxx;Path=/servlet_jsp/soap- 2_2 Set-Cookie2: JSESSIONID=$Z86L$nz072cz8o1;Version=1;MaxAge=1800;Path="/servlet_jsp/soap- 2_2" Content-Language: en Content-Type: text/xml; charset=utf-8 <?xml version='1.0' encoding='utf-8'?> <SOAP-ENV:Envelope xmlns:soap-env=" xmlns:xsi=" xmlns:xsd=" <SOAP-ENV:Body> <ns1:additemresponse Stringified-IORfrom-server" SOAP-ENV:encodingStyle=" org/soap/encoding/"> </ns1:additemresponse> </SOAP-ENV:Body> </SOAP-ENV:Envelope> 5-23

58 Using the Administration Tools Using the Apache Admin Tool (Command-Line) Using the Apache Admin Tool (Command-Line) The Apache SOAP Admin tool also provides a command-line tool to manage services. oss> java org.apache.soap.server.servicemanagerclient [-auth username:password] url operation arguments where username and password is the HTTP Basic authentication information. url is the SOAP server's URL. operation and (arguments to the operation) The values are: deploy deployment-descriptor-file.xml list query service-name undeploy service-name To deploy a service, the command-line tool is executed by typing the following: % java org.apache.soap.server.servicemanagerclient deploy foo.xml where foo.xml is the deployment descriptor and the URL is the SOAP server's URL. 5-24

59 Using the Administration Tools Tracing SOAP Messages Tracing SOAP Messages NonStop SOAP for Java has two options available for tracing SOAP messages: Using Command-Line Based Tcp Tunnel on page 5-25 Enabling Server-Side Tracing on page 5-25 Using Command-Line Based Tcp Tunnel This is a command-line based tool version of Tcp Tunnel. It can open a port on the machine on which it was started, and will tunnel traffic to the remote host/port combination. You need to provide a file name at startup. Start the Tcp Tunnel tool by executing the following script from the bin directory: OSS: TcpTunnel listenport tunnelhost tunnelport filename where listenport is the port that you want the tool to listen on (that is, the port which you will send your SOAP messages to). tunnelhost is the hostname of the NonStop SOAP server. tunnelport is the port that the NonStop SOAP server is running on filename is the file where the requests and responses are logged. The SOAP clients can then be run on NonStop server and instead of providing the NonStop SOAP server's IP address and port, provide the IP Address of the NonStop server where the Tcp Tunnel is running and the port to which the Tcp Tunnel is listening. Requests get written to a file name filename.req and responses to filename.rsp. Enabling Server-Side Tracing The NonStop SOAP for Java product has a feature that allows the tracing of messages to and from the SOAP server. To do this, you need to provide a start-up parameter in the web.xml file located in the webapps directory of the NonStop SOAP for Java product. The default location is: <itpwebserver_instl_dir>/servlet_jsp/webapps/soap/web-inf/web.xml 5-25

60 Using the Administration Tools Enabling Server-Side Tracing Verify that the rpcrouter servlet has the following init parameter <init-param> <param-name>tracefile</param-name> <param-value>/usr/tandem/nssoap/t2764v10/soap4java.trc</param-value> </init-param> param-name must be TraceFile. param-value is the name (and path) of the user-desired trace file. By default, tracing is turned off. Verify that the target location of the trace file is writeable by the servlet process and restart the itp WebServer to incorporate the changes made to the web.xml file. 5-26

61 Using the Administration Tools Additional Tools Additional Tools This section describes additional tools that can be used with the NonStop SOAP for Java product. The NonStop SOAP for Java tools are placed in the bin directory. The tools are: deploy. This tool deploys a service. deploy <SOAP-Server-URL><Deployment-Descriptor-file-name> undeploy. This tool undeploys a service. undeploy <SOAP-Server-URL><service-name> soapmgr tcptrace 5-27

62 Using the Administration Tools Additional Tools 5-28

63 6 Using the SOAP Client APIs This section discusses the SOAP client-side APIs for Java and how attachments are implemented on the client and server. Note. The NonStop SOAP for Java client-side APIs product and documentation is based on the Apache SOAP version 2.2 specification. The Apache SOAP User s Guide is available at Client APIs Apache SOAP provides a client-side API to assist in the construction of the SOAP request, and the interpretation of the response. To invoke a procedure, you need the name of the procedure and the parameters to pass to it. When the invocation completes, you need to extract any response information from the return value and/or output parameters. The Apache SOAP API documentation is located in the following directory: <soap installation loc>/docs/index.html The API documentation can also be located at To create a client that interacts with a SOAP RPC-based service, do the following: 1. Obtain the interface description of the SOAP service, so that you know what the signatures of the methods that you wish to invoke are. You can either look at a WSDL file (or at some other interface definition format) for the service, or directly at its implementation. 2. Make sure that there are serializers registered for all parameters which you will be sending, and deserializers for all information which you will be receiving back. Parameters must be serialized into or deserialized from XML before they can be transmitted or received. Therefore, Apache SOAP provides a number of predefined serializers and deserializers. If you need to transmit or receive a type which has not been registered, you must write and register your own serializer and deserializer. 3. Create the org.apache.soap.rpc.rpcmessage.call object. The Apache SOAP Call object is the main interface to the underlying SOAP RPC code 4. Set the target URI into the Call object using the settargetobjecturi(...) method. Pass in the URN that the service used to identify itself in its deployment descriptor. 5. Set the method name that you wish to invoke into the Call object using the setmethodname(...) method. 6-1

64 Using the SOAP Client APIs Interacting with Stateful Services This method must be one of the methods exposed by the service identified by the URN given in the previous step. 6. Create any Parameter objects necessary for the RPC call and set them into the Call object using the setparams(...) method. Verify that you have the same number of parameters that have the same types as the service is expecting. Also make sure that there are registered serializers and deserializers for the objects which you will be transmitting/receiving. (See Step 2.) 7. Execute the Call object's invoke(...) method and capture the Response object which is returned from invoke(...). The invoke(...) method takes in two parameters, the first is a URL which identifies the endpoint at which the service resides (i.e. and the second is the value to be placed into the SOAPAction header. Remember that the RPC call is synchronous, and so may take a while to complete. 8. Check the Response object to see if a fault was generated using the generatedfault() method. 9. If a fault was returned, retrieve it using the getfault(...) method, otherwise extract any result or returned parameters using the getreturnvalue() and getparams() methods respectively. While most of the providers will only return a result, if you have created your own provider (or obtained one from somewhere else,) it may also return output parameters. Because SOAP is a standard, you should be able to use the clients that you create with the SOAP APIs to access services running on a different implementations. Interacting with Stateful Services Services may be stateful that is, once an interaction is started with a service, a series of calls to it may interdepend on each other. Apache SOAP supports authoring stateful services (by deploying with a lifecycle of session) as well as calling stateful services. However, session support is only available for HTTP. HTTP session maintenance is on by default. What that means is that if a service you are talking to using HTTP sets the appropriate HTTP cookies to maintain the session, those will be copied and stored in the "call" object used to invoke the service. If another call is made using the same call object, that cookie will be sent back to the server, therefore maintaining the session. Thus, all you have to do is ensure that a single instance of a call object is used across all the calls that you wish to make over the same HTTP session. 6-2

65 Using the SOAP Client APIs Using Attachments Using Attachments This section describes SOAP messages with attachments. The SOAP messages with attachments proposal has been published as a W3C Note at In this scheme, the MIME (Multipurpose Internet Mail Extensions) multipart message format is used to bundle a complete standard SOAP message with additional data in a SOAP message package. The SOAP message, occupying the first position in the package, can incorporate references to the other parts of the message using a naming convention described in the note. SOAP message packages can be transmitted by HTTP, SMTP (Simple Mail Transport Protocol), or any other message protocol. Background Even though SOAP is an XML-based protocol, it is not always convenient to force all data, which is passed as part of a SOAP message to be encoded in a way, which can be embedded inside of an XML document. Sometimes it would be cleaner to allow data, such as JPEG images, WAV files, and so on, to be passed along with the SOAP message, instead of inside of it. To address this issue, the SOAP Messages with Attachments specification was created. The SOAP Messages with Attachments specification allows for the embedding of a SOAP message inside of a MIME document, in a manner in which does not alter the processing rules of the message. The SOAP Messages with Attachments specification also describes how you refer to the attachments from inside the body of the SOAP message. Apache SOAP contains an implementation of this specification. Using Attachments on the Client If you are interacting with an RPC-based service, you may not need to do anything special to transmit an attachment. Pre-defined serializers/deserializers exist for interacting with javax.activation.datasource objects and javax.activation.datahandler objects. If your objects can be passed through one of these mechanisms then the RPC-code will handle creating and or removing the attachment for you. If you are using a message-oriented service, you can use methods in one of the following classes: org.apache.soap.messaging.message org.apache.soap.rpc.call org.apache.soap.rpc.response classes The addbodypart(...) methods allow you to add a javax.mail.internet.mimebodypart object to your messages, while the findbodypart(...) and getbodypart(...) methods allow you to retrieve them through the Content-URI and location within the message, respectively. 6-3

66 Using the SOAP Client APIs Using Attachments on the Server Using Attachments on the Server As in the client case, if you are implementing an RPC-based service you may be able to take advantage of the built-in serializers/deserializers for the javax.activation.datasource and javax.activation.datahandler objects. If you are implementing a message-oriented service, you can use methods from the following class to add or retrieve MimeBodyParts: org.apache.soap.rpc.soapcontext Referencing Attachments From Within a SOAP Message To refer to an attachment from within a SOAP message, add an element similar to the following: where <elemname href="cid:cid-uri"> elemname is the name of the element within the message. cid-uri is the URL-encoded name of the Content-ID for the attachment which you are referring to, or alternatively, an absolute or relative URI referring to the Content- Location of the attachment. (The Content-ID is set as part of the javax.mail.internet.mimebodypart.) 6-4

67 7 Samples Deploying NonStop SOAP for Java The NonStop SOAP for Java samples are located under the following directory: /usr/tandem/nssoap/t2764v10/samples An individual sample may consist of a number of.java and.class files contained in a separate child directory under the samples directory. The individual directories contain: DeploymentDescriptor.xml: An XML file containing the deployment descriptor for that sample. Most of the samples can be run using this deployment descriptor unchanged. But for some specific samples, you need to edit the XML file (for example, for SOAP-EJB samples, you need information for the ContextProviderURL, which is installation specific).java and.class files: The.java files contains the code for the SOAP client and SOAP service, including some helper classes. Some samples (for example, SOAP-EJB samples), may contain just the SOAP client files. The.class files are the compiled.java files. README: The readme file contains details about the sample. For example, using the sample, any pre-requisites to running the sample, and building the sample files. run.sh: A script file that does the following: deploys the service described by the DeploymentDescriptor.xml file. verifies that the service deployed is present. executes the client.class file and display the results. undeploys the service. verifies that the service is undeployed. The script defaults to a pre-defined SOAP server URL which you should change to your SOAP server location. Deploying a Java Class as a Web Service This section discusses the deployment of a Java class (that you might already have) as a Web service. To deploy a Java class, you have two choices: Deployment Using NskSoapManager on page 7-2 Deployment Using Apache SOAP Admin on page

68 Samples Deploying NonStop SOAP for Java Deployment Using NskSoapManager Deployment Using NskSoapManager To deploy using NskSoapManager, you need to follow the steps listed in Section 5, Using the Administration Tools on running the NskSoapManager tool. Verify that the class you want to deploy is locatable in the CLASSPATH with which the tool is started. Deployment Using Apache SOAP Admin To deploy using Apache SOAP Admin, open the SOAP Admin page (at URL and click the Deploy button and you will receive the following screen. The fields in the web page represent the properties of the services to be deployed. Figure 7-1. Apache SOAP Admin Screen In the following example, let s assume that we want to deploy a class with the following details: 7-2

69 Samples Deploying NonStop SOAP for Java Deployment Using Apache SOAP Admin Class Name: com.myfirm.product.classtodeploy Methods: method1, method2, method3 Methods to be exposed: method1, method3 In Table 7-1, fill-in the information appearing in the following form in the appropriate fields in the screen: Table 7-1. Sample Form ID Scope Methods Provider Type urn:deployedclass Application method1 method3 Java FULL Class Name Number of Options 4 Key Value Java Provider Provider Class Static com.myfirm.product.classtodeploy No Note. Fields from the image (not mentioned in the table) need to retain their default values (empty or set). Once all the information above is entered, click the form's Deploy button. To make calls to this service, use the following values: Server URL where SOAP requests will be made: URI name to be used in the SOAP request message: urn:deployedclass To make successful SOAP requests (deployed using steps listed in Section 5, Using the Administration Tools), the SOAP server servlet should be able to locate the class. com.myfirm.product.classtodeploy. Depending on where this class is located, you can do the following. 1. In a.jar file: If the class is packaged inside a jar file, copy the.jar file under the <itp_webserver_directory>/servlet_jsp/webapps/soap/web- INF/lib directory. 7-3

70 Samples Deploying NonStop SOAP for Java Deployment Using Apache SOAP Admin 2. In a.class file: If the classtodeploy.class is present under a directory structure (com/myfirm/product/), then copy the entire "com" directory to the <itp_webserver_directory>/servlet_jsp/webapps/soap/web- INF/classes directory. Assuming default values, if the Context entry in the <itp_webserver_directory>/servlet_jsp/conf/itp_server.xml file for the path /servlet/soap, has the attribute reloadable with a value of false, the itp Webserver would have to be restarted before successful SOAP calls could be made. If however, the value of the attribute reloadable is true, then successful SOAP calls can be made after the completion of Steps 1 or 2. By default, the value of the reloadable attribute is set to false. 7-4

71 8 Troubleshooting Tips for NonStop for Java This section provides NonStop SOAP for Java troubleshooting tips and identifies common problems. It also explains general troubleshooting concepts related to NonStop SOAP for Java. A good understanding of Java and normal operation of your system are the most crucial elements in problem resolution. You should have a thorough understanding of the material presented in that manual before attempting to resolve any NonStop SOAP for Java problems. Topics described in this section include the following: What to Do if You Can t Solve a Problem on page 8-1 What to Do if the Samples Don t Work on page 8-1 What to Do if the Tools in the bin Directory Don t Run on page 8-2 What to Do if You Can t Solve a Problem Some general troubleshooting tips that you should do before continuing to attempt to resolve your problem. Verify that the NonStop SOAP for Java product is installed on the system you are using. Verify that the environment variable JAVA_HOME is correctly set to the java installation directory. Verify that the environment variable PATH has the $JAVA_HOME/bin directory in it. Before attempting to run any samples or tools, verify that you have run the setup script located under the default installation directory /usr/tandem/nssoap/t2764v10. The setup script fails if you do not have privileges to modify the following files: <Webserver-dir>/conf/servlet.config <Webserver-dir>/servlet_jsp/conf/iTP_server.xml After running the setup script, make sure that you follow the additional steps prompted to you by the setup script and restart the itp WebServer after completing the previous step. What to Do if the Samples Don t Work If the sample is not running, you should do the following: 8-1

72 Troubleshooting Tips for NonStop for Java What to Do if the Tools in the bin Directory Don t Run Verify that you source in the contents of the following file: /usr/tandem/nssoap/t2764v10/etc/env.sh This file contains necessary environment variables required for the samples to run correctly Verify that after installation that you have restarted the itp WebServer. Verify that the value of the URL variable in the run.sh file (present in each of the individual samples directory) has the correct value of the location of the SOAP for Java webapp (the default is If a SOAP-EJB sample is not running, make sure that you have added the EJB.jar files to the itp WebServer s startup JVCP variable as suggested by the comments located in the following file: /usr/tandem/webserver/conf/soap4java.config Make sure that you edit the DeploymentDescriptor.xml file present in each individual samples directory to have correct values for: ContextProviderURL; find out the correct value. See Appendix A, Locating the ContextProviderURL for information on how to locate the ContentProviderURL. JNDIName; the value provided, by default would work if the NSEJB samples are deployed using the values provided in the sample documentation of the NSEJB product. Any change in the values should be appropriately changed. Confirm the value of the variable SOAP_NSDOM_CFG_DBM (set at the time of running the setup script) in the following file: <WebServer-dir>/conf/soap4java.config Confirm that the Arglist of the $server_objectcode has the following option: -DORBdbm=$env(SOAP_NSDOM_CFG_DBM) What to Do if the Tools in the bin Directory Don t Run If the tools in the bin directory do not work, you should do the following: Verify that you source in the contents of the following file: /usr/tandem/nssoap/t2764v10/etc/env.sh This file contains necessary environment variables required for the samples to run correctly. If you are trying to deploy a java class as a web service using the NskSoapManager tool, verify that the class is in the system CLASSPATH. 8-2

73 A Locating the ContextProviderURL To successfully deploy EJB applications as Web services, you need a value called ContextProviderURL for the user-specific NSEJB installation. To locate the value of ContextProviderURL you must do the following: 1. Launch the NonStop Console from the NonStop Console icon on the desktop if you installed the Console with the default installation. Double-click the icon. The console main panel comes up. 2. Connect to the system, the NonStop server, where you want to deploy the NonStop EJB application. 3. Select the correct security domain you want to use. Refer to the NonStop EJB User s Guide for more information about the security domain. 4. Choose the business domain. The Console main panel displays a tree of applications under the chosen business and security domain. The screen is illustrated in Figure A-1. A-1

74 Locating the ContextProviderURL. Figure A-1. NonStop Console Main Panel A-2

75 Locating the ContextProviderURL Click the button shown immediately below; the NonStop (TM) Distributed Components Console Figure A-2 appears. Figure A-2. NonStop(TM) Distributed Components Console A-3

76 Locating the ContextProviderURL Click the button shown immediately below; then click the ILSD tab; the ISDL Server Configuration dialog Figure A-3 appears. Figure A-3. ILSD Server Configuration The value for ContextProviderURL is corbaloc:// :2811 (which is obtained by using the values of Host address and Port number.) A-4

HPE NonStop Remote Server Call (RSC/MP) Messages Manual

HPE NonStop Remote Server Call (RSC/MP) Messages Manual HPE NonStop Remote Server Call (RSC/MP) Messages Manual Abstract This manual provides a listing and description of RSC/MP messages that are reported on the HPE NonStop host and on RSC/MP workstations.

More information

OSI/FTAM Responder Manual

OSI/FTAM Responder Manual OSI/FTAM Responder Manual Abstract This manual describes the operation of the Compaq Open Systems Interconnection/File Transfer, Access and Management (OSI/FTAM) responder and its virtual filestore (VFS).

More information

TNS/R Native Application Migration Guide

TNS/R Native Application Migration Guide TNS/R Native Application Migration Guide Abstract This manual introduces the HP NonStop Series/RISC (TNS/R) native development and execution environments and explains how to migrate existing HP NonStop

More information

ViewSys User s Guide Abstract Product Version Supported Release Version Updates (RVUs) Part Number Published

ViewSys User s Guide Abstract Product Version Supported Release Version Updates (RVUs) Part Number Published ViewSys User s Guide Abstract ViewSys provides system managers and system operators the ability to view system resources on HP NonStop servers. This manual describes how the ViewSys program operates and

More information

NonStop Server for Java Message Service User s Manual

NonStop Server for Java Message Service User s Manual NonStop Server for Java Message Service User s Manual Abstract NonStop Server for Java Message Service (NSJMS) is an implementation of Sun Microsystems Java Message Service (JMS) API on HP NonStop S-series

More information

DLL Programmer s Guide for TNS/E Systems

DLL Programmer s Guide for TNS/E Systems DLL Programmer s Guide for TNS/E Systems Abstract This guide describes how application programmers can use the DLL facilities provided on TNS/E systems and recommends good practices in using them. Product

More information

Spooler Plus Programmer s Guide

Spooler Plus Programmer s Guide Spooler Plus Programmer s Guide Abstract This manual describes the Spooler Plus subsystem, its uses, and its applications. This guide is intended for application programmers who want to use the Spooler

More information

Telserv Manual Abstract Product Versions Supported Release Version Updates (RVUs) Part Number Published

Telserv Manual Abstract Product Versions Supported Release Version Updates (RVUs) Part Number Published Telserv Manual Abstract This manual describes the HP NonStop Telserv subsystem. Part I contains a product overview. Part II contains operational and configuration information for system administrators,

More information

HPE Code Coverage Tool Reference Manual for HPE Integrity NonStop NS-Series Servers

HPE Code Coverage Tool Reference Manual for HPE Integrity NonStop NS-Series Servers HPE Code Coverage Tool Reference Manual for HPE Integrity NonStop NS-Series Servers Abstract This manual describes the HPE Code Coverage Tool for HPE Integrity NonStop NS-Series Servers. It addresses application

More information

SWAN Concentrator and WAN Subsystem Troubleshooting Guide

SWAN Concentrator and WAN Subsystem Troubleshooting Guide SWAN Concentrator and WAN Subsystem Troubleshooting Guide Abstract This guide describes how to troubleshoot the SWAN concentrator, SWAN 2 concentrator, and WAN subsystem on an HP Integrity NonStop BladeSystem,

More information

HPE NonStop SQL/MX Release Guide to Stored Procedures in Java

HPE NonStop SQL/MX Release Guide to Stored Procedures in Java HPE NonStop SQL/MX Release 3.2.1 Guide to Stored Procedures in Java Part Number: 691166-003R Published: November 2015 Copyright 2013, 2015 Hewlett Packard Enterprise Development LP The information contained

More information

Debug Manual Abstract Product Version Supported Release Version Updates (RVUs) Part Number Published

Debug Manual Abstract Product Version Supported Release Version Updates (RVUs) Part Number Published Debug Manual Abstract This manual describes the Guardian debug facility (Debug) on HP NonStop systems. Product Version G07 Supported Release Version Updates (RVUs) This publication supports G06.06 and

More information

DSM/SCM Messages Manual

DSM/SCM Messages Manual DSM/SCM Messages Manual Abstract This manual provides cause, effect, and recovery information for messages and errors that you might encounter while using the Distributed Systems Management/Software Configuration

More information

BEAAquaLogic. Service Bus. Interoperability With EJB Transport

BEAAquaLogic. Service Bus. Interoperability With EJB Transport BEAAquaLogic Service Bus Interoperability With EJB Transport Version 3.0 Revised: February 2008 Contents EJB Transport Introduction...........................................................1-1 Invoking

More information

Virtual Hometerm Subsystem (VHS) Manual

Virtual Hometerm Subsystem (VHS) Manual Virtual Hometerm Subsystem (VHS) Manual Abstract This manual describes the Compaq NonStop Virtual Hometerm Subsystem (VHS). VHS acts as a virtual home terminal for applications by emulating a 6530 terminal.

More information

HP NonStop SQL/MX 2.3.x to SQL/MX 3.0 Database and Application Migration Guide

HP NonStop SQL/MX 2.3.x to SQL/MX 3.0 Database and Application Migration Guide HP NonStop SQL/MX 2.3.x to SQL/MX 3.0 Database and Application Migration Guide Abstract This manual explains how to migrate databases and applications from HP NonStop SQL/MX 2.3.x to SQL/MX Release 3.0

More information

HP NonStop ASAP Server Manual

HP NonStop ASAP Server Manual HP NonStop ASAP Server Manual Abstract HP NonStop Availability Statistics and Performance (ASAP) is an availability, state, and performance statistics collection infrastructure for the HP NonStop operating

More information

WAN Subsystem Configuration and Management Manual

WAN Subsystem Configuration and Management Manual WAN Subsystem Configuration and Management Manual Abstract This manual describes how to monitor, modify, and control the wide area network (WAN) subsystem and configure a ServerNet wide area network (SWAN

More information

ATM Configuration and Management Manual

ATM Configuration and Management Manual ATM Configuration and Management Manual Abstract This manual describes how to configure, operate, and manage the ATM subsystem on an HP NonStop S-series server. The manual includes descriptions of the

More information

EMS FastStart Manual. Abstract. Product Version. Supported Releases. Part Number Published Release ID

EMS FastStart Manual. Abstract. Product Version. Supported Releases. Part Number Published Release ID EMS FastStart Manual Abstract This manual provides information about the EMS FastStart program including installation, event message design, instructions for running the program, and customizing EMS FastStart

More information

Distributed Multitiered Application

Distributed Multitiered Application Distributed Multitiered Application Java EE platform uses a distributed multitiered application model for enterprise applications. Logic is divided into components https://docs.oracle.com/javaee/7/tutorial/overview004.htm

More information

Native Inspect Manual

Native Inspect Manual Native Inspect Manual Abstract This manual describes how to use the symbolic command-line debugger Native Inspect for debugging TNS/E native processes and snapshot files on HP NonStop Series TNS/E systems.

More information

J2EE Interview Questions

J2EE Interview Questions 1) What is J2EE? J2EE Interview Questions J2EE is an environment for developing and deploying enterprise applications. The J2EE platform consists of a set of services, application programming interfaces

More information

JBoss SOAP Web Services User Guide. Version: M5

JBoss SOAP Web Services User Guide. Version: M5 JBoss SOAP Web Services User Guide Version: 3.3.0.M5 1. JBoss SOAP Web Services Runtime and Tools support Overview... 1 1.1. Key Features of JBossWS... 1 2. Creating a Simple Web Service... 3 2.1. Generation...

More information

J2EE Development. Course Detail: Audience. Duration. Course Abstract. Course Objectives. Course Topics. Class Format.

J2EE Development. Course Detail: Audience. Duration. Course Abstract. Course Objectives. Course Topics. Class Format. J2EE Development Detail: Audience www.peaksolutions.com/ittraining Java developers, web page designers and other professionals that will be designing, developing and implementing web applications using

More information

Vision of J2EE. Why J2EE? Need for. J2EE Suite. J2EE Based Distributed Application Architecture Overview. Umair Javed 1

Vision of J2EE. Why J2EE? Need for. J2EE Suite. J2EE Based Distributed Application Architecture Overview. Umair Javed 1 Umair Javed 2004 J2EE Based Distributed Application Architecture Overview Lecture - 2 Distributed Software Systems Development Why J2EE? Vision of J2EE An open standard Umbrella for anything Java-related

More information

Real-time Process Monitor

Real-time Process Monitor HP NonStop RPM Real-time Process Monitor User s Guide Abstract HP NonStop Real-time Process Monitor (RPM) is a high-performance, low-overhead, Cpu and Process monitoring utility specifically engineered

More information

M8501 and M8502 ACL Tape Drive Installation and User s Guide

M8501 and M8502 ACL Tape Drive Installation and User s Guide M8501 and M8502 ACL Tape Drive Installation and User s Guide Abstract This guide provides information about installing, operating, and maintaining the M8501 and M8502 ACL tape drives on HP NonStop servers.

More information

Programming Web Services in Java

Programming Web Services in Java Programming Web Services in Java Description Audience This course teaches students how to program Web Services in Java, including using SOAP, WSDL and UDDI. Developers and other people interested in learning

More information

HP NonStop SQL/MX Release Guide to Stored Procedures in Java

HP NonStop SQL/MX Release Guide to Stored Procedures in Java HP NonStop SQL/MX Release 3.2.1 Guide to Stored Procedures in Java HP Part Number: 691166-003 Published: June 2013 Copyright 2013 Hewlett-Packard Development Company L.P. Confidential computer software.

More information

Mid-Range Library Media Manager Installation and User s Guide

Mid-Range Library Media Manager Installation and User s Guide Mid-Range Library Media Manager Installation and User s Guide Abstract This guide describes how to install and use the Mid-Range Library Media Manager software. It includes information about connection

More information

(9A05803) WEB SERVICES (ELECTIVE - III)

(9A05803) WEB SERVICES (ELECTIVE - III) 1 UNIT III (9A05803) WEB SERVICES (ELECTIVE - III) Web services Architecture: web services architecture and its characteristics, core building blocks of web services, standards and technologies available

More information

Deccansoft Software Services. J2EE Syllabus

Deccansoft Software Services. J2EE Syllabus Overview: Java is a language and J2EE is a platform which implements java language. J2EE standard for Java 2 Enterprise Edition. Core Java and advanced java are the standard editions of java whereas J2EE

More information

HP NonStop TCP/IPv6 Configuration and Management Manual

HP NonStop TCP/IPv6 Configuration and Management Manual HP NonStop TCP/IPv6 Configuration and Management Manual Abstract This manual describes how to configure and manage the HP NonStop TCP/IPv6 subsystem on HP NonStop S-series servers and HP Integrity NonStop

More information

HP NonStop TCP/IPv6 Migration Guide

HP NonStop TCP/IPv6 Migration Guide HP NonStop TCP/IPv6 Migration Guide Abstract Version This manual discusses the differences between HP NonStop TCP/IP and NonStop TCP/IPv6 and the differences between Parallel Library TCP/IP and NonStop

More information

C exam. IBM C IBM WebSphere Application Server Developer Tools V8.5 with Liberty Profile. Version: 1.

C exam.   IBM C IBM WebSphere Application Server Developer Tools V8.5 with Liberty Profile. Version: 1. C9510-319.exam Number: C9510-319 Passing Score: 800 Time Limit: 120 min File Version: 1.0 IBM C9510-319 IBM WebSphere Application Server Developer Tools V8.5 with Liberty Profile Version: 1.0 Exam A QUESTION

More information

Oracle 10g: Build J2EE Applications

Oracle 10g: Build J2EE Applications Oracle University Contact Us: (09) 5494 1551 Oracle 10g: Build J2EE Applications Duration: 5 Days What you will learn Leading companies are tackling the complexity of their application and IT environments

More information

BEAAquaLogic. Service Bus. JPD Transport User Guide

BEAAquaLogic. Service Bus. JPD Transport User Guide BEAAquaLogic Service Bus JPD Transport User Guide Version: 3.0 Revised: March 2008 Contents Using the JPD Transport WLI Business Process......................................................2 Key Features.............................................................2

More information

Web Services Technical Reference

Web Services Technical Reference IBM WebSphere Business Connection Web Services Technical Reference Version 1.1.0 Note! Before using this information and the product it supports, be sure to read the general information under Notices on

More information

Session 8. Reading and Reference. en.wikipedia.org/wiki/list_of_http_headers. en.wikipedia.org/wiki/http_status_codes

Session 8. Reading and Reference. en.wikipedia.org/wiki/list_of_http_headers. en.wikipedia.org/wiki/http_status_codes Session 8 Deployment Descriptor 1 Reading Reading and Reference en.wikipedia.org/wiki/http Reference http headers en.wikipedia.org/wiki/list_of_http_headers http status codes en.wikipedia.org/wiki/_status_codes

More information

NonStop Servlets for JavaServer Pages (NSJSP) 6.1 System Administrator s Guide

NonStop Servlets for JavaServer Pages (NSJSP) 6.1 System Administrator s Guide NonStop Servlets for JavaServer Pages (NSJSP) 6.1 System Administrator s Guide Abstract NonStop Servlets for JavaServer Pages (NSJSP) is a container that runs Java servlets and JavaServer Pages (JSPs)

More information

Object Code Accelerator Manual

Object Code Accelerator Manual Object Code Accelerator Manual Abstract This manual describes how to use the Object Code Accelerator (OCA) to optimize TNS object code for HP TNS/E systems. OCA processes files for the Guardian environment.

More information

The team that wrote this redbook

The team that wrote this redbook Preface p. xix The team that wrote this redbook p. xix Comments welcome p. xxiii Overview of WebSphere Application Server V3.5 p. 1 What is WebSphere Application Server? p. 1 WebSphere Application Server

More information

Library Media Manager Installation and User s Guide

Library Media Manager Installation and User s Guide Library Media Manager Installation and User s Guide Abstract This guide describes how to install and use the Library Media Manager software. It includes information about connection with an HP Integrity

More information

OSI /MHS SCF Reference Manual

OSI /MHS SCF Reference Manual OSI /MHS SCF Reference Manual Abstract This manual describes how to use the Subsystem Control Facility (SCF) interactive interface to configure and control a Compaq Open System Interconnection/Message

More information

Web Application Architecture (based J2EE 1.4 Tutorial)

Web Application Architecture (based J2EE 1.4 Tutorial) Web Application Architecture (based J2EE 1.4 Tutorial) Dr. Kanda Runapongsa (krunapon@kku.ac.th) Department of Computer Engineering Khon Kaen University 1 Agenda Web application, components and container

More information

Common Run-Time Environment (CRE) Programmer s Guide

Common Run-Time Environment (CRE) Programmer s Guide Common Run-Time Environment (CRE) Programmer s Guide Abstract This manual describes the Common Run-Time Environment (CRE), a set of run-time services that enable system and application programmers to write

More information

HP NonStop Pathway/iTS Web Client Programming Manual

HP NonStop Pathway/iTS Web Client Programming Manual HP NonStop Pathway/iTS Web Client Programming Manual Abstract This manual describes how to convert SCREEN COBOL requesters to web clients and explains how to build and deploy those clients. It also provides

More information

HP NonStop MXDM User Guide for SQL/MX Release 3.2

HP NonStop MXDM User Guide for SQL/MX Release 3.2 HP NonStop MXDM User Guide for SQL/MX Release 3.2 HP Part Number: 691119-001 Published: August 2012 Edition: J06.14 and subsequent J-series RVUs; H06.25 and subsequent H-series RVUs Copyright 2012 Hewlett-Packard

More information

NetBeans IDE Field Guide

NetBeans IDE Field Guide NetBeans IDE Field Guide Copyright 2005 Sun Microsystems, Inc. All rights reserved. Table of Contents Extending Web Applications with Business Logic: Introducing EJB Components...1 EJB Project type Wizards...2

More information

web.xml Deployment Descriptor Elements

web.xml Deployment Descriptor Elements APPENDIX A web.xml Deployment Descriptor s The following sections describe the deployment descriptor elements defined in the web.xml schema under the root element . With Java EE annotations, the

More information

BEAWebLogic Server. WebLogic Web Services: Advanced Programming

BEAWebLogic Server. WebLogic Web Services: Advanced Programming BEAWebLogic Server WebLogic Web Services: Advanced Programming Version 10.0 Revised: April 28, 2008 Contents 1. Introduction and Roadmap Document Scope and Audience.............................................

More information

Enform Plus Reference Manual

Enform Plus Reference Manual Enform Plus Reference Manual Abstract This manual provides detailed information about the syntax of the Enform Plus language. Product Version Enform Plus D46 Supported Releases This manual supports D46.00

More information

Java Programming Language

Java Programming Language Java Programming Language Additional Material SL-275-SE6 Rev G D61750GC10 Edition 1.0 D62603 Copyright 2007, 2009, Oracle and/or its affiliates. All rights reserved. Disclaimer This document contains proprietary

More information

Session 9. Deployment Descriptor Http. Reading and Reference. en.wikipedia.org/wiki/http. en.wikipedia.org/wiki/list_of_http_headers

Session 9. Deployment Descriptor Http. Reading and Reference. en.wikipedia.org/wiki/http. en.wikipedia.org/wiki/list_of_http_headers Session 9 Deployment Descriptor Http 1 Reading Reading and Reference en.wikipedia.org/wiki/http Reference http headers en.wikipedia.org/wiki/list_of_http_headers http status codes en.wikipedia.org/wiki/http_status_codes

More information

CROSSREF Manual. Tools and Utilities Library

CROSSREF Manual. Tools and Utilities Library Tools and Utilities Library CROSSREF Manual Abstract This manual describes the CROSSREF cross-referencing utility, including how to use it with C, COBOL 74, COBOL85, EXTENDED BASIC, FORTRAN, Pascal, SCREEN

More information

Java EE 7: Back-End Server Application Development

Java EE 7: Back-End Server Application Development Oracle University Contact Us: Local: 0845 777 7 711 Intl: +44 845 777 7 711 Java EE 7: Back-End Server Application Development Duration: 5 Days What you will learn The Java EE 7: Back-End Server Application

More information

Oracle Fusion Middleware

Oracle Fusion Middleware Oracle Fusion Middleware Administering Web Services 12c (12.1.2) E28131-01 June 2013 Documentation for developers and administrators that describes how to administer Web services. Oracle Fusion Middleware

More information

CO Java EE 7: Back-End Server Application Development

CO Java EE 7: Back-End Server Application Development CO-85116 Java EE 7: Back-End Server Application Development Summary Duration 5 Days Audience Application Developers, Developers, J2EE Developers, Java Developers and System Integrators Level Professional

More information

Oracle - Developing Applications for the Java EE 7 Platform Ed 1 (Training On Demand)

Oracle - Developing Applications for the Java EE 7 Platform Ed 1 (Training On Demand) Oracle - Developing Applications for the Java EE 7 Platform Ed 1 (Training On Demand) Code: URL: D101074GC10 View Online The Developing Applications for the Java EE 7 Platform training teaches you how

More information

Oracle Service Bus. Interoperability with EJB Transport 10g Release 3 (10.3) October 2008

Oracle Service Bus. Interoperability with EJB Transport 10g Release 3 (10.3) October 2008 Oracle Service Bus Interoperability with EJB Transport 10g Release 3 (10.3) October 2008 Oracle Service Bus Interoperability with EJB Transport, 10g Release 3 (10.3) Copyright 2007, 2008, Oracle and/or

More information

HP NonStop Remote Server Call (RSC/MP) Installation and Configuration Guide

HP NonStop Remote Server Call (RSC/MP) Installation and Configuration Guide HP NonStop Remote Server Call (RSC/MP) Installation and Configuration Guide Abstract This manual describes the installation, configuration, and management of RSC/MP software on a HP NonStop system acting

More information

Java 2 Platform, Enterprise Edition: Platform and Component Specifications

Java 2 Platform, Enterprise Edition: Platform and Component Specifications Table of Contents Java 2 Platform, Enterprise Edition: Platform and Component Specifications By Bill Shannon, Mark Hapner, Vlada Matena, James Davidson, Eduardo Pelegri-Llopart, Larry Cable, Enterprise

More information

Distributed Systems. Web Services (WS) and Service Oriented Architectures (SOA) László Böszörményi Distributed Systems Web Services - 1

Distributed Systems. Web Services (WS) and Service Oriented Architectures (SOA) László Böszörményi Distributed Systems Web Services - 1 Distributed Systems Web Services (WS) and Service Oriented Architectures (SOA) László Böszörményi Distributed Systems Web Services - 1 Service Oriented Architectures (SOA) A SOA defines, how services are

More information

Cisco TEO Adapter Guide for Microsoft Windows

Cisco TEO Adapter Guide for Microsoft Windows Cisco TEO Adapter Guide for Microsoft Windows Release 2.3 April 2012 Americas Headquarters Cisco Systems, Inc. 170 West Tasman Drive San Jose, CA 95134-1706 USA http://www.cisco.com Tel: 408 526-4000 800

More information

Exercise SBPM Session-4 : Web Services

Exercise SBPM Session-4 : Web Services Arbeitsgruppe Exercise SBPM Session-4 : Web Services Kia Teymourian Corporate Semantic Web (AG-CSW) Institute for Computer Science, Freie Universität Berlin kia@inf.fu-berlin.de Agenda Presentation of

More information

BEAAquaLogic. Service Bus. MQ Transport User Guide

BEAAquaLogic. Service Bus. MQ Transport User Guide BEAAquaLogic Service Bus MQ Transport User Guide Version: 3.0 Revised: February 2008 Contents Introduction to the MQ Transport Messaging Patterns......................................................

More information

Developing Applications with Java EE 6 on WebLogic Server 12c

Developing Applications with Java EE 6 on WebLogic Server 12c Developing Applications with Java EE 6 on WebLogic Server 12c Duration: 5 Days What you will learn The Developing Applications with Java EE 6 on WebLogic Server 12c course teaches you the skills you need

More information

Attunity Connect and BEA WebLogic (Version 8.1)

Attunity Connect and BEA WebLogic (Version 8.1) Attunity Connect and BEA WebLogic (Version 8.1) Attunity Connect and BEA WebLogic (Version 8.1) 2006 by Attunity Ltd. Due to a policy of continuous development, Attunity Ltd. reserves the right to alter,

More information

Java J Course Outline

Java J Course Outline JAVA EE - J2SE - CORE JAVA After all having a lot number of programming languages. Why JAVA; yet another language!!! AND NOW WHY ONLY JAVA??? CHAPTER 1: INTRODUCTION What is Java? History Versioning The

More information

Federated Identity Manager Business Gateway Version Configuration Guide GC

Federated Identity Manager Business Gateway Version Configuration Guide GC Tivoli Federated Identity Manager Business Gateway Version 6.2.1 Configuration Guide GC23-8614-00 Tivoli Federated Identity Manager Business Gateway Version 6.2.1 Configuration Guide GC23-8614-00 Note

More information

index_ qxd 7/18/02 11:48 AM Page 259 Index

index_ qxd 7/18/02 11:48 AM Page 259 Index index_259-265.qxd 7/18/02 11:48 AM Page 259 Index acceptance testing, 222 activity definition, 249 key concept in RUP, 40 Actor artifact analysis and iterative development, 98 described, 97 136 in the

More information

TIBCO ActiveMatrix Adapter Service Engine for Files Examples. Software Release 6.0 April 2009

TIBCO ActiveMatrix Adapter Service Engine for Files Examples. Software Release 6.0 April 2009 TIBCO ActiveMatrix Adapter Service Engine for Files Examples Software Release 6.0 April 2009 Important Information SOME TIBCO SOFTWARE EMBEDS OR BUNDLES OTHER TIBCO SOFTWARE. USE OF SUCH EMBEDDED OR BUNDLED

More information

J2EE - Version: 25. Developing Enterprise Applications with J2EE Enterprise Technologies

J2EE - Version: 25. Developing Enterprise Applications with J2EE Enterprise Technologies J2EE - Version: 25 Developing Enterprise Applications with J2EE Enterprise Technologies Developing Enterprise Applications with J2EE Enterprise Technologies J2EE - Version: 25 5 days Course Description:

More information

Skyway Builder 6.3 Reference

Skyway Builder 6.3 Reference Skyway Builder 6.3 Reference 6.3.0.0-07/21/09 Skyway Software Skyway Builder 6.3 Reference: 6.3.0.0-07/21/09 Skyway Software Published Copyright 2009 Skyway Software Abstract The most recent version of

More information

Scenario Manager User Guide. Release September 2013

Scenario Manager User Guide. Release September 2013 Scenario Manager User Guide Release 6.2.1 September 2013 Scenario Manager User Guide Release 6.2.1 September 2013 Document Control Number: 9MN12-62110017 Document Number: SMUG-13-FCCM-0017-6.2.1-01 Oracle

More information

BEAAquaLogic. Service Bus. Native MQ Transport User Guide

BEAAquaLogic. Service Bus. Native MQ Transport User Guide BEAAquaLogic Service Bus Native MQ Transport User Guide Version: 2.6 RP1 Revised: November 2007 Contents Introduction to the Native MQ Transport Advantages of Using the Native MQ Transport................................

More information

Naming & Design Requirements (NDR)

Naming & Design Requirements (NDR) The Standards Based Integration Company Systems Integration Specialists Company, Inc. Naming & Design Requirements (NDR) CIM University San Francisco October 11, 2010 Margaret Goodrich, Manager, Systems

More information

Oracle Fusion Middleware

Oracle Fusion Middleware Oracle Fusion Middleware Application Adapter for PeopleSoft User's Guide for Oracle WebLogic Server 11g Release 1 (11.1.1.4.0) E17055-04 April 2011 Oracle Fusion Middleware Application Adapter for PeopleSoft

More information

TIC Server Object Gateway User s Guide

TIC Server Object Gateway User s Guide TIC Server Object Gateway User s Guide Glossary Index Figures Tables What s New in This Manual ix Manual Information ix New and Changed Information ix About This Manual xi Objectives of This Manual Audience

More information

Introduction to Web Services

Introduction to Web Services 20 th July 2004 www.eu-egee.org Introduction to Web Services David Fergusson NeSC EGEE is a project funded by the European Union under contract IST-2003-508833 Objectives Context for Web Services Architecture

More information

Cisco TEO Adapter Guide for Microsoft System Center Operations Manager 2007

Cisco TEO Adapter Guide for Microsoft System Center Operations Manager 2007 Cisco TEO Adapter Guide for Microsoft System Center Operations Manager 2007 Release 2.3 April 2012 Americas Headquarters Cisco Systems, Inc. 170 West Tasman Drive San Jose, CA 95134-1706 USA http://www.cisco.com

More information

WA2031 WebSphere Application Server 8.0 Administration on Windows. Student Labs. Web Age Solutions Inc. Copyright 2012 Web Age Solutions Inc.

WA2031 WebSphere Application Server 8.0 Administration on Windows. Student Labs. Web Age Solutions Inc. Copyright 2012 Web Age Solutions Inc. WA2031 WebSphere Application Server 8.0 Administration on Windows Student Labs Web Age Solutions Inc. Copyright 2012 Web Age Solutions Inc. 1 Table of Contents Directory Paths Used in Labs...3 Lab Notes...4

More information

BEAWebLogic. Server. Programming WebLogic Deployment

BEAWebLogic. Server. Programming WebLogic Deployment BEAWebLogic Server Programming WebLogic Deployment Version 10.0 Revised: March 30, 2007 Contents 1. Introduction and Roadmap Document Scope and Audience............................................. 1-1

More information

Deployment Manual. SAP J2EE Engine 6.20

Deployment Manual. SAP J2EE Engine 6.20 Deployment Manual SAP J2EE Engine 6.20 Contents About This Manual... 4 Target Audience... 4 Structure... 4 Deployment Tasks...5 Overview... 6 Generate J2EE Components... 7 Generate J2EE Components Using

More information

TIBCO ActiveMatrix BusinessWorks Plug-in for WebSphere MQ Installation

TIBCO ActiveMatrix BusinessWorks Plug-in for WebSphere MQ Installation TIBCO ActiveMatrix BusinessWorks Plug-in for WebSphere MQ Installation Software Release 7.6 November 2015 Two-Second Advantage Important Information SOME TIBCO SOFTWARE EMBEDS OR BUNDLES OTHER TIBCO SOFTWARE.

More information

WAS: WebSphere Appl Server Admin Rel 6

WAS: WebSphere Appl Server Admin Rel 6 In order to learn which questions have been answered correctly: 1. Print these pages. 2. Answer the questions. 3. Send this assessment with the answers via: a. FAX to (212) 967-3498. Or b. Mail the answers

More information

1 OBJECT-ORIENTED PROGRAMMING 1

1 OBJECT-ORIENTED PROGRAMMING 1 PREFACE xvii 1 OBJECT-ORIENTED PROGRAMMING 1 1.1 Object-Oriented and Procedural Programming 2 Top-Down Design and Procedural Programming, 3 Problems with Top-Down Design, 3 Classes and Objects, 4 Fields

More information

BEA WebLogic. Platform. Configuration Wizard Template Reference

BEA WebLogic. Platform. Configuration Wizard Template Reference BEA WebLogic Platform Configuration Wizard Template Reference Release 7.0 Document Date: June 2002 Copyright Copyright 2002 BEA Systems, Inc. All Rights Reserved. Restricted Rights Legend This software

More information

Writing Servlets and JSPs p. 1 Writing a Servlet p. 1 Writing a JSP p. 7 Compiling a Servlet p. 10 Packaging Servlets and JSPs p.

Writing Servlets and JSPs p. 1 Writing a Servlet p. 1 Writing a JSP p. 7 Compiling a Servlet p. 10 Packaging Servlets and JSPs p. Preface p. xiii Writing Servlets and JSPs p. 1 Writing a Servlet p. 1 Writing a JSP p. 7 Compiling a Servlet p. 10 Packaging Servlets and JSPs p. 11 Creating the Deployment Descriptor p. 14 Deploying Servlets

More information

Java.. servlets and. murach's TRAINING & REFERENCE 2ND EDITION. Joel Murach Andrea Steelman. IlB MIKE MURACH & ASSOCIATES, INC.

Java.. servlets and. murach's TRAINING & REFERENCE 2ND EDITION. Joel Murach Andrea Steelman. IlB MIKE MURACH & ASSOCIATES, INC. TRAINING & REFERENCE murach's Java.. servlets and 2ND EDITION Joel Murach Andrea Steelman IlB MIKE MURACH & ASSOCIATES, INC. P 1-800-221-5528 (559) 440-9071 Fax: (559) 440-0963 murachbooks@murach.com www.murach.com

More information

11-15 DECEMBER ANTWERP BELGIUM

11-15 DECEMBER ANTWERP BELGIUM 1 Java EE Enhancements for Real World Deployments Nagesh Susarla Staff Software Engineer BEA Systems www.javapolis.com 2 Overall Presentation Goal Get an understanding of the latest application packaging,

More information

AdapterforeMatrixUserGuide

AdapterforeMatrixUserGuide IBM WebSphere Business Integration Adapters AdapterforeMatrixUserGuide V1.0.x IBM WebSphere Business Integration Adapters AdapterforeMatrixUserGuide V1.0.x Note! Before using this information and the

More information

Distributed Transactions and PegaRULES Process Commander. PegaRULES Process Commander Versions 5.1 and 5.2

Distributed Transactions and PegaRULES Process Commander. PegaRULES Process Commander Versions 5.1 and 5.2 Distributed Transactions and PegaRULES Process Commander PegaRULES Process Commander Versions 5.1 and 5.2 Copyright 2007 Pegasystems Inc., Cambridge, MA All rights reserved. This document describes products

More information

Active Endpoints. ActiveVOS Platform Architecture Active Endpoints

Active Endpoints. ActiveVOS Platform Architecture Active Endpoints Active Endpoints ActiveVOS Platform Architecture ActiveVOS Unique process automation platforms to develop, integrate, and deploy business process applications quickly User Experience Easy to learn, use

More information

Java- EE Web Application Development with Enterprise JavaBeans and Web Services

Java- EE Web Application Development with Enterprise JavaBeans and Web Services Java- EE Web Application Development with Enterprise JavaBeans and Web Services Duration:60 HOURS Price: INR 8000 SAVE NOW! INR 7000 until December 1, 2011 Students Will Learn How to write Session, Message-Driven

More information

Web Application Development Using JEE, Enterprise JavaBeans and JPA

Web Application Development Using JEE, Enterprise JavaBeans and JPA Web Application Development Using JEE, Enterprise Java and JPA Duration: 35 hours Price: $750 Delivery Option: Attend training via an on-demand, self-paced platform paired with personal instructor facilitation.

More information

Problems in Scaling an Application Client

Problems in Scaling an Application Client J2EE What now? At this point, you understand how to design servers and how to design clients Where do you draw the line? What are issues in complex enterprise platform? How many servers? How many forms

More information

Cisco TEO Adapter Guide for

Cisco TEO Adapter Guide for Release 2.3 April 2012 Americas Headquarters Cisco Systems, Inc. 170 West Tasman Drive San Jose, CA 95134-1706 USA http://www.cisco.com Tel: 408 526-4000 800 553-NETS (6387) Fax: 408 527-0883 Text Part

More information

Oracle Fusion Middleware

Oracle Fusion Middleware Oracle Fusion Middleware Deployment Guide for Oracle Service Bus 11g Release 1 (11.1.1.5.0) E15022-03 April 2011 Oracle Fusion Middleware Deployment Guide for Oracle Service Bus, 11g Release 1 (11.1.1.5.0)

More information