August 2004 - Posts

Right now I am reading the WS-Eventing updated specification. Several improvements appears in this version. I am glad to see that IBM and Sun has joining to the authors.

Posted by gsusx | with no comments

Another integration platform with support for BPEL4WS has been released.

ReadiMinds recently announced the availability of ReadiOrchestra 1.1 – BPEL4WS Business Process Manager – advance version of one of the first such product in the market with full native support of OASIS BPEL4WS. It is part of “ReadiMinds WebServices Applications Suite™”.

ReadiOrchestra allows business processes to get decoupled from underlying business logic (enterprise webservices). This empowers Business Analyst to bring-in agility to business operations by reconfiguring the application processes thereby aligning IT systems in-line with changing business requirements.

ReadiOrchestra facilitates graphical modeling of all business processes, enables graphical rule based validation & transaction management, helps in designing on demand composite applications and provides business process management capabilities. In addition, its integrated UDDI registry search capability helps to orchestrate webservices across trading partners.

ReadiOrchestra consists BPEL4WS visual process-flow designer for modeling business processes that are both automated (synchronous) and which contain human interaction (asynchronous). ReadiOrchestra's Orchestration Engine enables execution of orchestrated business processes and is compliant with BPEL4WS.

 

Posted by gsusx | with no comments

In the past weeks I have been working in a tool that adds discovery features to BizTalk Server 2004 via UDDI. Maybe sounds a little crazy but is absolutely simple. With this tool I am offering to BizTalk developers the possibility of publishing BizTalk elements in an UDDI registry in a way that these elements can be discovered later by other applications.

In the recent years the presence of the Service Oriented Architecture (SOA) has redefined the concept of application. An application is no longer an opaque, procedural implementation mechanism. Instead, it is an orchestrated sequence of messaging, routing, processing, and transformation events capable of processing the exposed declarative properties of rich (XML) documents. BizTalk Server 2004 implements some of the most important SOA concepts (here you can find a nice white paper article about this topic). In some contexts BizTalk Server 2004 can be viewed as an Enterprise Service Bus (ESB) since BizTalk provides support for the most important concepts required by an ESB like:

  • Messaging: asynchronous store-and-forward delivery with multiple qualities of service
  • Data transformation: XML to XML
  • Content-based routing: publish and subscribe routing across multiple types of sources and destinations

Discovery is one of the most important features required by all SOA based technologies. In the Web Services environments there are several technologies to provide discovery support like: WSIL, WS-Discovery and, one of the most popular, UDDI. UDDI is typically associated with Web Services; however its data model permits to represent almost any kind of information. Some technology providers uses UDDI to, for example, discover CORBA objects among other potentialities. However is a fact that the UDDI data model is very flexible to represent SOA based concepts.

Well the main tool of my solution is the BizTalk Server 2004 UDDI Publishing Wizard. Using this tool we can publish some BizTalk Server 2004 elements in an UDDI registry.  The benefits of add discovery potentialities to BizTalk Server 2004 are obvious. Using UDDI we can attribute metadata to a set of orchestrations and then makes queries based of this metadata to discover key aspects of orchestrations. Adding discovery capabilities to BizTalk Server 2004 we add another level of abstraction in which we define the data relevant to discovery by the potential clients. This feature is called by various authors the reification of data, in English making data “real”. That is, not necessarily all the elements in a set of orchestrations are relevant since a discovery point of view. Is perfectly that, for example, the relevant data in some orchestration are only one the receive port that activates the orchestration. Is a fact that many orchestration developers cannot expose their processes via Web Services. There are a lot of causes to this. Not all the messages can be expressed in a SOAP envelope even when there are many emerging Standards that add some interesting features to SOAP like MTOM. However some organizations may want to keep some processes that are activated using other protocols different from SOAP and also wants to publish discovery information. Using BizTalk Server 2004 UDDI Exporter Wizard we can publish information that indicates that some process receives some input messages via MSMQ, TCP, FILE, etc and returns some outputs.

Another important benefit of adding discovery features to BizTalk Server 2004 is categorization. Using UDDI we associate BizTalk elements into a set of categories and later use this categorization information in searches. The uses of categorization schemes makes possible to have the BizTalk Server 2004 elements properly classified and organized

Using UDDI to publish BizTalk Server 2004 information adds a number of benefits to BizTalk developers. We can now build applications that dynamically query the UDDI registry to find the location where some process receive input messages or send output messages, the schema of input and output messages, the transport adapters used among other things.

The implementations of the most popular UDDI registries are based on Web Services to facilitate the platform independence. When we publish BizTalk Server 2004 elements in UDDI this information becomes available to different types of clients, no matter the environments in which they are developed. Using these potentialities we add another interoperability option to BizTalk Server 2004. We can develop some J2EE based applications that query the UDDI registry to find information referred to some BizTalk applications. Using discovery we makes very flexible the dynamic interoperability between other integration platforms, like WebLogic Integration, WebLogic Server Process Editions, WebSphere Integration or TIBCO, with BizTalk Server 2004.

In next posts I plan to explain how to uses the BizTalk Server 2004 Publishing Wizard to publish BizTalk elements in an UDDI registry.

I really want that you use and test this tool and send me the feedback.

(The current version of the BizTalk Server 2004 Publishing Wizard has been submitted as an entry to the BizTalk Server 2004 Developer Competition).

 

Posted by gsusx | 7 comment(s)

