solution wt 2012

38
END TERM EXAMINATION WEB TECHNOLOGIES(210) MCA IV Unit -I Q1 Attempt any ten from the following: (a) What is the difference between static and dynamic web pages? Basis of Difference Static web page Dynamic web page 1. Meaning A static web page shows the required information to the viewer, but do not accept any information from the viewer. A dynamic web page displays the information to the viewer and also accepts the information from the user 2. Programming It require basic (HTML) web programming skills It require in- depth web programming knowledge such as ASP or PHP 3. Working

Upload: pratyush

Post on 10-Sep-2015

222 views

Category:

Documents


0 download

DESCRIPTION

web tech solved paper ggsipu

TRANSCRIPT

END TERM EXAMINATIONWEB TECHNOLOGIES(210)MCA IV

Unit -IQ1 Attempt any ten from the following:(a) What is the difference between static and dynamic web pages?Basis of DifferenceStatic web page Dynamic web page

1. Meaning A static web page shows the required information to the viewer, but do not accept any information from the viewer.

A dynamic web page displays the information to the viewer and also accepts the information from the user

2. Programming It require basic (HTML) web programming skills

It require in-depth web programming knowledge such as ASP or PHP

3. Working

(b) Explain the AutoPostBack property of web server controls with an example.The AutoPostBack property is used to set or return whether or not an automatic post back occurs when the user presses "ENTER" or "TAB" in the TextBox control. If this property is set to TRUE the automatic post back is enabled, otherwise FALSE. Default is FALSE. For example:form runat="server">

(c) Name different data binding controls in standard web server controls in ASP.NET.The following are the data binding controls: Repeater Control DataGrid Control DataList Control GridView Control DetailsView FormView DropDownList ListBox RadioButtonList CheckBoxList BulletList (d) What is Document Object Model?A document object model (DOM) is an application programming interface (API) for representing a document (such as an HTML document) and accessing and manipulating the various elements (such as HTML tags and strings of text) that make up that document. JavaScript-enabled web browsers have always defined a document object model; a web-browser DOM may specify, for example, that the forms in an HTML document are accessible through the forms[] array of the Document object. HTML documents have a hierarchical structure that is represented in the DOM as a tree structure. Consider the following simple HTML document:

Sample Document An HTML Document This is a simple document.

The DOM representation of this document is as follows:

(e) State different advantages of using XML.Advantages of using XML are: It is as easy as HTML. XML is fully compatible with applications like JAVA, and it can be combined with any application which is capable of processing XML irrespective of the platform it is being used on. XML is an extremely portable language to the extent that it can be used on large networks with multiple platforms like the internet, and it can be used on handhelds or palmtops or PDAs. XML is an extendable language, meaning that you can create your own tags, or use the tags which have already been created.(f) What is SOAP?SOAP is a simple XML-based protocol to let applications exchange information over HTTP or more simply: SOAP is a protocol for accessing a Web Service. It provides a way to communicate between applications running on different operating systems, with different technologies and programming languages. It provides a simple and lightweight mechanism for exchanging structured and typed information between peers in a decentralized, distributed environment using XML. It does not itself define any application semantics such as a programming model or implementation specific semantics; rather it defines a simple mechanism for expressing application semantics by providing a modular packaging model and encoding mechanisms for encoding data within modules. (g) Discuss the life cycle of page in brief.

The first stage in the page life cycle is initialization. This is fired after the page's control tree has been successfully created. All the controls that are statically declared in the .aspx file will be initialized with the default values. Controls can use this event to initialize some of the settings that can be used throughout the lifetime of the incoming web request. Viewstate information will not be available at this stage. After initialization, page framework loads the view state for the page. Viewstate is a collection of name/value pairs, where control's and page itself store information that is persistent among web requests. It contains the state of the controls the last time the page was processed on the server. By overriding LoadViewState() method, component developer can understand how viewstate is restored. Once viewstate is restored, control will be updated with the client side changes. It loads the posted data values. The PostBackData event gives control a chance to update their state that reflects the state of the HTML element on the client. At the end of the posted data changes event, controls will be reflected with changes done on the client. At this point, load event is fired.

