Just a quick FYI for those interested (and listening in on this thread):

I've implemented Graham's Configurable Submission suggestions in 
preparation for 1.5 beta (and 1.5 final release).  So, if you look at 
the current 1.5.x branch in DSpace SVN, there is now a single 
'item-submission.xml' configuration file containing the configurations 
for BOTH the XML-UI and JSP-UI.

A <step> configuration now looks like this in the item-submission.xml:

<step>
<heading>submit.progressbar.describe</heading> 
<processing-class>org.dspace.submit.step.DescribeStep</processing-class> 
<jspui-binding>org.dspace.app.webui.submit.step.JSPDescribeStep</jspui-binding> 
<xmlui-binding>org.dspace.app.xmlui.aspect.submission.submit.DescribeStep</xmlui-binding>
<workflow-editable>true</workflow-editable>
</step>

The Configurable Submission documentation is also updated in 
[dspace]/docs/submission.html (when you download the 1.5.x branch).

Let me know if there are questions, or if anyone notices any bugs.  I 
did some pretty thorough testing, so it *should* be bug-free...famous 
last words. :)

- Tim

Tim Donohue wrote:
> Graham,
> 
> Ok...I'm coming around, and I agree with your argument about forcing 
> people to do things the 'right way' in terms of Java programming, and 
> also better supporting both UIs.
> 
> I'll take some time this week to dig into the 1.5 code and see what a 
> change like this would involve.  Assuming there's no major walls or 
> sticky points in moving this route, I should be able to implement this 
> relatively easily and quickly for 1.5.
> 
> - Tim
> 
> Graham Triggs wrote:
>> On Mon, 2008-01-07 at 11:01 -0600, Tim Donohue wrote:
>>> (1) No ability to easily change the review JSP without recompiling. But, 
>>> that may not be a big deal...as you noted the same is currently true for 
>>> the JSPs used to create the various submission forms
>> There is nothing to say we couldn't have optional extended configuration
>> - so it could be made possible to add additional <input-jsp> and
>> <review-jsp> elements to the configuration - or even attributes to the
>> jsp-binding element.
>>
>> That said, the only time that really becomes useful is if you want to
>> specify what is eseentially the same step in different submission
>> workflows, with different L&F for each.
>>
>>> (2) If someone wanted to create a custom step for JSPUI-only, they'd 
>>> have to still create two separate classes: (1) Processing Class and (2) 
>>> JSP binding class.  The current way, you'd just need to create a single 
>>> Processing Class which implements the JSPStep interface.
>> That is absolutely no bad thing. Firstly, although you would have to
>> supply two separate classes, the difference in the amount of code
>> involved is negligible.
>>
>> More importantly, it means people do things the right way - so if they
>> want to move from JSP to XML ui in the future, or they want to share
>> their custom step with our members of the community that may be using a
>> different interface, it's all a lot easier.
>>
>>> On the plus side, your idea does vastly simplify the configurations. 
>>> The only other option your suggestion brings to mind (which would keep 
>>> the API mostly as-is), would be to take an in-between route and create a 
>>> configuration looking more like:
>>>
>>> <step>
>>> <heading>general.progress.describe</heading>
>>> <jspui-binding>
>>> <processing-class>org.dspace.app.webui.submit.step.JSPDescribeStep</processing-class>
>>> <review-jsp>/submit/review-metadata.jsp</review-jsp>
>>> </jspui-binding>
>>> <xmlui-binding>
>>> <processing-class>org.dspace.submit.step.DescribeStep</processing-class>
>>> <xml-ui-class>org.dspace.app.xmlui.aspect.submission.submit.DescribeStep</xml-ui-class>
>>> </xmlui-binding>
>>> <workflow-editable>true</workflow-editable>
>>> </step>
>> I prefer my 'simplistic' configuration, as forcing people to deal with
>> the class seperation now provides them with long term benefits, and
>> improves the community's ability to collaborate.
>>
>>> Here, the UI "binding" is down at the configuration level...and it would 
>>> allow the <jspui-binding> and the <xmlui-binding> to change more over 
>>> time, as necessary.  As a potential example, configurations/options for 
>>> various steps could eventually be placed as such:
>> as mentioned above, the configuration could still allow for:
>>
>> <step>
>> ...
>> <xml-binding>...</xml-binding>
>> <jsp-binding>...</jsp-binding>
>> <jsp-form>...</jsp-form>
>> <jsp-review>...</jsp-review>
>> </step>
>>
>> or preferably:
>>
>> <step>
>> ...
>> <xml-binding>...</xml-binding>
>> <jsp-binding form="..." review="...">...</jsp-binding>
>> </step>
>>
>> G
>>
>> This email has been scanned by Postini.
>> For more information please visit http://www.postini.com
>>
>>
>> -------------------------------------------------------------------------
>> Check out the new SourceForge.net Marketplace.
>> It's the best place to buy or sell services for
>> just about anything Open Source.
>> http://ad.doubleclick.net/clk;164216239;13503038;w?http://sf.net/marketplace
>> _______________________________________________
>> DSpace-tech mailing list
>> [email protected]
>> https://lists.sourceforge.net/lists/listinfo/dspace-tech
>>
> 

-- 

========================================
Tim Donohue
Research Programmer, Illinois Digital Environment for
Access to Learning and Scholarship (IDEALS)
135 Grainger Engineering Library
University of Illinois at Urbana-Champaign

email: [EMAIL PROTECTED]
web:   http://www.ideals.uiuc.edu
phone: (217) 333-4648
fax:   (217) 244-7764
========================================

-------------------------------------------------------------------------
Check out the new SourceForge.net Marketplace.
It's the best place to buy or sell services for
just about anything Open Source.
http://ad.doubleclick.net/clk;164216239;13503038;w?http://sf.net/marketplace
_______________________________________________
DSpace-tech mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/dspace-tech

Reply via email to