Hi Luciano, Thanks for taking a look. Comments inline:
Cheers, On 07/07/06, Luciano Resende <[EMAIL PROTECTED]> wrote:
Hi Pete I took sometime to look at the C++ M1 Release candidate and I have the following feedback... Please keep in mind that my C++ skills is not one of my biggest strengths as of today, so, some feedback might be due to lack of involvement with C++ for couple of years... Also note that I didn't have a C++ DEV environment, so I was just running things from the binaries you posted. - In Tuscany Java, we have some sample script files to boot the Tuscany environment ( http://incubator.apache.org/tuscany/projectjava.html#Enviroment%20scripts). Should we have something similar for C++ environment ? I have created a sample one just to using for C++ M1 and could be used as a sample if people think this is a good idea.
I'm not particularly keen on scripts which have hard-coded paths in (to whoevers machine they were written on). I think a parameterised script could be useful though. - Instructions on how to install Tuscany SCA CPP posted here (
http://svn.apache.org/repos/asf/incubator/tuscany/cpp/sca/INSTALL) says: - 5.a. Unzip the supplied zip file. set the TUSCANY_SCACPP variable to point to the 'deploy' directory in the unzipped directory tree. I can find the deploy directory in the c++ svn repository, but it's not available in the M1 release candidate. Is this just the directory the files were extracted ? If so, documentation needs clarification, otherwise M1 zip need to be checked. Trying to go a step ahead, I set this to the place i unzipped the files and looks like it accepted that :)
That is a mistake in the INSTALL doc it should say: 5.a. Unzip the supplied zip file. set the TUSCANY_SCACPP variable to point to the unzipped directory tree. - In order to start getting better results from the SCA Calculator
sample program, I had to figure out the following items that were not mentioned in the INSTALL instructions - Need to add axis2c\lib directory to path as well... instructions only mention bin directory
This is a mistake too. it is axis2c\lib that should be added to the path. I'll fix he doc. - Need the following runtime env dlls : msvcp60d.dll, msvcrtd.dll(my system only had the regular ones without the d)
This is an interesting one. The Windows distribution build is actually a debug build. It probably should be a "release" build. - After fixing the DLL issues, i found that the calculator sample app
was expecting the following environment variable to be set : SystemConfigurationException TUSCANY_SCACPP_SYSTEM_ROOT environment variable not set I set that to the same value of TUSCANY_SCACPP Do we need these 2 env variables ? What is the difference between TUSCANY_SCACPP and TUSCANY_SCACPP_SYSTEM_ROOT - Now I'm at the point I'm getting the following exception SystemConfigurationException Duplicate wire for reference: CalculatorDivideService Any workaround here ?
The variables are different. TUSCANY_SCACPP points to the installed root for the runtime to locate its model schemas etc. TUSCANY_SCACPP_SYSTEM_ROOT is used to point to the deployed SCA System... i.e. the folder that contains the modules and subsystems of the sca application. The samples INSTALL says: 1. The following environment variables are required: ... snip ... set TUSCANY_SCACPP_SYSTEM_ROOT=<samples_install_dir>/Calculator/deploy By setting this to the same as TUSCANY_SCACPP the runtime is finding all the sca.module files in the tree. There is a copy in the samples folder and one is deployed to the Calculator/deploy folder so everything is defined twice...hence the duplicate wire exception.
Other minor things - Couple files like : LICENSE, NOTICE, README all have no extensions, are these the way they are supposed to be ? The Java M1 had some of these files with the txt extension... - The SDO package have two readme with different contents on it (README and README.txt)
It seems standard practice in C/C++ projects using Automake that thes files do not have extensions. -- Luciano
*"Pete Robbins" <[EMAIL PROTECTED]>* 07/05/2006 08:02 PM Please respond to firstname.lastname@example.org To email@example.com cc Subject C++ M1 Release Candidate I have posted a candidate for the first C++ release here. http://people.apache.org/~robbinspg/RC1 Would all interested parties take some time to review this so that we can either re-spin the release or vote on it asap. The website documentation is out of date and will be re-written to sync with what is in the release. Hopefully this will be done tomorrow. A Calculator sample is included which demonstrates deploying an SCA module, component wiring, locating and invoking C++ service from C++ component, invoking from a C++ client, and exposing a service as a web service using ws binding. Release Summary ============= Tuscany SCA C++ provides a runtime implementation for the Service Component Architecture 0.9 specification, written in C++ and will currently support C++ component implementation types. This is not yet a complete implementation and known restrictions are described below. Supported SCA Assembly Model features * All features are supported unless listed under the known restrictions below. See SCA Assembly Model specification. Supported language bindings * Component implementations written in C++. See SCA Client and Implementation Model specification. * Component interfaces described by C++ classes. See SCA Client and Implementation Model specification. Supported external service and entry point bindings * The web service binding is supported. This implementation will support web services which using document literal SOAP bindings conforming to the WS-I basic profile (rpc/encoded is not yet supported). Known restrictions * Subsystem: wiring, entry points and external services are not supported. * Local service interfaces cannot use overloaded operations (the SCA specification limits remote service interfaces to not using overloaded operations). * Each WSDL definition for a web service binding must be in a single WSDL document. * No load time validation of the deployed SCA application (run time validation only). * No metadata API. -- Pete --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]