Search This Blog

Sunday, February 17, 2008

WLS 10.3 Tech Preview Supports Service Component Architecture (SCA)

WebLogic 10.3 Tech preview now supports Service Component Architecture
(SCA) runtime. The SCA specification has two main parts: implementation
of service components (which can be done in any language) and the
assembly model which is the linking of components through wiring (which
is done through XML files). Every component technology (Spring, POJO,
EJB etc) that wants to participate in the SCA framework should support
SCA metadata. The SCA specification defines language bindings for each
of the technologies. In my opinion, SCA is the next evolution of building
interoperable distributed systems. The claim to fame for SOAP based web
services is that it provided a programming model where clients do not
care as to which programming language the service is implemented. The
client can be written in any language that has a SOAP binding. The only
restriction on the client is that it has to use the SOAP API. Thus by
service enabling your existing business services and modifying your
legacy clients to speak SOAP, web services have made enterprise
integration easier compared to yester years. Now SCA takes this
interoperability to the next level, where now your clients can stay as
is and do not have to use the same transport as the service. All the
client knows is that it is a remotable service. Let us say you have a
Java client that was talking to an EJB. Now this EJB has been converted
into a web service. In this case, the Java client does not have to
change to use SOAP API. Instead it can still use its EJB client code
because the web service (which is an SCA component) can be decorated
with an EJB binding. Thus the service can be implemented in one technology
such as Spring, POJO, EJB, web service or BPEL and it can be decorated
with a different binding (Spring, POJO, EJB, web services etc) to support
different clients. By including the SCA runtime on WLS, customers can
take advantage of the RASP functionality provided by WLS for the deployed
SCA components. The infrastructural capabilities such as security,
transactions, reliable messaging that are to be handled declaratively
through policies under the SCA specification can all be provided by WLS. More Information

Friday, February 15, 2008

W3C Publishes Best Practices for XML Internationalization

W3C's Internationalization Tag Set (ITS) Working Group has published a
Group Note for "Best Practices for XML Internationalization." The
specification provides a set of guidelines for developing XML documents
and schemas that are internationalized properly. Following the best
practices describes here allow both the developer of XML applications,
as well as the author of XML content to create material in different
languages. This document and "Internationalization Tag Set (ITS)
Version 1.0" implement requirements formulated in "Internationalization
and Localization Markup Requirements." This note is intended to
complement the W3C ITS Recommendation, since not all
internationalization-related issues can be resolved by the special
markup described in ITS. The best practices in this document therefore
go beyond application of ITS markup to address a number of problems
that can be avoided by correctly designing the XML format, and by
applying a additional guidelines when developing content. Guidelines
for designers and developers of XML applications are presented in
three sections. Section 2 "When Designing an XML Application" provides
a list of some of the important design choices you should make in
order to ensure the internationalization of your format. Section 4
"Generic Techniques" provides additional generic techniques such as
writing ITS rules or adding an attribute to a schema; such techniques
apply to many of the best practices. Section 5 "ITS Applied to
Existing Formats" provides a set of concrete examples on how to apply
ITS to existing XML based formats; this section illustrates many of
the guidelines in this document. Guidelines for users and authors of
XML content are outlined in other document sections. Section 3 "When
Authoring XML Content" provides a number of guidelines on how to create
content with internationalization in mind. Many of these best practices
are relevant regardless of whether or not your XML format was developed
especially for internationalization. Section 4.1 "Writing ITS Rules"
provides practical guidelines on how to write ITS rules. Such
techniques may be useful when applying some of the more advanced
authoring best practices. More Information

Google Code Project Provides an Enterprise Java XACML Implementation

The 'enterprise-java-xacml' Google Code Project provides a high
performance XACML 2.0 implementation that can used in the enterprise
environment. A first release has been announced; the software is
made available under the Apache License 2.0. Enterprise Java XACML
intends to fully implement OASIS XACML 2.0 and will support XACML
3.0 in the future. It is a totally independent implementation. It
fully implements XACML 2.0 core standard and has passed all
conformance tests. It provides PDP that can accept XACML requests
and returns XACML responses. The software is said to offer a highly
effective target indexing mechanism that greatly speeds up policy
searching: completely cached decisions that can speed up the
evaluation, and completely cached policies that can speed up the
evaluation. It supports a plugable data store mechanism: users can
implement their own data store by implementing only a few interfaces;
a file data store implementation is provided. It features a plugable
context factory: users can implement their own context factory that
wrap request/response in a specific format, and a default
implementation is supplied. A plugable logger mechanism means users
can implement their own logger mechanism: "I've provided 2 types of
logger, one is log4j, the other is a default logger; if log4j
conflicts with user's system, they may want to use this default one."
The tool supports an extensible XACML function registering mechanism;
users can write their own functions and register them to PDP and then
use in policies. The extensible attribute retriever mechanism means
that users can write their own attribute retriever to retrieve
attributes from external systems. It provides simple PAP APIs that
can be used to produce XACML policy files; users who want write an
XACML policy administrative UI can also rely on these APIs. Both
XACML APIs and an application framework are supported, which means
users can incorporate this implementation by calling XACML APIs from
their own applications. The implementation also provides a standalone
application framework that users can start and directly send XACML
request to it for evaluation. The software is distributed with unit
tests and conformance tests against XACML 2.0. More Information