Key event in the life cycle is when the server-side code associated with an event triggered on the client. When the user clicks on the button, the page posts back. Page framework calls the RaisePostBackEvent. This event looks up for the event handler and run the associated delegate.

After PostBack event, page prepares for rendering. PreRender event is called. This is the place where user can do the update operations before the viewstate is stored and output is rendered. Next stage is saving view state, all the values of the controls will be saved to their own viewstate collection. The resultant viewstate is serialized, hashed, base24 encoded and associated with the _viewstate hidden field.

Next the render method is called. This method takes the HtmlWriter object and uses it to accumulate all HTML text to be generated for the control. For each control the page calls the render method and caches the HTML output. The rendering mechanism for the control can be altered by overriding this render method.

The final stage of the life cycle is unload event. This is called just before the page object is dismissed. In this event, you can release critical resources you have such as database connections, files, graphical objects etc

(h) What is IsPostBack property of a page?

IsPostBack property indicates that whether this is the first time user has requested fort the page or it is reloaded based on any response on postback. This property checks for __VIEWSTATE or __EVENTTARGET parameter in Request object. if these parameters are absent that means it is requested for the first time and if these parameters are present then this request is not first request.

(i) Why we use SqlCommandBuilder object in ADO.NET?

SqlCommandBuilder class in ADO.NET provides the feature of reflecting the changes to a Dataset or an instance of the SQL Server data. When an instance of SqlCommandBuilder class is created, it automatically generates Transact-SQL statements for the single table updates that occur. The object of the SqlCommandBuilder acts as a listener for RowUpdating events, whenever the DataAdapter property is set. It automatically generates the values contained within the SqlDataAdapters InsertCommand, UpdateCommand and DeleteCommand properties based on the initial SelectCommand. For example:DataSet ds=new DataSet();SqlConnection cn =new SqlConnection(strSomeConnectionStr);SqlDataAdapter da=new SqlDataAdapter(Select t from Table1, cn);SqlCommandBuilder scb=new SqlCommand(da);da.Fill(ds,DataSet1);

(j) Discuss the usage of SqlDataReader and SqlDataAdapter object in ADO.NET.SqlDataAdapter acts a bridge between an in-memory database tables and application. It is the SqlDataAdapter that manages connections with the data source and gives us disconnected behavior. The SqlDataAdapter opens a connection only when required and closes it as soon as it has performed its task. The SqlDataAdapter holds the SQL commands and connection object for reading and writing data.SqlDataReader is used to retrieve a read-only, forward-only stream of data from a database. Results are returned as the query executes, and are stored in the network buffer on the client until you request them using the Read method of the SqlDataReader. Using the SqlDataReader can increase application performance both by retrieving data as soon as it is available, rather than waiting for the entire results of the query to be returned, and (by default) storing only one row at a time in memory, reducing system overhead. (k) What is DISCO standard?The abbreviation for disco is discovery, It is used to club or group the all Web services in the server, it provides schema documentation about Web services to the client. It is used to create discovery documents that provide links to multiple web service endpoints. The DISCO standard creates a single file that groups a list of related web services. A company can publish a DISCO file on its server that contains links to all the web services it provides.

Unit-II

