summaryrefslogtreecommitdiffstats
path: root/sca-cpp/branches/cpp-contrib/contrib/samples/HttpdBigBank
diff options
context:
space:
mode:
Diffstat (limited to 'sca-cpp/branches/cpp-contrib/contrib/samples/HttpdBigBank')
-rw-r--r--sca-cpp/branches/cpp-contrib/contrib/samples/HttpdBigBank/Makefile.am21
-rw-r--r--sca-cpp/branches/cpp-contrib/contrib/samples/HttpdBigBank/README37
-rw-r--r--sca-cpp/branches/cpp-contrib/contrib/samples/HttpdBigBank/README.html197
-rw-r--r--sca-cpp/branches/cpp-contrib/contrib/samples/HttpdBigBank/bigbank.account/AccountService.wsdl126
-rw-r--r--sca-cpp/branches/cpp-contrib/contrib/samples/HttpdBigBank/bigbank.account/AccountServiceImpl.rb83
-rw-r--r--sca-cpp/branches/cpp-contrib/contrib/samples/HttpdBigBank/bigbank.account/Makefile.am22
-rw-r--r--sca-cpp/branches/cpp-contrib/contrib/samples/HttpdBigBank/bigbank.account/StockQuoteServiceImpl.rb52
-rw-r--r--sca-cpp/branches/cpp-contrib/contrib/samples/HttpdBigBank/bigbank.account/StockQuoteTypes.xsd40
-rw-r--r--sca-cpp/branches/cpp-contrib/contrib/samples/HttpdBigBank/bigbank.account/StockQuoteWebService.wsdl165
-rw-r--r--sca-cpp/branches/cpp-contrib/contrib/samples/HttpdBigBank/bigbank.account/bigbank.account.composite51
-rw-r--r--sca-cpp/branches/cpp-contrib/contrib/samples/HttpdBigBank/bigbank.accountdata/AccountData.xsd45
-rw-r--r--sca-cpp/branches/cpp-contrib/contrib/samples/HttpdBigBank/bigbank.accountdata/AccountDataServiceImpl.rb72
-rw-r--r--sca-cpp/branches/cpp-contrib/contrib/samples/HttpdBigBank/bigbank.accountdata/Makefile.am22
-rw-r--r--sca-cpp/branches/cpp-contrib/contrib/samples/HttpdBigBank/bigbank.accountdata/bigbank.accountdata.composite33
-rw-r--r--sca-cpp/branches/cpp-contrib/contrib/samples/HttpdBigBank/bigbank.app.composite39
-rw-r--r--sca-cpp/branches/cpp-contrib/contrib/samples/HttpdBigBank/bigbank.wsclient/AccountService.wsdl126
-rw-r--r--sca-cpp/branches/cpp-contrib/contrib/samples/HttpdBigBank/bigbank.wsclient/AccountWSClient.rb40
-rw-r--r--sca-cpp/branches/cpp-contrib/contrib/samples/HttpdBigBank/bigbank.wsclient/Makefile.am6
-rw-r--r--sca-cpp/branches/cpp-contrib/contrib/samples/HttpdBigBank/bigbank.wsclient/bigbank.wsclient.composite29
-rw-r--r--sca-cpp/branches/cpp-contrib/contrib/samples/HttpdBigBank/bigbank.wsclient/runwsclient.bat51
-rwxr-xr-xsca-cpp/branches/cpp-contrib/contrib/samples/HttpdBigBank/bigbank.wsclient/runwsclient.sh48
-rw-r--r--sca-cpp/branches/cpp-contrib/contrib/samples/HttpdBigBank/httpserver/Makefile.am6
-rw-r--r--sca-cpp/branches/cpp-contrib/contrib/samples/HttpdBigBank/httpserver/conf/httpd.conf35
-rw-r--r--sca-cpp/branches/cpp-contrib/contrib/samples/HttpdBigBank/httpserver/conf/mime.types607
-rw-r--r--sca-cpp/branches/cpp-contrib/contrib/samples/HttpdBigBank/httpserver/htdocs/index.html21
-rw-r--r--sca-cpp/branches/cpp-contrib/contrib/samples/HttpdBigBank/httpserver/startserver.bat89
-rwxr-xr-xsca-cpp/branches/cpp-contrib/contrib/samples/HttpdBigBank/httpserver/startserver.sh78
-rwxr-xr-xsca-cpp/branches/cpp-contrib/contrib/samples/HttpdBigBank/httpserver/stopserver.sh25
28 files changed, 2166 insertions, 0 deletions
diff --git a/sca-cpp/branches/cpp-contrib/contrib/samples/HttpdBigBank/Makefile.am b/sca-cpp/branches/cpp-contrib/contrib/samples/HttpdBigBank/Makefile.am
new file mode 100644
index 0000000000..7ae86e6d2c
--- /dev/null
+++ b/sca-cpp/branches/cpp-contrib/contrib/samples/HttpdBigBank/Makefile.am
@@ -0,0 +1,21 @@
+# 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.
+
+deploydir=$(prefix)/HttpdBigBank/deploy
+SUBDIRS = bigbank.account bigbank.accountdata bigbank.wsclient httpserver
+EXTRA_DIST = *.composite
+deploy_DATA = *.composite
diff --git a/sca-cpp/branches/cpp-contrib/contrib/samples/HttpdBigBank/README b/sca-cpp/branches/cpp-contrib/contrib/samples/HttpdBigBank/README
new file mode 100644
index 0000000000..a3442236bd
--- /dev/null
+++ b/sca-cpp/branches/cpp-contrib/contrib/samples/HttpdBigBank/README
@@ -0,0 +1,37 @@
+# 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.
+
+This sample shows how to run the Bigbank app with the Apache HTTP server
+
+This is a more modular version of the original Bigbank app, the account
+service and the account data service are in different composites.
+
+The httpserver directory contains a minimal httpd configuration.
+Make sure that Apache apachectl and httpd 2.2.x are on the PATH.
+
+To start the server, cd to httpserver, and run ./startserver.sh.
+
+To verify that the server is working, point your Web browser to
+http://localhost:9090.
+
+To verify that Axis2C is working, point your Web browser to
+http://localhost:9090/axis2, you should see a list of deployed services.
+
+To stop the server, cd to httpserver, and run ./stopserver.sh.
+
+To run the sample go to bigbank.wsclient, and run ./runwsclient.sh.
+
diff --git a/sca-cpp/branches/cpp-contrib/contrib/samples/HttpdBigBank/README.html b/sca-cpp/branches/cpp-contrib/contrib/samples/HttpdBigBank/README.html
new file mode 100644
index 0000000000..bfd33ee1cd
--- /dev/null
+++ b/sca-cpp/branches/cpp-contrib/contrib/samples/HttpdBigBank/README.html
@@ -0,0 +1,197 @@
+
+<!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 - HTTPD BigBank Sample</TITLE>
+</HEAD>
+
+<BODY>
+<DIV ID="bodyColumn">
+ <DIV ID="contentBox">
+ <DIV CLASS="section">
+ <H1>Tuscany SCA Native Samples - HTTPD 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 is a more modular version of the original Bigbank app, with the account
+ service and the account data service are in different composites.
+ </P>
+ <P>The HTTPD BigBank sample requires the following extensions:
+ <UL>
+ <LI><A HREF="../../doc/RubyExtension.html">Ruby Extension</A></LI>
+ <LI><A HREF="../../doc/Axis2CWSExtension.html">Axis2/C Web Services Extension</A></LI>
+ <LI><A HREF="../../doc/SCAExtension.html">SCA Binding Extension</A></LI>
+ </UL>
+ Please follow the documentation to ensure you have these extensions built and installed
+ on your system
+ </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 HTTPD BigBank
+ composite implementing the account services.
+ </LI>
+ <LI>bigbank.accountdata<BR/>
+ This contains the source code and SCDL artifacts for the SCA HTTPD BigBank
+ composite implementing the account data services.
+ </LI>
+ <LI>bigbank.wsclient<BR/>
+ A sample client which uses an SCA Web Service reference to make a remote
+ call to the BigBank service.
+ </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>
+ <P>Note that this sample does not run on Windows, due to threading incompatibilities
+ between Apache HTTPD and the Ruby runtime</P>
+ </DIV>
+
+ <DIV CLASS="section">
+ <H2>Contents</H2>
+ <OL>
+ <LI><A HREF="#linuxbld">Building the HTTPD BigBank sample on Linux and Mac OS X</A></LI>
+ <LI><A HREF="#linuxrun">Running the HTTPD BigBank sample on Linux and Mac OS X</A></LI>
+ <LI><A HREF="#win">The HTTPD BigBank sample on Windows</A></LI>
+ <LI><A HREF="#help">Getting help</A></LI>
+ </OL>
+ </DIV>
+
+
+ <DIV CLASS="section">
+ <A NAME="linuxbld"><H2>Building the HTTPD BigBank sample 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>As the HTTPD BigBank sample is based on Ruby scripts, a specific compilation step is not necessary -
+ only deployment is required. Deploy the Ruby samples only with the following command sequence:
+ <UL>
+ <LI>cd &lt;tuscany_sca_install_dir&gt;/samples</LI>
+ <LI>./configure --enable-ruby --enable-cpp=no --prefix=$TUSCANY_SCACPP/samples</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/HttpdBigBank
+ </LI>
+ </OL>
+ </DIV>
+
+ <DIV CLASS="section">
+ <A NAME="linuxrun"><H2>Running the HTTPD BigBank sample on Linux and Mac OS X</H2></A>
+ <OL>
+ <LI>The HTTPD BigBank sample requires the following extensions:
+ <UL>
+ <LI><A HREF="../../doc/RubyExtension.html">Ruby Extension</A></LI>
+ <LI><A HREF="../../doc/Axis2CWSExtension.html">Axis2/C Web Services Extension</A></LI>
+ <LI><A HREF="../../doc/SCAExtension.html">SCA Binding 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 Apache HTTPD 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/HttpdBigBank/deploy/httpserver</LI>
+ <LI>./startserver.sh<BR/>
+ NOTE: Depending on your installation of Apache HTTPD you may need to log in as root before following
+ these steps. If so, you may also need to uncomment the User and Group directives in the
+ &lt;tuscany_sca_install_dir&gt;/samples/HttpdBigBank/deploy/httpserver/conf/httpd.conf file
+ and set these to the appropriate username and group that the server should run as</LI>
+ </OL>
+ </LI>
+ <LI>Now run the Web Service client:
+ <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>Run the sample with the following commands:
+ <UL>
+ <LI>cd &lt;tuscany_sca_install_dir&gt;/samples/HttpdBigBank/deploy/bigbank.wsclient</LI>
+ <LI>./runwsclient.sh</LI>
+ </UL>
+ </LI>
+ </OL>
+ </LI>
+ <LI>The PHP web client detailed in the
+ <A HREF="../CppBigBank/README.html">CppBigBank</A> sample can also be used
+ with the HTTPD BigBank service that is served by the HTTPD server started above.
+ </LI>
+ </OL>
+ </DIV>
+
+ <DIV CLASS="section">
+ <A NAME="win"><H2>The HTTPD BigBank sample on Windows</H2></A>
+ <P>The HttpdBigBank sample does not currently run on Windows, due to the sample being based on Ruby
+ components running under Apache HTTPD. The Ruby runtime is single-threaded and, on Windows, HTTPD
+ is multi-threaded, which means that Ruby throws "cross-thread violation" errors when Tuscany
+ attempts to run a Ruby script under HTTPD.</P>
+ </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>
+
diff --git a/sca-cpp/branches/cpp-contrib/contrib/samples/HttpdBigBank/bigbank.account/AccountService.wsdl b/sca-cpp/branches/cpp-contrib/contrib/samples/HttpdBigBank/bigbank.account/AccountService.wsdl
new file mode 100644
index 0000000000..b83c453462
--- /dev/null
+++ b/sca-cpp/branches/cpp-contrib/contrib/samples/HttpdBigBank/bigbank.account/AccountService.wsdl
@@ -0,0 +1,126 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ 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.
+-->
+
+<wsdl:definitions xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
+ xmlns:tns="http://www.bigbank.com/AccountService"
+ xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
+ xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+ targetNamespace="http://www.bigbank.com/AccountService"
+ name="AccountService">
+
+ <wsdl:types>
+ <xsd:schema
+ targetNamespace="http://www.bigbank.com/AccountService"
+ xmlns:xsd="http://www.w3.org/2001/XMLSchema">
+
+ <xsd:element name="getAccountReport">
+ <xsd:complexType>
+ <xsd:sequence>
+ <xsd:element name="customerID"
+ type="xsd:string" />
+ </xsd:sequence>
+ </xsd:complexType>
+ </xsd:element>
+
+ <xsd:element name="getAccountReportResponse">
+ <xsd:complexType>
+ <xsd:sequence>
+ <xsd:element name="result"
+ type="tns:AccountReport" />
+ </xsd:sequence>
+ </xsd:complexType>
+ </xsd:element>
+
+ <xsd:complexType name="AccountReport">
+ <xsd:sequence>
+ <xsd:element name="checking"
+ type="tns:CheckingAccount" maxOccurs="unbounded" />
+ <xsd:element name="savings"
+ type="tns:SavingsAccount" maxOccurs="unbounded" />
+ <xsd:element name="stocks" type="tns:StockAccount"
+ maxOccurs="unbounded" />
+ </xsd:sequence>
+ </xsd:complexType>
+
+ <xsd:complexType name="StockAccount">
+ <xsd:sequence>
+ <xsd:element name="accountNumber" type="xsd:string" />
+ <xsd:element name="symbol" type="xsd:string" />
+ <xsd:element name="quantity" type="xsd:integer" />
+ <xsd:element name="balance" type="xsd:float" />
+ </xsd:sequence>
+ </xsd:complexType>
+
+ <xsd:complexType name="CheckingAccount">
+ <xsd:sequence>
+ <xsd:element name="accountNumber" type="xsd:string" />
+ <xsd:element name="balance" type="xsd:float" />
+ </xsd:sequence>
+ </xsd:complexType>
+
+ <xsd:complexType name="SavingsAccount">
+ <xsd:sequence>
+ <xsd:element name="accountNumber" type="xsd:string" />
+ <xsd:element name="balance" type="xsd:float" />
+ </xsd:sequence>
+ </xsd:complexType>
+ </xsd:schema>
+ </wsdl:types>
+
+ <wsdl:message name="getAccountReportRequest">
+ <wsdl:part element="tns:getAccountReport"
+ name="getAccountReportRequest" />
+ </wsdl:message>
+
+ <wsdl:message name="getAccountReportResponse">
+ <wsdl:part element="tns:getAccountReportResponse"
+ name="getAccountReportResponse" />
+ </wsdl:message>
+
+ <wsdl:portType name="AccountService">
+ <wsdl:operation name="getAccountReport">
+ <wsdl:input message="tns:getAccountReportRequest" />
+ <wsdl:output message="tns:getAccountReportResponse" />
+ </wsdl:operation>
+ </wsdl:portType>
+
+ <wsdl:binding name="AccountServiceSOAP" type="tns:AccountService">
+ <soap:binding style="document"
+ transport="http://schemas.xmlsoap.org/soap/http" />
+ <wsdl:operation name="getAccountReport">
+ <soap:operation
+ soapAction="http://www.bigbank.com/AccountService/getAccountReport" />
+ <wsdl:input>
+ <soap:body use="literal" />
+ </wsdl:input>
+ <wsdl:output>
+ <soap:body use="literal" />
+ </wsdl:output>
+ </wsdl:operation>
+ </wsdl:binding>
+
+ <wsdl:service name="AccountService">
+ <wsdl:port binding="tns:AccountServiceSOAP"
+ name="AccountServiceSOAP">
+ <soap:address
+ location="http://localhost:9090/axis2/services/bigbank.AccountManagementComponent/AccountService" />
+ </wsdl:port>
+ </wsdl:service>
+</wsdl:definitions>
diff --git a/sca-cpp/branches/cpp-contrib/contrib/samples/HttpdBigBank/bigbank.account/AccountServiceImpl.rb b/sca-cpp/branches/cpp-contrib/contrib/samples/HttpdBigBank/bigbank.account/AccountServiceImpl.rb
new file mode 100644
index 0000000000..20af2cfedb
--- /dev/null
+++ b/sca-cpp/branches/cpp-contrib/contrib/samples/HttpdBigBank/bigbank.account/AccountServiceImpl.rb
@@ -0,0 +1,83 @@
+# 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.
+#
+
+require "rexml/document"
+include REXML
+
+class AccountServiceImpl
+
+ attr_writer :accountDataService
+ attr_writer :stockQuoteService
+ attr_writer :currency
+
+ def initialize()
+ print "Ruby - AccountServiceImpl.initialize\n"
+ end
+
+ def getAccountReport(customerID)
+
+ # Get the checking account info
+ checking = @accountDataService.getCheckingAccount(customerID)
+
+ # Get the savings account info
+ savings = @accountDataService.getSavingsAccount(customerID)
+
+ # Get the stocks account info
+ stock = @accountDataService.getStockAccount(customerID);
+
+ symbol = stock.root.elements["symbol"].text
+ quantity = stock.root.elements["quantity"].text
+
+ # Get the stock price
+ price = @stockQuoteService.getQuote(symbol);
+
+ # Convert to the configured currency
+ price = price.to_f * 0.80 if @currency == "EUR"
+
+ # Calculate the balance
+ balance = price.to_f * quantity.to_f
+
+ # Form the AccountReport document
+ report = Document.new <<-eof
+ <AccountReport xmlns="http://www.bigbank.com/AccountService"
+ xsi:type="AccountReport" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
+
+ <checking>
+ <accountNumber>#{ checking.root.elements["accountNumber"].text }</accountNumber>
+ <balance>#{ checking.root.elements["balance"].text }</balance>
+ </checking>
+
+ <savings>
+ <accountNumber>#{ savings.root.elements["accountNumber"].text }</accountNumber>
+ <balance>#{ savings.root.elements["balance"].text }</balance>
+ </savings>
+
+ <stocks>
+ <accountNumber>#{ stock.root.elements["accountNumber"].text }</accountNumber>
+ <symbol>#{ symbol }</symbol>
+ <quantity>#{ quantity }</quantity>
+ <balance>#{ balance }</balance>
+ </stocks>
+
+ </AccountReport>
+ eof
+
+ return report
+ end
+
+end
diff --git a/sca-cpp/branches/cpp-contrib/contrib/samples/HttpdBigBank/bigbank.account/Makefile.am b/sca-cpp/branches/cpp-contrib/contrib/samples/HttpdBigBank/bigbank.account/Makefile.am
new file mode 100644
index 0000000000..01c8681555
--- /dev/null
+++ b/sca-cpp/branches/cpp-contrib/contrib/samples/HttpdBigBank/bigbank.account/Makefile.am
@@ -0,0 +1,22 @@
+# 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.
+
+deploydir=$(prefix)/HttpdBigBank/deploy
+compositedir=$(deploydir)/bigbank.account
+
+composite_DATA = *.composite *.wsdl *.xsd *.rb
+EXTRA_DIST = *.composite *.wsdl *.xsd *.rb
diff --git a/sca-cpp/branches/cpp-contrib/contrib/samples/HttpdBigBank/bigbank.account/StockQuoteServiceImpl.rb b/sca-cpp/branches/cpp-contrib/contrib/samples/HttpdBigBank/bigbank.account/StockQuoteServiceImpl.rb
new file mode 100644
index 0000000000..7f8634072c
--- /dev/null
+++ b/sca-cpp/branches/cpp-contrib/contrib/samples/HttpdBigBank/bigbank.account/StockQuoteServiceImpl.rb
@@ -0,0 +1,52 @@
+# 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.
+#
+
+require "rexml/document"
+include REXML
+
+class StockQuoteServiceImpl
+
+ attr_writer :webService
+
+ def initialize()
+ print "Ruby - StockQuoteServiceImpl.initialize\n"
+ end
+
+ def getQuote(symbol)
+ print "Ruby - StockQuoteServiceImpl.getQuote ", symbol, "\n"
+
+ price = 0
+ catch (:RuntimeError) do
+ begin
+
+ result = @webService.GetQuote(symbol)
+ doc = Document.new(result)
+ price = doc.root.elements["Stock"].elements["Last"].text;
+
+ rescue
+ # offline or StockQuote web service is down
+ price = 95.0
+ end
+ end
+
+ print "Ruby - stock price = ", price, "\n"
+
+ return price.to_f
+ end
+
+end \ No newline at end of file
diff --git a/sca-cpp/branches/cpp-contrib/contrib/samples/HttpdBigBank/bigbank.account/StockQuoteTypes.xsd b/sca-cpp/branches/cpp-contrib/contrib/samples/HttpdBigBank/bigbank.account/StockQuoteTypes.xsd
new file mode 100644
index 0000000000..2f7012b5fb
--- /dev/null
+++ b/sca-cpp/branches/cpp-contrib/contrib/samples/HttpdBigBank/bigbank.account/StockQuoteTypes.xsd
@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ 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.
+-->
+
+<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
+
+ <xs:element name="StockQuotes" type="tStockQuotes"/>
+ <xs:complexType name="tStockQuotes">
+ <xs:sequence>
+ <xs:element name="Stock" type="tStock" minOccurs="0" maxOccurs="unbounded"/>
+ <xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
+ </xs:sequence>
+ <xs:anyAttribute namespace="##any" processContents="lax"/>
+ </xs:complexType>
+
+ <xs:complexType name="tStock">
+ <xs:sequence>
+ <xs:element minOccurs="0" maxOccurs="1" name="Symbol" type="xs:string"/>
+ <xs:element minOccurs="0" maxOccurs="1" name="Last" type="xs:float"/>
+ <xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
+ </xs:sequence>
+ <xs:anyAttribute namespace="##any" processContents="lax"/>
+ </xs:complexType>
+</xs:schema> \ No newline at end of file
diff --git a/sca-cpp/branches/cpp-contrib/contrib/samples/HttpdBigBank/bigbank.account/StockQuoteWebService.wsdl b/sca-cpp/branches/cpp-contrib/contrib/samples/HttpdBigBank/bigbank.account/StockQuoteWebService.wsdl
new file mode 100644
index 0000000000..c14f97c87b
--- /dev/null
+++ b/sca-cpp/branches/cpp-contrib/contrib/samples/HttpdBigBank/bigbank.account/StockQuoteWebService.wsdl
@@ -0,0 +1,165 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ 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.
+-->
+
+<wsdl:definitions xmlns:http="http://schemas.xmlsoap.org/wsdl/http/"
+ xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
+ xmlns:s="http://www.w3.org/2001/XMLSchema"
+ xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/"
+ xmlns:tns="http://www.webserviceX.NET/"
+ xmlns:tm="http://microsoft.com/wsdl/mime/textMatching/"
+ xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/"
+ targetNamespace="http://www.webserviceX.NET/"
+ xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">
+ <wsdl:types>
+ <s:schema elementFormDefault="qualified"
+ targetNamespace="http://www.webserviceX.NET/">
+ <s:element name="GetQuote">
+ <s:complexType>
+ <s:sequence>
+ <s:element minOccurs="0" maxOccurs="1"
+ name="symbol" type="s:string" />
+ </s:sequence>
+ </s:complexType>
+
+ </s:element>
+ <s:element name="GetQuoteResponse">
+ <s:complexType>
+ <s:sequence>
+ <s:element minOccurs="0" maxOccurs="1"
+ name="GetQuoteResult" type="s:string" />
+ </s:sequence>
+ </s:complexType>
+ </s:element>
+ <s:element name="string" nillable="true" type="s:string" />
+
+ </s:schema>
+ </wsdl:types>
+ <wsdl:message name="GetQuoteSoapIn">
+ <wsdl:part name="parameters" element="tns:GetQuote" />
+ </wsdl:message>
+ <wsdl:message name="GetQuoteSoapOut">
+ <wsdl:part name="parameters" element="tns:GetQuoteResponse" />
+ </wsdl:message>
+ <wsdl:message name="GetQuoteHttpGetIn">
+
+ <wsdl:part name="symbol" type="s:string" />
+ </wsdl:message>
+ <wsdl:message name="GetQuoteHttpGetOut">
+ <wsdl:part name="Body" element="tns:string" />
+ </wsdl:message>
+ <wsdl:message name="GetQuoteHttpPostIn">
+ <wsdl:part name="symbol" type="s:string" />
+ </wsdl:message>
+ <wsdl:message name="GetQuoteHttpPostOut">
+
+ <wsdl:part name="Body" element="tns:string" />
+ </wsdl:message>
+ <wsdl:portType name="StockQuoteSoap">
+ <wsdl:operation name="GetQuote">
+ <documentation xmlns="http://schemas.xmlsoap.org/wsdl/">
+ Get Stock quote for a company Symbol
+ </documentation>
+ <wsdl:input message="tns:GetQuoteSoapIn" />
+ <wsdl:output message="tns:GetQuoteSoapOut" />
+ </wsdl:operation>
+
+ </wsdl:portType>
+ <wsdl:portType name="StockQuoteHttpGet">
+ <wsdl:operation name="GetQuote">
+ <documentation xmlns="http://schemas.xmlsoap.org/wsdl/">
+ Get Stock quote for a company Symbol
+ </documentation>
+ <wsdl:input message="tns:GetQuoteHttpGetIn" />
+ <wsdl:output message="tns:GetQuoteHttpGetOut" />
+ </wsdl:operation>
+ </wsdl:portType>
+
+ <wsdl:portType name="StockQuoteHttpPost">
+ <wsdl:operation name="GetQuote">
+ <documentation xmlns="http://schemas.xmlsoap.org/wsdl/">
+ Get Stock quote for a company Symbol
+ </documentation>
+ <wsdl:input message="tns:GetQuoteHttpPostIn" />
+ <wsdl:output message="tns:GetQuoteHttpPostOut" />
+ </wsdl:operation>
+ </wsdl:portType>
+ <wsdl:binding name="StockQuoteSoap" type="tns:StockQuoteSoap">
+
+ <soap:binding transport="http://schemas.xmlsoap.org/soap/http"
+ style="document" />
+ <wsdl:operation name="GetQuote">
+ <soap:operation
+ soapAction="http://www.webserviceX.NET/GetQuote" style="document" />
+ <wsdl:input>
+ <soap:body use="literal" />
+ </wsdl:input>
+ <wsdl:output>
+ <soap:body use="literal" />
+ </wsdl:output>
+
+ </wsdl:operation>
+ </wsdl:binding>
+ <wsdl:binding name="StockQuoteHttpGet"
+ type="tns:StockQuoteHttpGet">
+ <http:binding verb="GET" />
+ <wsdl:operation name="GetQuote">
+ <http:operation location="/GetQuote" />
+ <wsdl:input>
+ <http:urlEncoded />
+ </wsdl:input>
+
+ <wsdl:output>
+ <mime:mimeXml part="Body" />
+ </wsdl:output>
+ </wsdl:operation>
+ </wsdl:binding>
+ <wsdl:binding name="StockQuoteHttpPost"
+ type="tns:StockQuoteHttpPost">
+ <http:binding verb="POST" />
+ <wsdl:operation name="GetQuote">
+ <http:operation location="/GetQuote" />
+
+ <wsdl:input>
+ <mime:content type="application/x-www-form-urlencoded" />
+ </wsdl:input>
+ <wsdl:output>
+ <mime:mimeXml part="Body" />
+ </wsdl:output>
+ </wsdl:operation>
+ </wsdl:binding>
+ <wsdl:service name="StockQuote">
+
+ <wsdl:port name="StockQuoteSoap" binding="tns:StockQuoteSoap">
+ <soap:address
+ location="http://www.webservicex.net/stockquote.asmx" />
+ </wsdl:port>
+ <wsdl:port name="StockQuoteHttpGet"
+ binding="tns:StockQuoteHttpGet">
+ <http:address
+ location="http://www.webservicex.net/stockquote.asmx" />
+ </wsdl:port>
+ <wsdl:port name="StockQuoteHttpPost"
+ binding="tns:StockQuoteHttpPost">
+ <http:address
+ location="http://www.webservicex.net/stockquote.asmx" />
+ </wsdl:port>
+
+ </wsdl:service>
+</wsdl:definitions> \ No newline at end of file
diff --git a/sca-cpp/branches/cpp-contrib/contrib/samples/HttpdBigBank/bigbank.account/bigbank.account.composite b/sca-cpp/branches/cpp-contrib/contrib/samples/HttpdBigBank/bigbank.account/bigbank.account.composite
new file mode 100644
index 0000000000..208402cdb3
--- /dev/null
+++ b/sca-cpp/branches/cpp-contrib/contrib/samples/HttpdBigBank/bigbank.account/bigbank.account.composite
@@ -0,0 +1,51 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ 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.
+-->
+
+<composite xmlns="http://www.osoa.org/xmlns/sca/1.0"
+ name="bigbank.account">
+
+ <service name="AccountService">
+ <interface.wsdl interface="http://www.bigbank.com/AccountService#wsdl.interface(AccountService)"/>
+ <binding.ws/>
+ <reference>AccountServiceComponent</reference>
+ </service>
+
+ <component name="AccountServiceComponent">
+ <implementation.ruby script="AccountServiceImpl.rb" class="AccountServiceImpl"/>
+ <reference name="accountDataService">AccountDataService</reference>
+ <reference name="stockQuoteService">StockQuoteServiceComponent</reference>
+ <property name="currency">USD</property>
+ </component>
+
+ <component name="StockQuoteServiceComponent">
+ <implementation.ruby script="StockQuoteServiceImpl.rb" class="StockQuoteServiceImpl"/>
+ <reference name="webService">StockQuoteWebService</reference>
+ </component>
+
+ <reference name="StockQuoteWebService">
+ <interface.wsdl interface="http://www.webserviceX.NET/#wsdl.interface(StockQuoteSoap)"/>
+ <binding.ws endpoint="http://www.webserviceX.NET/#wsdl.endpoint(StockQuote/StockQuoteSoap)"/>
+ </reference>
+
+ <reference name="AccountDataService">
+ <binding.sca/>
+ </reference>
+
+</composite>
diff --git a/sca-cpp/branches/cpp-contrib/contrib/samples/HttpdBigBank/bigbank.accountdata/AccountData.xsd b/sca-cpp/branches/cpp-contrib/contrib/samples/HttpdBigBank/bigbank.accountdata/AccountData.xsd
new file mode 100644
index 0000000000..8c8ff7c637
--- /dev/null
+++ b/sca-cpp/branches/cpp-contrib/contrib/samples/HttpdBigBank/bigbank.accountdata/AccountData.xsd
@@ -0,0 +1,45 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ 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.
+-->
+<xsd:schema targetNamespace="http://www.bigbank.com/AccountService" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
+
+ <xsd:complexType name="StockAccount">
+ <xsd:sequence>
+ <xsd:element name="accountNumber" type="xsd:string" />
+ <xsd:element name="symbol" type="xsd:string" />
+ <xsd:element name="quantity" type="xsd:integer" />
+ <xsd:element name="balance" type="xsd:float" />
+ </xsd:sequence>
+ </xsd:complexType>
+
+ <xsd:complexType name="CheckingAccount">
+ <xsd:sequence>
+ <xsd:element name="accountNumber" type="xsd:string" />
+ <xsd:element name="balance" type="xsd:float" />
+ </xsd:sequence>
+ </xsd:complexType>
+
+ <xsd:complexType name="SavingsAccount">
+ <xsd:sequence>
+ <xsd:element name="accountNumber" type="xsd:string" />
+ <xsd:element name="balance" type="xsd:float" />
+ </xsd:sequence>
+ </xsd:complexType>
+
+</xsd:schema>
diff --git a/sca-cpp/branches/cpp-contrib/contrib/samples/HttpdBigBank/bigbank.accountdata/AccountDataServiceImpl.rb b/sca-cpp/branches/cpp-contrib/contrib/samples/HttpdBigBank/bigbank.accountdata/AccountDataServiceImpl.rb
new file mode 100644
index 0000000000..8ae0e23bab
--- /dev/null
+++ b/sca-cpp/branches/cpp-contrib/contrib/samples/HttpdBigBank/bigbank.accountdata/AccountDataServiceImpl.rb
@@ -0,0 +1,72 @@
+# 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.
+#
+
+require "rexml/document"
+include REXML
+
+class AccountDataServiceImpl
+
+ def initialize()
+ print "Ruby - AccountDataServiceImpl.initialize\n"
+ end
+
+ def getCheckingAccount(id)
+ print "Ruby - AccountDataServiceImpl.getCheckingAccount ", id, "\n"
+
+ result = Document.new <<-eof
+ <CheckingAccount xmlns="http://www.bigbank.com/AccountService"
+ xsi:type="CheckingAccount" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
+ <accountNumber>#{ id.to_s + "_CHA12345"}</accountNumber>
+ <balance>1500.0</balance>
+ </CheckingAccount>
+ eof
+
+ return result
+ end
+
+ def getSavingsAccount(id)
+ print "Ruby - AccountDataServiceImpl.getSavingsAccount ", id, "\n"
+
+ result = Document.new <<-eof
+ <SavingsAccount xmlns="http://www.bigbank.com/AccountService"
+ xsi:type="SavingsAccount" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
+ <accountNumber>#{ id.to_s + "_SAA12345"}</accountNumber>
+ <balance>1500.0</balance>
+ </SavingsAccount>
+ eof
+
+ return result
+ end
+
+ def getStockAccount(id)
+ print "Ruby - AccountDataServiceImpl.getStockAccount ", id, "\n"
+
+ result = Document.new <<-eof
+ <StockAccount xmlns="http://www.bigbank.com/AccountService"
+ xsi:type="StockAccount" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
+ <accountNumber>#{ id.to_s + "_STA12345"}</accountNumber>
+ <symbol>IBM</symbol>
+ <quantity>100</quantity>
+ <balance></balance>
+ </StockAccount>
+ eof
+
+ return result
+ end
+
+end
diff --git a/sca-cpp/branches/cpp-contrib/contrib/samples/HttpdBigBank/bigbank.accountdata/Makefile.am b/sca-cpp/branches/cpp-contrib/contrib/samples/HttpdBigBank/bigbank.accountdata/Makefile.am
new file mode 100644
index 0000000000..7735720b26
--- /dev/null
+++ b/sca-cpp/branches/cpp-contrib/contrib/samples/HttpdBigBank/bigbank.accountdata/Makefile.am
@@ -0,0 +1,22 @@
+# 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.
+
+deploydir=$(prefix)/HttpdBigBank/deploy
+compositedir=$(deploydir)/bigbank.accountdata
+
+composite_DATA = *.composite *.xsd *.rb
+EXTRA_DIST = *.composite *.xsd *.rb
diff --git a/sca-cpp/branches/cpp-contrib/contrib/samples/HttpdBigBank/bigbank.accountdata/bigbank.accountdata.composite b/sca-cpp/branches/cpp-contrib/contrib/samples/HttpdBigBank/bigbank.accountdata/bigbank.accountdata.composite
new file mode 100644
index 0000000000..30c2802d5b
--- /dev/null
+++ b/sca-cpp/branches/cpp-contrib/contrib/samples/HttpdBigBank/bigbank.accountdata/bigbank.accountdata.composite
@@ -0,0 +1,33 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ 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.
+-->
+
+<composite xmlns="http://www.osoa.org/xmlns/sca/1.0"
+ name="bigbank.accountdata">
+
+ <service name="AccountDataService">
+ <binding.sca/>
+ <reference>AccountDataServiceComponent</reference>
+ </service>
+
+ <component name="AccountDataServiceComponent">
+ <implementation.ruby script="AccountDataServiceImpl.rb" class="AccountDataServiceImpl"/>
+ </component>
+
+</composite>
diff --git a/sca-cpp/branches/cpp-contrib/contrib/samples/HttpdBigBank/bigbank.app.composite b/sca-cpp/branches/cpp-contrib/contrib/samples/HttpdBigBank/bigbank.app.composite
new file mode 100644
index 0000000000..9507997464
--- /dev/null
+++ b/sca-cpp/branches/cpp-contrib/contrib/samples/HttpdBigBank/bigbank.app.composite
@@ -0,0 +1,39 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ 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.
+-->
+
+<composite xmlns="http://www.osoa.org/xmlns/sca/1.0"
+ name="bigbank.app">
+
+ <component name="bigbank.AccountManagementComponent">
+ <implementation.composite name="bigbank.account"/>
+ <reference name="AccountDataService">bigbank.AccountDataManagementComponent/AccountDataService</reference>
+ </component>
+
+ <component name="bigbank.AccountDataManagementComponent">
+ <implementation.composite name="bigbank.accountdata"/>
+ </component>
+
+ <component name="bigbank.AccountWSClientComponent">
+ <implementation.composite name="bigbank.wsclient"/>
+ <reference name="AccountService">bigbank.AccountManagementComponent/AccountService</reference>
+ </component>
+
+</composite>
+ \ No newline at end of file
diff --git a/sca-cpp/branches/cpp-contrib/contrib/samples/HttpdBigBank/bigbank.wsclient/AccountService.wsdl b/sca-cpp/branches/cpp-contrib/contrib/samples/HttpdBigBank/bigbank.wsclient/AccountService.wsdl
new file mode 100644
index 0000000000..b83c453462
--- /dev/null
+++ b/sca-cpp/branches/cpp-contrib/contrib/samples/HttpdBigBank/bigbank.wsclient/AccountService.wsdl
@@ -0,0 +1,126 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ 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.
+-->
+
+<wsdl:definitions xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
+ xmlns:tns="http://www.bigbank.com/AccountService"
+ xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
+ xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+ targetNamespace="http://www.bigbank.com/AccountService"
+ name="AccountService">
+
+ <wsdl:types>
+ <xsd:schema
+ targetNamespace="http://www.bigbank.com/AccountService"
+ xmlns:xsd="http://www.w3.org/2001/XMLSchema">
+
+ <xsd:element name="getAccountReport">
+ <xsd:complexType>
+ <xsd:sequence>
+ <xsd:element name="customerID"
+ type="xsd:string" />
+ </xsd:sequence>
+ </xsd:complexType>
+ </xsd:element>
+
+ <xsd:element name="getAccountReportResponse">
+ <xsd:complexType>
+ <xsd:sequence>
+ <xsd:element name="result"
+ type="tns:AccountReport" />
+ </xsd:sequence>
+ </xsd:complexType>
+ </xsd:element>
+
+ <xsd:complexType name="AccountReport">
+ <xsd:sequence>
+ <xsd:element name="checking"
+ type="tns:CheckingAccount" maxOccurs="unbounded" />
+ <xsd:element name="savings"
+ type="tns:SavingsAccount" maxOccurs="unbounded" />
+ <xsd:element name="stocks" type="tns:StockAccount"
+ maxOccurs="unbounded" />
+ </xsd:sequence>
+ </xsd:complexType>
+
+ <xsd:complexType name="StockAccount">
+ <xsd:sequence>
+ <xsd:element name="accountNumber" type="xsd:string" />
+ <xsd:element name="symbol" type="xsd:string" />
+ <xsd:element name="quantity" type="xsd:integer" />
+ <xsd:element name="balance" type="xsd:float" />
+ </xsd:sequence>
+ </xsd:complexType>
+
+ <xsd:complexType name="CheckingAccount">
+ <xsd:sequence>
+ <xsd:element name="accountNumber" type="xsd:string" />
+ <xsd:element name="balance" type="xsd:float" />
+ </xsd:sequence>
+ </xsd:complexType>
+
+ <xsd:complexType name="SavingsAccount">
+ <xsd:sequence>
+ <xsd:element name="accountNumber" type="xsd:string" />
+ <xsd:element name="balance" type="xsd:float" />
+ </xsd:sequence>
+ </xsd:complexType>
+ </xsd:schema>
+ </wsdl:types>
+
+ <wsdl:message name="getAccountReportRequest">
+ <wsdl:part element="tns:getAccountReport"
+ name="getAccountReportRequest" />
+ </wsdl:message>
+
+ <wsdl:message name="getAccountReportResponse">
+ <wsdl:part element="tns:getAccountReportResponse"
+ name="getAccountReportResponse" />
+ </wsdl:message>
+
+ <wsdl:portType name="AccountService">
+ <wsdl:operation name="getAccountReport">
+ <wsdl:input message="tns:getAccountReportRequest" />
+ <wsdl:output message="tns:getAccountReportResponse" />
+ </wsdl:operation>
+ </wsdl:portType>
+
+ <wsdl:binding name="AccountServiceSOAP" type="tns:AccountService">
+ <soap:binding style="document"
+ transport="http://schemas.xmlsoap.org/soap/http" />
+ <wsdl:operation name="getAccountReport">
+ <soap:operation
+ soapAction="http://www.bigbank.com/AccountService/getAccountReport" />
+ <wsdl:input>
+ <soap:body use="literal" />
+ </wsdl:input>
+ <wsdl:output>
+ <soap:body use="literal" />
+ </wsdl:output>
+ </wsdl:operation>
+ </wsdl:binding>
+
+ <wsdl:service name="AccountService">
+ <wsdl:port binding="tns:AccountServiceSOAP"
+ name="AccountServiceSOAP">
+ <soap:address
+ location="http://localhost:9090/axis2/services/bigbank.AccountManagementComponent/AccountService" />
+ </wsdl:port>
+ </wsdl:service>
+</wsdl:definitions>
diff --git a/sca-cpp/branches/cpp-contrib/contrib/samples/HttpdBigBank/bigbank.wsclient/AccountWSClient.rb b/sca-cpp/branches/cpp-contrib/contrib/samples/HttpdBigBank/bigbank.wsclient/AccountWSClient.rb
new file mode 100644
index 0000000000..6775b80f7a
--- /dev/null
+++ b/sca-cpp/branches/cpp-contrib/contrib/samples/HttpdBigBank/bigbank.wsclient/AccountWSClient.rb
@@ -0,0 +1,40 @@
+# 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.
+#
+#
+
+require("tuscany_sca_ruby")
+
+accountService = SCA::locateService("AccountService")
+
+report = accountService.getAccountReport(1234)
+
+checking = report.root.elements["checking"]
+savings = report.root.elements["savings"]
+stocks = report.root.elements["stocks"]
+
+print "\n\n"
+print "Checking account #: ", checking.elements["accountNumber"].text.strip, "\n"
+print "Balance: ", checking.elements["balance"].text.strip, "\n"
+
+print "Savings account #: ", savings.elements["accountNumber"].text.strip, "\n"
+print "Balance: ", savings.elements["balance"].text.strip, "\n"
+
+print "Stocks account #:", stocks.elements["accountNumber"].text.strip, "\n"
+print "Symbol: ", stocks.elements["symbol"].text.strip, "\n"
+print "Quantity: ", stocks.elements["quantity"].text.strip, "\n"
+print "Balance: ", stocks.elements["balance"].text.strip, "\n"
diff --git a/sca-cpp/branches/cpp-contrib/contrib/samples/HttpdBigBank/bigbank.wsclient/Makefile.am b/sca-cpp/branches/cpp-contrib/contrib/samples/HttpdBigBank/bigbank.wsclient/Makefile.am
new file mode 100644
index 0000000000..b1f1cfff0e
--- /dev/null
+++ b/sca-cpp/branches/cpp-contrib/contrib/samples/HttpdBigBank/bigbank.wsclient/Makefile.am
@@ -0,0 +1,6 @@
+deploydir=$(prefix)/HttpdBigBank/deploy
+clientdir=$(deploydir)/bigbank.wsclient
+
+client_DATA = *.rb *.composite *.wsdl
+client_SCRIPTS = runwsclient.sh
+EXTRA_DIST = runwsclient.sh *.rb *.composite *.wsdl
diff --git a/sca-cpp/branches/cpp-contrib/contrib/samples/HttpdBigBank/bigbank.wsclient/bigbank.wsclient.composite b/sca-cpp/branches/cpp-contrib/contrib/samples/HttpdBigBank/bigbank.wsclient/bigbank.wsclient.composite
new file mode 100644
index 0000000000..f484a2fc7c
--- /dev/null
+++ b/sca-cpp/branches/cpp-contrib/contrib/samples/HttpdBigBank/bigbank.wsclient/bigbank.wsclient.composite
@@ -0,0 +1,29 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ 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.
+-->
+
+<composite xmlns="http://www.osoa.org/xmlns/sca/1.0"
+ name="bigbank.wsclient">
+
+ <reference name="AccountService">
+ <interface.wsdl interface="http://www.bigbank.com/AccountService#wsdl.interface(AccountService)"/>
+ <binding.ws/>
+ </reference>
+
+</composite>
diff --git a/sca-cpp/branches/cpp-contrib/contrib/samples/HttpdBigBank/bigbank.wsclient/runwsclient.bat b/sca-cpp/branches/cpp-contrib/contrib/samples/HttpdBigBank/bigbank.wsclient/runwsclient.bat
new file mode 100644
index 0000000000..05d0ee2153
--- /dev/null
+++ b/sca-cpp/branches/cpp-contrib/contrib/samples/HttpdBigBank/bigbank.wsclient/runwsclient.bat
@@ -0,0 +1,51 @@
+@echo off
+
+@REM Licensed to the Apache Software Foundation (ASF) under one
+@REM or more contributor license agreements. See the NOTICE file
+@REM distributed with this work for additional information
+@REM regarding copyright ownership. The ASF licenses this file
+@REM to you under the Apache License, Version 2.0 (the
+@REM "License"); you may not use this file except in compliance
+@REM with the License. You may obtain a copy of the License at
+@REM
+@REM http://www.apache.org/licenses/LICENSE-2.0
+@REM
+@REM Unless required by applicable law or agreed to in writing,
+@REM software distributed under the License is distributed on an
+@REM "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+@REM KIND, either express or implied. See the License for the
+@REM specific language governing permissions and limitations
+@REM under the License.
+
+setlocal
+
+if "%TUSCANY_SCACPP%" == "" (
+echo "TUSCANY_SCACPP not set"
+goto end
+)
+echo Using SCA installed at %TUSCANY_SCACPP%
+
+if "%TUSCANY_SDOCPP%" == "" (
+echo "TUSCANY_SDOCPP not set"
+goto end
+)
+echo Using SDO installed at %TUSCANY_SDOCPP%
+
+if "%AXIS2C_HOME%" == "" (
+echo "AXIS2C_HOME not set"
+goto end
+)
+echo Using Axis2C installed at %AXIS2C_HOME%
+
+rem Run the client
+set PATH=%TUSCANY_SCACPP%\extensions\ruby\bin;%TUSCANY_SCACPP%\bin;%TUSCANY_SCACPP%\extensions\ws\reference\bin;%TUSCANY_SCACPP%\extensions\ws\service\bin;%TUSCANY_SDOCPP%\bin;%AXIS2C_HOME%\lib;%PATH%
+
+set TUSCANY_SCACPP_ROOT=%~d0%~p0\..\
+set TUSCANY_SCACPP_COMPONENT=bigbank.AccountWSClientComponent
+set TUSCANY_SCACPP_BASE_URI=http://localhost:9090
+
+cd %TUSCANY_SCACPP_ROOT%\bigbank.wsclient
+ruby -I%TUSCANY_SCACPP%\extensions\ruby\bin AccountWSClient.rb
+
+:end
+endlocal
diff --git a/sca-cpp/branches/cpp-contrib/contrib/samples/HttpdBigBank/bigbank.wsclient/runwsclient.sh b/sca-cpp/branches/cpp-contrib/contrib/samples/HttpdBigBank/bigbank.wsclient/runwsclient.sh
new file mode 100755
index 0000000000..d50e6a4b0a
--- /dev/null
+++ b/sca-cpp/branches/cpp-contrib/contrib/samples/HttpdBigBank/bigbank.wsclient/runwsclient.sh
@@ -0,0 +1,48 @@
+#!/bin/sh
+
+# 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.
+
+
+APFULLDIR=`pwd`
+
+if [ x$TUSCANY_SCACPP = x ]; then
+echo "TUSCANY_SCACPP not set"
+exit;
+fi
+echo "Using SCA installed at $TUSCANY_SCACPP"
+
+if [ x$TUSCANY_SDOCPP = x ]; then
+echo "TUSCANY_SDOCPP not set"
+exit;
+fi
+echo "Using SDO installed at $TUSCANY_SDOCPP"
+
+if [ x$AXIS2C_HOME = x ]; then
+echo "AXIS2C_HOME not set"
+exit;
+fi
+echo "Using Axis2C installed at $AXIS2C_HOME"
+
+export LD_LIBRARY_PATH=$TUSCANY_SCACPP/extensions/ruby/lib:$TUSCANY_SCACPP/lib:$TUSCANY_SDOCPP/lib:$AXIS2C_HOME/lib:$LD_LIBRARY_PATH
+
+export TUSCANY_SCACPP_ROOT=$APFULLDIR/../
+export TUSCANY_SCACPP_COMPONENT=bigbank.AccountWSClientComponent
+export TUSCANY_SCACPP_BASE_URI=http://localhost:9090
+
+cd $TUSCANY_SCACPP_ROOT/bigbank.wsclient
+ruby -I$TUSCANY_SCACPP/extensions/ruby/lib AccountWSClient.rb
diff --git a/sca-cpp/branches/cpp-contrib/contrib/samples/HttpdBigBank/httpserver/Makefile.am b/sca-cpp/branches/cpp-contrib/contrib/samples/HttpdBigBank/httpserver/Makefile.am
new file mode 100644
index 0000000000..1195ee1aae
--- /dev/null
+++ b/sca-cpp/branches/cpp-contrib/contrib/samples/HttpdBigBank/httpserver/Makefile.am
@@ -0,0 +1,6 @@
+deploydir=$(prefix)/HttpdBigBank/deploy
+serverdir=$(deploydir)/httpserver
+
+server_SCRIPTS = startserver.sh stopserver.sh
+EXTRA_DIST = startserver.sh stopserver.sh conf htdocs
+nobase_server_DATA = conf/httpd.conf conf/mime.types htdocs/index.html
diff --git a/sca-cpp/branches/cpp-contrib/contrib/samples/HttpdBigBank/httpserver/conf/httpd.conf b/sca-cpp/branches/cpp-contrib/contrib/samples/HttpdBigBank/httpserver/conf/httpd.conf
new file mode 100644
index 0000000000..e9a438dc85
--- /dev/null
+++ b/sca-cpp/branches/cpp-contrib/contrib/samples/HttpdBigBank/httpserver/conf/httpd.conf
@@ -0,0 +1,35 @@
+# 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.
+
+# This is the main Apache HTTP server configuration file. It contains the
+# configuration directives that give the server its instructions.
+# See <URL:http://httpd.apache.org/docs/2.2> for detailed information.
+
+Listen 9090
+
+# Generated by the startserver script
+Include conf/base.conf
+Include conf/mod_axis2.conf
+# Include conf/tuscany_sca_mod_rest.conf
+
+# User and Group directives may be required if the server must be
+# started from the root account. Uncomment the following lines and
+# set the correct username and group
+#
+# User myusername
+# Group mygroupname
+
diff --git a/sca-cpp/branches/cpp-contrib/contrib/samples/HttpdBigBank/httpserver/conf/mime.types b/sca-cpp/branches/cpp-contrib/contrib/samples/HttpdBigBank/httpserver/conf/mime.types
new file mode 100644
index 0000000000..4279f51bca
--- /dev/null
+++ b/sca-cpp/branches/cpp-contrib/contrib/samples/HttpdBigBank/httpserver/conf/mime.types
@@ -0,0 +1,607 @@
+# 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.
+
+# This file controls what Internet media types are sent to the client for
+# given file extension(s). Sending the correct media type to the client
+# is important so they know how to handle the content of the file.
+# Extra types can either be added here or by using an AddType directive
+# in your config files. For more information about Internet media types,
+# please read RFC 2045, 2046, 2047, 2048, and 2077. The Internet media type
+# registry is at <http://www.iana.org/assignments/media-types/>.
+
+# MIME type Extensions
+application/activemessage
+application/andrew-inset ez
+application/applefile
+application/atom+xml atom
+application/atomicmail
+application/batch-smtp
+application/beep+xml
+application/cals-1840
+application/cnrp+xml
+application/commonground
+application/cpl+xml
+application/cybercash
+application/dca-rft
+application/dec-dx
+application/dvcs
+application/edi-consent
+application/edifact
+application/edi-x12
+application/eshop
+application/font-tdpfr
+application/http
+application/hyperstudio
+application/iges
+application/index
+application/index.cmd
+application/index.obj
+application/index.response
+application/index.vnd
+application/iotp
+application/ipp
+application/isup
+application/mac-binhex40 hqx
+application/mac-compactpro cpt
+application/macwriteii
+application/marc
+application/mathematica
+application/mathml+xml mathml
+application/msword doc
+application/news-message-id
+application/news-transmission
+application/ocsp-request
+application/ocsp-response
+application/octet-stream bin dms lha lzh exe class so dll dmg
+application/oda oda
+application/ogg ogg
+application/parityfec
+application/pdf pdf
+application/pgp-encrypted
+application/pgp-keys
+application/pgp-signature
+application/pkcs10
+application/pkcs7-mime
+application/pkcs7-signature
+application/pkix-cert
+application/pkix-crl
+application/pkixcmp
+application/postscript ai eps ps
+application/prs.alvestrand.titrax-sheet
+application/prs.cww
+application/prs.nprend
+application/prs.plucker
+application/qsig
+application/rdf+xml rdf
+application/reginfo+xml
+application/remote-printing
+application/riscos
+application/rtf
+application/sdp
+application/set-payment
+application/set-payment-initiation
+application/set-registration
+application/set-registration-initiation
+application/sgml
+application/sgml-open-catalog
+application/sieve
+application/slate
+application/smil smi smil
+application/srgs gram
+application/srgs+xml grxml
+application/timestamp-query
+application/timestamp-reply
+application/tve-trigger
+application/vemmi
+application/vnd.3gpp.pic-bw-large
+application/vnd.3gpp.pic-bw-small
+application/vnd.3gpp.pic-bw-var
+application/vnd.3gpp.sms
+application/vnd.3m.post-it-notes
+application/vnd.accpac.simply.aso
+application/vnd.accpac.simply.imp
+application/vnd.acucobol
+application/vnd.acucorp
+application/vnd.adobe.xfdf
+application/vnd.aether.imp
+application/vnd.amiga.ami
+application/vnd.anser-web-certificate-issue-initiation
+application/vnd.anser-web-funds-transfer-initiation
+application/vnd.audiograph
+application/vnd.blueice.multipass
+application/vnd.bmi
+application/vnd.businessobjects
+application/vnd.canon-cpdl
+application/vnd.canon-lips
+application/vnd.cinderella
+application/vnd.claymore
+application/vnd.commerce-battelle
+application/vnd.commonspace
+application/vnd.contact.cmsg
+application/vnd.cosmocaller
+application/vnd.criticaltools.wbs+xml
+application/vnd.ctc-posml
+application/vnd.cups-postscript
+application/vnd.cups-raster
+application/vnd.cups-raw
+application/vnd.curl
+application/vnd.cybank
+application/vnd.data-vision.rdz
+application/vnd.dna
+application/vnd.dpgraph
+application/vnd.dreamfactory
+application/vnd.dxr
+application/vnd.ecdis-update
+application/vnd.ecowin.chart
+application/vnd.ecowin.filerequest
+application/vnd.ecowin.fileupdate
+application/vnd.ecowin.series
+application/vnd.ecowin.seriesrequest
+application/vnd.ecowin.seriesupdate
+application/vnd.enliven
+application/vnd.epson.esf
+application/vnd.epson.msf
+application/vnd.epson.quickanime
+application/vnd.epson.salt
+application/vnd.epson.ssf
+application/vnd.ericsson.quickcall
+application/vnd.eudora.data
+application/vnd.fdf
+application/vnd.ffsns
+application/vnd.fints
+application/vnd.flographit
+application/vnd.framemaker
+application/vnd.fsc.weblaunch
+application/vnd.fujitsu.oasys
+application/vnd.fujitsu.oasys2
+application/vnd.fujitsu.oasys3
+application/vnd.fujitsu.oasysgp
+application/vnd.fujitsu.oasysprs
+application/vnd.fujixerox.ddd
+application/vnd.fujixerox.docuworks
+application/vnd.fujixerox.docuworks.binder
+application/vnd.fut-misnet
+application/vnd.grafeq
+application/vnd.groove-account
+application/vnd.groove-help
+application/vnd.groove-identity-message
+application/vnd.groove-injector
+application/vnd.groove-tool-message
+application/vnd.groove-tool-template
+application/vnd.groove-vcard
+application/vnd.hbci
+application/vnd.hhe.lesson-player
+application/vnd.hp-hpgl
+application/vnd.hp-hpid
+application/vnd.hp-hps
+application/vnd.hp-pcl
+application/vnd.hp-pclxl
+application/vnd.httphone
+application/vnd.hzn-3d-crossword
+application/vnd.ibm.afplinedata
+application/vnd.ibm.electronic-media
+application/vnd.ibm.minipay
+application/vnd.ibm.modcap
+application/vnd.ibm.rights-management
+application/vnd.ibm.secure-container
+application/vnd.informix-visionary
+application/vnd.intercon.formnet
+application/vnd.intertrust.digibox
+application/vnd.intertrust.nncp
+application/vnd.intu.qbo
+application/vnd.intu.qfx
+application/vnd.irepository.package+xml
+application/vnd.is-xpr
+application/vnd.japannet-directory-service
+application/vnd.japannet-jpnstore-wakeup
+application/vnd.japannet-payment-wakeup
+application/vnd.japannet-registration
+application/vnd.japannet-registration-wakeup
+application/vnd.japannet-setstore-wakeup
+application/vnd.japannet-verification
+application/vnd.japannet-verification-wakeup
+application/vnd.jisp
+application/vnd.kde.karbon
+application/vnd.kde.kchart
+application/vnd.kde.kformula
+application/vnd.kde.kivio
+application/vnd.kde.kontour
+application/vnd.kde.kpresenter
+application/vnd.kde.kspread
+application/vnd.kde.kword
+application/vnd.kenameaapp
+application/vnd.koan
+application/vnd.liberty-request+xml
+application/vnd.llamagraphics.life-balance.desktop
+application/vnd.llamagraphics.life-balance.exchange+xml
+application/vnd.lotus-1-2-3
+application/vnd.lotus-approach
+application/vnd.lotus-freelance
+application/vnd.lotus-notes
+application/vnd.lotus-organizer
+application/vnd.lotus-screencam
+application/vnd.lotus-wordpro
+application/vnd.mcd
+application/vnd.mediastation.cdkey
+application/vnd.meridian-slingshot
+application/vnd.micrografx.flo
+application/vnd.micrografx.igx
+application/vnd.mif mif
+application/vnd.minisoft-hp3000-save
+application/vnd.mitsubishi.misty-guard.trustweb
+application/vnd.mobius.daf
+application/vnd.mobius.dis
+application/vnd.mobius.mbk
+application/vnd.mobius.mqy
+application/vnd.mobius.msl
+application/vnd.mobius.plc
+application/vnd.mobius.txf
+application/vnd.mophun.application
+application/vnd.mophun.certificate
+application/vnd.motorola.flexsuite
+application/vnd.motorola.flexsuite.adsi
+application/vnd.motorola.flexsuite.fis
+application/vnd.motorola.flexsuite.gotap
+application/vnd.motorola.flexsuite.kmr
+application/vnd.motorola.flexsuite.ttc
+application/vnd.motorola.flexsuite.wem
+application/vnd.mozilla.xul+xml xul
+application/vnd.ms-artgalry
+application/vnd.ms-asf
+application/vnd.ms-excel xls
+application/vnd.ms-lrm
+application/vnd.ms-powerpoint ppt
+application/vnd.ms-project
+application/vnd.ms-tnef
+application/vnd.ms-works
+application/vnd.ms-wpl
+application/vnd.mseq
+application/vnd.msign
+application/vnd.music-niff
+application/vnd.musician
+application/vnd.netfpx
+application/vnd.noblenet-directory
+application/vnd.noblenet-sealer
+application/vnd.noblenet-web
+application/vnd.novadigm.edm
+application/vnd.novadigm.edx
+application/vnd.novadigm.ext
+application/vnd.obn
+application/vnd.osa.netdeploy
+application/vnd.palm
+application/vnd.pg.format
+application/vnd.pg.osasli
+application/vnd.powerbuilder6
+application/vnd.powerbuilder6-s
+application/vnd.powerbuilder7
+application/vnd.powerbuilder7-s
+application/vnd.powerbuilder75
+application/vnd.powerbuilder75-s
+application/vnd.previewsystems.box
+application/vnd.publishare-delta-tree
+application/vnd.pvi.ptid1
+application/vnd.pwg-multiplexed
+application/vnd.pwg-xhtml-print+xml
+application/vnd.quark.quarkxpress
+application/vnd.rapid
+application/vnd.s3sms
+application/vnd.sealed.net
+application/vnd.seemail
+application/vnd.shana.informed.formdata
+application/vnd.shana.informed.formtemplate
+application/vnd.shana.informed.interchange
+application/vnd.shana.informed.package
+application/vnd.smaf
+application/vnd.sss-cod
+application/vnd.sss-dtf
+application/vnd.sss-ntf
+application/vnd.street-stream
+application/vnd.svd
+application/vnd.swiftview-ics
+application/vnd.triscape.mxs
+application/vnd.trueapp
+application/vnd.truedoc
+application/vnd.ufdl
+application/vnd.uplanet.alert
+application/vnd.uplanet.alert-wbxml
+application/vnd.uplanet.bearer-choice
+application/vnd.uplanet.bearer-choice-wbxml
+application/vnd.uplanet.cacheop
+application/vnd.uplanet.cacheop-wbxml
+application/vnd.uplanet.channel
+application/vnd.uplanet.channel-wbxml
+application/vnd.uplanet.list
+application/vnd.uplanet.list-wbxml
+application/vnd.uplanet.listcmd
+application/vnd.uplanet.listcmd-wbxml
+application/vnd.uplanet.signal
+application/vnd.vcx
+application/vnd.vectorworks
+application/vnd.vidsoft.vidconference
+application/vnd.visio
+application/vnd.visionary
+application/vnd.vividence.scriptfile
+application/vnd.vsf
+application/vnd.wap.sic
+application/vnd.wap.slc
+application/vnd.wap.wbxml wbxml
+application/vnd.wap.wmlc wmlc
+application/vnd.wap.wmlscriptc wmlsc
+application/vnd.webturbo
+application/vnd.wrq-hp3000-labelled
+application/vnd.wt.stf
+application/vnd.wv.csp+wbxml
+application/vnd.xara
+application/vnd.xfdl
+application/vnd.yamaha.hv-dic
+application/vnd.yamaha.hv-script
+application/vnd.yamaha.hv-voice
+application/vnd.yellowriver-custom-menu
+application/voicexml+xml vxml
+application/watcherinfo+xml
+application/whoispp-query
+application/whoispp-response
+application/wita
+application/wordperfect5.1
+application/x-bcpio bcpio
+application/x-cdlink vcd
+application/x-chess-pgn pgn
+application/x-compress
+application/x-cpio cpio
+application/x-csh csh
+application/x-director dcr dir dxr
+application/x-dvi dvi
+application/x-futuresplash spl
+application/x-gtar gtar
+application/x-gzip
+application/x-hdf hdf
+application/x-javascript js
+application/x-koan skp skd skt skm
+application/x-latex latex
+application/x-netcdf nc cdf
+application/x-sh sh
+application/x-shar shar
+application/x-shockwave-flash swf
+application/x-stuffit sit
+application/x-sv4cpio sv4cpio
+application/x-sv4crc sv4crc
+application/x-tar tar
+application/x-tcl tcl
+application/x-tex tex
+application/x-texinfo texinfo texi
+application/x-troff t tr roff
+application/x-troff-man man
+application/x-troff-me me
+application/x-troff-ms ms
+application/x-ustar ustar
+application/x-wais-source src
+application/x400-bp
+application/xhtml+xml xhtml xht
+application/xslt+xml xslt
+application/xml xml xsl
+application/xml-dtd dtd
+application/xml-external-parsed-entity
+application/zip zip
+audio/32kadpcm
+audio/amr
+audio/amr-wb
+audio/basic au snd
+audio/cn
+audio/dat12
+audio/dsr-es201108
+audio/dvi4
+audio/evrc
+audio/evrc0
+audio/g722
+audio/g.722.1
+audio/g723
+audio/g726-16
+audio/g726-24
+audio/g726-32
+audio/g726-40
+audio/g728
+audio/g729
+audio/g729D
+audio/g729E
+audio/gsm
+audio/gsm-efr
+audio/l8
+audio/l16
+audio/l20
+audio/l24
+audio/lpc
+audio/midi mid midi kar
+audio/mpa
+audio/mpa-robust
+audio/mp4a-latm
+audio/mpeg mpga mp2 mp3
+audio/parityfec
+audio/pcma
+audio/pcmu
+audio/prs.sid
+audio/qcelp
+audio/red
+audio/smv
+audio/smv0
+audio/telephone-event
+audio/tone
+audio/vdvi
+audio/vnd.3gpp.iufp
+audio/vnd.cisco.nse
+audio/vnd.cns.anp1
+audio/vnd.cns.inf1
+audio/vnd.digital-winds
+audio/vnd.everad.plj
+audio/vnd.lucent.voice
+audio/vnd.nortel.vbk
+audio/vnd.nuera.ecelp4800
+audio/vnd.nuera.ecelp7470
+audio/vnd.nuera.ecelp9600
+audio/vnd.octel.sbc
+audio/vnd.qcelp
+audio/vnd.rhetorex.32kadpcm
+audio/vnd.vmx.cvsd
+audio/x-aiff aif aiff aifc
+audio/x-alaw-basic
+audio/x-mpegurl m3u
+audio/x-pn-realaudio ram ra
+audio/x-pn-realaudio-plugin
+application/vnd.rn-realmedia rm
+audio/x-wav wav
+chemical/x-pdb pdb
+chemical/x-xyz xyz
+image/bmp bmp
+image/cgm cgm
+image/g3fax
+image/gif gif
+image/ief ief
+image/jpeg jpeg jpg jpe
+image/naplps
+image/png png
+image/prs.btif
+image/prs.pti
+image/svg+xml svg
+image/t38
+image/tiff tiff tif
+image/tiff-fx
+image/vnd.cns.inf2
+image/vnd.djvu djvu djv
+image/vnd.dwg
+image/vnd.dxf
+image/vnd.fastbidsheet
+image/vnd.fpx
+image/vnd.fst
+image/vnd.fujixerox.edmics-mmr
+image/vnd.fujixerox.edmics-rlc
+image/vnd.globalgraphics.pgb
+image/vnd.mix
+image/vnd.ms-modi
+image/vnd.net-fpx
+image/vnd.svf
+image/vnd.wap.wbmp wbmp
+image/vnd.xiff
+image/x-cmu-raster ras
+image/x-icon ico
+image/x-portable-anymap pnm
+image/x-portable-bitmap pbm
+image/x-portable-graymap pgm
+image/x-portable-pixmap ppm
+image/x-rgb rgb
+image/x-xbitmap xbm
+image/x-xpixmap xpm
+image/x-xwindowdump xwd
+message/delivery-status
+message/disposition-notification
+message/external-body
+message/http
+message/news
+message/partial
+message/rfc822
+message/s-http
+message/sip
+message/sipfrag
+model/iges igs iges
+model/mesh msh mesh silo
+model/vnd.dwf
+model/vnd.flatland.3dml
+model/vnd.gdl
+model/vnd.gs-gdl
+model/vnd.gtw
+model/vnd.mts
+model/vnd.parasolid.transmit.binary
+model/vnd.parasolid.transmit.text
+model/vnd.vtu
+model/vrml wrl vrml
+multipart/alternative
+multipart/appledouble
+multipart/byteranges
+multipart/digest
+multipart/encrypted
+multipart/form-data
+multipart/header-set
+multipart/mixed
+multipart/parallel
+multipart/related
+multipart/report
+multipart/signed
+multipart/voice-message
+text/calendar ics ifb
+text/css css
+text/directory
+text/enriched
+text/html html htm
+text/parityfec
+text/plain asc txt
+text/prs.lines.tag
+text/rfc822-headers
+text/richtext rtx
+text/rtf rtf
+text/sgml sgml sgm
+text/t140
+text/tab-separated-values tsv
+text/uri-list
+text/vnd.abc
+text/vnd.curl
+text/vnd.dmclientscript
+text/vnd.fly
+text/vnd.fmi.flexstor
+text/vnd.in3d.3dml
+text/vnd.in3d.spot
+text/vnd.iptc.nitf
+text/vnd.iptc.newsml
+text/vnd.latex-z
+text/vnd.motorola.reflex
+text/vnd.ms-mediapackage
+text/vnd.net2phone.commcenter.command
+text/vnd.sun.j2me.app-descriptor
+text/vnd.wap.si
+text/vnd.wap.sl
+text/vnd.wap.wml wml
+text/vnd.wap.wmlscript wmls
+text/x-setext etx
+text/xml
+text/xml-external-parsed-entity
+video/bmpeg
+video/bt656
+video/celb
+video/dv
+video/h261
+video/h263
+video/h263-1998
+video/h263-2000
+video/jpeg
+video/mp1s
+video/mp2p
+video/mp2t
+video/mp4v-es
+video/mpv
+video/mpeg mpeg mpg mpe
+video/nv
+video/parityfec
+video/pointer
+video/quicktime qt mov
+video/smpte292m
+video/vnd.fvt
+video/vnd.motorola.video
+video/vnd.motorola.videop
+video/vnd.mpegurl mxu m4u
+video/vnd.nokia.interleaved-multimedia
+video/vnd.objectvideo
+video/vnd.vivo
+video/x-msvideo avi
+video/x-sgi-movie movie
+x-conference/x-cooltalk ice
diff --git a/sca-cpp/branches/cpp-contrib/contrib/samples/HttpdBigBank/httpserver/htdocs/index.html b/sca-cpp/branches/cpp-contrib/contrib/samples/HttpdBigBank/httpserver/htdocs/index.html
new file mode 100644
index 0000000000..1bfb3e30c2
--- /dev/null
+++ b/sca-cpp/branches/cpp-contrib/contrib/samples/HttpdBigBank/httpserver/htdocs/index.html
@@ -0,0 +1,21 @@
+<!--
+ 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><body><h1>It works!</h1></body></html>
+
diff --git a/sca-cpp/branches/cpp-contrib/contrib/samples/HttpdBigBank/httpserver/startserver.bat b/sca-cpp/branches/cpp-contrib/contrib/samples/HttpdBigBank/httpserver/startserver.bat
new file mode 100644
index 0000000000..fe319248f5
--- /dev/null
+++ b/sca-cpp/branches/cpp-contrib/contrib/samples/HttpdBigBank/httpserver/startserver.bat
@@ -0,0 +1,89 @@
+@echo off
+
+@REM Licensed to the Apache Software Foundation (ASF) under one
+@REM or more contributor license agreements. See the NOTICE file
+@REM distributed with this work for additional information
+@REM regarding copyright ownership. The ASF licenses this file
+@REM to you under the Apache License, Version 2.0 (the
+@REM "License"); you may not use this file except in compliance
+@REM with the License. You may obtain a copy of the License at
+@REM
+@REM http://www.apache.org/licenses/LICENSE-2.0
+@REM
+@REM Unless required by applicable law or agreed to in writing,
+@REM software distributed under the License is distributed on an
+@REM "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+@REM KIND, either express or implied. See the License for the
+@REM specific language governing permissions and limitations
+@REM under the License.
+
+setlocal
+
+set APFULLDIR=%~d0%~p0
+echo Running from %APFULLDIR%
+
+if "%TUSCANY_SCACPP%" == "" (
+echo "TUSCANY_SCACPP not set"
+goto end
+)
+echo Using SCA installed at %TUSCANY_SCACPP%
+
+if "%TUSCANY_SDOCPP%" == "" (
+echo "TUSCANY_SDOCPP not set"
+goto end
+)
+echo Using SDO installed at %TUSCANY_SDOCPP%
+
+if "%AXIS2C_HOME%" == "" (
+echo "AXIS2C_HOME not set"
+goto end
+)
+echo Using Axis2C installed at %AXIS2C_HOME%
+
+if "%HTTPD_HOME%" == "" (
+echo "HTTPD_HOME not set"
+goto end
+)
+echo Using HTTPD installed at %HTTPD_HOME%
+
+set PATH=%TUSCANY_SCACPP%\extensions\sca\reference\bin;%TUSCANY_SCACPP%\extensions\sca\service\bin;%TUSCANY_SCACPP%\extensions\ws\reference\bin;%TUSCANY_SCACPP%\extensions\ws\service\bin;%TUSCANY_SCACPP%\extensions\ruby\bin;%TUSCANY_SCACPP%\bin;%TUSCANY_SDOCPP%\bin;%AXIS2C_HOME%\lib;%HTTPD_HOME%\bin;%PATH%
+
+set TUSCANY_SCACPP_ROOT=%APFULLDIR%\..\
+set TUSCANY_SCACPP_BASE_URI=http://localhost:9090
+
+@REM Generate the mod_axis2 configuration
+if not exist %APFULLDIR%\conf\mod_axis2.conf (
+ echo LoadModule axis2_module %AXIS2C_HOME%\lib\mod_axis2.dll > %APFULLDIR%\conf\mod_axis2.conf
+ echo Axis2RepoPath %AXIS2C_HOME% >> %APFULLDIR%\conf\mod_axis2.conf
+ echo Axis2LogFile %AXIS2C_HOME%\logs\httpd.log >> %APFULLDIR%\conf\mod_axis2.conf
+ echo Axis2LogLevel AXIS2_LOG_LEVEL_DEBUG >> %APFULLDIR%\conf\mod_axis2.conf
+ echo ^<Location /axis2^> >> %APFULLDIR%\conf\mod_axis2.conf
+ echo SetHandler axis2_module >> %APFULLDIR%\conf\mod_axis2.conf
+ echo ^</Location^> >> %APFULLDIR%\conf\mod_axis2.conf
+)
+
+@REM Generate the tuscany_sca_mod_rest configuration
+@REM if not exist %APFULLDIR%\conf\tuscany_sca_mod_rest.conf (
+@REM echo LoadModule sca_rest_module %TUSCANY_SCACPP%/extensions/rest\service/bin/tuscany_sca_mod_rest.dll > %APFULLDIR%\conf\tuscany_sca_mod_rest.conf
+@REM echo TuscanyHome %TUSCANY_SCACPP% >> %APFULLDIR%\conf\tuscany_sca_mod_rest.conf
+@REM echo ^<Location /rest^> >> %APFULLDIR%\conf\tuscany_sca_mod_rest.conf
+@REM echo SetHandler sca_rest_module >> %APFULLDIR%\conf\tuscany_sca_mod_rest.conf
+@REM echo TuscanyRoot %TUSCANY_SCACPP_ROOT% >> %APFULLDIR%\conf\tuscany_sca_mod_rest.conf
+@REM echo ^</Location^> >> %APFULLDIR%\conf\tuscany_sca_mod_rest.conf
+@REM )
+
+@REM Generate the base HTTPD configuration
+if not exist %APFULLDIR%\conf\base.conf (
+ echo LoadModule mime_module %HTTPD_HOME%\modules\mod_mime.so > %APFULLDIR%\conf\base.conf
+ echo LoadModule dir_module %HTTPD_HOME%\modules\mod_dir.so >> %APFULLDIR%\conf\base.conf
+ echo DocumentRoot %APFULLDIR%\htdocs >> %APFULLDIR%\conf\base.conf
+)
+
+@REM Create logs directory
+if not exist %APFULLDIR%\logs mkdir %APFULLDIR%\logs
+@rem set TUSCANY_SCACPP_LOG=%APFULLDIR%\logs\tuscany-server.log
+set TUSCANY_SCACPP_LOGGING=9
+
+@REM Start the HTTP server
+echo Starting Apache httpd
+httpd -X -d %APFULLDIR%
diff --git a/sca-cpp/branches/cpp-contrib/contrib/samples/HttpdBigBank/httpserver/startserver.sh b/sca-cpp/branches/cpp-contrib/contrib/samples/HttpdBigBank/httpserver/startserver.sh
new file mode 100755
index 0000000000..cca8472b75
--- /dev/null
+++ b/sca-cpp/branches/cpp-contrib/contrib/samples/HttpdBigBank/httpserver/startserver.sh
@@ -0,0 +1,78 @@
+#!/bin/sh
+
+# 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.
+
+APFULLDIR=`pwd`
+
+if [ x$TUSCANY_SCACPP = x ]; then
+echo "TUSCANY_SCACPP not set"
+exit;
+fi
+echo "Using SCA installed at $TUSCANY_SCACPP"
+
+if [ x$TUSCANY_SDOCPP = x ]; then
+echo "TUSCANY_SDOCPP not set"
+exit;
+fi
+echo "Using SDO installed at $TUSCANY_SDOCPP"
+
+if [ x$AXIS2C_HOME = x ]; then
+echo "AXIS2C_HOME not set"
+exit;
+fi
+echo "Using Axis2C installed at $AXIS2C_HOME"
+
+export LD_LIBRARY_PATH=$TUSCANY_SCACPP/extensions/cpp/lib:$TUSCANY_SCACPP/lib:$TUSCANY_SDOCPP/lib:$AXIS2C_HOME/lib:$LD_LIBRARY_PATH
+
+export TUSCANY_SCACPP_ROOT=$APFULLDIR/../
+export TUSCANY_SCACPP_BASE_URI=http://localhost:9090
+
+# Generate the mod_axis2 configuration
+if [ ! -f conf/mod_axis2.conf ]; then
+ echo "LoadModule axis2_module $AXIS2C_HOME/lib/libmod_axis2.so.0.0.0" >conf/mod_axis2.conf
+ echo "Axis2RepoPath $AXIS2C_HOME" >>conf/mod_axis2.conf
+ echo "Axis2LogFile $AXIS2C_HOME/logs/httpd.log" >>conf/mod_axis2.conf
+ echo "Axis2LogLevel AXIS2_LOG_LEVEL_INFO" >>conf/mod_axis2.conf
+ echo "<Location /axis2>" >>conf/mod_axis2.conf
+ echo " SetHandler axis2_module" >>conf/mod_axis2.conf
+ echo "</Location>" >>conf/mod_axis2.conf
+fi
+
+# Generate the mod_rest configuration
+if [ ! -f conf/tuscany_sca_mod_rest.conf ]; then
+ echo "LoadModule sca_rest_module $TUSCANY_SCACPP/extensions/rest/service/lib/libtuscany_sca_mod_rest.so.0.0.0" >conf/tuscany_sca_mod_rest.conf
+ echo "TuscanyHome $TUSCANY_SCACPP" >>conf/tuscany_sca_mod_rest.conf
+ echo "<Location /rest>" >>conf/tuscany_sca_mod_rest.conf
+ echo " SetHandler sca_rest_module" >>conf/tuscany_sca_mod_rest.conf
+ echo " TuscanyRoot $TUSCANY_SCACPP_ROOT" >>conf/tuscany_sca_mod_rest.conf
+ echo "</Location>" >>conf/tuscany_sca_mod_rest.conf
+fi
+
+# Generate the HTTPD base configuration
+if [ ! -f conf/base.conf ]; then
+ echo "DocumentRoot $APFULLDIR/htdocs" >conf/base.conf
+fi
+
+# Create logs directory
+if [ ! -d logs ]; then
+ mkdir logs
+fi
+
+# Start the HTTP server
+echo "Starting Apache httpd"
+apachectl -k start -d $APFULLDIR
diff --git a/sca-cpp/branches/cpp-contrib/contrib/samples/HttpdBigBank/httpserver/stopserver.sh b/sca-cpp/branches/cpp-contrib/contrib/samples/HttpdBigBank/httpserver/stopserver.sh
new file mode 100755
index 0000000000..c17f632a3e
--- /dev/null
+++ b/sca-cpp/branches/cpp-contrib/contrib/samples/HttpdBigBank/httpserver/stopserver.sh
@@ -0,0 +1,25 @@
+#!/bin/sh
+
+# 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.
+
+APFULLDIR=`pwd`
+
+# Stop the HTTP server
+echo "Stopping Apache httpd"
+apachectl -k stop -d $APFULLDIR
+