In the past weeks I spent a lot of time developing a solution that adds discovery features to BizTalk Server 2004 via UDDI. Using this solution you can publish your Ports, PortTypes, Messages, Roles, among other BizTalk elements.

That is the main reason for which I am not blogging a lot this month.

In the next days I plan to post some reflections about interesting aspects of BizTalk Server 2004 and my solution

To start I want to talk about Microsoft.BizTalk.Reflection assembly. This assembly provides support for some reflection features in BizTalk assemblies. Using this assembly we can list orchestrations, PortTypes, Roles, Messages, etc. This assembly complements other well-documented features in BizTalk like WMI support.

The main component of Microsoft.BizTalk.Reflection is the Reflector class. Using this class we can load the assembly containing the orchestration and start to discover data. The next code shows how to do this task.

Reflector rf= new Reflector();

rf.LoadAssembly(…My assembly path…);

Once we have loaded the assembly we can list BizTalk elements. The next code shows how to list the orchestrations of the assembly.

IEnumerable List= rf.GetServices();

IEnumerator ServiceEnum= List.GetEnumerator();

while(ServiceEnum.MoveNext())

  {

    ServiceInfo CurrentService= (ServiceInfo)ServiceEnum.Current;

    Console.WriteLine(CurrentService.FullName);

  }

Similar code can be applied to list PortTypes, Roles, Schemas, Pipelines, etc. Well, as you can see WMI isn’t the only way to discover properties of BizTalk elements. Microsoft.BizTalk.Reflection offers a nice model to do reflection over BizTalk elements but, surprise, it is not the only assembly to do this tasks. In next posts I talk about Microsoft.BizTalk.TypeSystem.

I hope that you had enjoyed this port. Please send me you opinions.

 

Posted by gsusx | 2 comment(s)

Martin Gudgin posts an MTOM implementation. Great job.

Posted by gsusx | with no comments

Avik Sengupta writes an interesting article explaining IKVM another interesting choice to allow interoperability between .NET and J2EE

IKVM breaks down the barriers between Java and .NET, probably two of the most significant language platforms of the day. In the sometimes adversarial atmosphere between the two communities, this can be viewed with concern by many Java developers, since the barrier of interoperability against a large installed library base is not longer sufficient to protect your skills. However, one can also see it as an opportunity, increasing the range of target platforms on which the Java programmer may utilize his skills. I think IKVM eventually makes language bigotry the loser, and the winner is that old cliché -- "the right tool for the job."

 
Posted by gsusx | with no comments

The Device Profile for Web Services is now updated. In this new version are included recent updates to profiled specifications like WS-Eventing, WS-MetaDataExchange.

Posted by gsusx | 1 comment(s)

Systinet releases another version of Systinet Server C++

Systinet Server for C++, 5.0 is a complete solution for building C/C++ Web services and a service-oriented architecture. Systinet Server for C++ offers the industry's best performance, interoperability, portability and security.
Systinet Server for C++, 5.0 (formerly WASP Server for C++) is a standards-compliant, commercial-grade development and deployment environment for creating and consuming secure Web services in C and C++ applications.

Systinet Server for C++ supports authentication, authorization, directories including LDAP or Microsoft Active Directory, and message level security using the OASIS WS-Security 1.0 standard. Systinet Server for C++ is guaranteed to interoperate with a broad range of SOAP implementations, including Microsoft .NET, Systinet Server for Java, J2EE servers, Apache AXIS, and others. Server for C++ offers industry broadest support for XML Schema, and handles complex data types such as collections, enumerations, and MIME/DIME attachments

 

 

Posted by gsusx | 1 comment(s)

Another O/R mapping technology comes to life.

In this latest installment, Justin Gehtland discusses NHibernate, the .NET port of the open-source Java Hibernate object/relational mapping library developed by Gavin King (now of JBoss). Read about how to use NHibernate to avoid clumsy relational queries that clutter your code.

This is really interesting, Hibernate is one of the most powerful O/R technologies in the J2EE environments. It plays an important role in the EJB3 conception. Well another competitor to Microsoft Object Spaces.
 

Posted by gsusx | with no comments

Hello, I am back from a ten days of vacations. I am now working so hard in some BizTalk Server 2004 stuff. I will post more details in the next days. Well I spent a lot of time reading a set of new articles. One of the most significant news that I read  is that Micorosoft has now support for Web Services for Remote Portlets (WSRP) in SharePoint Server.

Microsoft's WSRP Web Part Toolkit for SharePoint uses the Web Services for Remote Portlets (WSRP) specification created by the OASIS standards body.

This toolkit complements a variety of already available standards-based integration technologies, including the XML Data View Web Part. The WSRP Web Part Toolkit includes a ready-to-install "consumer" component that displays WSRP portlet services provided by a variety of vendors within Web Part pages hosted by Windows SharePoint Services and SharePoint Portal Server 2003. For developers interested in making SharePoint site content available over WSRP Web services, Microsoft also is providing a WSRP Web Services Toolkit for SharePoint Products and Technologies that explains and provides examples for creating and deploying WSRP-compliant producer Web services, making it even easier for businesses to leverage SharePoint application functionality and content within third-party portals.

Some of the most important vendors in the J2EE world like BEA and IBM also provides supports for portlets in some prodicts like WebLogic Portal.

 

Posted by gsusx | 1 comment(s)
More Posts