Monday, August 31, 2009

What is XML and What Good is XML?

What is XML?
XML stands for eXtensible Markup Language and is a descendant of Standard Generalized Markup Language (SGML), just as HTML is. The most noticeable difference between XML and HTML is the fact that you can define your own tags in XML. That is why XML is considered an extensible language. Because of the freedom of the tags, however, the way in which XML must be written is very strict. Every tag must have a closing tag and all nodes must be ordered properly. If any of these rules are broken, an XML document will simply fail to function. HTML, as many have found, will work even if the document only vaguely looks like an HTML document.

What good is XML?
XML is all about structure. The markup in XML defines what the data represents (i.e. The Catcher in the Rye). HTML, on the other hand, is made for publications. Hence, in HTML, it makes sense to order information by where and how it will appear on the screen. In XML, however, the structure of the information is what's most important. The order of the information is unimportant - it can be displayed in whatever order you want. The important thing is that each piece of data is contained in markup that describes what that data really represents. The structure can be maintained much more easily in XML because of the fact that you can create your own tags.

Think of a book you've read recently. The chapter titles were most likely in bold print. We come to rely on these sorts of conventions to give us a sense of the structure of the document. When you're dealing with a web page, you have to make the structure evident to the reader to help them deal with the information. By using XML, you can easily keep track of information like chapter titles because they will all be contained in markup designating what they are (i.e. Ch. 1 - The Beginning). You can then choose to display that information in whatever way will make it easiest for your reader.

That's what XML is all about: structure.


Wednesday, August 26, 2009

Basic Principles of Service Orientation Architecture (SOA)

To build an SOA solution based on Web services, you need to follow the service-orientation principles when pulling the services together into an application. Here are some of the key principles of service-orientation you need to keep in mind when designing SOA solutions:

  1. Loose coupling: It represents a relationship that allows the underlying logic of a service to change with minimal or no impact on the other services utilized within the same SOA. Loose coupling is the key principle of service orientation. Implementing services as loosely coupled pieces of software allows you to keep up with the other key principles of service orientation, such as service reusability, service autonomy, and service statelessness.
  2. Service contract: It represents service descriptions and other documents describing how a service can be programmatically accessed. In the Binding with WSDL section earlier in this article, you saw an example of a WSDL service description document that describes a service, defining the contract for that service.
  3. Abstraction of underlying logic: It means that a service publicly exposes only logic described in the service contract, hiding the implementation details from service consumers.
  4. Autonomy: It means that services control only the logic they encapsulate. Dividing application logic into a set of autonomous services allows you to build flexible SOA solutions, achieving loose coupling, reusability, and composability.
  5. Reusability: Reusability in service-orientation is achieved by distributing application logic among services so that each service can be potentially used by more than one service requestor. Building reusable services supports the principle of composability.
  6. Composability: Composability represents the ability of services to be grouped into composite services that coordinate an exchange of data between services being aggregated. For example, using an orchestration language, such as WS-BPEL, allows you to compose fine-grained services into more coarse-grained ones.
  7. Statelessness: It means that services don't maintain their state specific to an activity. Building stateless services encourage loose coupling, reusability, and composability.
  8. Interoperability: Interoperability between services is easily achieved as long as the services interact with each other through interfaces that are platform- and implementation-independent.
  9. Discoverability: Discoverability refers to standard mechanisms that make it possible for service descriptions describing services to be discovered by service requestors. Universal Description, Discovery, and Integration (UDDI) specification provides such a mechanism, which allows for publishing service descriptions documents in an XML-based registry, thus making them available for public use.

As you can see, most of these principles are tightly related. For example, if you bear the autonomy principle in mind when dividing application logic into services to be utilized within an SOA, you will have reusable, composable, and loosely coupled pieces of software that can be reused in future projects.

On the other hand, ignoring at least one principle of service-orientation makes it very hard to keep up with the others. For example, if you ignore the principle of statelessness when designing services, you will end up with less reusable and less composable building blocks for your SOA solutions.


Monday, August 24, 2009

Introduction to Service-Oriented Architecture

While using Web services allows you to achieve interoperability across applications built on different platforms with different languages, applying service-oriented concepts and principles when building applications based on using Web services can help you create robust, standards-based, interoperable SOA solutions.

It is interesting to note that Service-Oriented Architecture, while providing architectural foundation for building service-oriented solutions, is not tied to a concrete technology or technology set. In contrast, it may be implemented with various technologies, such as DCOM, CORBA, or Web Services. However, only the Web Services technology set is currentlythe primary way to put SOA into practice.


