summaryrefslogtreecommitdiffstats
path: root/site/trunk/site-publish/getting-involved-projects.html
blob: 71641662b969a6bc7a1805c1540fb0339361bb99 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
<!--

    Licensed to the Apache Software Foundation (ASF) under one or more
    contributor license agreements.  See the NOTICE file distributed with
    this work for additional information regarding copyright ownership.
    The ASF licenses this file to You under the Apache License, Version 2.0
    (the "License"); you may not use this file except in compliance with
    the License.  You may obtain a copy of the License at

       http://www.apache.org/licenses/LICENSE- 2.0

    Unless required by applicable law or agreed to in writing, software
    distributed under the License is distributed on an "AS IS" BASIS,
    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    See the License for the specific language governing permissions and
    limitations under the License.
-->


<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<HTML>
    <HEAD>
		<!-- generateKeywords macro -->
	    <META name="description" content="Apache Tuscany">
        <META name="keywords" content="apache, apache tuscany, tuscany, service, services, fabric, soa, service oriented architecture,  sca, service component architecture, das, sdo, csa, ruby, opensource">
		<!-- generateKeywords macro end -->
		
        <LINK type="text/css" rel="stylesheet" href="http://tuscany.apache.org/stylesheets/default.css">
        <LINK rel="SHORTCUT ICON" href="https://cwiki.apache.org/confluence/display/TUSCANY/$images/favicon.ico">   
        <TITLE>Apache Tuscany : Getting Involved - Projects</TITLE>
    <META http-equiv="Content-Type" content="text/html;charset=UTF-8"></HEAD>
    
    <BODY onload="init()">
        <!-- topNav macro -->
		<TABLE valign="top" border="0" cellspacing="0" cellpadding="0" width="100%" background="http://tuscany.apache.org/images/TuscanyLogoNEW_Text_120px_bg.jpg">
			<TR>
				<TD valing="top" align="left">
					<A href="https://cwiki.apache.org/confluence/pages/viewpage.action?spaceKey=TUSCANY&title=$siteroot"><IMG src="http://tuscany.apache.org/images/TuscanyLogoNEW_Text_120px_bg.jpg" height="91" width="25" border="0"></A>
				</TD>
				<TD>
					<A href="http://tuscany.apache.org/"><IMG src="http://tuscany.apache.org/images/TuscanyLogo.jpg" border="0"></A>
				</TD>
				
				<TD width="100%">
					&nbsp;
				</TD>

				<!-- Adds the edit page link to the top banner-->
				<TD valign="bottom">
					<DIV style="padding: 2px 10px; margin: 0px;">
						<A href="https://cwiki.apache.org/confluence/pages/editpage.action?pageId=82199">
						<IMG src="http://tuscany.apache.org/images/notep_16.gif" height="16" width="16" border="0" align="absmiddle" title="Edit Page"></A>
					</DIV>
				</TD>

			</TR>
		</TABLE>
        <!-- topNav macro end -->

		<!-- breadCrumbs macro -->
		<TABLE border="0" cellpadding="2" cellspacing="0" width="100%">
			<TR class="topBar">
				<TD align="left" valign="middle" class="topBarDiv" nowrap="true" width="100%">
					&nbsp;<A href="home.html" title="Apache Tuscany">Apache Tuscany</A>&nbsp;&gt;&nbsp;<A href="home.html" title="Home">Home</A>&nbsp;&gt;&nbsp;<A href="general-info.html" title="General Info">General Info</A>&nbsp;&gt;&nbsp;<A href="" title="Getting Involved - Projects">Getting Involved - Projects</A>
				</TD>
				
				<TD align="right" valign="middle" class="topBarDiv" align="left" nowrap="true">
				<A href="http://mail-archives.apache.org/mod_mbox/tuscany-user">User List</A> | <A href="http://mail-archives.apache.org/mod_mbox/tuscany-dev">Dev List</A> | <A href="http://issues.apache.org/jira/browse/Tuscany">Issue Tracker</A>&nbsp;&nbsp;
				</TD>
			</TR>
		</TABLE>
		<!-- breadCrumbs macro end -->


        <TABLE border="0" cellpadding="0" width="100%" bgcolor="#FFFFFF">
            <TR>
                <TD align="left" valign="top">

					<!-- pageContent macro -->
					<DIV id="PageContent">
												
						<DIV class="pagecontent">
							<DIV class="wiki-content">
								<TABLE class="sectionMacro" border="0" cellpadding="5" cellspacing="0" width="100%"><TBODY><TR>
