technologies used in graffito
Hi, I am doing an evaluation of graffito for the purpose of integration to our portal. I have few questions regarding the design and technologies used . 1. Does graffito has its own session management ? I understand it no since this is not designed as a standalone webapp.(or can I run it without riding on portal ?) When it gets deployed as portlets , it uses the session management of the portal system. Here , it uses the session management of Jetspeed portal. Kindly confirm my understanding. 2. How are portal users mapped to cms users ? e.g when I deploy graffito war to jetspeed , the content browser portlet for browsing,editing,creating documents + folders , gets configured for admin while content tree portlet gets configured for anonymous and user. Where are these configurations stored ? 3. Does it depend on apache's commons logging framework or is there any other framework on top of this ? 4. Is there any roadmap to implement workflow service ? 5. Will the JCR plugin be using OCM ? Is it possible to use the existing model and model service to use jcr mapping layer directly and depend on this mapping (persistence layer) for versioning,security,search. Basically, what I am asking is that can I skip the abstractions of the services which are already part of JSR170 implementation . I have tried the following: * Tried to navigate document creation , which uses Graffito store for persistence, since jcr mapping is not yet integrated. * Separated the jcr mapping layer from the other graffito stack, created my own model and used jcr mapping to persist. This layer can be directly used for search and versioning. My concern is if I integrate graffito to my portal and create my own model based on Content/CmsObject , do I still have to go through the abstraction of all the services , even though I am only interested in jcr using jcr mapping. 6. The project is under incubation. Where should i look for license details ? Thanks, Appreciate reponse. -Ruchi
Re: technologies used in graffito
Hi Ruchi, 1. Does graffito has its own session management ? I understand it no since this is not designed as a standalone webapp.(or can I run it without riding on portal ?) When it gets deployed as portlets , it uses the session management of the portal system. Here , it uses the session management of Jetspeed portal. Kindly confirm my understanding. Correct. if it is deployed into J2, it uses the subject provided by Jetspeed. We are using JAAS for the permissions and authentication aspect. See the class CmsRequestContext CmsRequestContextManager. Those class are used to get reference to the subject. You can see also the CmsPermission class to show you how to the permission are defined. In theory, it should be possible to use Graffito with any kind of applications which are using JAAS. 2. How are portal users mapped to cms users ? e.g when I deploy graffito war to jetspeed , the content browser portlet for browsing,editing,creating documents + folders , gets configured for admin while content tree portlet gets configured for anonymous and user. Where are these configurations stored ? They are some refactoring to do it in this area. They are not yet map :-) The jetspeed security services can be used outside jetspeed (thanks to Spring). It would be interesting to be more independant. I think it is possible to write some Graffito security services with different implementation (one for Jetspeed, ...). 3. Does it depend on apache's commons logging framework or is there any other framework on top of this ? common logging. 4. Is there any roadmap to implement workflow service ? We have a prototype implemented by my company but this not yet commited due to other priorities. Hope to do it september and start a proposal. 5. Will the JCR plugin be using OCM ? Yes Is it possible to use the existing model and model service to use jcr mapping layer directly and depend on this mapping (persistence layer) for versioning,security,search. Basically, what I am asking is that can I skip the abstractions of the services which are already part of JSR170 implementation . I have tried the following: * Tried to navigate document creation , which uses Graffito store for persistence, since jcr mapping is not yet integrated. * Separated the jcr mapping layer from the other graffito stack, created my own model and used jcr mapping to persist. This layer can be directly used for search and versioning. My concern is if I integrate graffito to my portal and create my own model based on Content/CmsObject , do I still have to go through the abstraction of all the services , even though I am only interested in jcr using jcr mapping. We plan to move the OCM tools into the Jackrabbit project. You can use this OCM tools without the Graffito services. See in trunk/jcr/spring to get an idea how to do it with Spring. 6. The project is under incubation. Where should i look for license details ? This is the classical Apache licence. Let me know if you need more information. -- Best regards, Christophe
Re: technologies used in graffito
Thanks Christophe for quick response. One more question: Who is using spring framework ? - Jetspeed or Graffito ? Please see inline for more Christophe Lombart wrote: Hi Ruchi, 1. Does graffito has its own session management ? I understand it no since this is not designed as a standalone webapp.(or can I run it without riding on portal ?) When it gets deployed as portlets , it uses the session management of the portal system. Here , it uses the session management of Jetspeed portal. Kindly confirm my understanding. Correct. if it is deployed into J2, it uses the subject provided by Jetspeed. We are using JAAS for the permissions and authentication aspect. See the class CmsRequestContext CmsRequestContextManager. Those class are used to get reference to the subject. You can see also the CmsPermission class to show you how to the permission are defined. In theory, it should be possible to use Graffito with any kind of applications which are using JAAS. Our portal users are stored in LDAP and uses its authentication service . How will that be mapped to JAAS users ? 2. How are portal users mapped to cms users ? e.g when I deploy graffito war to jetspeed , the content browser portlet for browsing,editing,creating documents + folders , gets configured for admin while content tree portlet gets configured for anonymous and user. Where are these configurations stored ? They are some refactoring to do it in this area. They are not yet map :-) The jetspeed security services can be used outside jetspeed (thanks to Spring). It would be interesting to be more independant. I think it is possible to write some Graffito security services with different implementation (one for Jetspeed, ...). You mean to say , Graffito security service can have portal specific implementation ? If we use only OCM , do I still get it ? I see SimpleAccessManager and SimpleLoginModule which uses Jackrabit and java security services. This security is at repository level , I want to also understand security at portal level, who can see which portlets ? 3. Does it depend on apache's commons logging framework or is there any other framework on top of this ? common logging. 4. Is there any roadmap to implement workflow service ? We have a prototype implemented by my company but this not yet commited due to other priorities. Hope to do it september and start a proposal. 5. Will the JCR plugin be using OCM ? Yes Is it possible to use the existing model and model service to use jcr mapping layer directly and depend on this mapping (persistence layer) for versioning,security,search. Basically, what I am asking is that can I skip the abstractions of the services which are already part of JSR170 implementation . I have tried the following: * Tried to navigate document creation , which uses Graffito store for persistence, since jcr mapping is not yet integrated. * Separated the jcr mapping layer from the other graffito stack, created my own model and used jcr mapping to persist. This layer can be directly used for search and versioning. My concern is if I integrate graffito to my portal and create my own model based on Content/CmsObject , do I still have to go through the abstraction of all the services , even though I am only interested in jcr using jcr mapping. We plan to move the OCM tools into the Jackrabbit project. You can use this OCM tools without the Graffito services. See in trunk/jcr/spring to get an idea how to do it with Spring. The question is if we want to integrate the entire cms framework , we will have to use the abstractions , even though the jsr170 mapping layer helps with lots of services.Please correct me if my understanding is wrong here. Where is Spring framework used ? I understand that u have ocm 's one integration with Spring? Does Graffito internally uses it ? We cannot integrate with any open source which is not j2ee compliant. Another question : Where is Velocity used in graffito project ? Thanks, Ruchi 6. The project is under incubation. Where should i look for license details ? This is the classical Apache licence. Let me know if you need more information.
Re: technologies used in graffito
On 9/7/06, Ruchi Goel [EMAIL PROTECTED] wrote: Thanks Christophe for quick response. One more question: Who is using spring framework ? - Jetspeed or Graffito ? Both project Please see inline for more Christophe Lombart wrote: Our portal users are stored in LDAP and uses its authentication service . How will that be mapped to JAAS users ? see the J2 security doc to get all the details (http://portals.apache.org/jetspeed-2/multiproject/jetspeed-security/index.html). Remember that this security service can be run outside J2. Anyway I'm open to see together how we can support other kind of integration (with other security services/solution). You mean to say , Graffito security service can have portal specific implementation ? Yes but some refactoring is required. The security services are not well defined. If we use only OCM , do I still get it ? I see SimpleAccessManager and SimpleLoginModule which uses Jackrabit and java security services. This security is at repository level , I want to also understand security at portal level, who can see which portlets ? The current solution is not correct if the security is defined at the repository level. The question is if we want to integrate the entire cms framework , we will have to use the abstractions , even though the jsr170 mapping layer helps with lots of services.Please correct me if my understanding is wrong here. Correct. JSR170 is focusing only on the repository aspect. This is not a complete CMS/DM solution. Other services are still necessary (eg. workflow). We plan to add more and more services (scheduler, workflow, replication, ...) but that's the future :-) Where is Spring framework used ? I understand that u have ocm 's one integration with Spring? Does Graffito internally uses it ? The Graffito services are running in a Spring container (see in components). If you want to use OCM outside the complete Graffito stack, you can run it in a Spring container (see in jcr/spring). We cannot integrate with any open source which is not j2ee compliant. why not ? maybe later ...it will depend on the community ;-) Another question : Where is Velocity used in graffito project ? In the portlets (instead of jsp). -- Best regards, Christophe