| This page is undergoing complete re-write to be more like a user guide than it is today. You are welcome to help review and complete it.
|
About Tuscany User Guide
It is assumed that by now you have browsed through the introduction to SCA section or are familiar with SCA. This user guide helps you learn more about SCA through Tuscany. It starts with building a simple application and progresses into more advanced features through references to samples that reside in Tuscany.
Before we start, let's emphasise that it is Tuscany's goal to provide an implementaiton that avoids imposing rules and requirements on how you write your applications. In fact the goal is to let you write application code without being concerned about the technology you choose or the environment in which it will be used. You focus on your business logic and Tuscany infrastructure will handle the rest.
Create Your First Application
This simple exercise provides you with a hands-on experience for creating an SCA calculator application. Although this is a simple application, it will cover the following items:
- Creating SCA POJO-based components
- Composing an application
- Deploying the application
- Modifying the application to use a different binding
Give create a calculator application a try.
Create a Webservices component
Learn how to expose your pojo components as webservices. This will cover
- Creating SCA POJO-based component and exposing it as a webservice
Give Building your first web services using Tuscany a try.
Create a Distributed Application
A Tuscany application can be run in a single or multi-node environment. Here we introduce the Tuscany node and SCA domain and explain how the calculator example can be distributed across multiple nodes. We will cover the following:
- What is a node?
- What is the SCA domain
- How to create and application that will run across multiple nodes in a domain
Take a look at Distributed SCA Domain
Create a Store Enterprise Application
Now that you have created a simple calculator application, let's move on to a more interesting application called store. This application is developed in Eclipse enviromment and uses more advanced features that are offered in Tuscany. You will notice that it is as simple to create this application as it was to create the calculator application.
Getting Started with Tuscany using a Tuscany Distribution In Eclipse
This is a quick getting started guide that go trough the steps of building the store scenario using the Tuscany SCA distribution manually installed into Eclipse
Getting Started with Tuscany using the Tuscany Eclipse Plugin
This is a quick getting started guide that go trough the steps of building the store scenario using the Tuscany Eclipse plugin.
Host Environments
Tusncany applications can be run in a Tuscany standalone environment or in multitude of different host environments. You have seen examples of how to run in standalone environments in the previous sections. Here we cover other platforms.
Tomcat
Running a Tuscany SCA Java enabled webapp in Tomcat is as simple as copying the webapp to the Tomcat webapps directory.
Geronimo
TODO ... get link from Vamsi
WebSphere
Please see this blog entry to learn how to do this: http://jsdelfino.blogspot.com/2007/10/how-to-use-apache-tuscany-with.html
WebLogic
Please see this user's blog to learn how to do this: http://davesowerby.blogspot.com/2008/02/using-tuscany-with-weblogic.html
Eclipse
You can develop and run your applications in Eclipse environment.
Getting Started with Tuscany using a Tuscany Distribution In Eclipse
Tuscany also provides a Tuscany Eclipse plug-in to facilitate the development of SCA applications on Tuscany in the Eclipse environment.
Getting Started with Tuscany using the Tuscany Eclipse Plugin
Using Extensions
What are extensions? Well, we call these extensions: bindings, implementation types, interface types, policies. Think of SCA Java infrastructure as providing the framework that supports all these pluggable functionality. Bindings provide protocol handling, implementation types provide support for different languages and programming models, interface types allow enable you to define interfaces in different ways for example Java, WSDL and policies enable you to choose which type of policies you want to apply to your application. You can pick and choose what you need based on your requirements and the technologies that you use. For a complete list of available extensions and their documentation please check this link.
Running Tuscany with Java2 Security Enabled
Tuscany can be enabled to run with Java2 security on.
Running Tuscany with Java 2 Security Enabled
Do I need all of Tuscany?
Tuscany SCA has a very modular architecture. Think of it as building blocks. You pick what you need for your particular application. In 1.x, there is one binary distribution. you can get to a smaller subset through building the source with the appropriate modules that you need. In 2.x code line, we are aiming to provide smaller distributions. For more information about how you can build a smaller distribution please see this link