Q2 (a) State different advantages and disadvantages of using frames in our website?Advantages of frames1. Frames are one way to make our site easy to navigate because we can have a constantly visible navigation menu - and easy navigation is one of the most important aspects of website design.2. Frames can make the site faster because one can include the site theme (images, logo, etc.) and the navigation menu in frames that do not have to download each time a visitor looks at a new page. Only the contents page changes.3. Using frames can make site maintenance easy, especially if you have a large site. If for example we want to add a new page that is linked from the other pages on your site, you simply add a link on your navigation menu; you do not have to add links on each and every page.Disadvantages of frames1. The original argument was that not all browsers support frames, but this must be a very small percentage now. We can get around this by including a below the frameset. In this noframes area we can include information such as a simple navigation menu and a "Sorry your browser does not support frames" statement - OR if we want to have a separate version of our website for non-frames browsers then we must be prepared to do twice as much work maintaining the site. 2. Search engines treat frames as hyperlinks to other pages, so if for example they manage to spider the frame containing the menu, the pages they want to index will be indexed but without the surrounding frames. If someone finds one of our pages on a search engine they will not be able to navigate around the site.3. The most important disadvantage is that it is difficult to link to a particular page on the site other than the page containing the frames (usually the homepage) - this is a big disadvantage if we use email to market our site and we want to link to different parts of our web site. (b) What are different types of cascading style sheets? Explain usage with an example.There are three types of a style sheet:1. External style sheet An external style sheet is ideal when the style is applied to many pages. With an external style sheet, we can change the look of an entire Web site by changing one file. Each page must link to the style sheet using the tag. The tag goes inside the head section. For example An external style sheet can be written in any text editor. The file should not contain any html tags. The style sheet should be saved with a .css extension. An example of a style sheet file is shown below:hr {color:sienna;}p {margin-left:20px;}body {background-image:url("images/back40.gif");} Save the file with name style1.css

2. Internal style sheet /embedded An internal style sheet should be used when a single document has a unique style. We define internal styles in the head section of an HTML page, by using the tag, like this:

h1 {color:sienna;}p {margin-left:20px;}body {background-image:url("images/back40.gif");}

3. Inline style To use inline styles you use the style attribute in the relevant tag. The style attribute can contain any CSS property. The example shows how to change the color and the left margin of a paragraph:This is a paragraph. Q3(a) State different guidelines to create a website. Make a great first impression

Design may not be the most important factor in a website overall, and often-times folks put too much emphasis on how a site looks instead of how it works, but it does play an important role in making a good first impression.

Maintain Consistency

Its best to keep elements on the site fairly consistent from page to page. Elements include colors, sizes, layout, and placement of those elements. The site needs to have a good flow from page to page. This means colors are primarily the same as well as fonts and layout structure. Navigation should remain in the same location of your layout throughout your website.

Use the right imagesImages can be a powerful element to any website, but you need to use them wisely. Every image is transmitting a subconscious message to your audience, and sometimes the result is different from what you might expect. As a result, take care to place meaningful images on your site. Create a solid navigation systemPerhaps one of the biggest factors to keep visitors on your website is having a good, solid navigation system that supports all search preferences. In fact, more than three-quarters of survey respondents from a recent HubSpot study say the most important element in website design is ease of finding information. If people cant find what they're looking for, they will give up and leave. Limit Flash and Animation

Flash animation can grab someones attention, yes, but it can also distract people from staying on your site. Not only are mobile applications lacking the capability to view Flash animation, but many people also simply don't want to be bothered with unexpected noises and animations. Keep the animation to a minimum, and only use when necessary.

Make it Accessible

Make sure that anyone visiting your website can view it no matter what browser or application they're using. In order to gain significant traffic, your site needs to be compatible with multiple browsers and devices. With growth in mobile phones and tablet devices, people are surfing the internet more than ever before. Make sure to get some of those views by allowing everyone to view your site, no matter what kind of system they run or which browser they use.

Q3(b) Create a dynamic webpage using JavaScript to order Burger online and also confirm the order with the user before finally submitting it.

WELCOME TO ONLINE BURGER STORE

function caltotal(frm){var order_total=0;

for(var i=0;i= 0) { order_total += item_quantity * item_price } } }

document.getElementById("order_total").innerHTML=order_total;

}

