|
Thursday, October 1, 2009, 07:35 AM
Posted by Aravind Sankaran
System RequirementsPosted by Aravind Sankaran
1. Supported Operating Systems
* Windows XP (32-bit) or Vista (32- or 64-bit)
* Mac OS X 10.4.8 or later (x86 only)
* Linux (tested on Linux Ubuntu Hardy Heron)
2. Supported Development Environments
* Eclipse 3.4 (Ganymede) or 3.5 (Galileo)
* JDK 5 or JDK 6 (JRE alone is not sufficient)
* Android Development Tools plugin (optional)
* Not compatible with Gnu Compiler for Java (gcj)
3. Other Development Environments or IDEs
* JDK 5 or JDK 6 (JRE alone is not sufficient)
* Apache Ant 1.6.5 or later for Linux and Mac, 1.7 or later for Windows
• Not compatible with Gnu Compiler for Java (gcj)
3. Other Development Environments or IDEs
* JDK 5 or JDK 6 (JRE alone is not sufficient)
* Apache Ant 1.6.5 or later for Linux and Mac, 1.7 or later for Windows
* Not compatible with Gnu Compiler for Java (gcj)
Install android_sdk_windows_1.6
After downloading the Android SDK, unpack the Android SDK.zip archive to a suitable location on your machine. By default, the SDK files are unpacked into a directory named android_sdk_ <platform>_<release>. Here we are going to install android-sdk-windows-1.6_r1.
Make a note of the name and location of the unpacked SDK directory on your system — you will need to refer to the SDK directory later, when setting up the Android plugin or when using the SDK tools.
Optionally, you may want to add the location of the SDK's primary tools directory to your system PATH. The primary tools/ directory is located at the root of the SDK folder. Adding tools to your path lets you run Android Debug Bridge (adb) and the other command line tools without needing to supply the full path to the tools directory.
• On Windows,
1. Rright-click on My Computer, and select Properties.
2. Under the Advanced tab, hit the Environment Variables button, and in the dialog that comes up,
3. Double-click on Path (under System Variables).
4. Add the full path to the tools/ directory to the path.
Example:
Set variable name as path &
variable value as,like D:\android-sdk-1.6_r1\tools
• On Linux,
1. Edit your ~/.bash_profile or ~/.bashrc file.
2. Look for a line that sets the PATH environment variable and
3. Add the full path to the tools/ directory to it. If you don't see a line setting the path, you can add one:
export PATH=${PATH}:<your_sdk_dir>/tools
• On a Mac,
Look in your home directory for .bash_profile and proceed as for Linux. You can create the .bash_profile if you haven't already set one up on your machine.
Note that, if you update your SDK in the future, you should remember to update your PATH settings to point to the new location, if different.
If you will be using the Eclipse IDE as your development environment, the next section describes how to install the Android Development Tools (ADT) plugin and set up Eclipse. If you choose not to use Eclipse, you can develop Android applications in an IDE of your choice and then compile, debug and deploy using the tools included in the SDK (skip to Next Steps).
Install the ADT Plugin for Eclipse
Android offers a custom plugin for the Eclipse IDE, called Android Development Tools (ADT), that is designed to give you a powerful, integrated environment in which to build Android applications. It extends the capabilites of Eclipse to let you quickly set up new Android projects, create an application UI, add components based on the Android Framework API, debug your applications using the Android SDK tools, and even export signed (or unsigned) APKs in order to distribute your application.
In general, using Eclipse with ADT is a highly recommended approach to Android development and is the fastest way to get started. (If you prefer to work in an IDE other than Eclipse, you do not need to install Eclipse or ADT, instead, you can directly use the SDK tools to build and debug your application—skip to Next Steps.)
Once you have the Eclipse IDE installed, as described in Preparing for Installation, follow the steps below to download the ADT plugin and install it in your respective Eclipse environment.
Eclipse 3.4 (Ganymede)
1. Start Eclipse, then select Help > Software Updates.... In the dialog that appears, click the Available Software tab.
2. Click Add Site...
3. In the Add Site dialog that appears, enter this URL in the "Location" field:
https://dl-ssl.google.com/android/eclipse/
Note: If you have trouble aqcuiring the plugin, try using "http" in the Location URL, instead of "https" (https is preferred for security reasons).
4. Click OK.
5. Back in the Available Software view, you should see the plugin listed by the URL, with "Developer Tools" nested within it. Select the checkbox next to Developer Tools and click Install...
6. On the subsequent Install window, "Android DDMS" and "Android Development Tools" should both be checked. Click Next.
7. Read and accept the license agreement, then click Finish
8. Restart Eclipse
Eclipse 3.5 (Galileo)
1. Start Eclipse, then select Help > Install New Softare.
2. In the Available Software dialog, click Add....
3. In the Add Site dialog that appears, enter a name for the remote site (e.g., "Android Plugin") in the "Name" field.
In the "Location" field, enter this URL:
https://dl-ssl.google.com/android/eclipse/
Note: If you have trouble aqcuiring the plugin, you can try using "http" in the URL, instead of "https" (https is preferred for security reasons).
Click Ok
4. Back in the Available Software view, you should now see "Developer Tools" added to the list. Select the checkbox next to Developer Tools, which will automatically select the nested tools Android DDMS and Android
5 In the resulting Install Details dialog, the Android DDMS and Android Development Tools features are listed. Click Next to read and accept the license agreement and install any dependencies, then click Finish.
6. Restart Eclipse.
Now modify your Eclipse preferences to point to the Android SDK directory:
1. Select Window > Preferences... to open the Preferences panel (Mac: Eclipse > Preferences).
2. Select Android from the left panel.
3. For the SDK Location in the main panel, click Browse... and locate your downloaded SDK directory.
4. Click Apply, then OK.
Done! If you haven't encountered any problems, then you're ready to begin developing Android applications.
add comment
( 1 view )
| permalink
| related link
| 



