the version being reverted to is created. This clone has the previous head version
as its ancestor and a wcm:reverted aspect applied. wcm:reverted contains
wcm:revertedid, the node id that the reversion is a clone of. Revert to version is
now a simple call to a new AVMService method, revert().
Propagated this to the remote API.
Modified the the AVMRevertToVersionAction to use this mechanism. Though really the
action isn't really needed now.
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@4824 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
Added debug logging for various things in AVMSyncServiceImpl.
Fixed "from" path in workflow submits so that the ROOT directory
does not get wiped out in the originating sandbox.
Fixed avm.jsp so that it works again.
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@4771 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
fixing columns in create form wizard to not move around wildy once files are uploaded
fixing some bugs in repeats as a result of the chiba1.3 upgrade.
- xpaths were not being resolved for newly created instances (and shouldn't be)
- xpaths for nested repeats weren't behaving properly
fixed caching issue in edit which was causing the wrong form to be loaded for instance data
using alfresco namespace as defined in NamespaceService
passing namespace uris and prefixes to js to avoid errors if they should change
fixed a bug where the renditions property of forminstancedata was getting duplicate renditions (and thus regenerating way too much stuff when doing an edit)
using an italic 'description not set' when description isn't set in several screens.
using the avm service to set properties in renderingenginetemplateimpl.
upgrading to xalan-2.7.0 in order to be able to use bsf for extension functions.
adding the path that was not found to AVMNotFoundExceptions. very helpful when debugging.
substantial refactoring of rendering engines in preparation for integration with TemplateService.
- implementing a common model as a hash of QNames to objects. for method, providing a simple method wrapper called TemplateProcessorMethod which takes an array of Objects as a parameter, and returns an object. it is up to the template processors to properly convert arguments. a QName is used for the variable name rather than a string in order to include a namespace prefix (needed for xsl, and generally better looking).
- for xsl, using javascript bindings for formdatafunctions, which using liveconnect within rhino to call into the xsl rendering engine to evaluate the function. it ends up generating this js block into a xalan:component within the xsl tempalte:
// gets the handle to the backing java object which can invoke the function based on id
var _xsltp_invoke = java.lang.Class.forName('org.alfresco.web.forms.XSLTRenderingEngine$ProcessorMethodInvoker').newInstance();
// utility to convert js arrays into java
function _xsltp_to_java_array(js_array) {
var java_array = java.lang.reflect.Array.newInstance(java.lang.Object, js_array.length);
for (var i = 0; i < js_array.length; i++) { java_array[i] = js_array[i]; }
return java_array; }
// js handles to each of the form data functions which uses _xsltp_invoke to call the actual method
function _getAVMPath() { return _xsltp_invoke.invokeMethod('_getAVMPath8829055', _xsltp_to_java_array(arguments)); }
function parseXMLDocuments() { return _xsltp_invoke.invokeMethod('parseXMLDocuments12235190', _xsltp_to_java_array(arguments)); }
function parseXMLDocument() { return _xsltp_invoke.invokeMethod('parseXMLDocument15280968', _xsltp_to_java_array(arguments)); }
xml model data is inferred as a root namespace document within the model hash provided.
- for freemarker, things pretty much work as they did before, just i now need to convert values by hand to TemplateModels
fixed a bug with hidden iframe upload. seems like the complexity of actually cloning the file input element is unnecessary and that simply attaching the node in two places within the dom works just fine.
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@4764 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
- new node API method: document.versionHistory
- returns a list of objects representing the version history of a document, such as name, created date, properties and content for the version
- template example to show the version history for a document
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@4762 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
- refactoring to generate and regenerate methods to make it easier to use project level overridden properties, and to at some point (soon) make it possible to make error handling for rendering engines more robust
- added a web project object to encapsulate web project properties and provide a central location for getting forms and rendering engines with web project level overridden properties
- made select default workflow screen match wireframes
- using the same workflowdefault type in the wcm model for web projects and forms.
- using outputpathpattern aspect consistently
- using commons.io to parse paths
- using form name rather than noderef as parameter for selected form from content forms dashlet
- fixed bug where rendition properties noderef wasn't being properly associated with renditions causing problems with regenerate
- using multivalued properties to track renditions
- remove weird registerRendition/registerFormInstanceData calls. no longer necessary since generateRendition and regenerate are done within forminstancedata and rendition
- adding default workflow parameters as property of Form
- adding a unique name property to rendering engine templates to allow for looking one up by name
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@4702 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
this: mysite--guest--preview/HEAD/DATA/www/avm_webapps/ROOT/WEB-INF/...
and: mysite--guest--preview/VERSION/v1/DATA/www/avm_webapps/ROOT/WEB-INF/...
rather than: mysite--guest--preview/HEAD/DATA/appBase/avm_webapps/ROOT/WEB-INF/...
and: mysite--guest--preview/VERSION/v1/DATA/appBase/avm_webapps/ROOT/WEB-INF/...
The reason for this is that the actual "appliation base"
is and always has been "avm_webapps"; the original reason
for making the *parent* of this dir called appBase had do
do with the fact that you can have diffrent app bases
for different virtual hosts. However, in the end it causes
way more confusion than it was ever worth, so it's gone now.
The reason for all the modified files is that people were
hard-coding values in many different places, and/or defining
their own constants for something that was needed at a
higher level.
As a temporary measure (I hope), I've defined some rather ugly-looking
constants in JNDIConstants.java, and have used them everywhere:
DIR_DEFAULT_WWW = "www"
DIR_DEFAULT_APPBASE = "avm_webapps"
The reason for calling the parent of the new application base "www"
is that will be the default place that www-centric stuff happens
(therefore, it's also the level at which the overlays take place).
Ultimately, I'd like to turn these into spring configs,
and bring back support for multiple AVMHost nodes within
the same Tomcat... but it's not a priority at the moment.
Please don't hard-code any dirs named "appBase" as the
root level dir in a repo -- it's now "www", and will
change again to a function call later when/if virtual
AVMHosts come back. Keeping them as constants also
helps them to be easier to find when overhauling things.
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@4696 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261