Thanks Mark and helix84,
Both answers were very clarifying. The main problem I had was that I didn't
know how to know where the are the proper classes I was looking for based
on an url. The XMLUI files that are in installation directory doesn't tell
too much about that (or I couldn't manage to find something like the
../WEB-INF/web.xml in JSPUI that is more explicit and understandable).
The customization I'm trying to accomplish, is the creation of communities
with default collections inside. Also, this collections will have to be
dynamically assigned to different item-submissions. One of the expectations
on this modifications is to make them compatible with future DSpace
versions (now I'm working on 1.8). Mark what you explained will be very
useful for me in customizing the community creation. Still the dynamic
assignment of the default collections, I don't know if can be possible
(regarding future compatibility).
Cheers,
César
2012/6/15 Mark Diggory <[email protected]>
> Just an aside,
>
> Here is an example of the Business Tier code that should be consolidated
> either into a DDD Repository object or some business tier (Command
> Framework) that would be used in common across all Webapps and CLI such
> that any UI can consistently produce the same result when creating
> Communities.
>
> Basic Community creation logic
>
> https://github.com/DSpace/DSpace/blob/master/dspace-api/src/main/java/org/dspace/content/Community.java#L179
>
> In JSPUI
>
> https://github.com/DSpace/DSpace/blob/master/dspace-jspui/dspace-jspui-api/src/main/java/org/dspace/app/webui/servlet/admin/EditCommunitiesServlet.java#L206
>
> https://github.com/DSpace/DSpace/blob/master/dspace-jspui/dspace-jspui-api/src/main/java/org/dspace/app/webui/servlet/admin/EditCommunitiesServlet.java#L476
>
> In XMLUI
>
> https://github.com/DSpace/DSpace/blob/master/dspace-xmlui/dspace-xmlui-api/src/main/java/org/dspace/app/xmlui/aspect/administrative/FlowContainerUtils.java#L830
>
> In WEBMVC
>
> https://github.com/DSpace/webmvc/blob/master/webmvc-api/src/main/java/org/dspace/webmvc/controller/admin/CommunityController.java#L75
>
> In REST
>
> https://github.com/DSpace/dspace-rest/blob/master/src/main/java/org/dspace/rest/entities/CommunityEntity.java#L461
>
> REST gets us closest to a set of overridable logic because it leaves the
> static Manager paradigm behind.
>
> Note a DDD Repository (http://domaindrivendesign.org/node/123) could
> easily be behind the static factory methods exposed in the Community API. Use
> of Spring for wiring of DAO/Repository methods for Creating a Provider for
> creation of Communities (Robin Taylors current track of work) provides us
> with a lightweight mechanism to override instantiation logic across all
> applications.
>
> Once the DAO is properly encapsulating CRUD to create Communities, the
> Community class then becomes its own DDD Repository. Allowing
> applications to override the Repository (IE not by hacking Community.java
> in the source or by overriding it on the classpath, but instead by properly
> using configuration and wiring to insert ones own provider or a separate
> service object). This design, would then allow this user to significantly
> alter the underlying behavior of what happens on Community creation
> without necessarily needing to alter UI centric code. As long as the
> Provider API contract is maintained, we then have a means to allow flexible
> alteration with predictable interfaces that can maintain
> backwards compatibility across releases.
>
> Mark
>
> On Thu, Jun 14, 2012 at 3:25 PM, helix84 <[email protected]> wrote:
>
>> Hi César,
>>
>> I'm not sure if it's what you're looking for because I'm not very
>> familiar with JSPUI, but I looked for it this way:
>>
>> The URL to create a community is /admin/community?createNew
>> In
>> dspace-xmlui/dspace-xmlui-api/src/main/resources/aspects/Administrative/sitemap.xmap:222
>> the createNew parameter is mapped to the startCreateCollection() function
>> in
>>
>> dspace-xmlui/dspace-xmlui-api/src/main/resources/aspects/Administrative/administrative.js:547
>> which in turn calls doCreateCollection() in the same file, which
>> issues a request to
>> /admin/collection/createCollection which is then mapped in
>> sitemap.xmap:730 to
>> CreateCollectionForm. Is this what you're looking for?
>>
>> Regards,
>> ~~helix84
>>
>>
>> ------------------------------------------------------------------------------
>> Live Security Virtual Conference
>> Exclusive live event will cover all the ways today's security and
>> threat landscape has changed and how IT managers can respond. Discussions
>> will include endpoint security, mobile security and the latest in malware
>> threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
>> _______________________________________________
>> DSpace-tech mailing list
>> [email protected]
>> https://lists.sourceforge.net/lists/listinfo/dspace-tech
>>
>
> Hello,
>> I'm trying to customize the Community and Collection creation for XMLUI
>> in DSpace 1.8. I'm trying to find the code that does all the heavy lifting
>> but all I've found are this steps:
>>
>> org.dspace.app.xmlui.aspect.administrative.collection.CreateCollectionForm
>> org.dspace.app.xmlui.aspect.administrative.community.CreateCommunityForm
>> but what I'm looking for is the "equivalent" for XMLUI for this JSPUI
>> classes:
>> org.dspace.app.webui.servlet.admin.CollectionWizardServlet
>> org.dspace.app.webui.servlet.admin.EditCommunitiesServlet
>> Where can I find such processing for XMLUI? I couldn't manage to find a
>> servlet mapping or something that leads me to that classes. Would be good
>> to know if there is a "method" for that too :-).
>> Cheers,
>> César
>
>
> --
> [image: @mire Inc.]
> *Mark Diggory *(Schedule a Meeting <https://tungle.me/markdiggory>)
> *2888 Loker Avenue East, Suite 305, Carlsbad, CA. 92010*
> *Esperantolaan 4, Heverlee 3001, Belgium*
> http://www.atmire.com
>
>
>
>
> ------------------------------------------------------------------------------
> Live Security Virtual Conference
> Exclusive live event will cover all the ways today's security and
> threat landscape has changed and how IT managers can respond. Discussions
> will include endpoint security, mobile security and the latest in malware
> threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
> _______________________________________________
> Dspace-devel mailing list
> [email protected]
> https://lists.sourceforge.net/lists/listinfo/dspace-devel
>
>
------------------------------------------------------------------------------
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and
threat landscape has changed and how IT managers can respond. Discussions
will include endpoint security, mobile security and the latest in malware
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
_______________________________________________
Dspace-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/dspace-devel