( 4.2 / 37 )




( 4.2 / 37 )
|
|
Thursday, October 1, 2009, 04:30 AM
Posted by Aravind Sankaran
WSDL (Web Services Description Language)Posted by Aravind Sankaran
As communications protocols and message formats are standardized in the web community, it becomes increasingly possible and important to be able to describe the communications in some structured way.WSDL addresses this need by defining an XML grammar for describing network services as collections of communication endpoints capable of exchanging messages.
WSDL service definitions provide documentation for distributed systems and serve as a recipe for automating the details involved in applications communication
A WSDL document defines services as collections of network endpoints, or ports. In WSDL, the abstract definition of endpoints and messages is separated from their concrete network deployment or data format bindings. This allows the reuse of abstract definitions: messages, which are abstract descriptions of the data being exchanged, and port types which are abstract collections of operations. The concrete protocol and data format specifications for a particular port type constitutes a reusable binding. A port is defined by associating a network address with a reusable binding, and a collection of ports define a service. Hence, a WSDL document uses the following elements in the definition of network services:
• Types– a container for data type definitions using some type system (such as XSD).
• Message– an abstract, typed definition of the data being communicated.
• Operation– an abstract description of an action supported by the service.
• Port Type–an abstract set of operations supported by one or more endpoints.
• Binding– a concrete protocol and data format specification for a particular port type.
• Port– a single endpoint defined as a combination of a binding and a network address.
• Service– a collection of related endpoints.
It is important to observe that WSDL does not introduce a new type definition language. WSDL recognizes the need for rich type systems for describing message formats, and supports the XML Schemas specification (XSD) [11] as its canonical type system. However, since it is unreasonable to expect a single type system grammar to be used to describe all message formats present and future, WSDL allows using other type definition languages via extensibility.
In addition, WSDL defines a common binding mechanism. This is used to attach a specific protocol or data format or structure to an abstract message, operation, or endpoint. It allows the reuse of abstract definitions.
In addition to the core service definition framework, this specification introduces specific binding extensions for the following protocols and message formats:
• SOAP 1.1
• HTTP GET / POST
• MIME
Structure Of A WSDL Document
<definitions>
<types>
definition of types........
</types>
<message>
definition of a message....
</message>
<portType>
definition of a port.......
</portType>
<binding>
definition of a binding....
</binding>
</definitions>
|
|
Thursday, October 1, 2009, 03:55 AM
Posted by Aravind Sankaran
Android is a Linux-based open source platform for mobile cellular handsets. Android was developed by Google and the Open Handset Alliance (OHA), a coalition of hardware, software and telecommunications companies oriented towards advancing mobile telephony standards.Posted by Aravind Sankaran
Android platform includes an operating system based upon Linux, a GUI, a Web browser and many other applications considered key to a modern cellular handset. Android allows synchronization to a user's address book, calendar and other personal information management (PIM) programs, though individual software makers will have to customize their offerings.
Android will allow users to browse the Internet more easily, integrate mapping services with local business listings and use many other software features traditionally associated with personal computers rather than cellphones.
Android will run on both of the most widely deployed cellular standards, GSM/HSDPA and CDMA/EV-DO.
Android will also support:
• Bluetooth
• EDGE
• 3G Communication Protocols, like EV-DO and HSDPA
• WiFi
• SMS messaging
• MMS
• Video/Still Digital Cameras
• Touchscreens
• GPS
• Compasses
• Accelerometers
• Accelerated 3D Graphics
Android includes software built by many different entities. For instance, the default Android web browser will be based on Webkit, like Apple's Safari. Webkit was originally based on the Konquerer Web browser for Linux. Its music and video playback software was developed by PacketVideo. Applications are written using Java and are run on Dalvik, a virtual machine that runs on top of a Linux kernel.
|
|
Wednesday, September 30, 2009, 11:11 AM
Posted by Arun Sreekumar
Android ArchitecturePosted by Arun Sreekumar
Applications
Android will ship with a set of core applications including an email client, SMS program, calendar, maps, browser, contacts, and others. All applications are written using the Java programming language.
Application Framework
Developers have full access to the same framework APIs used by the core applications. The application architecture is designed to simplify the reuse of components. Any application can publish its capabilities and any other application may then make use of those capabilities (subject to security constraints enforced by the framework). This same mechanism allows components to be replaced by the user.
Underlying all applications is a set of services and systems, including:
• A rich and extensible set of Views that can be used to build an application, including lists, grids, text boxes, buttons, and even an embeddable web browser
• Content Providers that enable applications to access data from other applications (such as Contacts), or to share their own data
• A Resource Manager, providing access to non-code resources such as localized strings, graphics, and layout files
• A Notification Manager that enables all applications to display custom alerts in the status bar
• An Activity Manager that manages the lifecycle of applications and provides a common navigation back stack
Libraries
Android includes a set of C/C++ libraries used by various components of the Android system. These capabilities are exposed to developers through the Android application framework. Some of the core libraries are listed below:
• System C library - a BSD-derived implementation of the standard C system library (libc), tuned for embedded Linux-based devices
• Media Libraries - based on Packet Video’s Open CORE; the libraries support playback and recording of many popular audio and video formats, as well as static image files, including MPEG4, H.264, MP3, AAC, AMR, JPG, and PNG
• Surface Manager - manages access to the display subsystem and seamlessly composites 2D and 3D graphic layers from multiple applications
• LibWebCore - a modern web browser engine which powers both the Android browser and an embeddable web view
• SGL - the underlying 2D graphics engine
• 3D libraries - an implementation based on OpenGL ES 1.0 APIs; the libraries use either hardware 3D acceleration (where available) or the included, highly optimized 3D software.
• Free Type - bitmap and vector font rendering
• SQLite - a powerful and lightweight relational database engine available to all applications
Android Runtime
Android includes a set of core libraries that provides most of the functionality available in the core libraries of the Java programming language.
Every Android application runs in its own process, with its own instance of the Dalvik virtual machine. Dalvik has been written so that a device can run multiple VMs efficiently. The Dalvik VM executes files in the Dalvik Executable (.dex) format which is optimized for minimal memory footprint. The VM is register-based, and runs classes compiled by a Java language compiler that have been transformed into the .dex format by the included "dx" tool.
The Dalvik VM relies on the Linux kernel for underlying functionality such as threading and low-level memory management.
Linux Kernel
Android relies on Linux version 2.6 for core system services such as security, memory management, process management, network stack, and driver model. The kernel also acts as an abstraction layer between the hardware and the rest of the software stack.
|
|
Wednesday, September 30, 2009, 10:51 AM
Posted by Arun Sreekumar
Introduction to AndroidPosted by Arun Sreekumar
Android is a Java-based operating system that runs on the Linux 2.6 kernel, developed by Google and later the Open Handset Alliance. It allows developers to write managed code in a Java-like language that utilizes Google-developed Java libraries, but does not support programs developed in native code. The system is very lightweight and full featured.
Features of Android
• Android apps can be developed on any platform (Windows XP and Vista, Linux, and Mac OS)
• Anyone can develop and launch an Android application.
• Android applications can be available in the Android Market instantly.
• Android supports touch screen, accelerometer, GPS, WiFi, SMS, still camera, MMS, video camera and Bluetooth.
• Android has some fresh ideas like Google Maps "street view" and customizable home page.
• Applications on an Android handset can run in parallel.
• Accelerated 3-D graphics engine (based on hardware support).
• Integrated web browser.
• Third-party applications are executed with the same system priority as those that are bundled with the core system.
|
|
Wednesday, September 30, 2009, 03:05 AM
Posted by Aravind Sankaran
Service Oriented ArchitecturePosted by Aravind Sankaran
A service-oriented architecture is essentially a collection of services. These services communicate with each other. The communication can involve either simple data passing or it could involve two or more services coordinating some activity. Some means of connecting services to each other is needed (Or) Service-oriented architecture (SOA) is an evolution of distributed computing based on the request/reply design paradigm for synchronous and asynchronous applications. An application's business logic or individual functions are modularized and presented as services for consumer/client applications. What's key to these services is their loosely coupled nature; i.e., the service interface is independent of the implementation. Application developers or system integrators can build applications by composing one or more services without knowing the services' underlying implementations. For example, a service can be implemented either in .Net or J2EE, and the application consuming the service can be on a different platform or language.
SOA is not Web services
"Web services are about technology specifications, whereas SOA is a software design principle. Notably, Web services' WSDL is an SOA-suitable interface definition standard: this is where Web services and SOA fundamentally connect." Fundamentally, SOA is an architectural pattern, while Web services are services implemented using a set of standards; Web services is one of the ways you can implement SOA. The benefit of implementing SOA with Web services is that you achieve a platform-neutral approach to accessing services and better interoperability as more and more vendors support more and more Web services specifications.
Service-oriented architectures have the following key characteristics:
• SOA services have self-describing interfaces in platform-independent XML documents. Web Services Description Language (WSDL) is the standard used to describe the services.
• SOA services communicate with messages formally defined via XML Schema (also called XSD). Communication among consumers and providers or services typically happens in heterogeneous environments, with little or no knowledge about the provider. Messages between services can be viewed as key business documents processed in an enterprise.
• SOA services are maintained in the enterprise by a registry that acts as a directory listing. Applications can look up the services in the registry and invoke the service. Universal Description, Definition, and Integration (UDDI) is the standard used for service registry.
• Each SOA service has a quality of service (QoS) associated with it. Some of the key QoS elements are security requirements, such as authentication and authorization, reliable messaging, and policies regarding who can invoke services.
Why SOA?
The reality in IT enterprises is that infrastructure is heterogeneous across operating systems, applications, system software, and application infrastructure. Some existing applications are used to run current business processes, so starting from scratch to build new infrastructure isn't an option. Enterprises should quickly respond to business changes with agility; leverage existing investments in applications and application infrastructure to address newer business requirements; support new channels of interactions with customers, partners, and suppliers; and feature an architecture that supports organic business. SOA with its loosely coupled nature allows enterprises to plug in new services or upgrade existing services in a granular fashion to address the new business requirements, provides the option to make the services consumable across different channels, and exposes the existing enterprise and legacy applications as services, thereby safeguarding existing IT infrastructure investments.
The vision behind service-oriented computing is extremely ambitious and therefore also very attractive to any organization interested in truly improving the effectiveness of its IT enterprise. A set of common goals and benefits has emerged to form this vision. These establish a target state for an enterprise that successfully adopts service-orientation.
Basic Service Oriented Architecture Diagram
It shows a service consumer at the right sending a service request message to a service provider at the left. The service provider returns a response message to the service consumer. The request and subsequent response connections are defined in some way that is understandable to both the service consumer and service provider. How those connections are defined is explained in Web Services . A service provider can also be a service consumer.
SOA infrastructure
To run and manage SOA applications, enterprises need an SOA infrastructure that is part of the SOA platform. An SOA infrastructure must support all the relevant standards and required runtime containers. A typical SOA infrastructure looks like

