summaryrefslogtreecommitdiffstats
path: root/sca-cpp/branches/cpp-contrib/contrib/samples/CppBigBank/README
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--sca-cpp/branches/cpp-contrib/contrib/samples/CppBigBank/README26
-rw-r--r--sca-cpp/branches/cpp-contrib/contrib/samples/CppBigBank/README.html389
2 files changed, 415 insertions, 0 deletions
diff --git a/sca-cpp/branches/cpp-contrib/contrib/samples/CppBigBank/README b/sca-cpp/branches/cpp-contrib/contrib/samples/CppBigBank/README
new file mode 100644
index 0000000000..341db17b63
--- /dev/null
+++ b/sca-cpp/branches/cpp-contrib/contrib/samples/CppBigBank/README
@@ -0,0 +1,26 @@
+Tuscany SCA for C++ Samples - C++ BigBank Sample
+===============================================
+
+This sample implements the "Simplified BigBank" scenario. A whitepaper
+describing the scenario based on the SCA 0.9 Assembly specification can be
+found here. This sample uses multiple C++ components, calls out to an
+external Web Service via a reference, exposes the service as a Web Service
+and also provides a PHP based client.
+
+There are three sub projects in this workspace:
+ - bigbank.account
+ This contains the source code and SCDL artifacts for the SCA BigBank
+ composite implementing the account services.
+
+ - bigbank.client
+ A sample client which does a local call to the BigBank service.
+
+ - bigbank.phpclient
+ A sample PHP client which calls the BigBank Web service and then
+ deconstructs and displays the result by using the SDO for PHP extension.
+
+Additionally, there is the bigbank.app.composite file. This describes the
+configuration of the SCA BigBank composite deployed to the SCA runtime.
+
+See the README.html file for instructions to build and run this sample
+
diff --git a/sca-cpp/branches/cpp-contrib/contrib/samples/CppBigBank/README.html b/sca-cpp/branches/cpp-contrib/contrib/samples/CppBigBank/README.html
new file mode 100644
index 0000000000..4720dd7b57
--- /dev/null
+++ b/sca-cpp/branches/cpp-contrib/contrib/samples/CppBigBank/README.html
@@ -0,0 +1,389 @@
+
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<!--
+ 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.
+-->
+
+<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 Samples - C++ BigBank Sample</TITLE>
+</HEAD>
+
+<BODY>
+<DIV ID="bodyColumn">
+ <DIV ID="contentBox">
+ <DIV CLASS="section">
+ <H1>Tuscany SCA Native Samples - C++ BigBank Sample</H1>
+
+ <P>This sample implements the "Simplified BigBank" scenario. A whitepaper describing
+ the scenario based on the SCA 0.9 Assembly specification can be found
+ <A HREF="http://www.osoa.org/display/Main/SCA+-+Previously+Published+Specifications">here</A>.
+ This sample uses multiple C++ components, calls out to an external Web Service via a reference,
+ exposes the service as a Web Service and also provides a PHP based client.
+ </P>
+ <P>There are three sub projects in this workspace:</P>
+ <UL>
+ <LI>bigbank.account<BR/>
+ This contains the source code and SCDL artifacts for the SCA BigBank
+ composite implementing the account services.
+ </LI>
+ <LI>bigbank.client<BR/>
+ A sample client which does a local call to the BigBank service.
+ </LI>
+ <LI>bigbank.phpclient<BR/>
+ A sample PHP client which calls the BigBank Web service and then deconstructs
+ and displays the result by using the
+ <A HREF="http://www.osoa.org/display/PHP/SOA+PHP+Homepage">SDO for PHP extension</A>.
+ <P>This is a pair of very simple PHP scripts to demonstrate how the Accounts service
+ that the C++ Big Bank sample exposes can be used from within the PHP scripting
+ language.
+ </P>
+ <P>bigwelcome.php<BR/>
+ A bootstrap script that shows a form and allows the user to press a button
+ in order to invoke the bigaccount.php script
+ </P>
+ <P>bigaccount.php<BR/>
+ Makes a call to a locally installed BigBank Accounts service. The script
+ shows how to use PHP SDO and SOAP extensions to construct the call
+ and interpret the result.
+ </P>
+ </LI>
+ </UL>
+ <P>Additionally, there is the bigbank.app.composite file. This describes the
+ configuration of the SCA BigBank composite deployed to the SCA runtime.
+ </P>
+
+ </DIV>
+
+ <DIV CLASS="section">
+ <H2>Contents</H2>
+ <OL>
+ <LI><A HREF="#linuxbld">Building the C++ samples on Linux and Mac OS X</A></LI>
+ <LI><A HREF="#linuxrun">Running the C++ BigBank sample on Linux and Mac OS X:</A></LI>
+ <UL>
+ <LI><A HREF="#linuxbasic">Running the basic client</A></LI>
+ <LI><A HREF="#linuxphp">Installing and running the PHP web client</A></LI>
+ </UL>
+ <LI><A HREF="#winbld">Building the C++ BigBank sample on Windows</A></LI>
+ <LI><A HREF="#winrun">Running the C++ BigBank sample on Windows:</A></LI>
+ <UL>
+ <LI><A HREF="#winbasic">Running the basic client</A></LI>
+ <LI><A HREF="#winphp">Installing and running the PHP web client</A></LI>
+ </UL>
+ <LI><A HREF="#help">Getting help</A></LI>
+ </OL>
+ </DIV>
+
+
+ <DIV CLASS="section">
+ <A NAME="linuxbld"><H2>Building the C++ samples on Linux and Mac OS X</H2></A>
+ <P>If using the binary distribution the samples are built and installed in
+ &lt;tuscany_sca_install_dir&gt;/samples - go directly to <A HREF="#linuxrun">Running the samples on Linux and Mac OS X</A>.</P>
+ <OL>
+ <LI>The following environment variables are required:
+ <UL>
+ <LI>TUSCANY_SCACPP=&lt;path to installed Tuscany SCA&gt;
+ <LI>TUSCANY_SDOCPP=&lt;path to installed Tuscany SDO&gt;
+ </UL></LI>
+ </LI>
+ <LI>Build the C++ samples with the following command sequence:
+ <UL>
+ <LI>cd &lt;tuscany_sca_install_dir&gt;/samples</LI>
+ <LI>./configure --prefix=$TUSCANY_SCACPP/samples --enable-static=no</LI>
+ <LI>make</LI>
+ <LI>make install</LI>
+ </UL>
+ NOTE: If you don't provide the --prefix configure option, it will by default install into
+ /usr/local/tuscany/sca/samples/CppBigBank</LI>
+ </OL>
+ </DIV>
+
+ <DIV CLASS="section">
+ <A NAME="linuxrun"><H2>Running the C++ BigBank sample on Linux and Mac OS X</H2></A>
+ <A NAME="linuxbasic"><H3>BigBank with basic client</H3></A>
+ <OL>
+ <LI>The C++ BigBank sample requires the following extensions:
+ <UL>
+ <LI><A HREF="../../doc/CppExtension.html">C++ Extension</A></LI>
+ <LI><A HREF="../../doc/Axis2CWSExtension.html">Axis2/C Web Services Extension</A></LI>
+ </UL>
+ Please follow the documentation to ensure you have these extensions built and installed
+ on your system
+ </LI>
+ <LI>The following environment variables are required:
+ <UL>
+ <LI>TUSCANY_SCACPP=&lt;path to installed Tuscany SCA&gt;</LI>
+ <LI>TUSCANY_SDOCPP=&lt;path to installed Tuscany SDO&gt;</LI>
+ <LI>AXIS2C_HOME=&lt;path to Axis2/C version 0.96&gt;</LI>
+ </UL>
+ </LI>
+ <LI>Run the sample with the following commands:
+ <UL>
+ <LI>cd &lt;tuscany_sca_install_dir&gt;/samples/CppBigBank/deploy/bigbank.client</LI>
+ <LI>./runclient.sh</LI>
+ </UL>
+ </LI>
+ </OL>
+ <A NAME="linuxphp"><H3>BigBank with PHP web client</H3></A>
+ <OL>
+ <LI>The C++ BigBank sample requires the following extensions:
+ <UL>
+ <LI><A HREF="../../doc/CppExtension.html">C++ Extension</A></LI>
+ <LI><A HREF="../../doc/Axis2CWSExtension.html">Axis2/C Web Services Extension</A></LI>
+ </UL>
+ Please follow the documentation to ensure you have these extensions built and installed
+ on your system
+ </LI>
+ <LI>Ensure you have enabled Axis2/C to run Tuscany SCA services. Follow the instructions
+ found <A HREF="../../doc/Axis2CWSExtension.html#deploy">here</A>.
+ </LI>
+ <LI>Start the Axis2/C simple http server:
+ <OL>
+ <LI>The following environment variables are required:
+ <UL>
+ <LI>TUSCANY_SCACPP=&lt;path to installed Tuscany SCA&gt;</LI>
+ <LI>TUSCANY_SDOCPP=&lt;path to installed Tuscany SDO&gt;</LI>
+ <LI>AXIS2C_HOME=&lt;path to Axis2/C version 0.96&gt;</LI>
+ </UL>
+ </LI>
+ <LI>cd &lt;tuscany_sca_install_dir&gt;/samples/CppBigBank/deploy/bin
+ </LI>
+ <LI>./runwsserver.sh</LI>
+ </OL>
+ </LI>
+ <LI>To run the php scripts requires some configuration and setup of a php runtime with
+ the SDO and SimpleXML extensions enabled. The bits you will need are:
+ <UL>
+ <LI><A HREF="http://httpd.apache.org/">Apache web server</A> (tested with version 2.0.55)</LI>
+ <LI><A HREF="http://www.php.net/downloads.php">PHP 5</A> (tested with version 5.1.6)</LI>
+ <LI><A HREF="http://pecl.php.net/package/sdo">PHP SDO</A> (tested with version 1.0.3)</LI>
+ </UL>
+ <P>Follow
+ <A HREF="http://livedocs.phpdoc.info/index.php?l=en&q=ref.sdo">these instructions</A> to
+ install SDO and DAS.
+ </P>
+ </LI>
+ <LI>You need to configure Apache to run PHP of course. This is well documented but this
+ is what to put at the end of httpd.conf:
+ <PRE># PHP5 Support
+LoadModule php5_module "/home/php/php5.1.6/php5apache2.so"
+AddType application/x-httpd-php .php
+
+# configure the path to php.ini
+PHPIniDir "/home/php/php5.1.6"</PRE>
+ </LI>
+ <LI>Copy the &lt;tuscany_sca_install_dir&gt;/samples/CppBigBank/bigbank.phpwsclient
+ directory to your Apache document root directory (by default this is named 'htdocs').
+ </LI>
+ <LI>Finally, start your Apache web server.
+ </LI>
+ <LI>Run the PHP web client by pointing your browser at
+ <A HREF="http://localhost/bigbank.phpwsclient/welcome.php">http://localhost/bigbank.phpwsclient/welcome.php</A>.
+ You should now be able to press the "GetAccount" button and see the values
+ returned from the BigBank SCA application.
+ </LI>
+
+ </OL>
+ </DIV>
+
+ <DIV CLASS="section">
+ <A NAME="winbld"><H2>Building the C++ BigBank sample on Windows</H2></A>
+ <P>If using the binary distribution the samples are built and installed in
+ &lt;tuscany_sca_install_dir&gt;\samples - go directly to <A HREF="#winrun">Running the samples on Windows</A>.</P>
+ <OL>
+ <LI>The following environment variables are required:
+ <UL>
+ <LI>TUSCANY_SCACPP=&lt;path to installed Tuscany SCA&gt;
+ <LI>TUSCANY_SDOCPP=&lt;path to installed Tuscany SDO&gt;
+ </UL></LI>
+ </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>Build the source, either via the Visual Studio Express projects under
+ &lt;tuscany_sca_install_dir&gt;\samples\CppBigBank\VSExpress\CppBigBank.sln or via the command-line build file
+ found at &lt;tuscany_sca_install_dir&gt;\samples\CppBigBank\VSExpress\CppBigBank\build.bat
+ which will build and deploy the samples.
+ </LI>
+ </OL>
+ </DIV>
+
+ <DIV CLASS="section">
+ <A NAME="winrun"><H2>Running the C++ BigBank sample on Windows</H2></A>
+ <A NAME="winbasic"><H3>BigBank with basic client</H3></A>
+ <OL>
+ <LI>The C++ BigBank sample requires the following extensions:
+ <UL>
+ <LI><A HREF="../../doc/CppExtension.html">C++ Extension</A></LI>
+ <LI><A HREF="../../doc/Axis2CWSExtension.html">Axis2/C Web Services Extension</A></LI>
+ </UL>
+ Please follow the documentation to ensure you have these extensions built and installed
+ on your system
+ </LI>
+ <LI>The following environment variables are required:
+ <UL>
+ <LI>TUSCANY_SCACPP=&lt;path to installed Tuscany SCA&gt;</LI>
+ <LI>TUSCANY_SDOCPP=&lt;path to installed Tuscany SDO&gt;</LI>
+ </UL>
+ </LI>
+ <LI>Run the sample with the following commands:
+ <UL>
+ <LI>cd &lt;tuscany_sca_install_dir&gt;\samples\CppBigBank\deploy\bigbank.client</LI>
+ <LI>runclient.bat</LI>
+ </UL>
+ </LI>
+ </OL>
+ <A NAME="winphp"><H3>BigBank with PHP web client</H3></A>
+ <OL>
+ <LI>The C++ BigBank sample requires the following extensions:
+ <UL>
+ <LI><A HREF="../../doc/CppExtension.html">C++ Extension</A></LI>
+ <LI><A HREF="../../doc/Axis2CWSExtension.html">Axis2/C Web Services Extension</A></LI>
+ </UL>
+ Please follow the documentation to ensure you have these extensions built and installed
+ on your system
+ </LI>
+ <LI>Ensure you have enabled Axis2/C to run Tuscany SCA services. Follow the instructions
+ found <A HREF="../../doc/Axis2CWSExtension.html#deploy">here</A>.
+ </LI>
+ <LI>Start the Axis2/C simple http server:
+ <OL>
+ <LI>The following environment variables are required:
+ <UL>
+ <LI>TUSCANY_SCACPP=&lt;path to installed Tuscany SCA&gt;</LI>
+ <LI>TUSCANY_SDOCPP=&lt;path to installed Tuscany SDO&gt;</LI>
+ <LI>AXIS2C_HOME=&lt;path to Axis2/C version 0.96&gt;</LI>
+ </UL>
+ </LI>
+ <LI>cd &lt;tuscany_sca_install_dir&gt;\samples\CppBigBank\deploy\bigbank.account
+ </LI>
+ <LI>runwsserver.bat</LI>
+ </OL>
+ </LI>
+ <LI>To run the php scripts requires some configuration and setup of a php runtime with
+ the SDO and SimpleXML extensions enabled. The bits you will need are:
+ <UL>
+ <LI><A HREF="http://httpd.apache.org/">Apache web server</A> (tested with version 2.0.55)</LI>
+ <LI><A HREF="http://www.php.net/downloads.php">PHP 5</A> (tested with version 5.1.6)</LI>
+ <LI><A HREF="http://pecl.php.net/package/sdo">PHP SDO</A> (tested with version 1.0.3)</LI>
+ </UL>
+ <P>You can get Windows binary builds from
+ <A HREF="http://www.php.net/downloads.php">http://www.php.net/downloads.php</A>.
+ For SDO you need two dlls as follows:
+ </P>
+ <UL>
+ <LI><A HREF="http://pecl4win.php.net/ext.php/php_sdo.dll">php_sdo.dll</A></LI>
+ <LI><A HREF="http://pecl4win.php.net/ext.php/php_sdo_das_xml.dll">php_sdo_das_xml.dll</A></LI>
+ </UL>
+ <P>Copy these to the php5.1.6\ext dir ( php_soap.dll is already there) and add the
+ following to php.ini file (having already renamed php.ini-recommended to php.ini
+ of course)
+ <PRE>extension=php_soap.dll
+extension=php_sdo.dll
+extension=php_sdo_das_xml.dll</PRE>
+ I also changed the extension_dir directive to point to my extensions directory:
+ <PRE>extension_dir="C:\php5.1.6\ext"</PRE>
+ </P>
+ <P>Asking PHP to list what modules are active gives the following:
+ <PRE>C:\php5.1.6>php -m
+[PHP Modules]
+bcmath
+calendar
+com_dotnet
+ctype
+date
+dom
+ftp
+hash
+iconv
+libxml
+odbc
+pcre
+Reflection
+sdo
+sdo_das_xml
+session
+SimpleXML
+soap
+SPL
+standard
+tokenizer
+wddx
+xml
+xmlreader
+xmlwriter
+zlib
+
+[Zend Modules]</PRE>
+ Of particular relevance to these scripts note that soap, sdo and sdo_das_xml are active.
+ </P>
+ </LI>
+ <LI>You need to configure Apache to run PHP of course. This is well documented but this
+ is what to put at the end of httpd.conf:
+ <PRE># PHP5 Support
+LoadModule php5_module "C:\php5.1.6\php5apache2.dll"
+AddType application/x-httpd-php .php
+
+# configure the path to php.ini
+PHPIniDir "C:\php5.1.6"</PRE>
+ </LI>
+ <LI>Copy the &lt;tuscany_sca_install_dir&gt;\samples\CppBigBank\bigbank.phpwsclient
+ directory to your Apache document root directory (by default this is named 'htdocs').
+ </LI>
+ <LI>Finally, start your Apache web server.
+ </LI>
+ <LI>Run the PHP web client by pointing your browser at
+ <A HREF="http://localhost/bigbank.phpwsclient/welcome.php">http://localhost/bigbank.phpwsclient/welcome.php</A>.
+ You should now be able to press the "GetAccount" button and see the values
+ returned from the BigBank SCA application.
+ </LI>
+ </OL>
+ </DIV>
+
+
+
+ <DIV CLASS="section">
+ <A NAME="help"><H2>Getting Help</H2></A>
+
+ <P>The first place to look is at the Tuscany SCA FAQ at
+ <A HREF="http://cwiki.apache.org/confluence/display/TUSCANY/Tuscany+SCA+-+FAQ"
+ TARGET="_blank">http://cwiki.apache.org/confluence/display/TUSCANY/Tuscany+SCA+-+FAQ</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&nbsp;<A HREF="http://issues.apache.org/jira/browse/Tuscany"
+ TARGET="_blank">http://issues.apache.org/jira/browse/Tuscany</A>.</P>
+
+ </DIV>
+ </DIV>
+</DIV>
+</BODY>
+
+</HTML>
+