SCA Java definitions.xml (TUSCANY) created by Simon Laws
   http://cwiki.apache.org/confluence/display/TUSCANY/SCA+Java+definitions.xml

Content:
---------------------------------------------------------------------

h1. defnitions.xml

Section 1.8 describes the definitions.xml file as holding all of the artifacts 
that are useful for configuring an SCA domain but that are not specific to a 
particular composite or component. It goes on to say that "All of these 
artifacts within and SCA Domain are defined in a global, SCA Domain-wide file 
named definitions.xml". To achieve our extensibility goals we, in Tuscany, 
consider the SCA Domain wide definitions.xml file to be a logical concept that 
is constructed at runtime from the contents of definitions.xml files provided 
in contributions and in Tuscany extensions. 

Each definitions.xml file may contain.

* Intents
* Policy sets
* Predefined binding specifications
* Binding type descriptions
* Implementation type descriptions

h2. Complete Features

h3. Add Intents and Policy Sets with an Extension

An extension, such as the modules/policy-security extension relies on some 
policy sets and intents being available in the SCA Domain. The definitions.xml 
is the place to define these and hence if you look in this extension module you 
will find the following. 

{code}
<definitions xmlns="http://www.osoa.org/xmlns/sca/1.0";
                        targetNamespace="http://www.osoa.org/xmlns/sca/1.0";
                        xmlns:sca="http://www.osoa.org/xmlns/sca/1.0";
                        xmlns:tuscany="http://tuscany.apache.org/xmlns/sca/1.0";>

    <!-- POLICY SETS -->
    <policySet name="runAs" appliesTo="sca:implementation.java"/>
    <policySet name="allow" appliesTo="sca:implementation.java"/>
    <policySet name="rolesAllowed" appliesTo="sca:implementation.java"/>
    <policySet name="permitAll" appliesTo="sca:implementation.java"/>
    <policySet name="denyAll" appliesTo="sca:implementation.java"/>
    
        <!-- Policy Intents Defined by the SCA Runtime -->
        <intent name="authentication" 
                        constrains="sca:binding">
                <description>
                        Specifying this intent on references requires necessary 
authentication information
                        to be sent along with outgoing messages. Specifying 
this intent on service requires
                        incoming messages to be authenticated
                </description>
        </intent>
        
        <intent name="confidentiality" 
                        constrains="sca:binding">
                <description>
                        Specifying this intent requires message exchanged to be 
encrypted
                </description>
        </intent>
        
        <intent name="integrity" 
                        constrains="sca:binding">
                <description>
                        Specifying this intent requires message exchanged to be 
signed
                </description>
        </intent>
</definitions>
{code}

When this module is loaded at runtime the contents of this file are made 
generally available and hence in you composite you can use statements such at. 

{code}

<component name="CalculatorServiceComponent">
    <implementation.java class="calculator.CalculatorServiceImpl"/>
    <reference name="addService" >
        <interface.java interface="calculator.AddService" />        
        <binding.ws 
uri="http://localhost:8080/sample-calculator-ws-secure-webapp/AddServiceComponent";
                    requires="authentication" />        
    </reference>
</component>
{code}

h2. TODO Features

h3. 

---------------------------------------------------------------------
CONFLUENCE INFORMATION
This message is automatically generated by Confluence

Unsubscribe or edit your notifications preferences
   http://cwiki.apache.org/confluence/users/viewnotifications.action

If you think it was sent incorrectly contact one of the administrators
   http://cwiki.apache.org/confluence/administrators.action

If you want more information on Confluence, or have a bug to report see
   http://www.atlassian.com/software/confluence


Reply via email to