| <!-- |
| Licensed to the Apache Software Foundation (ASF) under one |
| or more contributor license agreements. See the NOTICE file |
| distributed with this work for additional information |
| regarding copyright ownership. The ASF licenses this file |
| to you under the Apache License, Version 2.0 (the |
| "License"); you may not use this file except in compliance |
| with the License. You may obtain a copy of the License at |
| |
| http://www.apache.org/licenses/LICENSE-2.0 |
| |
| Unless required by applicable law or agreed to in writing, |
| software distributed under the License is distributed on an |
| "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY |
| KIND, either express or implied. See the License for the |
| specific language governing permissions and limitations |
| under the License. |
| --> |
| |
| <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> |
| |
| <HTML> |
| <HEAD> |
| <META CONTENT="text/html; charset=iso-8859-1" HTTP-EQUIV="Content-Type"> |
| <META CONTENT="text/css" HTTP-EQUIV="Content-Style-Type"> |
| <STYLE MEDIA="all" TYPE="text/css"> |
| @import url("doc/css/maven-base.css"); |
| @import url("doc/css/maven-theme.css"); |
| </STYLE> |
| |
| <LINK HREF="doc/css/maven-theme.css" MEDIA="print" REL="stylesheet" |
| TYPE="text/css"> |
| <TITLE>Tuscany SCA Native - Getting Started</TITLE> |
| </HEAD> |
| |
| <BODY> |
| <DIV ID="bodyColumn"> |
| <DIV ID="contentBox"> |
| <DIV CLASS="section"> |
| <H1>Tuscany - Getting Started - SCA Native Milestone release 3</H1> |
| |
| <P>Tuscany SCA Native provides a runtime implementation for the Service Component |
| Architecture 0.96 Assembly specification and the 0.95 C++ Client & Implementation specification |
| (found <A HREF="http://www.osoa.org/display/Main/Service+Component+Architecture+Specifications">here</A>), |
| written in C++ and currently supports C++, Python and Ruby |
| component implementation types. This page describes what is needed to install and run Tuscany |
| SCA Native.<BR/>If you haven't already done so, the first |
| step is to download the SCA Native Milestone release 3 of Apache Tuscany from our |
| <A HREF="http://incubator.apache.org/tuscany/downloads.html" target='_blank'>download page</A>.<BR/> |
| </P> |
| </DIV> |
| |
| <DIV CLASS="section"> |
| <H2>Contents</H2> |
| <OL> |
| <LI><A HREF="#requirements">System Requirements</A></LI> |
| <LI><A HREF="#install">Installing Tuscany SCA..</A> |
| <UL> |
| <LI><A HREF="#linuxsrc">..from the source release on Linux or Mac OS X</A></LI> |
| <LI><A HREF="#winbin">..from the binary release on Windows</A></LI> |
| <LI><A HREF="#winsrc">..from the source release on Windows</A></LI> |
| </UL></LI> |
| <LI><A HREF="#extensions">Tuscany SCA Extensions</A></LI> |
| <LI><A HREF="#samples">Samples</A></LI> |
| <LI><A HREF="#userguide">User Guide Documents</A></LI> |
| <LI><A HREF="#help">Getting Help</A></LI> |
| </OL> |
| </DIV> |
| |
| |
| <DIV CLASS="section"> |
| <A NAME="requirements"><H2>System Requirements</H2></A> |
| |
| <P>In order to run Tuscany SCA there are some |
| minimum requirements:</P> |
| <TABLE CLASS="bodyTable"> |
| |
| <TBODY> |
| <TR CLASS="a"> |
| <TD><B>Software</B></TD> |
| <TD><B>Notes and Download Link</B></TD> |
| </TR> |
| <TR CLASS="b"> |
| <TD>Operating systems: |
| <UL> |
| |
| <LI>Windows XP SP2</LI> |
| <LI>Linux</LI> |
| <li>Mac OS X</li> |
| </UL> |
| </TD> |
| <TD> |
| Linux distributions tested on include Redhat Enterprise Linux v3, Redhat Enterprise Linux v4, |
| Ubuntu 6.06 LTS and Fedora Core 5. |
| </TD> |
| </TR> |
| <TR CLASS="a"> |
| <TD>Tuscany SDO for C++ Milestone Release 3</TD> |
| |
| <TD> |
| <A HREF="http://incubator.apache.org/tuscany/download.html" |
| TARGET="_blank">http://incubator.apache.org/tuscany/download.html</A><BR/> |
| Please download and follow the installation instructions |
| </TD> |
| </TR> |
| <TR CLASS="b"> |
| <TD><STRONG>Optional:</STRONG> Java SDK 1.4 or later</TD> |
| |
| <TD> |
| <A HREF="http://java.sun.com/javase/downloads/index.jsp" |
| TARGET="_blank">http://java.sun.com/javase/downloads/index.jsp</A><BR/> |
| This is required for building and running the SCAGEN code generation tool, which is used |
| when developing Tuscany SCA C++ components. This is not required when only developing |
| Python or Ruby SCA components. |
| </TD> |
| </TR> |
| <TR CLASS="a"> |
| <TD><STRONG>Optional:</STRONG> Apache Ant 1.6 or later</TD> |
| <TD> |
| <A HREF="http://ant.apache.org" |
| TARGET="_blank">http://ant.apache.org</A><BR/> |
| This is required for building the SCAGEN code generation tool, which is used |
| when developing Tuscany SCA C++ components. This is only required when building |
| the C++ extension from a source distribution of Tuscany SCA Native. |
| </TD> |
| </TR> |
| <TR CLASS="b"> |
| <TD><STRONG>Optional:</STRONG> Python version 2.5</TD> |
| <TD> |
| <A HREF="http://www.python.org/download/" |
| TARGET="_blank">http://www.python.org/download/</A><BR/> |
| This is required for building or running the Tuscany SCA Python extension |
| (see <A HREF="#extensions">below</A>). |
| Please download and follow the installation instructions. |
| </TD> |
| </TR> |
| <TR CLASS="a"> |
| <TD><STRONG>Optional:</STRONG> Ruby version 1.8.x</TD> |
| <TD> |
| <A HREF="http://www.ruby-lang.org" |
| TARGET="_blank">http://www.ruby-lang.org</A><BR/> |
| This is required for building or running the Tuscany SCA Ruby extension |
| (see <A HREF="#extensions">below</A>). |
| Please download and follow the installation instructions. You should |
| be able to build the Tuscany SCA Ruby Extension with other versions of Ruby. |
| </TD> |
| </TR> |
| <!-- <TR CLASS="b"> --> |
| <!-- <TD><STRONG>Optional:</STRONG> PHP version 5.2</TD> --> |
| <!-- <TD> --> |
| <!-- <A HREF="http://www.php.net" --> |
| <!-- TARGET="_blank">http://www.php.net</A><BR/> --> |
| <!-- This is required for building and running the Tuscany SCA PHP extension --> |
| <!-- (see <A HREF="#extensions">below</A>). --> |
| <!-- Please download and follow the installation instructions. --> |
| <!-- </TD> --> |
| <!-- </TR> --> |
| <!-- <TR CLASS="a"> --> |
| <!-- <TD><STRONG>Optional:</STRONG> PHP PECL SCA_SDO package version 1.1.2</TD> --> |
| <!-- <TD> --> |
| <!-- <A HREF="http://pecl.php.net/package/SCA_SDO" --> |
| <!-- TARGET="_blank">http://pecl.php.net/package/SCA_SDO</A><BR/> --> |
| <!-- This is required for running the Tuscany SCA PHP extension --> |
| <!-- (see <A HREF="#extensions">below</A>). --> |
| <!-- Please download and follow the installation instructions. --> |
| <!-- </TD> --> |
| <!-- </TR> --> |
| <TR CLASS="b"> |
| <TD><STRONG>Optional:</STRONG> Axis2/C Release 0.96</TD> |
| <TD> |
| <A HREF="http://ws.apache.org/axis2/c/download.cgi" |
| TARGET="_blank">http://ws.apache.org/axis2/c/download.cgi</A><BR/> |
| This is required for building and running the Tuscany SCA Web Service extension |
| (see <A HREF="#extensions">below</A>). |
| Please download and follow the installation instructions. Ensure you can run the Axis2/C samples |
| </TD> |
| </TR> |
| <TR CLASS="a"> |
| <TD><STRONG>Optional:</STRONG> Apache HTTPD version 2.2</TD> |
| <TD> |
| <A HREF="http://httpd.apache.org" |
| TARGET="_blank">http://httpd.apache.org</A><BR/> |
| This is required for building and running the Tuscany SCA REST extension |
| (see <A HREF="#extensions">below</A>). It is also required for some |
| of the Web Services samples. |
| Please download and follow the installation instructions. |
| </TD> |
| </TR> |
| <TR CLASS="b"> |
| <TD><STRONG>Optional:</STRONG> libcurl version 7.15 or higher</TD> |
| |
| <TD> |
| <A HREF="http://curl.haxx.se/download.html" |
| TARGET="_blank">http://curl.haxx.se/download.html</A><BR/> |
| This is required for building and running the Tuscany SCA REST extension |
| (see <A HREF="#extensions">below</A>). |
| Please download and follow the installation instructions. |
| </TD> |
| </TR> |
| </TBODY> |
| </TABLE> |
| </DIV> |
| <DIV CLASS="section"> |
| <A NAME="install"><H2>Installing Tuscany SCA Native</H2></A> |
| <A NAME="linuxsrc"><H3>Getting Tuscany SCA Native working with the source release on Linux or Mac OS X</H3></A> |
| <OL> |
| <LI>Extract the source tar package to a folder <tuscany_sca_install_dir></LI> |
| <LI>The following environment variables are required: |
| <UL> |
| <LI>TUSCANY_SDOCPP=<path to installed Tuscany SDO> |
| </UL></LI> |
| <LI>See the <A HREF="#extensions">extensions documentation</A> for other environment variables and |
| configration flags that are required to build specific extensions.</LI> |
| <LI>To build only the Tuscany SCA Native kernel libraries use the following command sequence: |
| <UL> |
| <LI>./configure --prefix=<tuscany_sca_install_dir>/deploy --enable-static=no --enable-cpp=no --enable-wsbinding=no</LI> |
| <LI>make</LI> |
| <LI>make install</LI> |
| </UL> |
| NOTE: If you don't provide a --prefix configure option, it will by default install into |
| /usr/local/tuscany/sca. Use ./configure --help to see all the available |
| options: |
| <xmp> --enable-cpp build C++ component type extension [default=yes] |
| --enable-wsbinding build Web Service binding extension [default=no] |
| --enable-scabinding build SCA default binding extension [default=no] |
| --enable-restbinding build REST binding extension [default=no] |
| --enable-python build Python component type extension [default=no] |
| --enable-ruby build Ruby component type extension [default=no]</xmp> |
| A script, <b>build_scanative.sh</b>, is provided that will build and install SCA Native. This script will install to the |
| location specified by the TUSCANY_SCACPP environment variable if set or into a deploy directory at <tuscany_sca_install_dir>/deploy. |
| This script will check the environment variable settings and will build the extensions whose dependencies are set. For example if RUBY_LIB and |
| RUBY_HOME are set configure will be called with the --enable-ruby=yes option. |
| </LI> |
| <LI>Set the TUSCANY_SCACPP environment variable to point to the <tuscany_sca_install_dir>/deploy |
| directory that contains the built Tuscany SCA distribution</LI> |
| </OL> |
| |
| <A NAME="winbin"><H3>Getting Tuscany SCA Native working with the binary release on Windows</H3></A> |
| <OL> |
| <LI>Unzip the supplied zip file to a folder</LI> |
| <LI>Set the TUSCANY_SCACPP environment variable to point to the directory that was just unzipped</LI> |
| <LI>Add the <tuscany_sca_install_dir>\bin directory to the PATH environment variable</LI> |
| </OL> |
| <A NAME="winsrc"><H3>Getting Tuscany SCA Native working with the source release on Windows</H3></A> |
| <OL> |
| <LI>Unzip the supplied source zip file</LI> |
| <LI>The following environment variables are required: |
| <UL> |
| <LI>TUSCANY_SDOCPP=<path to installed Tuscany SDO></LI> |
| </UL></LI> |
| <LI>You must have set up the environment for Microsoft Visual C++ tools. The build command |
| will call vcvars32 to set the environment. Ensure the directory containing this is on your path. |
| This will be where you installed the compiler.</LI> |
| <LI>See the <A HREF="#extensions">extensions documentation</A> for other environment variables |
| that are required to build specific extensions.</LI> |
| <LI>Build the source: |
| <UL> |
| <LI>cd <to where you unzipped the source></LI> |
| <LI>build [Debug]</LI> |
| </UL> |
| This will build all the projects and put the required output into the 'deploy' directory<BR/><BR/> |
| Alternatively, open the VS Express workspace at <tuscany_sca_install_dir>\VSExpress\tuscany_sca\tuscany_sca.sln</LI> |
| <LI>Set the TUSCANY_SCACPP environment variable to point to the 'deploy' directory that was just created</LI> |
| </OL> |
| </DIV> |
| |
| <DIV CLASS="section"> |
| <A NAME="extensions"><H2>Tuscany SCA Extensions</H2></A> |
| <P>Tuscany SCA is composed of two distinct areas: the kernel and extensions. The kernel provides the |
| implementation of the |
| <A HREF="http://www.osoa.org/display/Main/Service+Component+Architecture+Specifications">Service |
| Component Architecture Assembly Model specification</A>, reading composite files, loading the |
| appropriate extensions and invoking components via references and services during runtime. The |
| extensions provide the functionality required to call a component implementation (e.g. a C++ class |
| compiled into a dll) or invoke a binding (e.g. make a Web Services call). |
| </P> |
| <P>The table below details the extensions that are included with Tuscany SCA Native Milestone |
| Release 3. |
| </P> |
| <TABLE CLASS="bodyTable"> |
| <TBODY> |
| <TR CLASS="a"> |
| <TD><STRONG>Extension</STRONG></TD> |
| <TD><STRONG>Details</STRONG></TD> |
| </TR> |
| <TR CLASS="b"> |
| <TD STYLE="vertical-align: top; white-space: nowrap;"> |
| <A HREF="doc/CppExtension.html">C++</A> |
| </TD> |
| <TD>Provides the SCA C++ client API and enables C++ component implementations |
| and interfaces. See the <A HREF="doc/CppExtension.html">C++ extension documentation</A>, the |
| <A HREF="http://www.osoa.org/display/Main/Service+Component+Architecture+Specifications">SCA |
| C++ Client and Implementation specification</A> for more details about the SCA C++ |
| Programming Model and the <A HREF="doc/CppExtension.html#components">Creating C++ SCA Components</A> |
| document for a step-by-step example.<BR/> |
| <STRONG>Requires:</STRONG> |
| <UL> |
| <LI><A HREF="http://java.sun.com/javase/downloads/index.jsp" TARGET="_blank">Java SDK 1.4 or later</A> |
| - for building and running the SCAGEN code generation tool, which is used |
| when developing Tuscany SCA C++ components.</LI> |
| <LI><A HREF="http://ant.apache.org" TARGET="_blank">Apache Ant 1.6 or later</A> |
| - for building the SCAGEN code generation tool. This is only required when building |
| the C++ extension from a source distribution of Tuscany SCA Native.</LI> |
| </UL> |
| </TD> |
| </TR> |
| <TR CLASS="a"> |
| <TD STYLE="vertical-align: top; white-space: nowrap;"> |
| <A HREF="doc/PythonExtension.html">Python</A> |
| </TD> |
| <TD>Provides a Python SCA client API and enables Python component implementations. |
| See the <A HREF="doc/PythonExtension.html">Python extension documentation</A> for |
| more details.<BR/> |
| <STRONG>Requires:</STRONG> |
| <UL> |
| <LI><A HREF="http://www.python.org/download/" TARGET="_blank">Python version 2.5</A> |
| - for building and running the extension.</LI> |
| </UL> |
| </TD> |
| </TR> |
| <TR CLASS="b"> |
| <TD STYLE="vertical-align: top; white-space: nowrap;"> |
| <A HREF="doc/RubyExtension.html">Ruby</A> |
| </TD> |
| <TD>Provides a Ruby SCA client API and enables Ruby component implementations. |
| See the <A HREF="doc/RubyExtension.html">Ruby extension documentation</A> for |
| more details.<BR/> |
| <STRONG>Requires:</STRONG> |
| <UL> |
| <LI><A HREF="http://www.ruby-lang.org" TARGET="_blank">Ruby version 1.8.x</A> |
| - for building and running the extension.</LI> |
| </UL> |
| </TD> |
| </TR> |
| <!-- <TR CLASS="a"> --> |
| <!-- <TD STYLE="vertical-align: top; white-space: nowrap;"> --> |
| <!-- <A HREF="doc/PHPExtension.html">PHP</A> --> |
| <!-- </TD> --> |
| <!-- <TD>Provides a PHP SCA client API and enables PHP component implementations by integrating --> |
| <!-- with the <A HREF="http://pecl.php.net/package/SCA_SDO">PECL SCA_SDO package</A>. --> |
| <!-- See the <A HREF="doc/PHPExtension.html">PHP extension documentation</A> for --> |
| <!-- more details. <BR/> --> |
| <!-- <STRONG>Requires:</STRONG> --> |
| <!-- <UL> --> |
| <!-- <LI><A HREF="http://www.php.net" TARGET="_blank">PHP version 5.2</A> --> |
| <!-- - for building and running the extension.</LI> --> |
| <!-- <LI><A HREF="http://pecl.php.net/package/SCA_SDO" TARGET="_blank">PECL SCA_SDO package version 1.1.2</A> --> |
| <!-- - for running the extension.</LI> --> |
| <!-- </UL> --> |
| <!-- </TD> --> |
| <!-- </TR> --> |
| <TR CLASS="a"> |
| <TD STYLE="vertical-align: top; white-space: nowrap;"> |
| <A HREF="doc/Axis2CWSExtension.html">Axis2/C Web Services</A> |
| </TD> |
| <TD>Provides the Web Service bindings enabling Tuscany to call SCA references via |
| Web Services or expose SCA services as Web Services. See the |
| <A HREF="http://www.osoa.org/display/Main/Service+Component+Architecture+Specifications">SCA |
| Web Service bindings specification</A> for more details about SCA Web Service support |
| and the <A HREF="doc/Axis2CWSExtension.html#service">Enabling Web Service |
| access to SCA Components</A> document for a step-by-step example.<BR/> |
| <STRONG>Requires:</STRONG> |
| <UL> |
| <LI><A HREF="http://ws.apache.org/axis2/c/download.cgi" TARGET="_blank">Axis2/C Release 0.96</A> |
| - for building and running the extension.</LI> |
| </UL> |
| </TD> |
| </TR> |
| <TR CLASS="b"> |
| <TD STYLE="vertical-align: top; white-space: nowrap;"> |
| <A HREF="doc/RESTExtension.html">REST</A> |
| </TD> |
| <TD>Provides the REST bindings enabling Tuscany to call SCA references via |
| REST HTTP calls or expose SCA services as REST Services. See the |
| <A HREF="doc/RESTExtension.html">REST extension documentation</A> for more details.<BR/> |
| <STRONG>Requires:</STRONG> |
| <UL> |
| <LI><A HREF="http://httpd.apache.org" TARGET="_blank">Apache HTTPD version 2.2</A> |
| - for building and running the REST Service extension</LI> |
| <LI><A HREF="http://curl.haxx.se/download.html" TARGET="_blank">libcurl version 7.15 or higher</A> |
| - for building and running the REST Reference extension</LI> |
| </UL> |
| </TD> |
| </TR> |
| <TR CLASS="a"> |
| <TD STYLE="vertical-align: top; white-space: nowrap;"> |
| <A HREF="doc/SCAExtension.html">SCA</A> |
| </TD> |
| <TD>Provides a default SCA binding enabling Tuscany to determine the appropriate technology |
| to use to provide services or invoke references. Currently this defaults to using the |
| Axis2/C Web Services binding. See the |
| <A HREF="doc/SCAExtension.html">SCA extension documentation</A> for more details.<BR/> |
| <STRONG>Requires:</STRONG> |
| <UL> |
| <LI><A HREF="doc/Axis2CWSExtension.html" TARGET="_blank">Axis2/C Web Services extension</A> |
| - for building and running the extension.</LI> |
| </UL> |
| </TD> |
| </TR> |
| </TBODY> |
| </TABLE> |
| </DIV> |
| |
| <DIV CLASS="section"> |
| <A NAME="samples"><H2>Samples</H2></A> |
| <TABLE CLASS="bodyTable"> |
| <TBODY> |
| <TR CLASS="a"> |
| <TD STYLE="vertical-align: top; white-space: nowrap;">SCA Technology samples |
| </TD> |
| <TD>Simple samples that emphasize how to to use |
| Service Component Architecture technology. Follow the |
| instructions on the <A HREF="samples/GettingStarted.html">samples Getting Started</A> |
| page to build and run the Tuscany SCA samples |
| </TD> |
| </TR> |
| </TBODY> |
| </TABLE> |
| <BR> |
| </DIV> |
| <DIV CLASS="section"> |
| <A NAME="userguide"><H2>User Guide Documents</H2></A> |
| <TABLE CLASS="bodyTable"> |
| <TBODY> |
| <TR CLASS="a"> |
| <TD STYLE="vertical-align: top; white-space: nowrap;"><A HREF="doc/CPPExtension.html#components">Creating and building a Tuscany SCA C++ component</A> |
| </TD> |
| <TD>A document that describes how to create, build and run a Tuscany SCA C++ component. |
| </TD> |
| </TR> |
| <TR CLASS="a"> |
| <TD STYLE="vertical-align: top; white-space: nowrap;"><A HREF="doc/Axis2CWSExtension.html#service">Enabling Web Service access to your Tuscany SCA component</A> |
| </TD> |
| <TD>A document that describes how to expose a Tuscany SCA C++ component as a Web Service via the Tuscany Axis2/C Web Service support. |
| </TD> |
| </TR> |
| <TR CLASS="a"> |
| <TD STYLE="vertical-align: top; white-space: nowrap;"><A HREF="doc/PythonExtension.html#pm">The Tuscany SCA Python Programming Model</A> |
| </TD> |
| <TD>A document that describes how to create and run a Tuscany SCA Python component. |
| </TD> |
| </TR> |
| <TR CLASS="a"> |
| <TD STYLE="vertical-align: top; white-space: nowrap;"><A HREF="doc/RubyExtension.html#pm">The Tuscany SCA Ruby Programming Model</A> |
| </TD> |
| <TD>A document that describes how to create and run a Tuscany SCA Ruby component. |
| </TD> |
| </TR> |
| </TBODY> |
| </TABLE> |
| <BR> |
| </DIV> |
| <DIV CLASS="section"> |
| <A NAME="help"><H2>Getting Help</H2></A> |
| |
| <P>The first place to look is at the Tuscany FAQ at |
| <A HREF="http://cwiki.apache.org/TUSCANY/sca-cpp.html" |
| TARGET="_blank"http://cwiki.apache.org/TUSCANY/sca-cpp.html</A> </P> |
| |
| <P>Any problem with this release can be reported to the Tuscany |
| <A HREF="http://cwiki.apache.org/TUSCANY/mailing-lists.html" |
| TARGET="_blank">mailing lists</A> or create a JIRA issue at <A HREF="http://issues.apache.org/jira/browse/Tuscany" |
| TARGET="_blank">http://issues.apache.org/jira/browse/Tuscany</A>.</P> |
| |
| |
| <P> </P> |
| |
| <P> </P> |
| |
| <P> </P> |
| <TABLE CLASS="bodyTable"> |
| <TBODY> |
| <TR CLASS="a"> |
| <TD> |
| |
| <P>Thank you for your interest in Tuscany.</P> <STRONG><EM>-The |
| Tuscany Development Team</EM></STRONG> |
| </TD> |
| </TR> |
| </TBODY> |
| </TABLE> |
| </DIV> |
| </DIV> |
| </DIV> |
| </BODY> |
| |
| </HTML> |