function sub(form){var x;var r = confirm("DO YOU CONFIRM THE ORDER AND PARCEL ADDRESS MENTIONED");if(r==true) x=" YOUR ORDER IS PLACED.........WILL REACH YOU IN 30 MINUTES...ENJOY";elsex="CORRECT YOUR DETAILS";// alert(document.getElementById("demo").innerHTML=x);alert(x);}

WELCOME TO BURGER ONLINE BAZAAR

PLACE ORDER
PRODUCT AMOUNTQUANTITYVeg Burger Rs.25
Chicken Burger Rs.40
TOTAL ORDER AMOUNT :

ORDER TO BE DELIVERED AT NAME: Address 1:Address 2: City : State : Phone Number : Email Address :

Unit III

Q4(a) What are the different ways to develop a web application in ASP.NET? Explain with an example. There are two major project types in Visual studio i.e. Website and Web Application that we can use to build the ASP.NET Applications. Web application projects use Visual Studio project files (.csproj or .vbproj) to keep track of information about the project. Among other tasks, this makes it possible to specify which files are included in or excluded from the project, and therefore which files are compiled during a build. For Web site projects, all files in a folder structure are automatically considered to be included in the Web site. If you want to exclude something from compilation, you must remove the file from the Web site project folder or change its file-name extension to an extension that is not compiled and is not served by IIS.For example:We can add Website or Web application project to your VS solution in VS 2010 as follows:

Two project types are added to the solution and it looks like the following:

Q4(b) What are the different events associated to button Server control? Explain the usage with an example. The Click event is raised when the Button control is clicked. This event is commonly used when no command name is associated with the Button control (for instance, with a Submit button).The Command event is raised when the Button control is clicked. This event is commonly used when a command name, such as Sort, is associated with the Button control. This allows you to create multiple Button controls on a Web page and programmatically determine which Button control is clicked.Example

Button CommandName Example

void CommandBtn_Click(Object sender, CommandEventArgs e) {

switch(e.CommandName) {

case "Sort":

// Call the method to sort the list. Sort_List((String)e.CommandArgument); break;

case "Submit":

// Display a message for the Submit button being clicked. Message.Text = "You clicked the Submit button";

// Test whether the command argument is an empty string (""). if((String)e.CommandArgument == "") { // End the message. Message.Text += "."; } else { // Display an error message for the command argument. Message.Text += ", however the command argument is not recognized."; } break;

default:

// The command name is not recognized. Display an error message. Message.Text = "Command name not recogized."; break;

}

}

Q5(a) Write code to connect our web page to company database and also write code to read, insert, update and delete from employee table in SQL server. SqlConnection con = new SqlConnection("Data Source=company;Integrated Security=true;Initial Catalog=MySampleDB");protected void Page_Load(object sender, EventArgs e){if (!IsPostBack){BindEmployeeDetails();}}protected void BindEmployeeDetails(){con.Open();SqlCommand cmd = new SqlCommand("Select * from Employee_Details", con);SqlDataAdapter da = new SqlDataAdapter(cmd);DataSet ds = new DataSet();da.Fill(ds);con.Close();if (ds.Tables[0].Rows.Count > 0){gvDetails.DataSource = ds;gvDetails.DataBind();}else{ds.Tables[0].Rows.Add(ds.Tables[0].NewRow());gvDetails.DataSource = ds;gvDetails.DataBind();int columncount = gvDetails.Rows[0].Cells.Count;gvDetails.Rows[0].Cells.Clear();gvDetails.Rows[0].Cells.Add(new TableCell());gvDetails.Rows[0].Cells[0].ColumnSpan = columncount;gvDetails.Rows[0].Cells[0].Text = "No Records Found";}}protected void gvDetails_RowEditing(object sender, GridViewEditEventArgs e){gvDetails.EditIndex = e.NewEditIndex;BindEmployeeDetails();}protected void gvDetails_RowUpdating(object sender, GridViewUpdateEventArgs e){int userid = Convert.ToInt32(gvDetails.DataKeys[e.RowIndex].Value.ToString());string username = gvDetails.DataKeys[e.RowIndex].Values["UserName"].ToString();TextBox txtcity = (TextBox)gvDetails.Rows[e.RowIndex].FindControl("txtcity");TextBox txtDesignation = (TextBox)gvDetails.Rows[e.RowIndex].FindControl("txtDesg");con.Open();SqlCommand cmd = new SqlCommand("update Employee_Details set City='" + txtcity.Text + "',Designation='" + txtDesignation.Text + "' where UserId=" + userid, con);cmd.ExecuteNonQuery();con.Close();lblresult.ForeColor = Color.Green;lblresult.Text = username + " Details Updated successfully";gvDetails.EditIndex = -1;BindEmployeeDetails();}protected void gvDetails_RowCancelingEdit(object sender, GridViewCancelEditEventArgs e){gvDetails.EditIndex = -1;BindEmployeeDetails();}protected void gvDetails_RowDeleting(object sender, GridViewDeleteEventArgs e){int userid = Convert.ToInt32(gvDetails.DataKeys[e.RowIndex].Values["UserId"].ToString());string username = gvDetails.DataKeys[e.RowIndex].Values["UserName"].ToString();con.Open();SqlCommand cmd = new SqlCommand("delete from Employee_Details where UserId=" + userid, con);int result = cmd.ExecuteNonQuery();con.Close();if (result == 1){BindEmployeeDetails();lblresult.ForeColor = Color.Red;lblresult.Text = username + " details deleted successfully";}}protected void gvDetails_RowCommand(object sender, GridViewCommandEventArgs e){if(e.CommandName.Equals("AddNew")){TextBox txtUsrname = (TextBox)gvDetails.FooterRow.FindControl("txtftrusrname");TextBox txtCity = (TextBox)gvDetails.FooterRow.FindControl("txtftrcity");TextBox txtDesgnation = (TextBox) gvDetails.FooterRow.FindControl("txtftrDesignation");con.Open();SqlCommand cmd =new SqlCommand("insert into Employee_Details(UserName,City,Designation) values('" + txtUsrname.Text + "','" +txtCity.Text + "','" + txtDesgnation.Text + "')", con);int result= cmd.ExecuteNonQuery();con.Close();if(result==1){BindEmployeeDetails();lblresult.ForeColor = Color.Green;lblresult.Text = txtUsrname.Text + " Details inserted successfully";}else{lblresult.ForeColor = Color.Red;lblresult.Text = txtUsrname.Text + " Details not inserted"; }}}Q5(b) Explain briefly the usage of different validation controls in ASP.NET.RequiredFieldValidation Control

The RequiredFieldValidator control is simple validation control, which checks to see if the data is entered for the input control. We can have a RequiredFieldValidator control for each form element on which you wish to enforce Mandatory Field rule.

CompareValidator Control

The CompareValidator control allows you to make comparison to compare data entered in an input control with a constant value or a value in a different control. It can most commonly be used when you need to confirm password entered by the user at the registration time. The data is always case sensitive.

RangeValidator Control

The RangeValidator Server Control is another validator control, which checks to see if a control value is within a valid range. The attributes that are necessary to this control are: MaximumValue, MinimumValue, and Type.

RegularExpressionValidator Control

Using RegularExpressionValidator server control, we can check a user's input based on a pattern that you define using a regular expression. It is used to validate complex expressions. These expressions can be phone number, email address, zip code and many more.

CustomValidator Control

The CustomValidator Control can be used on client side and server side. JavaScript is used to do client validation and we can use any .NET language to do server side validation.

ValidationSummary

The ValidationSummary control is reporting control, which is used by the other validation controls on a page. We can use this validation control to consolidate errors reporting for all the validation errors that occur on a page instead of leaving this up to each and every individual validation control. The validation summary control will collect all the error messages of all the non-valid controls and put them in a tidy list.

Q6(a) What is a session? Explain different modes of sessions and their usage in ASP.NET. A session is defined as the period of time that a unique user interacts with a Web application. Active Server Pages (ASP) developers who wish to retain data for unique user sessions can use an intrinsic feature known as session state.In ASP.NET, there are the following session modes available: InProc mode, which stores session state in memory on the Web server. This is the default. StateServer mode, which stores session state in a separate process called the ASP.NET state service. This ensures that session state is preserved if the Web application is restarted and also makes session state available to multiple Web servers in a Web farm. SQLServer mode stores session state in a SQLServer database. This ensures that session state is preserved if the Web application is restarted and also makes session state available to multiple Web servers in a Web farm. Custom mode, which enables you to specify a custom storage provider. Off mode, which disables session state.For every session state, there is a Session Provider. The following diagram will show you how they are related:

Fig: Session state architectureWe can choose the session state provider based on which session state we are selecting. When ASP.NET requests for information based on the session ID, the session state and its corresponding provider are responsible for sending the proper information. The following table shows the session mode along with the provider name:

Session State Mode State Provider

InProcIn-memory object

StateServerAspnet_state.exe

SQLServerDatabase

CustomCustom provider

Q6(b) Explain different aspects of error handling in ASP.NET.Error handling in ASP.Net has three aspects:1. Tracing - tracing the program execution at page level or application level. To enable page level tracing, you need to modify the Page directive and add a Trace attribute as:

It provides the following information at the top: Session ID Status Code Time of Request Type of Request Request and Response EncodingUnder the top level information is the Trace log, which provides details of page life cycle. It provides elapsed time in seconds since the page was initialized. The next section is control tree, which lists all controls on the page in a hierarchical manner. Last in the Session and Application state summaries, cookies and headers collections, followed by list of all server variables. The Trace object allows you to add custom information to the trace output. It has two methods to accomplish this: the Write method and the Warn method.2. Error handling -Although ASP.Net can detect all runtime errors, still some subtle errors may still be there. Observing the errors by tracing is meant for the developers, not for the users. Hence, to intercept such occurrence, you can add error handing settings in the web.config file of the application. It is application wide error handling. For example, you can add the following lines in the web.config file:

3. Debugging - Debugging allows the developers to watch how the code works in a step-by-step manner, how the values of the variables change, how the objects are created and destroyed etc.Q7(a) Explain different ways of authentication in ASP.NET.ASP.NET provides three ways to authenticate a user: Windows authentication Forms authentication Passport authentication Windows Authentication Provider

The Windows authentication provider is the default provider for ASP .NET. It authenticates users based on the users' Windows accounts. Windows authentication in ASP.NET actually relies on IIS to do the authentication. IIS can be configured so that only users on a Windows domain can log in. If a user attempts to access a page and is not authenticated, they'll be shown a dialog box asking them to enter their username and password. This information is then passed to the Web server and checked against the list of users in the domain. If the user has supplied valid credentials, access is granted. The identity of the user is then passed to the ASP.NET engine. There are four different kinds of Windows authentication options available that can be configured in IIS: Anonymous Authentication: IIS doesn't perform any authentication check. IIS allows any user to access the ASP .NET application. Basic Authentication: For this kind of authentication, a Windows user name and password have to be provided to connect. However, this information is sent over the network in plain text and hence this is an insecure kind of authentication. Basic Authentication is the only mode of authentication older, non-Internet Explorer browsers support. Digest Authentication: It is same as Basic Authentication but for the fact that the password is hashed before it is sent across the network. However, to be using Digest Authentication, we must use IE 5.0 or above. Integrated Windows Authentication: In this kind of authentication technique, passwords are not sent across the network. The application here uses either the kerberos or challenge/response protocols to authenticate users. Kerberos, a network authentication protocol, is designed to provide strong authentication for client-server applications. It provides the tools of authentication and strong cryptography over the network to help to secure information in systems across entire enterprise. Passport Authentication Provider

Passport authentication is a centralized authentication service. This uses Microsoft's Passport Service to authenticate the users of an application. If the authentication mode of the application is configured as Passport and if the users have signed up with Microsoft's Passport Service, then the authentication formalities are pushed over to Passport servers. Passport uses an encrypted cookie mechanism to identify and indicate authenticated users. If the users have already been signed into passport when they visit the application page, ASP.NET will consider them as authenticated. Otherwise, the users will be redirected to Passport servers to login. Upon successful login, the user is redirected back to the ASP.NET Web page that they initially tried to access. Forms Authentication Provider

The forms authentication provider uses custom HTML forms to collect authentication information. As an ASP.NET developer using forms authentication, you must write your own logic/code to check the user's supplied credentials against a database or some other data store. When a user is successfully identified via forms authentication, the user's credentials are stored in a cookie for use during the session. The method of authentication to use is specified in the Web application's Web.config file:

Q7(b) Briefly explain any two of the following:(i) ViewState View state is the method that the ASP.NET page framework uses to preserve page and control values between round trips. When the HTML markup for the page is rendered, the current state of the page and values that must be retained during postback are serialized into base64-encoded strings. This information is then put into the view state hidden field or fields. View state can be used to do the following: Keep values between postbacks without storing them in session state or in a user profile. Store the values of page or control properties that you define. Create a custom view state provider that lets you store view state information in a SQL Server database or in another data store.(ii) QueryStringA query string is information sent to the server appended to the end of a page URL.

Following are the benefits of using query string for state management: - No server resources are required. The query string containing in the HTTP requests for a specific URL. All browsers support query strings.

Following are limitations of query string: - Query string data is directly visible to user thus leading to security problems. Most browsers and client devices impose a 255-character limit on URL length.

(iii) CookiesA cookie is a small bit of text that accompanies requests and pages as they go between the Web server and browser. The cookie contains information the Web application can read whenever the user visits the site. For example, if a user requests a page from your site and your application sends not just a page, but also a cookie containing the date and time, when the user's browser gets the page, the browser also gets the cookie, which it stores in a folder on the user's hard disk. Later, if user requests a page from your site again, when the user enters the URL the browser looks on the local hard disk for a cookie associated with the URL. If the cookie exists, the browser sends the cookie to your site along with the page request. Your application can then determine the date and time that the user last visited the site. You might use the information to display a message to the user or check an expiration date.Unit-VQ8 What is a Web Service? Explain the architecture and standards in detail.Web services are open standard ( XML, SOAP, HTTP etc.) based Web applications that interact with other web applications for the purpose of exchanging data. Web Services can convert your existing applications into Web-applications.There are two ways to view the web service architecture. The first is to examine the individual roles of each web service actor. The second is to examine the emerging web service protocol stack. 1. Web Service RolesThere are three major roles within the web service architecture: Service provider: This is the provider of the web service. The service provider implements the service and makes it available on the Internet. Service requestor This is any consumer of the web service. The requestor utilizes an existing web service by opening a network connection and sending an XML request. Service registry This is a logically centralized directory of services. The registry provides a central place where developers can publish new services or find existing ones. It therefore serves as a centralized clearinghouse for companies and their services.2. Web Service Protocol StackA second option for viewing the web service architecture is to examine the emerging web service protocol stack. The stack is still evolving, but currently has four main layers. Service transport This layer is responsible for transporting messages between applications. Currently, this layer includes hypertext transfer protocol (HTTP), Simple Mail Transfer Protocol (SMTP), file transfer protocol (FTP), and newer protocols, such as Blocks Extensible Exchange Protocol (BEEP). XML messaging This layer is responsible for encoding messages in a common XML format so that messages can be understood at either end. Currently, this layer includes XML-RPC and SOAP. Service description This layer is responsible for describing the public interface to a specific web service. Currently, service description is handled via the Web Service Description Language (WSDL). Service discovery This layer is responsible for centralizing services into a common registry, and providing easy publish/find functionality. Currently, service discovery is handled via Universal Description, Discovery, and Integration (UDDI).Web Services Standards TransportsBEEP, the Blocks Extensible Exchange Protocol (formerly referred to as BXXP), is a framework for building application protocols. It has been standardized by IETF and does for Internet protocols what XML has done for data. Blocks Extensible Exchange Protocol (BEEP) MessagingThese messaging standards and specifications are intended to give a framework for exchanging information in a decentralized, distributed environment. SOAP 1.1 (Note) SOAP 1.2 (Specification) Web Services Attachments Profile 1.0 SOAP Message Transmission Optimization Mechanism

Description and discoveryWeb services are meaningful only if potential users may find information sufficient to permit their execution. The focus of these specifications and standards is the definition of a set of services supporting the description and discovery of businesses, organizations, and other Web services providers; the Web services they make available; and the technical interfaces which may be used to access those services. UDDI 3.0 WSDL 1.1 (Note) WSDL 1.2 (Working draft) WSDL 2.0 (Working Group)SecurityUsing these security specifications, applications can engage in secure communication designed to work with the general Web services framework. Web Services Security 1.0 Security Assertion Markup Language (SAML) ManagementWeb services manageability is defined as a set of capabilities for discovering the existence, availability, health, performance, usage, as well as the control and configuration of a Web service within the Web services architecture. As Web services become pervasive and critical to business operations, the task of managing and implementing them is imperative to the success of business operations. Web Services Distributed ManagementQ9 Write short notes on any two of the following:(a) Grid ComputingGrid computing is a pattern for increasing of computing power and storage capacity of a system and is based on hardware and software resources in a network with common purpose. One way to think about grid computing is as the virtualization and pooling of IT resourcescompute power, storage, network capacity, and so oninto a single set of shared services that can be provisioned or distributed, and then redistributed as needed. Just as an electric utility uses a grid to deal with wide variations in power demands without affecting customer service levels, grid computing provides IT resources with levels of control and adaptability that are transparent to end users, but that let IT professionals respond quickly to changing computing workloads. In most organizations, there are large amounts of underutilized computing resources. Most desktop machines are busy less than 5% of the time. In some organizations, even the server machines can often be relatively idle. Grid computing provides a framework for exploiting these underutilized resources and thus has the possibility of substantially increasing the efficiency of resource usage.

(b) Cloud ComputingCloud computing is a computing paradigm, where a large pool of systems are connected in private or public networks, to provide dynamically scalable infrastructure for application, data and file storage. With the advent of this technology, the cost of computation, application hosting, content storage and delivery is reduced significantly. The idea of cloud computing is based on a very fundamental principal of reusability of IT capabilities'. The difference that cloud computing brings compared to traditional concepts of grid computing, distributed computing, utility computing, or autonomic computing is to broaden horizons across organizational boundaries.

(c) Latest trends in Web TechnologyThe following are the latest trends in web technology: Semantic WebThe Semantic Web is about two things. It is about common formats for integration and combination of data drawn from diverse sources, where on the original Web mainly concentrated on the interchange of documents. It is also about language for recording how the data relates to real world objects. That allows a person, or a machine, to start off in one database, and then move through an unending set of databases which are connected not by wires but by being about the same thing. PersonalizationA successful e-business Web site gives special treatment to its repeat visitors who buy. Providing special treatment in the form of information and applications matched to a visitor's interests, roles, and needs is known as personalization. A personalized e-business site is more likely to attract and retain visitors and to build sales. Websites as Web ServicesAs more and more of the Web is becoming remixable, the entire system is turning into both a platform and the database. So bringing together Open APIs (like the Amazon E-Commerce service) and scraping/mashup technologies, gives us a way to treat any web site as a web service that exposes its information. The information, or to be more exact the data, becomes open. In turn, this enables software to take advantage of this information collectively. With that, the Web truly becomes a database that can be queried and remixed. Online video/Internet TVInternet TV is exactly what it sounds like: video delivered over the Web. Specifically, it refers to the variety of Internet-delivered video-on-demand and subscription services that offer movies, TV shows, and sports.