<TD class="confluenceTd" valign="top" width="15%">
<DIV class="panel" style="background-color: #ECF4D1;border-color: #C3CDA1;border-style: solid;border-width: 1px;"><DIV class="panelHeader" style="border-bottom-width: 1px;border-bottom-style: solid;border-bottom-color: #C3CDA1;background-color: #C3CDA1;"><B>General</B></DIV><DIV class="panelContent" style="background-color: #ECF4D1;">
<P><A href="home.html" title="Home">Home</A><BR>
<A href="http://www.apache.org/licenses/LICENSE-2.0.html" class="external-link" rel="nofollow">License </A><BR>
<A href="tuscany-downloads-documentations.html" title="Tuscany Downloads & Documentations">Downloads</A><BR>
<A href="tuscany-downloads-documentations.html" title="Tuscany Downloads & Documentations">Documentation</A><BR>
<A href="tuscany-books-and-articles.html" title="Tuscany Books and Articles">Books and Articles</A><BR>
<A href="tuscany-dashboard.html" title="Tuscany Dashboard">Dashboard</A><BR>
<A href="issue-tracking.html" title="Issue Tracking">Found a Bug?</A><BR>
<A href="http://www.apache.org/foundation/sponsorship.html" class="external-link" rel="nofollow">Sponsorship </A><BR>
<A href="http://www.apache.org/foundation/thanks.html" class="external-link" rel="nofollow">Thanks </A><BR>
<A href="privacy-policy.html" title="Privacy Policy">Privacy Policy</A></P>
</DIV></DIV>
<DIV class="panel" style="background-color: #ECF4D1;border-color: #b4b4b5;border-style: solid;border-width: 1px;"><DIV class="panelHeader" style="border-bottom-width: 1px;border-bottom-style: solid;border-bottom-color: #b4b4b5;background-color: #C3CDA1;"><B>Community</B></DIV><DIV class="panelContent" style="background-color: #ECF4D1;">
<P><A href="getting-involved.html" title="Getting Involved">Get Involved</A><BR>
<A href="mailing-lists.html" title="Mailing Lists">Mailing Lists</A><BR>
<A href="committers.html" title="Committers">Committers</A><BR>
<A href="chinese-portal.html" title="Chinese Portal">Chinese Portal </A> <SPAN class="image-wrap" style=""><IMG src="community.data/chinese.jpg" style="border: 0px solid black"></SPAN><BR>
<A href="projects-using-tuscany.html" title="Projects Using Tuscany">Powered By</A></P>
</DIV></DIV>
<DIV class="panel" style="background-color: #ECF4D1;border-color: #b4b4b5;border-style: solid;border-width: 1px;"><DIV class="panelHeader" style="border-bottom-width: 1px;border-bottom-style: solid;border-bottom-color: #b4b4b5;background-color: #C3CDA1;"><B>Tuscany SCA</B></DIV><DIV class="panelContent" style="background-color: #ECF4D1;">
<P><A href="sca-overview.html" title="SCA Overview">SCA Overview</A><BR>
<A href="sca-java.html" title="SCA Java">SCA Java</A><BR>
<A href="sca-native.html" title="SCA Native">SCA Native</A><BR>
<A href="php-sca.html" title="PHP SCA">SCA PHP</A><BR>
<A href="http://cwiki.apache.org/confluence/display/TUSCANY/Java%20SCA%20Tools" class="external-link" rel="nofollow">Tools</A></P>
</DIV></DIV>
<DIV class="panel" style="background-color: #ECF4D1;border-color: #b4b4b5;border-style: solid;border-width: 1px;"><DIV class="panelHeader" style="border-bottom-width: 1px;border-bottom-style: solid;border-bottom-color: #b4b4b5;background-color: #C3CDA1;"><B>Subprojects</B></DIV><DIV class="panelContent" style="background-color: #ECF4D1;">
<P><A href="sdo-overview.html" title="SDO Overview">SDO</A><BR>
<A href="das-overview.html" title="DAS Overview">DAS</A></P>
</DIV></DIV></TD>
<TD class="confluenceTd" valign="top" width="85%">