Thursday, August 20, 2009

What is WSDL and Its Benefits

WSDL is an XML document used to describe web services and WSDL stands for Web Services Description Language.

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.
  • 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.

The primary benefit of the WebService behavior is that it provides a simple way for you to call methods that are exposed by Web Services using the SOAP protocol. The WebService behavior enables you to call a remote method using a few, straightforward, client-side scripting methods exposed by the behavior. Navigating to another URL is unnecessary when using the WebService behavior to deliver data to a page because DHTML is used to update the page's content. This approach enhances the browsing experience significantly, compared to traditional browsing approaches that require a full page refresh.


Monday, August 17, 2009

TIBCO BusinessConnect Remote Overview

TIBCO BusinessConnect Remote is a light-weight software application designed to exchange business documents exclusively with a BusinessConnect server overthe Internet using the AS2 transport. It allows large enterprises to enable their small partners to start performing E-commerce transactions rapidly, with minimal setup, and relatively at low cost.

TIBCO BusinessConnect Remote client service is a protocol that enables the BusinessConnect Remote client to download the configuration data from a BusinessConnect server in preparation for a secure document exchanges upon startup. The configuration data includes exchange of certificate credentials forencryption and digital authentication between the BusinessConnect Remote client service and the BusinessConnect server as well as the AS2 transport parameters.

The audit log viewer for the BusinessConnect Remote client service captures the audit trail of the startup request initiated by each BusinessConnect Remote client.For more information about the audit log, see TIBCO BusinessConnect TradingPartner Administration Guide, Appendix C, BusinessConnect Remote Client.

For the complete information about this application, see TIBCO BusinessConnect™Remote User’s Guide.


Wednesday, August 12, 2009

Data Stores in BusinessConnect

BusinessConnect uses two types of data stores:

  1. Runtime data store
  2. Configuration store

By default, the data stores use the default database connection. You can assign adifferent database to the data stores using the window System Settings > JDBCConnections.

1. Runtime Data Store

The runtime data store tracks the information flowing through the engine,recording the same information that can be recorded in audit andnon-repudiation logs plus information about hibernation, database locking,resend, and alert messages.

This information, however, is for use by the BusinessConnect engine itself,serving as a memory of what tasks it has already performed. BusinessConnectcannot function without a valid runtime database.

2. Configuration Store

The configuration store records all the information that you provide toBusinessConnect. For example, it stores information about business partners,configuration parameters, and transport settings.


Monday, August 10, 2009

BusinessConnect Server Components

TIBCO BusinessConnect server is internally divided in two components:

1. DMZ (De-Militarized Zone)

This component sits in the de-militarized zone and can have several restrictions on the networks it can access.

The DMZ component receives B2B communications directly from the Internet and performs SSL validation. By placing a firewall between the DMZ and the rest of your system, you can protect against the threat of malicious communications.

2. Interior Engine

This component performs the following tasks:

(i) Handles all messaging level activities such as encryption, decryption, and digital signatures.

(ii) Takes care of business level logic to be executed by an individual protocol, such as document schema validation.

Any deployment configuration change should trigger redeployment of both server components.


Thursday, August 6, 2009

BusinessConnect product Overview and Major Features

BusinessConnect is a B2B (business-to-business) gateway that allows your company to engage in electronic commerce with your partners. It enables secure transmission of documents and messages between partners using disparate internal business systems.

BusinessConnect supports multiple protocols (also called standards) for electronic commerce, such as EDI, RosettaNet, and SOAP.

BusinessConnect includes these major features:

  • BusinessConnect Server engine, which handles transport, messaging, and business message content
  • Trading partner management system and certificate store
  • Non-repudiation database
  • Audit log database
  • Two deployment options: Single Server and Dual Firewall DMZ mode
  • BusinessConnect Palette for TIBCO BusinessWorksTM

BusinessConnect uses TIBCO AdministratorTM as its graphical user interface, making it especially familiar and easy-to-use for existing TIBCO customers.

Business agreements, an essential component of any B2B implementation, can be easily constructed with BusinessConnect. A business agreement defines the protocol (or protocols) you will use to exchange documents with your partner.

It defines the transport method (for example, HTTPS or email), and the operations that each partner will be allowed to transact. When you set up operations at the system level for use with multiple partners, BusinessConnect gives you the flexibility to override individual aspects of an operation as needed for specific partners.


Popular Posts

  © Blogger templates The Professional Template by 2008

Back to TOP