WSDL, UDDI, SOAP
WSDL is used to describe the service; UDDI, to register and look up the services; and SOAP, as a transport layer to send messages between service consumer and service provider. While SOAP is the default mechanism for Web services, alternative technologies accomplish other types of bindings for a service. A consumer can search for a service in the UDDI registry, get the WSDL for the service that has the description, and invoke the service using SOAP.
WS-I Basic Profile
WS-I Basic Profile, provided by the Web services Interoperability Organization, is turning into another core piece required for service testing and interoperability. Service providers can use the Basic Profile test suites to test a service's interoperability across different platforms and technologies.
J2EE and .Net
Though the J2EE and .Net platforms are the dominant development platforms for SOA applications, SOA is not by any means limited to these platforms. Platforms such as J2EE not only provide the framework for developers to naturally participate in the SOA, but also, by their inherent nature, bring a mature and proven infrastructure for scalability, reliability, availability, and performance to the SOA world. Newer specifications such as Java API for XML Binding (JAXB), used for mapping XML documents to Java classes, Java API for XML Registry (JAXR), used for interacting with the UDDI registries in a standard manner, and Java API for XML-based Remote Procedure Call (XML-RPC), used for invoking remote services in J2EE 1.4 facilitate the development and deployment of Web services that are portable across standard J2EE containers, while simultaneously interoperating with services across other platforms such as .Net.
Security
The Web Services Security specification addresses message security. This specification focuses on credential exchange, message integrity, and message confidentiality. The attractive thing about this specification is it leverages existing security standards, such as Security Assertion Markup Language (SAML), and allows the usage of these standards to secure Web services messages.
Reliability
In a typical SOA environment, several documents are exchanged between service consumers and service providers. Delivery of messages with characteristics like once-and-only-once delivery, at-most-once delivery, duplicate message elimination, guaranteed message delivery, and acknowledgment become important in mission-critical systems using service architecture. WS-Reliability and WS-ReliableMessaging are two standards that address the issues of reliable messaging. Both these standards are now part of OASIS.
Policy
Service providers sometimes require service consumers to communicate with certain policies. As an example, a service provider may require a Kerberos security token for accessing the service. These requirements are defined as policy assertions. A policy may consist of multiple assertions. WS-Policy standardizes how policies are to be communicated between service consumers and service providers.
Orchestration
As enterprises embark on service architecture, services can be used to integrate silos of data, applications, and components. Integrating applications means that the process requirements, such as asynchronous communication, parallel processing, data transformation, and compensation, must be standardized. BPEL4WS or WSBPEL (Web Services Business Process Execution Language) is an OASIS specification that addresses service orchestration, where business processes are created using a set of discrete services..
Management
As the number of services and business processes exposed as services grow in the enterprise, a management infrastructure that lets the system administrators manage the services running in a heterogeneous environment becomes important. Web Services for Distributed Management (WSDM) will specify that any service implemented according to WSDM will be manageable by a WSDM-compliant management solution.
|
|
Wednesday, June 10, 2009, 01:08 PM
Posted by Zaara
Identity management is a discipline which encompasses all of the tasks required to create, manage, and delete user identities in a computing environment.It covers issues such as how users are given an identity, the protection of that identity and the technologies supporting that protection such as network protocols, digital certificates, passwords and so on.Posted by Zaara
Identity management encompasses all the processes used to create and manage information system user accounts. In the information system world, the creation of private networks, where users had to identify themselves with a user name and password occurred first. Only as systems expanded and the field of computer science grew into the Internet in the early 1990’s, did the role of the public or general user develop.
As a result of this expansion, identity management has evolved from a centrally controlled user ID process managed by a "gatekeeper" into a system of user driven self service. Users are now responsible for password resetting and management, downloading a central function of system maintenance away from the technical staff and placing this role in the hands of the user community. To address this shift in process, complex workflows surrounding the management of user access, approvals and account management has been developed.
With the huge expansion in the use of information systems in everyday life and in the workplace, identify management has become increasingly important. The original concept of a series of independent systems led to an unexpected problem. With the rapid increase in the number of systems, the number of unique user IDs users were required to maintain multiplied.
In response to the fear of security breaches, the required complexity of identify management solutions grew. The minimum number of characters in a password increased, as did the requirement for a combination of letters, numbers and characters. These changes were made in an attempt to reduce the effectiveness of computerized programs designed to break the identity management system. This shift actually reduced the quality of the security provided in an identity management system, as users simply write down the system name, their user ID and the password on paper or in another software tool in an attempt to manage this data.
|
|
Tuesday, January 27, 2009, 01:42 PM
Posted by Zaara
Managing streams of various unstructured data/documents, spreadsheets, presentations, and image files—is a problem that won't disappear soon.It takes its own time.but solutions evolve and we see a future which would be paper-less, Now thats technology. Organizations generate and receive a relentless influx of information from online and offline systems, but companies that can't manage unstructured content effectively not only suffer productivity losses, they risk being out of compliance with government and industry regulations.The issue gets serious now.Posted by Zaara
How widespread is this problem?Like what John K. Waters said that more than 80 percent of the information that companies generate is unstructured and that managing it has become critical. "Just about every company is coping with an explosion of [data]," he writes, and finding ways to use that unstructured data has become "a competitive differentiator."
Now the world knows that there is a huge team of people working on a better way to support how information is generated,
maintained and delivered to clients and finally the destruction of these information at the end of thier lifecycle.
ISNT THAT JUST AMAZING .Yes we have a solution now ORACLE CONTENT MANAGEMENT - THE ENTERPRISE 2.0 TECHNOLOGY
What does it do? whats its purpose?
Oracle's content management solution is centered around two new database options. Oracle Content Database (Oracle Content DB) enables customers to manage large volumes of unstructured content in a single Oracle database. Oracle Records Database (Oracle Records DB) provides for the lifecycle management of electronic records, so organizations can fulfill regulatory compliance mandates in an accurate, repeatable way.
Both of these options use Oracle Database 10g as the repository for storing and managing unstructured content. "Customers can now use Oracle Database 10g to store everything: data; files; metadata; text indexes; relationships between objects, security, and access control,"."Everything you need to know about your content is in there, and it's all managed in a consistent, auditable, highly controlled way. Unlike the proprietary content management systems of the past, Oracle has created easy-to-use Windows and Web interfaces to help organizations more easily control, secure, and manage large volumes of structured and unstructured content."
Oracle Content Management offers the most unified, usable enterprise content management (ECM) platform in today’s market. With centralized control across single or multiple repositories, common core functionality, and easily scalable content management capabilities, Oracle provides content management solutions for all content types and all users—wherever they work in the enterprise. And because it’s built on Oracle Fusion Middleware, Oracle Content Management integrates seamlessly with Oracle’s other solutions—including business intelligence, business integration, and process management—making content management an important part of your overall business strategy.
BUT then again the competition on this space is still strong :)with DOCUMENTUM sometimes trying to take the lead.
|
|
Thursday, July 10, 2008, 06:49 AM
Posted by Simmya
AJAX OverviewPosted by Simmya
AJAX (Asynchronous JavaScript and XML) evolved in an effort to solve difficult problems, by allowing the browser to communicate with the server, behind the scenes, without having to refresh the entire page. It accomplishes this by using JavaScript to only change that portion of the current Web page that needs to be changed. AJAX can make the user's browser behave more like a desktop application, combining server interaction with far greater performance than traditional server-side languages. AJAX is asynchronous in the sense that the needed data is obtained from the server and loaded without interfering with the display and behavior of the current Web page. The data is requested through use of the XMLHttpRequest object, and typically formatted in XML.
But raw AJAX programming can be quite difficult, partly because AJAX code is typically quite daunting, and partly because Web browsers have implemented JavaScript differently, despite a convergence upon ECMAScript standards, promulgated by the European Computer Manufacturers Association (ECMA). As a result, AJAX programmers can spend much of their development time dealing with incompatibilities among browsers and operating systems.
One of the main problems with Ajax development is that you need to master a large stack of heterogeneous technologies. Depending on the nature of your project (for example, business applications), this can be a great drawback.
In addition, different Web browsers don’t support JavaScript and DHTML in the same way. For example, Microsoft Internet Explorer and Mozilla Firefox handle these technologies slightly differently, you’ll need to deal with this if you want your application to run seamlessly on your users’ PCs.
Although most of the Ajax frameworks available today simplify development work, you still need a good grasp of the technology stack. So, if you’re planning to use Ajax to improve only your application’s user experience—if you’re not also using it as a strategic advantage for your business—it may be unwise to spend a lot of money and time on the technology.
GWT to rescue
Google Web Toolkit (GWT), an open source software development framework that allows the programmer to write Java code, which then gets translated into AJAX code. More specifically, the GWT compiler converts the Java classes into browser-compliant HTML and JavaScript code.
The key idea is that GWT is intended to make AJAX programming much easier — especially for programmers already adept with Java.
GWT provides specific APIs to manage the GUI, internationalization, and XML parsing. It also provides a comprehensive library to manage communication between the client and the server. It uses well-known Remote Procedure Call (RPC) principles implemented by a generic servlet (RemoteServiceServlet), which you can specialize for your own needs. You also can use JavaScript Object Notation (JSON) as the data interchange format for your HTTP messages sent with the GWT HTTPRequest class.
GWT also offers an interface, called JavaScript Native Interface (JSNI), which lets you mix your own hand-made JavaScript code with the code generated by the GWT compiler. JSNI uses the keyword native used by Java Native Interface (JNI) to define your own JavaScript functions. The body of these functions is defined inside specifically formatted comments.
The well-known concepts of GUI programming are available with GWT:
* Widgets, including the usual items (such as Button, TextBox, and CheckBox) and more advanced items such as Tree and Menu Bar
* Panels, which contain widgets, with their own layout (panels and layout aren’t separated as in Swing)
* Events generated by widgets. The listeners must implement specific interfaces.
GWT uses Cascading Style Sheets (CSS). Every widget has its own style, which you can change to meet your needs. You must create your own CSS to overload the defaults defined by GWT.
|
|
Tuesday, April 15, 2008, 04:49 PM
Posted by Simmya
Web Services Posted by Simmya
A web service is any service that is available over the Internet, uses a standardized XML messaging system, and is not tied to any one operating system or programming language.
There are several alternatives for XML messaging. For example, you could use XML Remote Procedure Calls (XML-RPC) or SOAP. Alternatively, you could just use HTTP GET/POST and pass arbitrary XML documents.
To summarize, a complete web service is , therefore, any service that:
• Is available over the Internet or private (intranet) networks
• Uses a standardized XML messaging system
• Is not tied to any one operating system or programming language
• Is self-describing via a common XML grammar
• Is discoverable via a simple find mechanism
There are currently many competing frameworks and proposals for web services. The three main contenders are Microsoft's .NET, IBM Web Services, and Sun Open Net Environment (ONE). All of the frameworks share a common set of technologies, mainly SOAP, WSDL, and UDDI.
Web Service Architecture
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 Roles
There 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 Stack
Currently there are 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).
As web services evolve, additional layers may be added, and additional technologies may be added to each layer.
|

Calendar