<H2><A name="GettingInvolved-Projects-Projectsforthebuddingcontributor..."></A>Projects for the budding contributor...</H2>


<P>This page enlists some ideas that can be taken up for implementation and contribution, by anybody interested in Apache Tuscany - University Students, SCA and SOA enthusiasts...</P>

<H3><A name="GettingInvolved-Projects-"></A><FONT color="#003366">1. Consuming SCA services from Google Gadgets</FONT></H3>


<P>Summary : Integrate Tuscany and Apache Shindig to mash-up Google gadgets and backend SCA service components (Web Services, existing JEE services etc)</P>

<P>Use SCA to model references from Javascript gadgets to server-side services, and provide transparent access to these services (by injecting Javascript proxies into the gadgets, similar to what Tuscany currently does with its SCA Widget component support).</P>

<P>Use SCA composites to configure and assemble the gadgets together as well, allowing the application developer to use a consistent SCA-based assembly model for client-side mashups, server-side compositions and mixes of the two.</P>

<P>One possible scenario would be to construct a Stock Quote widget, that would get the quotes trough a SCA Service</P>

<H3><A name="GettingInvolved-Projects-"></A><FONT color="#003366">2. Data Services (Implementation.data.jpa) </FONT></H3>

<P>Create a new implementation type that would facilitate and simplify the access to Relation Database using JPA.<BR>
A component using this new implementation type would define itself in the composite as :</P>

<DIV class="code panel" style="border-width: 1px;"><DIV class="codeContent panelContent">
<PRE class="code-java">
   ...
   &lt;implementation.data.jpa db=<SPAN class="code-quote">&quot;...&quot;</SPAN> table=<SPAN class="code-quote">&quot;...&quot;</SPAN>/&gt;
</PRE>
</DIV></DIV>

<H3><A name="GettingInvolved-Projects-"></A><FONT color="#003366">2. Data Feeds and Data Services</FONT></H3>


<P>Summary : Extend the Tuscany Atom Binding to work with data from relational databases to provide data services. This could be done by completing/enhancing the experimental Tuscany Data component type.</P>

<P>One possible scenario would be to modify the store sample/tutorial to provide a Catalog implementation exposing catalog rows from a relation database.</P>

<H3><A name="GettingInvolved-Projects-"></A><FONT color="#003366">3.Integrate Java SCA with PHP</FONT></H3>

