Let me shed some light on why this was designed this way for CS 2.0.0. As I recall we had a few reasons.
1. A user may want to have a customized project structure - eg: carbon source struct. 2. Support for existing maven project artifacts (aar/jar/xml/dar..) - change less to nothing in their existing projects to be used in CApp 3. Separate of java source dirs for different artifacts - or can cause nightmares when debugging OSGi issues. Amilas' suggestion is valid (having a project per source file looks bad). AFAIK its possible to have multiple artifacts in the same project but user has to update the poms manually. Managing such artifacts long term will not be easy though. Intuitively it does make sense to group shared artifacts in to same project (like in CS 1.0.x). One bad consequence was since carbon runs on OSGi, users didn't see same package with different impl gets "*bundled*". Users intuition was that each package was locally available (and the notion of a bundle is hidden). It would be much easier to spot problems (& manage different versions even) by separating them out to different projects. Artifacts like proxy/sequence can add a dependency to that separated project like in maven. As Amila had mentioned to me offline this can be pretty impractical when we have like hundreds of artifacts each having its own project. We foresaw this issue for synapse artifacts (thus the notion of an ESB project), I suppose it should be possible to apply a similar solution for other non-java artifacts as well. I agree its not perfect. There's still room for improvement in the design :) Regards, Saminda On Sat, Mar 10, 2012 at 3:52 AM, Hiranya Jayathilaka <[email protected]>wrote: > > > On Sat, Mar 10, 2012 at 10:06 AM, Amila Suriarachchi <[email protected]>wrote: > >> >> >> On Sat, Mar 10, 2012 at 9:13 AM, Chathuri Wimalasena >> <[email protected]>wrote: >> >>> Hi Amila, >>> >>> As mentioned earlier, we create separate maven project for each and >>> every artifact[1]. So for each and every data service also, we create a >>> separate project. >> >> >> With carbon studio 2.0.0 M9 I can create two proxy services within same >> ESB project. But can not find a way to create two Data services within one >> DSS project. I think basically you are saying is that I should not be able >> to create two proxy services within same ESB project. is that correct? >> >> >>> That is a basic design change in CS 2.0.0 in order get rid of single src >>> folder that is being shared by all the artifacts in the 1.0.x family. We >>> came up with such design in order to give a clear separation of artifacts >>> that one application (carbon application project) would require. >>> >> >> Separating different artifact types into different projects is a clear >> approach. But every artifact does not require a different project. For an >> example a class mediator can be shared with many proxy services, sequences >> etc ... And also there may be hundreds of artifacts for a given project. >> > > I agree. I think this src folder sharing is only a problem for certain > types of artifacts (eg: Axis2 services, webapps etc). But for other types > of artifacts like data services and ESB configuration it's useful to be > able to create multiple artifacts in the same project. > > Thanks, > Hiranya > > >> >> thanks, >> Amila. >> >> >>> >>> Regards, >>> Chathuri >>> >>> [1] >>> http://builder1.us1.wso2.org/~carbonstudio/carbon-studio/2.0.0/M9/documentation/overview.html#artifactProject >>> >>> >>> >>> On Sat, Mar 10, 2012 at 7:47 AM, Amila Suriarachchi <[email protected]>wrote: >>> >>>> >>>> >>>> On Fri, Mar 9, 2012 at 11:20 PM, Chathuri Wimalasena <[email protected] >>>> > wrote: >>>> >>>>> Hi Amila / AmilaM, >>>>> >>>>> Yes, it is the behavior of CS 2.0.0. For each and every artifact, we >>>>> create a project type. To create the CAR file out of these projects, you >>>>> need to create a Carbon Application project, which will only group all the >>>>> artifact projects in your workspace. You can use normal maven commands or >>>>> export option to create the CAR file out of it as you did in 1.0.x >>>>> family). Please refer [1], [2] for more information. >>>>> >>>> >>>> ok I'll try that. Why data services create one project per service? >>>> >>>> thanks, >>>> Amila. >>>> >>>>> >>>>> Thanks and Regards, >>>>> Chathuri >>>>> >>>>> [1] >>>>> http://builder1.us1.wso2.org/~carbonstudio/carbon-studio/2.0.0/M9/documentation/overview.html >>>>> [2] >>>>> http://builder1.us1.wso2.org/~carbonstudio/carbon-studio/2.0.0/M9/documentation/getting_started_category.html >>>>> >>>>> >>>>> On Fri, Mar 9, 2012 at 4:45 PM, Amila Suriarachchi <[email protected]>wrote: >>>>> >>>>>> And also when creating a Data service it let create a data service >>>>>> using a carbon data source. is there a way to create a carbon >>>>>> data source using CS? >>>>>> >>>>>> thanks, >>>>>> Amila. >>>>>> >>>>>> >>>>>> On Fri, Mar 9, 2012 at 4:25 PM, Amila Suriarachchi <[email protected]>wrote: >>>>>> >>>>>>> >>>>>>> >>>>>>> On Fri, Mar 9, 2012 at 3:39 PM, Amila Maha Arachchi <[email protected] >>>>>>> > wrote: >>>>>>> >>>>>>>> Hi, >>>>>>>> >>>>>>>> If you start a new carbon application project File - > New -> Other >>>>>>>> -> WSO2 -> Carbon Application Project, you can add any number of >>>>>>>> artifacts >>>>>>>> to it AFAIK. I have tried this and I was able to add two proxy >>>>>>>> services and >>>>>>>> a data services as artifacts to one CApp. >>>>>>>> >>>>>>> >>>>>>> Seems like this is not the way 2.0.0 works. >>>>>>> >>>>>>> thanks, >>>>>>> Amila. >>>>>>> >>>>>>> >>>>>>>> >>>>>>>> Right click on artifacts -> new -> select the type you want (I am >>>>>>>> trying with CS 1.0.13) >>>>>>>> >>>>>>>> Regards, >>>>>>>> AmilaM. >>>>>>>> >>>>>>>> On Fri, Mar 9, 2012 at 3:28 PM, Amila Suriarachchi >>>>>>>> <[email protected]>wrote: >>>>>>>> >>>>>>>>> hi, >>>>>>>>> >>>>>>>>> I tried to implement the above services as a project so that it >>>>>>>>> can be deployed as one .car file. >>>>>>>>> >>>>>>>>> But when I try to create a data service it always asks for a new >>>>>>>>> project name and creates a new project. >>>>>>>>> >>>>>>>>> And also it seems to create proxy service I need to create an ESB >>>>>>>>> project etc .. >>>>>>>>> >>>>>>>>> How can I use CS studio to create one .car file for all these? >>>>>>>>> >>>>>>>>> thanks, >>>>>>>>> Amila. >>>>>>>>> >>>>>>>>> >>>>>>>>> -- >>>>>>>>> *Amila Suriarachchi* >>>>>>>>> >>>>>>>>> Software Architect >>>>>>>>> WSO2 Inc. ; http://wso2.com >>>>>>>>> lean . enterprise . middleware >>>>>>>>> >>>>>>>>> phone : +94 71 3082805 >>>>>>>>> >>>>>>>>> >>>>>>>>> _______________________________________________ >>>>>>>>> Dev mailing list >>>>>>>>> [email protected] >>>>>>>>> http://wso2.org/cgi-bin/mailman/listinfo/dev >>>>>>>>> >>>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> -- >>>>>>>> *Amila Maharachchi* >>>>>>>> Senior Software Engineer; WSO2, Inc.; http://wso2.com >>>>>>>> >>>>>>>> Blog: http://maharachchi.blogspot.com >>>>>>>> Mobile: +94719371446 >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>> >>>>>>> >>>>>>> -- >>>>>>> *Amila Suriarachchi* >>>>>>> >>>>>>> Software Architect >>>>>>> WSO2 Inc. ; http://wso2.com >>>>>>> lean . enterprise . middleware >>>>>>> >>>>>>> phone : +94 71 3082805 >>>>>>> >>>>>>> >>>>>> >>>>>> >>>>>> -- >>>>>> *Amila Suriarachchi* >>>>>> >>>>>> Software Architect >>>>>> WSO2 Inc. ; http://wso2.com >>>>>> lean . enterprise . middleware >>>>>> >>>>>> phone : +94 71 3082805 >>>>>> >>>>>> >>>>>> _______________________________________________ >>>>>> Dev mailing list >>>>>> [email protected] >>>>>> http://wso2.org/cgi-bin/mailman/listinfo/dev >>>>>> >>>>>> >>>>> >>>>> >>>>> -- >>>>> Chathuri Wimalasena >>>>> Senior Software Engineer; WSO2, Inc.; http://wso2.com/ >>>>> email: [email protected]; phone: +94 772 608 596 >>>>> blog: http://chathuriwimalasena.blogspot.com/ >>>>> >>>> >>>> >>>> >>>> -- >>>> *Amila Suriarachchi* >>>> >>>> Software Architect >>>> WSO2 Inc. ; http://wso2.com >>>> lean . enterprise . middleware >>>> >>>> phone : +94 71 3082805 >>>> >>>> >>> >>> >>> -- >>> Chathuri Wimalasena >>> Senior Software Engineer; WSO2, Inc.; http://wso2.com/ >>> email: [email protected]; phone: +94 772 608 596 >>> blog: http://chathuriwimalasena.blogspot.com/ >>> >> >> >> >> -- >> *Amila Suriarachchi* >> >> Software Architect >> WSO2 Inc. ; http://wso2.com >> lean . enterprise . middleware >> >> phone : +94 71 3082805 >> >> >> _______________________________________________ >> Dev mailing list >> [email protected] >> http://wso2.org/cgi-bin/mailman/listinfo/dev >> >> > > > -- > Hiranya Jayathilaka > Associate Technical Lead; > WSO2 Inc.; http://wso2.org > E-mail: [email protected]; Mobile: +94 77 633 3491 > Blog: http://techfeast-hiranya.blogspot.com > > _______________________________________________ > Dev mailing list > [email protected] > http://wso2.org/cgi-bin/mailman/listinfo/dev > >
_______________________________________________ Dev mailing list [email protected] http://wso2.org/cgi-bin/mailman/listinfo/dev