Yet Another Computer Language

"...Microsoft is designing yet another computer language... it's a
declarative language [but] 'Declarative' is an awfully broad term, with
multiple meanings. Standard ML is considered declarative, and so are
its derivatives OCAML and F#. Prolog and rule-based AI systems are
considered declarative. You declare the rules: the logic engine decides
how to run them. SQL queries are declarative: you describe the data you
want to see, and the query optimizer figures out how to get it out of
the database. Haskell is considered declarative as well as functional,
not to mention that it has monads... XAML is a declarative language for
the domain of graphics. It was designed as an extension of XML. It's
such an expressive language that Charlie Petzold, arguably one of XAML's
most vocal proponents, built himself a alternative to Microsoft's XAMLPad
called XAML Cruncher, so that he could 'interactively type XAML code and
see the object it creates.' In Visual Studio 2008, Microsoft included a
bidirectional, split-screen XAML designer, so that you can create XAML
by dragging and dropping objects and by typing XAML code, with the ability
to freely switch back and forth between the two methods. I freely admit
to needing these tools; I can almost never write XAML that will display
correctly on the first try. Watching the Connected Systems Division (CSD)
at Microsoft over the years, it has been clear that they have been on a
code-reduction path. Why? SOAP was invented by Don Box and others to be
an XML-based lingua franca for communication among disparate computer
applications and systems. The functional deficiencies of SOAP were
addressed by the WS-* series of standards, to give it security,
authentication, reliability, and so on. All of those standards made it
harder to write conformant client and server code, raising the complexity
by orders of magnitude..." From Microsoft's "XAML Overview" document:
"XAML simplifies creating a UI for the .NET Framework programming model.
You can create visible UI elements in the declarative XAML markup, and
then separate the UI definition from the run-time logic by using
code-behind files, joined to the markup through partial class definitions.
The ability to mix code with markup in XAML is important because XML by
itself is declarative, and does not really suggest a model for flow
control. An XML based declarative language is very intuitive for creating
interfaces ranging from prototype to production, especially for people
with a background in web design and technologies. Unlike most other
markup languages, XAML directly represents the instantiation of managed
objects. This general design principle enables simplified code and
debugging access for objects that are created in XAML." More Information See also the XAML Overview: Click Here

Layer 7 Announces XML Firewall and XML Networking Gateway Products

Layer 7 Technologies has announced its XML Firewall and XML Networking
Gateway software products support the Solaris 10 Operating System (OS)
running on SPARC platforms from Sun Microsystems. Layer 7 is the only
XML security and networking vendor to offer server software for Solaris
10 OS running on SPARC and x86 platforms through an upgradeable family
of XML appliances for Service Oriented Architectures (SOA) and Web 2.0
applications. For customers with processor-intensive SOA and Web 2.0
applications, Layer 7 introduced support for Solaris 10 OS on SPARC to
further the scalability, density and performance offerings by Sun's
SPARC Enterprise Servers. Many of Layer 7's customers use SPARC-based
platforms for high-volume data center applications making SPARC
technology their first choice for SOA and XML applications. The
SecureSpan XML Firewall combines the capabilities of the SecureSpan XML
Accelerator and Data Screen with advanced identity and message level
security to address the broadest range of behind the firewall, portal
and B2B SOA security challenges. The SecureSpan XML Firewall includes
support for all leading directory, identity, access control, Single
Sign-On (SSO) and Federation services. This provides SOA and security
architects unparalleled flexibility in defining and enforcing
identity-driven SOA security policies leveraging SSO session cookies,
Kerberos tickets, SAML assertions and PKI. The SecureSpan XML Firewall
also provides architects with advanced policy controls for specifying
message and element security rules including the ability to branch
policy based on any message context. Key storage, encryption and signing
operations can be handled in FIPS 140-2 certified acceleration hardware
onboard the appliance or centrally through Safenet's Luna HSM. The
SecureSpan XML Firewall has demonstrated compliance with all major WS*
and WS-I security protocols including WS-Security, WS-SecureConversation,
WS-SecurityPolicy, WS-Trust, WS-Secure Exchange, WS-Policy and WS-I
Basic Security Profile. The SecureSpan Firewall also supports SAML 1.1
and 2.0 both in sender vouches and holder of key models.

