within the webapp. Currently, we don't support either updating
a single-webapp, or removing a single-webapp because the GUI
cannot invite someone to only one webapp within a project.
Therefore, the JMX calls are "updateAllVirtualWebapps"
and "removeAllVirtualWebapps", rather than implying we're
more fine-grained that we actually are.
The case of removal would be particularly misleading
because if you thought you could just get rid of single
webapp, you'd be sadly mistaken.
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@5072 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
- Inline editing mode no longer used for HTML/Text in WCM spaces
Not appropriate for WCM files which are editing using external editors - i.e. the browser based HTML editors make a nasty mess of anything remotely complicated
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@5057 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
Support for notification to virt server on dialog-driven revert operations.
No support yet for workflow-diriven revert notification (coming soon).
Details
-------
root/projects/catalina-virtual/source/java/org/alfresco/catalina/host/AVMHostConfig.java
Minor logging cleanup
root/projects/core/source/java/org/alfresco/util/VirtServerUtils.java
Trigger notification on submits of entire dirs: WEB-INF, WEB-INF/classes, WEB-INF/lib
(not just files within them)
root/projects/web-client/source/java/org/alfresco/web/bean/wcm/AVMBrowseBean.java
notify virt server on revert
root/projects/web-client/source/java/org/alfresco/web/bean/wcm/RevertAllDialog.java
notify virt server on revert all
root/projects/web-client/source/java/org/alfresco/web/bean/wcm/RevertSelectedDialog.java
notify virt server on revert selected
root/projects/web-client/source/java/org/alfresco/web/bean/wcm/SubmitDialog.java
minor cleanup
root/projects/web-client/source/web/WEB-INF/faces-config-beans.xml
Injecting AVMSyncService into AVMBrowseBean to allow virt server
notification to occur only when a comparison between reverted
versions shows it's absolutely necessary
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@5030 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
- Fixed parsing of locale string to use I18NUtil.parseLocale and not Locale constructor
- Fixed type conversion of properties returned from MLPropertyInterceptor's directNodeService
- Fixed handling of ALL_LANGUAGES filter selection
- Fixed MultilingualContentService NPE when checking for duplicate locales
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@5007 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
Now as soon as you create a web project, you can put
static content into it, & preview via the virtualization
server. You don't need a WEB-INF, META-INF, and so
forth, but I'm leaing in the warning about the lack
of web.xml for now. This means when you first create
a project, you'll see a harmless warning about the
lack of a web.xml file in the log per virtualized area.
Later, I might add context-sensitivity (no pun intended)
issue the warning about the lack of a web.xml only when
it "looks" like there should be one.... but for now,
it always warns (even when you first create the project).
Another "todo".
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@5006 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
- Web Client support for changing content filter language
- I18NUtil support for contentLocale
- MLPropertyInterceptor handling of properties inbound and outbound
TODO:
- Is new Locale("") valid?
- Some more tests to ensure property interceptor is working
- Move interceptor into .sample config file
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@5003 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
Now the virt server can react properly when a file in WEB-INF
(such as a jar or web.xml file) is submitted to staging.
Details
-------
More testing is needed, but the basic stuff looks ok.
Here's a list of the events within the webapp that
the virt server is now able to receive & handle properly:
o Invite user to web project
o Create web project
o Delete sandbox
o Delete web project
o Submission of files to WEB-INF
The virt server does not yet get:
o Revert events
o Out-of-band changes from CIFS (and probably never will).
The plan to deal with changes made to critical files in WEB-INF
is to have an exlicit control available within the webapp.
It does not yet handle "approved with changes" very gracefully.
That can probably be fixed over the next few days.
Gory details
-----------
projects/core/source/java/org/alfresco/util/VirtServerUtils.java
Moved pattern that detects whether virt server needs
updating in from AVMConstants, due to build dependencies;
now this function is needed by workflow, which is in the
repository package.
projects/repository/config/alfresco/avm-services-context.xml
Added AVMSubmitTransactionListener bean to allow virt
server notification to hapen immediately after the
submit transaction has been committed sucessfully.
projects/repository/source/java/org/alfresco/repo/avm/wf/AVMSubmitPackageHandler.java
Added transaction listner that does the virt server update,
and added the list of staging diffs to AlfrescoTransactionSupport
as a bound resource.
projects/repository/source/java/org/alfresco/repo/avm/wf/AVMSubmitTransactionListener.java
Does the actual notification of the virt server.
The logic in this class still needs some work to handle
"approved with changes" gracefully, but it does do
the right thing when it comes to recursively reloading
staging when a jar or web.xml file is modified.
Light testing so far, but looks ok. Consider this
a point checkin only. A singleton of this class is
instantiated via the Spring config avm-services-context.xml,
and used by AVMSubmitPackageHandler.
projects/web-client/source/java/org/alfresco/web/bean/wcm/AVMConstants.java
Removed the utility function that tests whether or not
updating a file would require the virt server to be notified.
This class would benifit from a major cleanup when time permits.
projects/web-client/source/java/org/alfresco/web/bean/wcm/SubmitDialog.java
Using the function that was moved/renamed from AVMConstants
to VirtServerUtils that tests if a given file update requires
a virt server notification message.
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@4990 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
Now direct submit notifications to virt server occur,
and within workflow-driven submits, the virt server
is notified about the worflow sandbox; this allows
the reviewer to see what's being reviewed in-context.
TODO: revert, update of virt server when content moves
to staging from a workflow sanbox, handling destruction
of workflow sandboxes, and oddly enough, submitAll
(the webapp uses a different wizard for that).
Gory details:
projects/catalina-virtual/source/java/org/alfresco/catalina/host/AVMHostConfig.java
Now more forgiving about if whether it is passed appBase, a webapp,
or a path within a webapp on update & remove notifications
projects/web-client/source/java/org/alfresco/web/bean/wcm/AVMWorkflowUtil.java
Takes a SandboxInfo instead of a store id.
This makes it easier to get name of workflow sandbox for virt server update.
projects/web-client/source/java/org/alfresco/web/bean/wcm/CreateWebContentWizard.java
Passing SandboxInfo, instead of store id
projects/web-client/source/java/org/alfresco/web/bean/wcm/SubmitDialog.java
Added notification to allow reviewer to see submitted changes in-context
via the virtualization server
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@4968 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
- this component is generally used to render FreeMarker templates directly to the page - particularly useful for Dashlet pages
- now supports an additional attribute 'templatePath' which should be set to a cm:name based path to a template for rendering
- For example the simplest portable dashlet JSP page to render a template would look like this:
<%@ taglib uri="/WEB-INF/repo.tld" prefix="r" %>
<r:template templatePath="/Company Home/Data Dictionary/Presentation Templates/my_docs.ftl" />
- Fixes http://issues.alfresco.com/browse/AWC-1091
. Additional helper override for resolving cm:name based webdav style paths to a NodeRef
. ClipboardItem interface javadoc and removal of obsolete methods from implementing classes
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@4963 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
svn merge svn://svn.alfresco.com:3691/alfresco/BRANCHES/DEV/EXTENSIONS@4848 svn://svn.alfresco.com:3691/alfresco/BRANCHES/DEV/EXTENSIONS@4850 .
Added RegistryService and registryService beans
Create ConfigurableService and moved the configurableService bean to be a low-level (untransactioned) component
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@4955 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
- AVM files and folders can be cut and copied to the clipboard
- AVM files and folders can be pasted (copied or moved) around a sandbox
- The usual "Copy of …" filename logic applies
- Cut and Copy actions now appear for AVM nodes (as appropriate for user permissions)
- Refactored logic for cut/copy into specific clipboard item classes - WorkspaceClipboardItem and AVMClipboardItem
. Fixed unreported issue where the DownloadContentServlet was unable to open content for AVM paths containing a space character
. Pager control border style alignment improvement
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@4943 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
- Cut and Copy actions now appear for AVM nodes (as appropriate for user permissions)
- AVM nodes now appear in the clipboard
- All content nodes in the clipboard are now clickable links which display the content for the item
NOTE: avm nodes cannot be pasted anywhere yet :)
. Fixed 2.0 styles for Simple Search pop-up
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@4929 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
handling the case where create web content is called with no forms configured for the web project
some more progress on xf:switch
updated tests - including one from ken at berkeley who is trying to use forms to write grant applications.
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@4925 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
- Clipboard actions now based on NodeRef not "id"
- Added notion of "workspace" and "AVM" specific clipboard items
- Clipboard bean supports creating different ClipboardItem types (workspace or avm)
. ActionLink parameters are now "toString()"ed rather than assumed String
. Optimization to Portal Tree Navigator support
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@4924 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
Virt server notification is still needed for submit & rollback ops.
AVMHostConfig.java
Made virt server clean up virtual webapps in work dir
when sandboxes and/or web projects are deleted.
AVMUrlValve.java
Made virt server respond with an error page
when a bad virtual hostname is accessed
(rather than just put up a blank page and
throw an exception in the logfile).
The error page is currently hard-coded in English
(hopefully that will change soon).
AVMEditBean.java
Inserted more virt server notifications
DeleteWebsiteDialog.java
Inserted virt server notification
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@4908 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
introducing concept of composite widgets for handling YearMonthPicker and MonthDayPicker.
streamlining call point for commiting value changes.
more work on implementing xf:switch.
removing deprecation warning from DatePickerGenerator.
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@4889 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
- added ViewRoot which presents a title, rather than a bounding root group. made the xform generator place all components within a single root group to support this.
- adding highlighting for the currently selected repeat item. found a bunch of bugs in how the current repeat item is being set. only dispatching the origin repeat select index for nested repeats. correctly setting the repeat index after move operation
- updated css to match latest css changes to the product.
began implementing support for inherited complex schema types.
- adding support for xf:switch and xf:toggle in xforms.js.
- refactored and cleaned up a particularly hard to understand part of the xform generator which handles inherited complex types.
- not pretty printing the resulting xml from create web content or edit as it introduces unwanted text nodes which can confuse chiba when xsi:nil is used (i'm using xsi:nil to disable validation when i use xsi:type since otherwise there's a NullPointerException in chiba because it doesn't understand complex type definitions).
- need to think about the design a bit more before continuing with this. chiba has limitations with how it handles xsi:type which makes it difficult to figure out the correct case to select at schema generation time, especially if the item is repeated. also, currently the generator emits a select1 to select the type which controls the switch. i'm not sure whether i actually want a separate select control to manage the switch...
added a test for date types and removed the old one.
added a test for inherited types.
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@4886 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
The highlights of this checkin are:
o No need to manually remove virt server work dir anymore
o Now contents of work dir are virtualized in addition
to the jars in memory. Starts / reloads faster,
plus a lot more scalable.
o You can create users & invite them to web project,
delete their sandboxe, etc. Works.
o Virt server picks up new web projects properly
even when these projects were created after
the virt server was started.
Not done:
o Need to play the same game with classes dirs that
I'm doing with lib dirs. Should be easy now.
o Some cleanup is needed in the way that sandboxes
are destroyed. Works, but on the brittle side.
Not urgent.
o Because of problems with RMI auth, you still need
to startup the alfreco webapp before the virt server,
and if one poops out, the auth code does not recover
that well yet. Britt & I will have to deal with
this over the next few days.
Gory details:
root/projects/catalina-virtual/config/server.xml
Turned off autoDeploy entirely.
Now all reloading is explicit via JMX
Put the request dumper valve into a comment.
It's for debugging purposes only (and slows stuff down).
root/projects/catalina-virtual/source/java/org/alfresco/catalina/host/AVMHost.java
Cleaned up api a bit.
root/projects/catalina-virtual/source/java/org/alfresco/catalina/host/AVMHostConfig.java
Recursive reload of webapps.
root/projects/catalina-virtual/source/java/org/alfresco/catalina/loader/AVMWebappLoader.java
Recursive reload of webapps.
root/projects/catalina-virtual/source/java/org/alfresco/catalina/valve/AVMUrlValve.java
Cleaned up & refactoring
root/projects/catalina-virtual/source/java/org/alfresco/mbeans/VirtServerRegistrationThread.java
Using new api from AVMFileDirContext
root/projects/jndi-client/source/java/org/alfresco/jndi/AVMFileDirContext.java
Cleaned up api, made non-fatal log messages 'debug' rather than 'info'.
root/projects/web-client/source/java/org/alfresco/web/bean/wcm/AVMConstants.java
Added new constant.
This file needs to be refactored soon.
root/projects/web-client/source/java/org/alfresco/web/bean/wcm/AddAvmContentDialog.java
Moved virt server notification to doPostCommitProcessing
root/projects/web-client/source/java/org/alfresco/web/bean/wcm/DeleteSandboxDialog.java
Fixed notification of virt server.
root/projects/web-client/source/java/org/alfresco/web/bean/wcm/ImportWebsiteDialog.java
Moved virt server notification to doPostCommitProcessing
root/projects/web-client/source/java/org/alfresco/web/bean/wcm/InviteWebsiteUsersWizard.java
Moved virt server notification to doPostCommitProcessing
root/projects/web-client/source/java/org/alfresco/web/bean/wcm/SandboxFactory.java
Added new property to sandboxes to make recursive reload efficient.
root/projects/web-client/source/java/org/alfresco/web/forms/ServletContextFormDataFunctionsAdapter.java
Now uses new AVMFileDirContext api.
Removed System.err.prinln() statements.
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@4839 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
. WCM ContentReviewer bug fix - role can no longer seem Forms (as they cannot create - they can only edit existing items)
. Submit dialog bug fix - can now press OK after entering workflow config when the dialog previous displayed an error
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@4830 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
- using the same hidden upload mechanism as used for uploading schema.
- fixing bug where values aren't being prefilled for rendering engine templates after the first has been uploaded.
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@4823 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
- All users can now Read/Browse content in the Staging Area
- None of the user roles (including Content Managers!) can create/edit/delete directly in the Staging Area
- The only exception to this rule is the system admin user - who can do anything anywhere in the app…
- Content Publisher roles can now view other users sandboxes - but in Read mode only
- http://issues.alfresco.com/browse/WCM-211
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@4803 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
- fixing various upload related bugs (resize issue, not handling file exists exception, not attaching uploaded files to workflow, loosing some of the uploaded files, and probably some more).
- reusing upload_helper.js code from xforms.js. added facility for having the javascript return page return an error and file type image to support xform - doesn't effect other usages (create form).
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@4800 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261