IBM Home Products Consulting Industries News About IBM Search
|
|
- Myron McLaughlin
- 6 years ago
- Views:
Transcription
1 IBM Home Products Consulting Industries News About IBM Search IBM : developerworks : Web services library The Web services (r)evolution Hello world, Web service-style Graham Glass CEO/Chief Architect, The Mind Electric December 2000 This article provides a step by step explanation of how to develop a Web service, including what tools you will need, how to install them, how to write the code, and how to deploy the service. It goes on to explain how to invoke other Web services from across the Internet. Welcome to the second installment of my column that focuses on the evolutionary and revolutionary aspects of Web services technology. In the first installment, I presented an overview of Web services and the problems that must be addressed in order for this technology to become mainstream. In this installment, I ll teach you everything you need to know in order to build and deploy your first Web service. I ll also show you how to invoke Web services that are already deployed on the Internet. Tools and installation The first step in building your first Web service is to select a tool set. The tools that you ll use are: Apache SOAP This open source Java implementation of SOAP includes support for a useful subset of the SOAP 1.1 specification, and integrates nicely with existing Web servers. See the Resources section to download this software. Apache Jakarta Tomcat This open source Java Web server also implements the Java servlets 2.2 API specification, which is necessary to host Apache SOAP 2.0. See the Resources section to download this software. Apache Xerces XML Parser This open source XML parser implements most of the latest XML specifications, and is used by Apache SOAP 2.0. See the Resources section to download this software. Contents: Tools and installation Starting the Web server Writing a Web service Deploying a Web service Invoking a Web service Invoking Web services across the Internet Resources About the author I hope you have a fast download link, as the total size of these downloads is over 6 megabytes. I downloaded the software from my home over a 28K link, and had enough time to drink several cups of coffee and go for a run! If you unzip each package into your root directory, you should have the directory structure in Listing 1. Listing 1: The Apache package directory listing \ jakarta-tomcat-3.2 lib //contains webserver.jar, servlet.jar, jasper.jar, parser.jar, jaxp.jar soap-2_0 lib //contains soap.jar xerces-1_2_3 //contains xerces.jar The next thing to do is to add the Xerces and Apache SOAP.jar files into your class path, making sure that xerces.jar goes in front. If you don t do this, there's a chance that Apache SOAP will find the wrong XML.jar file and things won t work properly. On my system, I added the following two entries into my class path: C:\xerces-1_2_3\xerces.jar C:\soap-2_0\lib\soap.jar The next part is a little annoying. Apparently the main Tomcat script makes the mistake of inserting its own classes in front of the existing class path, leading to the out-of-order xerces.jar problem I mentioned earlier, so you have to edit \jakarta-tomcat-3.2\bin\tomcat.bat (or.sh if you re using UNIX) and replace the line: (1 of 10) [12/20/2000 3:41:38 PM]
2 set CP=%CP%;%CLASSPATH% with the line: set CP=%CLASSPATH%;%CP% or its UNIX equivalent. By swapping the order, the xerces.jar file is now in the correct search position again. Finally, you must configure Tomcat so that it automatically detects the Apache SOAP subsystem by editing \jakarta-tomcat-3.2\conf\server.xml and appending the <Context> entry in Listing 2 after the entries that are already in the file: Listing 2: The <Content> entry into server.xml <Context path="/soap" docbase="c:/soap-2_0/webapps/soap" reloadable="true"> </Context> Set the docbase attribute to the full path leading to the Apache SOAP webapps/soap subdirectory. If you re using Windows, you must include the drive letter or things won t work (I found this out the hard way). You re now ready to start building your first Web service application. Starting the Web server Before I show you how to write your own Web service, let s start Tomcat and activate the SOAP welcome page. Create a directory called \demo1 to hold the example application, move into this directory, and then type: tomcat run This starts the Tomcat Web server running on your local host on port You should see the screen in Figure 1. Figure 1: Booting the Tomcat Web server Then fire up your Web browser and type in the URL, This activates the Apache SOAP system which was installed into /soap when you edited the Tomcat server.xml file. If all is right, you should see the opening page in Figure 2. Figure 2: Welcome page of the Apache SOAP system (2 of 10) [12/20/2000 3:41:38 PM]
3 At this point, close the browser and stop Tomcat. You'll restart them again after the Web service is written and ready to be deployed. Writing a Web service Writing the Web service is the easy part. I ll write a simple Web service that calculates the exchange rate between two countries. The Java interface for this service is shown in Listing 3. Listing 3: A Java interface for a simple Web service public interface IExchange float getrate( String country1, String country2 ); Apache SOAP doesn t require you to actually declare an interface you can publish methods directly from the implementation class but I prefer this approach as part of good programming practice. Listing 4 shows the simple implementation of the interface that you ll use. Listing 4: The Java interface for our example public class Exchange implements IExchange public float getrate( String country1, String country2 ) System.out.println( "getrate( " + country1 + ", " + country2 + " )" ); return F; // always return the same value for now Add \demo1 to your class path then compile the code to create \demo1\exchange.class. Once this is done, you can publish the Java class as a Web service into Tomcat. (3 of 10) [12/20/2000 3:41:38 PM]
4 Deploying a Web service To deploy the Exchange service, launch Tomcat again from the \demo1 directory by typing tomcat run. Then type the URL into your browser and click on Run the admin client when you see the welcome screen. You should see the screen in Figure 3. Figure 3: The SOAP Admin page This screen presents choices that allow you to deploy, un-deploy, and list services that hosted in the Tomcat/SOAP system. If you click on the list option, you ll see that there are no services to begin with. To deploy the Exchange service, click on the deploy option and fill in the fields as shown in Figure 4. Figure 4: Deploying the Exchange service (4 of 10) [12/20/2000 3:41:38 PM]
5 Here is an explanation of each field in the Deploy screen: ID: The Web service identifier. In this example, I set the ID of the service to be urn:demo1:exchange, which follows the uniform resource Naming convention recommended by where demo is a namespace and exchange is the service string. Scope: The activation mode for the service. Request means that a new instance of the service is created with every individual request. The other available modes are Session and Application. Methods: A white-space delimited list of the methods to expose in the Web service. Note that this seems to imply that a Web service cannot expose two methods with the same name, but there is nothing in the SOAP specification that prevents this. Provider: The type of the Web service. Apache/SOAP currently only supports Java classes and Bean scripts, but future versions will undoubtedly support EJBs and other popular component types. Provider Class/Static: The name of the Java class. This class must be available via your class path setting. If Static is true, the methods are assumed to be static on the Java class, otherwise they are processed as instance methods. The other fields are related to proprietary add-ons to the Apache/SOAP platform and are beyond the scope of this article. Once you ve entered the fields, scroll down and click the deploy button at the bottom of the window. You should see a screen that indicates that the service has been deployed. If you click on the List button, you ll see the URN of your Web service is listed. Click on its link and you should see the information in Figure 5. Figure. 5: Listing the URN of your Web service (5 of 10) [12/20/2000 3:41:38 PM]
6 As you can see, the deployment process is very easy and straightforward. All of the information about the currently deployed services is stored by Tomcat/SOAP into a file called DeployedServices.ds in the current directory. Don t bother to try and read it -- it contains a serialized Java Hashtable! Invoking a Web service To invoke a Web service from a Java client, import the various packages required by Apache/SOAP and then prepare your remote SOAP invocation by constructing a Call object and initializing its fields. The encoding style is usually set to Constants.NS_URI_SOAP_ENC alternative encoding styles are beyond the scope of this article. Each parameter is represented by a Parameter object with the name of the argument, the type of the argument, the value of the argument(with primitives wrapped in their Object equivalent), and the encoding style for the argument (null selects the default). To send the method call, execute the invoke() method with the URL of the SOAP endpoint and the SOAPAction value (usually an empty string, and discussed in the next column). If all goes well, the result is returned, with primitives wrapped in their object equivalents. Listing 5 shows the source code for the Java client. Listing 5: The Java client code import java.net.*; import java.util.*; import org.apache.soap.*; // Body, Envelope, Fault, Header import org.apache.soap.rpc.*; // Call, Parameter, Response public class Client public static void main( String[] args ) throws Exception URL url = new URL( " ); String urn = "urn:demo1:exchange"; Call call = new Call(); // prepare the service invocation call.settargetobjecturi( urn ); (6 of 10) [12/20/2000 3:41:38 PM]
7 call.setmethodname( "getrate" ); call.setencodingstyleuri( Constants.NS_URI_SOAP_ENC ); Vector params = new Vector(); params.addelement( new Parameter( "country1", String.class, "USA", null ) ); params.addelement( new Parameter( "country2", String.class, "japan", null ) ); call.setparams( params ); try System.out.println( "invoke service\n" + " URL= " + url + "\n URN =" + urn ); Response response = call.invoke( url, "" ); // invoke the service if(!response.generatedfault() ) Parameter result = response.getreturnvalue(); // response was OK System.out.println( "Result= " + result.getvalue() ); else Fault f = response.getfault(); // an error occurred System.err.println( "Fault= " + f.getfaultcode() + ", " + f.getfaultstring() ); catch( SOAPException e ) // call could not be sent properly System.err.println( "SOAPException= " + e.getfaultcode() + ", " + e.getmessage() ); When you run the program by typing java Client, you should see the result in Figure 6. Figure 6: Running the Java client Finally, the output from the Web service should appear in the Tomcat screen as in Figure 7. Figure 7: The Web service output on Tomcat (7 of 10) [12/20/2000 3:41:38 PM]
8 Congratulations! You ve just built and run your first Web service application. Now the fun really starts! Invoking Web services across the Internet Since Web services use a standard XML format over HTTP for their messaging, it s fairly straightforward to invoke Web services across the Internet. To demonstrate this, visit the XMethods site (see Resources). This site hosts a selection of Web services that are perfect for experimenting with this new technology. Their home page displays a list of the available Web services as shown in Figure 8. Figure 8: XMethods' listing of Web services Click on the Web service called Currency Exchange Rate from this index. This displays a screen (see Fig. 9) that describes all the details of this Web service, including the URN, the router endpoint URL and a description of each method available to the developer. Figure 9: Information about the Currency Exchange Rate Web service on Xmethods (8 of 10) [12/20/2000 3:41:38 PM]
9 We ll examine Web services in more detail in the next installment of this column. For now, accept that the Web service published at XMethods provides exactly the same methods as the one you just built. To invoke the XMethods service, modify the URL and URN settings in your Java client to be and urn:xmethods-currentexchange, respectively, and then run the client again. You should see something like Figure 10. Figure 10: Running the Currency Exchange Rate Web service I remember the first time that I ran this kind of code it was a magic feeling seeing a method call reach across the Internet and invoke a service thousands of miles away! In the next installment of this column, I ll explain the inner workings of SOAP, including XML's on-the-wire format, encoding schemes and how it integrates with Web servers. Resources In his first installment, Graham examines the benefits and challenges of building Web service applications to enable peer-to-peer distributed networks. To download Apache SOAP 2.0, visit click on the download link, and then select soap-bin-2.0.zip (for Windows) or the appropriate packaging for your platform. To download Apache Jakarta Tomcat 3.2, visit or click on Tomcat 3.2 to get to then click the download button and select jakarta-tomcat-3.2.zip. (9 of 10) [12/20/2000 3:41:38 PM]
10 To download Apache Xerces XML Parser 1.2.3, visit then click on the download link and select Xerces-J-bin zip. XMethods provides a listing of Web services that developers can access. I used XMethods' Currency Exchange Rate Web service as an example. About the author Graham Glass is founder, CEO, and Chief Architect of The Mind Electric, focusing on building large-scale distributed computing. He believes that the evolution of the Internet will mirror that of a biological mind, and that architectures for helping people and businesses to network effectively will provide insight into those that wire together the human brain. He can be reached at graham-glass@mindspring.com. Prior to founding The Mind Electric, Graham was the chairman, CTO and co-founder of ObjectSpace, a Dallas-based company specializing in business-to-business integration. Graham was also the founder of ObjectLesson, a company that provided training in leading edge technologies. He authored two books for Prentice Hall on the subjects of UNIX and STL, and is a popular public speaker known for his enthusiasm and clear explanations of emerging technologies. What do you think of this article? Killer! (5) Good stuff (4) So-so; not bad (3) Needs work (2) Lame! (1) Comments? Privacy Legal Contact (10 of 10) [12/20/2000 3:41:38 PM]
SOAP Introduction Tutorial
SOAP Introduction Tutorial Herry Hamidjaja herryh@acm.org 1 Agenda Introduction What is SOAP? Why SOAP? SOAP Protocol Anatomy of SOAP Protocol SOAP description in term of Postal Service Helloworld Example
More informationCSCI 201 Lab 1 Environment Setup
CSCI 201 Lab 1 Environment Setup "The journey of a thousand miles begins with one step." - Lao Tzu Introduction This lab document will go over the steps to install and set up Eclipse, which is a Java integrated
More informationservlets and Java JSP murach s (Chapter 2) TRAINING & REFERENCE Mike Murach & Associates Andrea Steelman Joel Murach
Chapter 4 How to develop JavaServer Pages 97 TRAINING & REFERENCE murach s Java servlets and (Chapter 2) JSP Andrea Steelman Joel Murach Mike Murach & Associates 2560 West Shaw Lane, Suite 101 Fresno,
More informationCS506 Web Design & Development Final Term Solved MCQs with Reference
with Reference I am student in MCS (Virtual University of Pakistan). All the MCQs are solved by me. I followed the Moaaz pattern in Writing and Layout this document. Because many students are familiar
More informationThis example uses a Web Service that is available at xmethods.net, namely RestFulServices's Currency Convertor.
Problem: one of the most requested features for a Cisco Unified Contact Center Express (UCCX) script is to have an easy Web Services (WS) client (also known as SOAP client) implementation. Some use various
More informationGetting started with OWASP WebGoat 4.0 and SOAPUI.
Getting started with OWASP WebGoat 4.0 and SOAPUI. Hacking web services, an introduction. Version 1.0 by Philippe Bogaerts mailto:philippe.bogaerts@radarhack.com http://www.radarhack.com 1. Introduction
More informationOne of the fundamental kinds of websites that SharePoint 2010 allows
Chapter 1 Getting to Know Your Team Site In This Chapter Requesting a new team site and opening it in the browser Participating in a team site Changing your team site s home page One of the fundamental
More informationTopics Augmenting Application.cfm with Filters. What a filter can do. What s a filter? What s it got to do with. Isn t it a java thing?
Topics Augmenting Application.cfm with Filters Charles Arehart Founder/CTO, Systemanage carehart@systemanage.com http://www.systemanage.com What s a filter? What s it got to do with Application.cfm? Template
More informationInstalling Dolphin on Your PC
Installing Dolphin on Your PC Note: When installing Dolphin as a test platform on the PC there are a few things you can overlook. Thus, this installation guide won t help you with installing Dolphin on
More informationThe name of our class will be Yo. Type that in where it says Class Name. Don t hit the OK button yet.
Mr G s Java Jive #2: Yo! Our First Program With this handout you ll write your first program, which we ll call Yo. Programs, Classes, and Objects, Oh My! People regularly refer to Java as a language that
More informationSetting Up the Development Environment
CHAPTER 5 Setting Up the Development Environment This chapter tells you how to prepare your development environment for building a ZK Ajax web application. You should follow these steps to set up an environment
More informationClient-side SOAP in S
Duncan Temple Lang, University of California at Davis Table of Contents Abstract... 1 Converting the S values to SOAP... 3 The Result... 3 Errors... 4 Examples... 4 Service Declarations... 5 Other SOAP
More informationOSGi on the Server. Martin Lippert (it-agile GmbH)
OSGi on the Server Martin Lippert (it-agile GmbH) lippert@acm.org 2009 by Martin Lippert; made available under the EPL v1.0 October 6 th, 2009 Overview OSGi in 5 minutes Apps on the server (today and tomorrow)
More informationWriting 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 informationPace University. Web Service Workshop Lab Manual
Pace University Web Service Workshop Lab Manual Dr. Lixin Tao http://csis.pace.edu/~lixin Computer Science Department Pace University July 12, 2005 Table of Contents 1 1 Lab objectives... 1 2 Lab design...
More information15-498: Distributed Systems Project #1: Design and Implementation of a RMI Facility for Java
15-498: Distributed Systems Project #1: Design and Implementation of a RMI Facility for Java Dates of Interest Assigned: During class, Friday, January 26, 2007 Due: 11:59PM, Friday, February 13, 2007 Credits
More informationWeb Services Invocation Framework (WSIF)
Web Services Invocation Framework (WSIF) Matthew J. Duftler, Nirmal K. Mukhi, Aleksander Slominski and Sanjiva Weerawarana IBM T.J. Watson Research Center {e-mail: duftler, nmukhi, aslom, sanjiva @us.ibm.com
More informationADF Mobile Code Corner
ADF Mobile Code Corner m05. Caching WS queried data local for create, read, update with refresh from DB and offline capabilities Abstract: The current version of ADF Mobile supports three ADF data controls:
More informationProgramming 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 informationEmbedding Graphics in JavaDocs (netbeans IDE)
Embedding Graphics in JavaDocs (netbeans IDE) This note describes how to embed HTML-style graphics within your JavaDocs, if you are using Netbeans. Additionally, I provide a few hints for package level
More informationCS 251 Intermediate Programming Methods and Classes
CS 251 Intermediate Programming Methods and Classes Brooke Chenoweth University of New Mexico Fall 2018 Methods An operation that can be performed on an object Has return type and parameters Method with
More informationCS 251 Intermediate Programming Methods and More
CS 251 Intermediate Programming Methods and More Brooke Chenoweth University of New Mexico Spring 2018 Methods An operation that can be performed on an object Has return type and parameters Method with
More informationDealing with Bugs. Kenneth M. Anderson University of Colorado, Boulder CSCI 5828 Lecture 27 04/21/2009
Dealing with Bugs Kenneth M. Anderson University of Colorado, Boulder CSCI 5828 Lecture 27 04/21/2009 University of Colorado, 2009 1 Goals 2 Review material from Chapter 11 of Pilone & Miles Dealing with
More informationBEAAquaLogic. 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 informationAnno Accademico Laboratorio di Tecnologie Web Introduzione ad Eclipse e Tomcat
Universita degli Studi di Bologna Facolta di Ingegneria Anno Accademico 2007-2008 Laboratorio di Tecnologie Web Introduzione ad Eclipse e Tomcat http://www lia.deis.unibo.it/courses/tecnologieweb0708/
More informationLesson 3 Transcript: Part 1 of 2 - Tools & Scripting
Lesson 3 Transcript: Part 1 of 2 - Tools & Scripting Slide 1: Cover Welcome to lesson 3 of the db2 on Campus lecture series. Today we're going to talk about tools and scripting, and this is part 1 of 2
More informationDeveloping RESTful Services in Java
Developing RESTful Services in Java Version 1.1 Instructor s Guide Overview We begin this course, as we do all our Java web services courses these days, with a twochapter overview of web services and the
More informationWeb Services. GC: Web Services Part 3: Rajeev Wankar
Web Services 1 Let us write our Web Services Part III 2 SOAP Engine Major goal of the web services is to provide languageneutral platform for the distributed applications. What is the SOAP engine? A (Java)
More informationWe aren t getting enough orders on our Web site, storms the CEO.
In This Chapter Introducing how Ajax works Chapter 1 Ajax 101 Seeing Ajax at work in live searches, chat, shopping carts, and more We aren t getting enough orders on our Web site, storms the CEO. People
More informationExercise 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 informationApacheCon NA How to Avoid Common Mistakes in OFBiz Development Presented by Adrian Crum
ApacheCon NA 2015 How to Avoid Common Mistakes in OFBiz Development Presented by Adrian Crum 1Tech, Ltd. 29 Harley Street, London, W1G 9QR, UK www.1tech.eu 1 Overview Common Getting Started Problems Common
More informationLecture 15: Frameworks for Application-layer Communications
Lecture 15: Frameworks for Application-layer Communications Prof. Shervin Shirmohammadi SITE, University of Ottawa Fall 2005 CEG 4183 15-1 Background We have seen previously that: Applications need to
More informationChapter Two Bonus Lesson: JavaDoc
We ve already talked about adding simple comments to your source code. The JDK actually supports more meaningful comments as well. If you add specially-formatted comments, you can then use a tool called
More informationLecture 15: Frameworks for Application-layer Communications
Lecture 15: Frameworks for Application-layer Communications Prof. Shervin Shirmohammadi SITE, University of Ottawa Fall 2005 CEG 4183 15-1 Background We have seen previously that: Applications need to
More informationROLLBASE ACCESS TO ABL BUSINESS LOGIC VIA OPENCLIENT
W HITE PAPER www. p rogres s.com ROLLBASE ACCESS TO ABL BUSINESS LOGIC VIA OPENCLIENT 1 TABLE OF CONTENTS Introduction... 2 What is Progress Rollbase?... 2 Installation and setup... 2 Expose Openedge Appserver
More informationBurning CDs in Windows XP
B 770 / 1 Make CD Burning a Breeze with Windows XP's Built-in Tools If your PC is equipped with a rewritable CD drive you ve almost certainly got some specialised software for copying files to CDs. If
More informationWeb API Lab. The next two deliverables you shall write yourself.
Web API Lab In this lab, you shall produce four deliverables in folder 07_webAPIs. The first two deliverables should be pretty much done for you in the sample code. 1. A server side Web API (named listusersapi.jsp)
More informationCSCI 161: Introduction to Programming I Lab 1b: Hello, World (Eclipse, Java)
Goals - to learn how to compile and execute a Java program - to modify a program to enhance it Overview This activity will introduce you to the Java programming language. You will type in the Java program
More informationApache Axis. Dr. Kanda Runapongsa Department of Computer Engineering Khon Kaen University. Overview
Apache Axis Dr. Kanda Runapongsa Department of Computer Engineering Khon Kaen University 1 What is Apache Axis Overview What Apache Axis Provides Axis Installation.jws Extension Web Service Deployment
More informationWriting an Axis2 Service from Scratch By Deepal Jayasinghe Axis2 has designed and implemented in a way that makes the end user's job easier. Once he has learnt and understood the Axis2 basics, working
More informationLab 5 Classy Chat. XMPP Client Implementation --- Part 2 Due Oct. 19 at 11PM
Lab 5 Classy Chat XMPP Client Implementation --- Part 2 Due Oct. 19 at 11PM In this week s lab we will finish work on the chat client programs from the last lab. The primary goals are: to use multiple
More informationWDSL and PowerBuilder 9. A Sybase White Paper by Berndt Hamboeck
WDSL and PowerBuilder 9 A Sybase White Paper by Berndt Hamboeck Table of Contents Overview... 3 What is WSDL?... 3 Axis with PowerBuilder 9... 4 Custom Deployment with Axis - Introducing WSDD... 4 Using
More informationLooking Inside the Developer s Toolkit: Web Services for Everyday RPG Consumption. Charles Guarino XML. Charles Guarino
Looking Inside the Developer s Toolkit: Web Services for Everyday RPG Consumption Charles Guarino XML Charles Guarino Central Park Data Systems, Inc. Copyright Central Park Data Systems, Inc. 1 About the
More informationCharles Guarino
Raising the Bar: A Jumpstart to Using SOAP Web Services in RPG Charles Guarino SOAP SERVICES Charles Guarino Twitter @charlieguarino Central Park Data Systems, Inc. About The Speaker With an IT career
More informationIntroduction to XML. XML: basic elements
Introduction to XML XML: basic elements XML Trying to wrap your brain around XML is sort of like trying to put an octopus in a bottle. Every time you think you have it under control, a new tentacle shows
More informationNotes from the Boards Set # 5 Page
1 Yes, this stuff is on the exam. Know it well. Read this before class and bring your questions to class. Starting today, we can no longer write our code as a list of function calls and variable declarations
More informationWeb 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 informationJava Program Structure and Eclipse. Overview. Eclipse Projects and Project Structure. COMP 210: Object-Oriented Programming Lecture Notes 1
COMP 210: Object-Oriented Programming Lecture Notes 1 Java Program Structure and Eclipse Robert Utterback In these notes we talk about the basic structure of Java-based OOP programs and how to setup and
More informationHow To Upload Your Newsletter
How To Upload Your Newsletter Using The WS_FTP Client Copyright 2005, DPW Enterprises All Rights Reserved Welcome, Hi, my name is Donna Warren. I m a certified Webmaster and have been teaching web design
More information2.4 Choose method names carefully
2.4 Choose method names carefully We ve already discussed how to name a class in Section 1.1. Now it s time to name methods properly. I m suggesting this simple rule of thumb: builders are nouns, manipulators
More information1.7 Limit of a Function
1.7 Limit of a Function We will discuss the following in this section: 1. Limit Notation 2. Finding a it numerically 3. Right and Left Hand Limits 4. Infinite Limits Consider the following graph Notation:
More informationJava Programming. What is a program? Programs Recipes. Programs as Recipes 8/16/12. Pancakes In one bowl. mix: 1½ cup flour
What is a program? Java Programming CS 160, Fall Semester 2012 TOPICS Computer Programs Using Eclipse Program Program Components Definition: a sequence of instructions telling a computer what to do Analogy:
More information4. Java Project Design, Input Methods
4-1 4. Java Project Design, Input Methods Review and Preview You should now be fairly comfortable with creating, compiling and running simple Java projects. In this class, we continue learning new Java
More informationNova Bonita Workflow. Quick Start Guide. Nova BONITA WORKFLOW
Nova Bonita Workflow Quick Start Guide Nova BONITA WORKFLOW Nova Bonita Workflow Quick Start Guide Nova Bonita (aka Bonita v4) Software September 2008 Table of Contents 2.1.1 Downloading the products...6
More informationQuick.JS Documentation
Quick.JS Documentation Release v0.6.1-beta Michael Krause Jul 22, 2017 Contents 1 Installing and Setting Up 1 1.1 Installation................................................ 1 1.2 Setup...................................................
More informationRadBlue s S2S Quick Start Package (RQS) Developer s Guide. Version 0.1
RadBlue s S2S Quick Start Package (RQS) Developer s Guide Version 0.1 www.radblue.com April 17, 2007 Trademarks and Copyright Copyright 2007 Radical Blue Gaming, Inc. (RadBlue). All rights reserved. All
More informationAkana API Platform: Upgrade Guide
Akana API Platform: Upgrade Guide Version 8.0 to 8.2 Akana API Platform Upgrade Guide Version 8.0 to 8.2 November, 2016 (update v2) Copyright Copyright 2016 Akana, Inc. All rights reserved. Trademarks
More informationLecture 11: Recursion (hard)
Lecture 11: Recursion (hard) Recap/finish: stutter an integer 348 > 334488 We added the base case So how do we deal with larger numbers how can we split them up? We need to split into smaller chunks Since
More informationFINALTERM EXAMINATION Spring 2009 CS506- Web Design and Development Solved by Tahseen Anwar
FINALTERM EXAMINATION Spring 2009 CS506- Web Design and Development Solved by Tahseen Anwar www.vuhelp.pk Solved MCQs with reference. inshallah you will found it 100% correct solution. Time: 120 min Marks:
More informationQUIZ. What is wrong with this code that uses default arguments?
QUIZ What is wrong with this code that uses default arguments? Solution The value of the default argument should be placed in either declaration or definition, not both! QUIZ What is wrong with this code
More informationAbstract. Chapter 6 Writing a Program. Overview. Writing a program: Strategy. Building a program. Bjarne Stroustrup
Abstract Chapter 6 Writing a Program This lecture and the next describe the process of designing a program through the example of a simple desk calculator. Bjarne Stroustrup www.stroustrup.com/programming
More informationAsynchronous OSGi: Promises for the masses. Tim Ward.
Asynchronous OSGi: Promises for the masses Tim Ward http://www.paremus.com info@paremus.com Who is Tim Ward? @TimothyWard Senior Consulting Engineer, Trainer and Architect at Paremus 5 years at IBM developing
More informationTeam 5: Fault-Terminators
Team 5: Fault-Terminators 18-749: Fault-Tolerant Distributed Systems Patty Pun - tpun@andrew.cmu.edu Kevin Smith - kevinsmith@cmu.edu Felix Tze-Shun Yip - fty@andrew.cmu.edu Yi Zhang - zhangyi@cmu.edu
More informationThese are notes for the third lecture; if statements and loops.
These are notes for the third lecture; if statements and loops. 1 Yeah, this is going to be the second slide in a lot of lectures. 2 - Dominant language for desktop application development - Most modern
More informationWeb 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 informationOfficial Competition Manual March 2, 2005
Official Competition Manual March 2, 2005 Competition Instructions Logging In to the Competition Arena Log in to the competition arena using the handle and password that you chose during the competition
More informationCodeCharge Studio Java Deployment Guide Table of contents
CodeCharge Studio Java Deployment Guide Table of contents CodeCharge Studio requirements for Java deployment... 2 Class Path requirements (compilation-time and run-time)... 3 Tomcat 4.0 deployment... 4
More informationYup, left blank on purpose. You can use it to draw whatever you want :-)
Yup, left blank on purpose. You can use it to draw whatever you want :-) Chapter 1 The task I have assigned myself is not an easy one; teach C.O.F.F.E.E. Not the beverage of course, but the scripting language
More informationWelcome Back! Without further delay, let s get started! First Things First. If you haven t done it already, download Turbo Lister from ebay.
Welcome Back! Now that we ve covered the basics on how to use templates and how to customise them, it s time to learn some more advanced techniques that will help you create outstanding ebay listings!
More informationA simple map: Hashtable
Using Maps A simple map: Hashtable To create a Hashtable, use: import java.util.*; Hashtable table = new Hashtable(); To put things into a Hashtable, use: table.put(key, value); To retrieve a value from
More informationGetting Started with Web Services
Getting Started with Web Services Getting Started with Web Services A web service is a set of functions packaged into a single entity that is available to other systems on a network. The network can be
More informationThe compiler is spewing error messages.
Appendix B Debugging There are a few different kinds of errors that can occur in a program, and it is useful to distinguish between them in order to track them down more quickly. Compile-time errors are
More information3 Nonlocal Exit. Quiz Program Revisited
3 Nonlocal Exit This chapter is about the commands catch and throw. These commands work together as a kind of super-stop command, which you can use to stop several levels of procedure invocation at once.
More informationIBM WebSphere Java Batch Lab
IBM WebSphere Java Batch Lab What are we going to do? First we are going to set up a development environment on your workstation. Download and install Eclipse IBM WebSphere Developer Tools IBM Liberty
More informationLaboratory 1: Eclipse and Karel the Robot
Math 121: Introduction to Computing Handout #2 Laboratory 1: Eclipse and Karel the Robot Your first laboratory task is to use the Eclipse IDE framework ( integrated development environment, and the d also
More informationClasses, interfaces, & documentation. Review of basic building blocks
Classes, interfaces, & documentation Review of basic building blocks Objects Data structures literally, storage containers for data constitute object knowledge or state Operations an object can perform
More informationUsing JMeter. Installing and Running JMeter. by Budi Kurniawan 01/15/2003
1 of 8 7/26/2007 3:35 PM Published on ONJava.com (http://www.onjava.com/) http://www.onjava.com/pub/a/onjava/2003/01/15/jmeter.html See this if you're having trouble printing code examples Using JMeter
More information2SKILL. Variables Lesson 6. Remembering numbers (and other stuff)...
Remembering numbers (and other stuff)... Let s talk about one of the most important things in any programming language. It s called a variable. Don t let the name scare you. What it does is really simple.
More informationQuick housekeeping Last Two Homeworks Extra Credit for demoing project prototypes Reminder about Project Deadlines/specifics Class on April 12th Resul
CIS192 Python Programming Web Frameworks and Web APIs Harry Smith University of Pennsylvania March 29, 2016 Harry Smith (University of Pennsylvania) CIS 192 March 29, 2016 1 / 25 Quick housekeeping Last
More informationProgramming Assignment III
Programming Assignment III First Due Date: (Grammar) See online schedule (submission dated midnight). Second Due Date: (Complete) See online schedule (submission dated midnight). Purpose: This project
More informationDepartment of Computer Science. Software Usage Guide. CSC132 Programming Principles 2. By Andreas Grondoudis
Department of Computer Science Software Usage Guide To provide a basic know-how regarding the software to be used for CSC132 Programming Principles 2 By Andreas Grondoudis WHAT SOFTWARE AM I GOING TO NEED/USE?...2
More informationBASIC COMPUTATION. public static void main(string [] args) Fundamentals of Computer Science I
BASIC COMPUTATION x public static void main(string [] args) Fundamentals of Computer Science I Outline Using Eclipse Data Types Variables Primitive and Class Data Types Expressions Declaration Assignment
More informationMicrosoft Expression Web Quickstart Guide
Microsoft Expression Web Quickstart Guide MS-Expression Web Quickstart Guide Page 1 of 24 Expression Web Quickstart Guide (20-Minute Training) Welcome to Expression Web. When you first launch the program,
More informationConfigure Eclipse with Selenium Webdriver
Configure Eclipse with Selenium Webdriver To configure Eclipse with Selenium webdriver, we need to launch the Eclipse IDE, create a Workspace, create a Project, create a Package, create a Class and add
More informationA PROGRAM IS A SEQUENCE of instructions that a computer can execute to
A PROGRAM IS A SEQUENCE of instructions that a computer can execute to perform some task. A simple enough idea, but for the computer to make any use of the instructions, they must be written in a form
More informationBy Lucas Marshall. All materials Copyright Developer Shed, Inc. except where otherwise noted.
By Lucas Marshall All materials Copyright 1997 2002 Developer Shed, Inc. except where otherwise noted. Using XML RPC with PHP Table of Contents Introduction...1 Compiling PHP with XML RPC Support...2 Dissection
More informationJOURNAL OF OBJECT TECHNOLOGY
JOURNAL OF OBJECT TECHNOLOGY. Published by ETH Zurich, Chair of Software Engineering JOT, 2005 Vol. 4, No. 9, November-December 2005 The JBoss Integration Plug-in for IntelliJ IDEA Douglas Lyon, Fairfield
More informationXP: Backup Your Important Files for Safety
XP: Backup Your Important Files for Safety X 380 / 1 Protect Your Personal Files Against Accidental Loss with XP s Backup Wizard Your computer contains a great many important files, but when it comes to
More informationThe Java Main Method
The Java Main Method Introduction In this article from my free Java 8 Course, I will be discussing the public static void main(string[] args) method. Up until this point in the series, we have run our
More informationApplication Note for Emergency Broadcast System PHP Sample Code - Issue 1.0
Avaya Solution & Interoperability Test Lab Application Note for Broadcast System PHP Sample Code - Issue 1.0 Abstract These Application Notes describes the installation and operation of the Broadcast System
More informationA JavaBean is a class file that stores Java code for a JSP
CREATE A JAVABEAN A JavaBean is a class file that stores Java code for a JSP page. Although you can use a scriptlet to place Java code directly into a JSP page, it is considered better programming practice
More informationExample Program. public class ComputeArea {
COMMENTS While most people think of computer programs as a tool for telling computers what to do, programs are actually much more than that. Computer programs are written in human readable language for
More informationExceptions. What exceptional things might our programs run in to?
Exceptions What exceptional things might our programs run in to? Exceptions do occur Whenever we deal with programs, we deal with computers and users. Whenever we deal with computers, we know things don
More informationProven Practice Installing TM1 9.5 in Apache Tomcat Product(s): TM1 9.5 Area of Interest: Install Config
Proven Practice Installing TM1 9.5 in Apache Tomcat Product(s): TM1 9.5 Area of Interest: Install Config 2 Copyright and Trademarks Licensed Materials - Property of IBM. Copyright IBM Corp. 2009 IBM, the
More informationStarting to Program in C++ (Basics & I/O)
Copyright by Bruce A. Draper. 2017, All Rights Reserved. Starting to Program in C++ (Basics & I/O) On Tuesday of this week, we started learning C++ by example. We gave you both the Complex class code and
More informationWeb Server Project. Tom Kelliher, CS points, due May 4, 2011
Web Server Project Tom Kelliher, CS 325 100 points, due May 4, 2011 Introduction (From Kurose & Ross, 4th ed.) In this project you will develop a Web server in two steps. In the end, you will have built
More informationCS 177 Recitation. Week 1 Intro to Java
CS 177 Recitation Week 1 Intro to Java Questions? Computers Computers can do really complex stuff. How? By manipulating data according to lists of instructions. Fundamentally, this is all that a computer
More informationQS-AVI Address Cleansing as a Web Service for IBM InfoSphere Identity Insight
QS-AVI Address Cleansing as a Web Service for IBM InfoSphere Identity Insight Author: Bhaveshkumar R Patel (bhavesh.patel@in.ibm.com) Address cleansing sometimes referred to as address hygiene or standardization
More informationLab 5: Java IO 12:00 PM, Feb 21, 2018
CS18 Integrated Introduction to Computer Science Fisler, Nelson Contents Lab 5: Java IO 12:00 PM, Feb 21, 2018 1 The Java IO Library 1 2 Program Arguments 2 3 Readers, Writers, and Buffers 2 3.1 Buffering
More informationWriting your own Exceptions. How to extend Exception
Writing your own Exceptions How to extend Exception When would you write your own exception class? When to write your own custom exception is a matter for discussion in your project design team. There
More information