XML at 10

Ten years ago today XML was born. That's when it was first published as
a Recommendation. XML goes back a little further than that, it
gestated, to stick to the metaphor, for almost two years at the W3C:
Dan Connolly announced the creation of the SGML Working Group mailing
list on 28-August-1996. It predates even that, of course, in the vision
of Yuri Rubinsky, Jon Bosak, and many others who imagined bringing the
full richness of generalized markup vocabularies to the then nascent
World Wide Web. My personal, professional career goes back to the fall
of 1993, so I came onto the scene only late in the development of 'SGML
on the Web' as an idea. It's earliest history is lost in the blur of
fear, excitement, and delight that I felt as I was thrust by circumstance
into the SGML community. I joined O'Reilly on the very first day of an
unprecedented two-week period during which the production department,
the folks who actually turn finished manuscripts into books, was closed.
The department was undergoing a two-week training period during which
they would learn SGML and, henceforth, all books would be done in SGML.
The day was a Monday in November, 1993; I know this for sure because I
still have the T-Shirt... Despite an inauspicious start, I have
essentially made my career out of it. I learned SGML at O'Reilly and
began working on DocBook, I worked in SGML professional services at
Arbortext, and I joined Sun to work in the XML Technology Center. XML
has been good to me. Things have not turned out as planned. The economic
forces that took over when the web became 'the next big thing' are
more interested in pixel-perfect rendering, animation, entertainment,
and advertising than in richly structured technical content. HTML 5
may be the last nail in the 'SGML on the Web' coffin, but few would
deny that XML has been a huge success. [Note: The DocBook Version 5.0
release is a complete rewrite of DocBook in RELAX NG. The intent of
this rewrite is to produce a schema that is true to the spirit of
DocBook while simultaneously removing inconsistencies that have arisen
as a natural consequence of DocBook's long, slow evolution. The
OASIS Technical Committee has taken this opportunity to simplify a
number of content models and tighten constraints where RELAX NG makes
that possible.]

W3C XML 10 Years

Ten years ago, on 10 February 1998, W3C published the "Extensible Markup
Language (XML) 1.0" specification as a W3C Recommendation. W3C is marking
the ten-year anniversary of XML by celebrating "XML10" and extending
thanks to the dedicated communities -- including people who have
participated in W3C's XML groups and mailing lists, the SGML community,
and xml-dev -- whose efforts have created a successful family of
technologies based on the solid XML 1.0 foundation. The success of XML
is a strong indicator of how dedicated individuals, working within the
W3C Process, can engage with a larger community to produce industry-changing
results. "Today we celebrate the success of open standards in preserving
Web data from proprietary ownership," said Jon Bosak, who led the W3C
Working Group that produced XML 1.0. Tim Bray of Sun Microsystems:
"There is essentially no computer in the world, desk-top, hand-held, or
back-room, that doesn't process XML sometimes. This is a good thing,
because it shows that information can be packaged and transmitted and used
in a way that's independent of the kinds of computer and software that
are involved. XML won't be the last neutral information-wrapping system;
but as the first, it's done very well." Indeed, one can hardly get through
the day without using technology that is based on XML in some fashion.
When you fill your auto tank with gas, XML often flows from pump to
station. When you configure your digital camera, on some models you do
so via XML-based graphical controls. When you plug it into a computer,
the camera and the operating system communicate with each other in XML.
When you download digital music, the software you use to organize it is
likely to store information about songs as XML. And when you explore
the planet Mars, XML goes with you... W3C would like to extend
congratulations to the participants of the XML Working Group that created
the standard: Jon Bosak, Paula Angerstein, Tim Bray (co-Editor), James
Clark, Dan Connolly, Steve DeRose, Dave Hollander, Eliot Kimber, Tom
Magliery, Eve Maler, Murray Maloney, Makoto Murata, Joel Nava, Conleth
O'Connell, Jean Paoli (co-Editor), Peter Sharpe, C. M. Sperberg-McQueen
(co-Editor), and John Tigue.