<P>PHP PECL project provides a PHP implementation of the Service Component Architecture (SCA) programming model (see <A href="https://cwiki.apache.org/confluence/pages/createpage.action?spaceKey=TUSCANY&title=WWW&linkCreation=true&fromPageId=82199" class="createlink">WWW</A> <A href="http://pecl.php.net/package/SCA_SDO" class="external-link" rel="nofollow">http://pecl.php.net/package/SCA_SDO</A>). SCA is a programming model which allows you to assemble applications using a Service-Oriented Architecture style. This includes producing and consuming Web services of various types, including soap/http, json-rpc, REST,Atom. Looking into the Tuscany Apache Incubator project (see <A href="https://cwiki.apache.org/confluence/pages/createpage.action?spaceKey=TUSCANY&title=WWW&linkCreation=true&fromPageId=82199" class="createlink">WWW</A> <A href="http://incubator.apache.org/tuscany/" class="external-link" rel="nofollow">http://incubator.apache.org/tuscany/</A> ), which provides a Java-based implementation of SCA. This runtime is extensible for different implementation types, and currently supports things like BPEL, OSGi, Java (POJOs), Spring, JavaScript and XQuery. </P>

<P>I think it would make a very interesting and challenging project to extend Apache Tuscany to supports the concept of a PHP implementation type. This implementation type would be used to include PHP SCA enabled applications in an assembly which might also include any of the other Apache Tuscany implementation types. A realistic scenario for this solution might be a PHP Web front end to a Java business application. Tuscany includes a Java &quot;store&quot; application which could be converted to demonstrate the final deliverables. The solution would also require extensions to the PHP SCA project to enable existing PHP SCA service configuration to be externally overridden by Tuscany. The major work items would be as follows: </P>
<UL>
	<LI>Extend PHP SCA to support external configuration of services (PHP Scripting skills).</LI>
	<LI>Extend Apache Tuscany to provide a PHP implementation type (Java and XML/XML Schema skills).</LI>
	<LI>Extend Apache Tuscany to support PHP SCA as a deployment target(Java skills).</LI>
</UL>


<H3><A name="GettingInvolved-Projects-"></A><FONT color="#003366">4.Integrate Java SCA and JBI</FONT></H3>
<P>Build some Tuscany extensions to integrate JBI components into SCA - eg an SCA binding extension that supports running JBI binding components and maybe an SCA implementation extension that supports running JBI service engines. Both Tuscany/SCA and JBI have the concept of plugable extensions so these Tuscany extensions would be kind of adapters from the Tuscany extension APIs to the JBI APIs and you'd end up being able to drop a standard JBI binding component jar into the Tuscany runtime and have that used in an SCA assembly.</P>

<H3><A name="GettingInvolved-Projects-"></A><FONT color="#003366">5.Bring Native SCA project to Spec 1.0 level</FONT></H3>
<P>Help is needed to enhance Native SCA to support spec 1.0 level.</P>

<H3><A name="GettingInvolved-Projects-"></A><FONT color="#003366">6.Ability to use C++ and Java in a composition</FONT></H3>
<P>Integration between Native SCA and Java SCA. The ability to use legacy or new C++ type applications and integrate them into overall SOA solution which is composed of Java and C++.</P>

<H3><A name="GettingInvolved-Projects-"></A><FONT color="#003366">7.Interop with .Net</FONT></H3>
<P>How to integrate with .net.</P>

<H3><A name="GettingInvolved-Projects-"></A><FONT color="#003366">8. Data Binding for Google Protocol Buffers </FONT></H3>
<P>Google just introduced Binary Encoding Format: Protocol Buffers. Is anybody interested in developing a databinding for Tuscany to support it?</P>

<P><A href="http://www.infoq.com/news/2008/07/google-protocol-buffers" class="external-link" rel="nofollow">http://www.infoq.com/news/2008/07/google-protocol-buffers</A></P>


<H3><A name="GettingInvolved-Projects-"></A><FONT color="#003366">8. Contribute to projects under roadmaps</FONT></H3>
<P><A href="https://cwiki.apache.org/confluence/pages/createpage.action?spaceKey=TUSCANY&title=put%20roadmap%20link&linkCreation=true&fromPageId=82199" class="createlink">put roadmap link</A></P></TD></TR></TBODY></TABLE>
							</DIV>
						</DIV>
					</DIV>	
		            <!-- pageContent macro end -->
					
                </TD>
            </TR>
        </TABLE>

		<!-- footer macro -->
				<SCRIPT src="http://www.google-analytics.com/urchin.js" type="text/javascript">
		</SCRIPT>
		<SCRIPT type="text/javascript">
		   _uacct = "UA-1174707-5";
		   urchinTracker();
		</SCRIPT>
		
				<A href="http://www.statcounter.com/" target="_blank"><IMG src="http://c26.statcounter.com/counter.php?sc_project=2619156&java=0&security=94bd7e7d&invisible=0" alt="website stats" border="0"></A>    

		<DIV class="footer">
			Copyright � 2003-2012, The Apache Software Foundation&nbsp;&nbsp;</BR>
                        Apache Tuscany and the Apache Tuscany project logo are trademarks of The Apache Software Foundation.
		</DIV>
		<!-- footer macro end -->

    </BODY>
</HTML>