<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: Configuring 'eyeball' icon without virtualization server in Alfresco Archive</title>
    <link>https://connect.hyland.com/t5/alfresco-archive/configuring-eyeball-icon-without-virtualization-server/m-p/165248#M118944</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Hi Peter,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I really liked your idea #1 when I first read your suggestion. However, I'm just now getting&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;back to this issue and I find I can't quite connect the dots.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;If I write a micro-webapp, then won't that be the application I'm actually previewing?&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;My actual application is in struts, and it's all imported into the AVM. Even though the&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;virtualization server can't run it, my preview server can see all the content. I thought&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;about installing some sort of filter in my main app that could tell whether or not&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;it's running under the virtualization server, but my app won't run in the virtualization&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;server because it's struts! I'm caught in some sort of mental loop here…&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;As for your #2 idea, we are already using the deployment mechanism, but that doesn't&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;really help with making the eyeball icon work (unless I missed your meaning).&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;The only way I can think of to get out of this mess is to have my preview server split&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;it's resources somehow. All content comes from the AVM mount, but the application&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;comes from outside alfresco. Then I could maybe use your micro-webapp trick, since&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;that would be the only application installed in the avm. But that's both hard and messy.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Do you see where I'm stuck? What have I missed?&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Many thanks,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Fred&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Mon, 14 Apr 2008 20:19:21 GMT</pubDate>
    <dc:creator>ftoth</dc:creator>
    <dc:date>2008-04-14T20:19:21Z</dc:date>
    <item>
      <title>Configuring 'eyeball' icon without virtualization server</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/configuring-eyeball-icon-without-virtualization-server/m-p/165246#M118942</link>
      <description>Hi all,For reasons documented elsewhere, we cannot run our applicationunder the 2.1 virtualization server (we use struts).We're working on our own preview server that gets around that limitationby previewing from the AVM CIFS mount. This works fine, but only if wecan type the actual URL in the previ</description>
      <pubDate>Sun, 06 Apr 2008 16:33:20 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/configuring-eyeball-icon-without-virtualization-server/m-p/165246#M118942</guid>
      <dc:creator>ftoth</dc:creator>
      <dc:date>2008-04-06T16:33:20Z</dc:date>
    </item>
    <item>
      <title>Re: Configuring 'eyeball' icon without virtualization server</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/configuring-eyeball-icon-without-virtualization-server/m-p/165247#M118943</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;I know of at least two ways to get the behaviour you describe:&lt;/SPAN&gt;&lt;BR /&gt;&lt;OL style="list-style-type:decimal;"&gt;&lt;LI&gt;(2.0+) Develop a micro-webapp that's installed into the Web Project and contains a single "redirector" servlet that responds to all requests (/*).&amp;nbsp; This servlet would contain whatever logic is necessary to convert a virtualisation server URL to the URL of your own standalone server, &lt;EM&gt;passing through the sandbox's store id&lt;/EM&gt; (this is important so that your app knows which subdirectory of the \\alfrescoserver\AVM mount to access).&amp;nbsp; The advantage of this approach is that you can support a large amount of concurrent preview activity from a single server.&lt;/LI&gt;&lt;BR /&gt;&lt;LI&gt;(2.2+) Use the new test deployment functionality to deploy content out to a real filesystem that your app needs (see &lt;A href="http://wiki.alfresco.com/wiki/Deployment#Live.2FTest_Server_Deployment" rel="nofollow noopener noreferrer"&gt;http://wiki.alfresco.com/wiki/Deployment#Live.2FTest_Server_Deployment&lt;/A&gt; for more details).&amp;nbsp; The problem with this approach is that you need to configure multiple copies of your web app if you need to support preview from more than one sandbox at a time.&lt;/LI&gt;&lt;/OL&gt;&lt;SPAN&gt;Cheers,&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Peter&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 07 Apr 2008 00:16:12 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/configuring-eyeball-icon-without-virtualization-server/m-p/165247#M118943</guid>
      <dc:creator>pmonks</dc:creator>
      <dc:date>2008-04-07T00:16:12Z</dc:date>
    </item>
    <item>
      <title>Re: Configuring 'eyeball' icon without virtualization server</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/configuring-eyeball-icon-without-virtualization-server/m-p/165248#M118944</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Hi Peter,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I really liked your idea #1 when I first read your suggestion. However, I'm just now getting&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;back to this issue and I find I can't quite connect the dots.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;If I write a micro-webapp, then won't that be the application I'm actually previewing?&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;My actual application is in struts, and it's all imported into the AVM. Even though the&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;virtualization server can't run it, my preview server can see all the content. I thought&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;about installing some sort of filter in my main app that could tell whether or not&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;it's running under the virtualization server, but my app won't run in the virtualization&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;server because it's struts! I'm caught in some sort of mental loop here…&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;As for your #2 idea, we are already using the deployment mechanism, but that doesn't&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;really help with making the eyeball icon work (unless I missed your meaning).&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;The only way I can think of to get out of this mess is to have my preview server split&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;it's resources somehow. All content comes from the AVM mount, but the application&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;comes from outside alfresco. Then I could maybe use your micro-webapp trick, since&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;that would be the only application installed in the avm. But that's both hard and messy.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Do you see where I'm stuck? What have I missed?&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Many thanks,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Fred&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 14 Apr 2008 20:19:21 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/configuring-eyeball-icon-without-virtualization-server/m-p/165248#M118944</guid>
      <dc:creator>ftoth</dc:creator>
      <dc:date>2008-04-14T20:19:21Z</dc:date>
    </item>
    <item>
      <title>Re: Configuring 'eyeball' icon without virtualization server</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/configuring-eyeball-icon-without-virtualization-server/m-p/165249#M118945</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Ok that adds a lot of relevant detail.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;For starters, Struts should be virtualisable - can you provide more detail (perhaps in a separate forum post) about what doesn't work and what you see in the various logs (the catalina.out for the virtualisation server in particular) when you try to run your app via the virtualisation server?&amp;nbsp; It would also help to know which version of Struts you're using (v1 vs v2), since the two are basically different codebases.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Continuing on this thread for a moment though, the micro-webapp approach is easiest to configure if your webapp code is not stored in Alfresco.&amp;nbsp; In this model Alfresco is used purely for &lt;/SPAN&gt;&lt;EM&gt;content&lt;/EM&gt;&lt;SPAN&gt; management - &lt;/SPAN&gt;&lt;EM&gt;code&lt;/EM&gt;&lt;SPAN&gt; management is handled outside of Alfresco in the traditional way (with an SCM, build scripts, test and deploy processes, etc. etc.).&amp;nbsp; Your web app would retrieve content using HTTP, and (in the case of preview) would do so via data Web Scripts that also receive a sandbox id as a parameter (so that they can virtualise content out of any sandbox in the system).&amp;nbsp; In production, this code would simply be pulling file:// URLs directly from disk (the content having been deployed there by a FileSystem Receiver).&amp;nbsp; How you configure your app to distinguish between preview and production is up to you.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;The micro-webapp, then, is simply responsible for redirecting previewers from the virtualisation server (which contains content but no code) to a separate standalone preview installation of your web app, thereby ensuring that the "eye of Sauron" functions correctly (sends users to the preview instance of your web app).&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Now there are definitely cases where you might want to store both content and code in Alfresco (to obtain consistent snapshot / deployment across both your code and your content, for example), but that either requires use of a web app technology that can be virtualised (which should include most Java-based web frameworks), or it requires Alfresco 2.2 (in order to support test server deployment).&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Cheers,&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Peter&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 14 Apr 2008 21:48:40 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/configuring-eyeball-icon-without-virtualization-server/m-p/165249#M118945</guid>
      <dc:creator>pmonks</dc:creator>
      <dc:date>2008-04-14T21:48:40Z</dc:date>
    </item>
    <item>
      <title>Re: Configuring 'eyeball' icon without virtualization server</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/configuring-eyeball-icon-without-virtualization-server/m-p/165250#M118946</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Hi again, Peter,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Thanks for your help.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;The struts issue (we're using struts 2) has been mentioned in many threads (some by me).&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Here's one:&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;A href="http://forums.alfresco.com/viewtopic.php?f=29&amp;amp;t=7534&amp;amp;hilit=struts+virtualization" rel="nofollow noopener noreferrer"&gt;http://forums.alfresco.com/viewtopic.php?f=29&amp;amp;t=7534&amp;amp;hilit=struts+virtualization&lt;/A&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Apparently it's fixed in 2.1 enterprise, but I'm on community.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;As far as keeping the webapp code outside of Alfresco - I completely agree (though&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;others have advised otherwise in these discussions).&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;My problem is rooted in the fact that we tend to build large content-oriented sites,&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;and we also rely heavily on the tomcat DefaultServlet to handle all the things that&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;we don't need to handle in our application, such as images, PDFs, etc. It does a great&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;job, already knows about mime types, etc. If you look at the source you can see that&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;it was written by somebody WAY smarter than me.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;But! It can serve basic content only one of two ways: Either it is serving out of a&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;war file (which we can't do on large sites because we can't package all of our &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;content into a war file), or we run the application "unpacked". This is how we're&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;currently set up with alfresco. The unpacked application is completely inside WCM&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;and our preview server mounts the entire thing, WEB-INF and all.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I've run into this issue over and over in the past and the only other way I've solved&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;it is by hacking a configuration parameter into DefaultServlet so that I can point&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;it outside of the webapp proper. I may go back to that as my way out of this box.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Once I've done that, I can do as you suggest and have WEB-INF outside of alfresco&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;and just point the default servlet to the CIFS mount.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Although, I'm also tempted to try hacking alfresco so that the default values for&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;the eyeball can be set without the virtualization server. Then I don't need it at all!&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;(I've actually never really liked the idea of the virtualization server anyway, as you&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;can see from my various posts.)&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;As always, I'd be interested to hear how others might have solved this.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Many thanks,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Fred&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 15 Apr 2008 00:35:48 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/configuring-eyeball-icon-without-virtualization-server/m-p/165250#M118946</guid>
      <dc:creator>ftoth</dc:creator>
      <dc:date>2008-04-15T00:35:48Z</dc:date>
    </item>
    <item>
      <title>Re: Configuring 'eyeball' icon without virtualization server</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/configuring-eyeball-icon-without-virtualization-server/m-p/165251#M118947</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Fred:&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Yes, the two best options are to either (a) leverage our new Struts virtualization or (b) leverage test server deployments (highlighted by Peter) which enables preview via remote banks of test servers (that users specify check-out and sync their changes to via deployment).&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;The good news is that this June we will be updating our 2.9 Community release to catch-up all the bug fixes and minor improvements made to the Enterprise code-line since our initial 2.1.0 release.&amp;nbsp; If you can wait until then, you can continue to leverage Community, or, if not, you can switch to an Enterprise distribution.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;If you want to be really bold, all of the above changes have already been synced to HEAD and are actually available for check-out from our public SVN.&amp;nbsp; We won't officially build a new Community release, however, until June as I highlighted, and please do know that if you take any random point-in-time build from our source, you will need to vet very, very thoroughly (there is no guarantees on quality - it really is the evolving source base).&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Kevin&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 19 Apr 2008 16:35:43 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/configuring-eyeball-icon-without-virtualization-server/m-p/165251#M118947</guid>
      <dc:creator>kvc</dc:creator>
      <dc:date>2008-04-19T16:35:43Z</dc:date>
    </item>
    <item>
      <title>Re: Configuring 'eyeball' icon without virtualization server</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/configuring-eyeball-icon-without-virtualization-server/m-p/165252#M118948</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Dear Kevin and Peter,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Thanks once again for your attention to this issue.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I have liberated the eyeball! I offer this humble patch (see below). With 8 lines&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;of code and a couple of system properties, it is possible to set the WCM preview&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;host and port without using the virtualization server. I suspect you're not patching&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;2.1, but perhaps others will find this useful.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Clearly this is not an elegant patch.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I spent hours trying to make this work using the alfresco configuration override&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;system but I was not man enough. There are bugs, according to JIRA, relating&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;to problems with certain parameters being overridden and others not. So it goes.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;I went pretty deep into those woods and eventually cut and ran.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I would respectfully suggest that your new version include the capability of configuring&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;WCM preview host and port without the virtualization server. To reiterate, I believe&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;there are problems with the virtualization server concept:&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;1. It won't run my app. Struts 2 is not particularly rare!&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;2. It is completely java-centric. So am I, but what if I want to do rails or php someday?&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;3. It relies on a hacked tomcat. Time marches on. Can you afford to continue&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;to hack tomcat each time a new version appears? What if someone is developing&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;in websphere and needs some of their features?&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;4. Managing app servers is hard enough. And one of the hardest parts is class loading&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;idiosyncrasies. It appears that the virtualization server is mired in that very tar pit.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Every one of those issues is solved by allowing the WCM preview function to be&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;configured inside of alfresco, pointing it to an external host and port.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Thanks,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Fred&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Patch follows:&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;PRE class="language-none line-numbers"&gt;&lt;CODE&gt;Index: projects/web-client/source/java/org/alfresco/web/config/ClientConfigElement.java&lt;BR /&gt;===================================================================&lt;BR /&gt;— projects/web-client/source/java/org/alfresco/web/config/ClientConfigElement.java&amp;nbsp;&amp;nbsp;&amp;nbsp; (revision 929)&lt;BR /&gt;+++ projects/web-client/source/java/org/alfresco/web/config/ClientConfigElement.java&amp;nbsp;&amp;nbsp;&amp;nbsp; (working copy)&lt;BR /&gt;@@ -510,6 +510,10 @@&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; */&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; public String getWCMDomain()&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;BR /&gt;+&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; String sysProp = System.getProperty("wcm-preview-domain");&lt;BR /&gt;+&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (sysProp != null)&lt;BR /&gt;+&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return sysProp;&lt;BR /&gt;+&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; String value = this.wcmDomain.get();&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (value == null)&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;BR /&gt;@@ -531,6 +535,10 @@&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; */&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; public String getWCMPort()&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;BR /&gt;+&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; String sysProp = System.getProperty("wcm-preview-port");&lt;BR /&gt;+&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (sysProp != null)&lt;BR /&gt;+&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return sysProp;&lt;BR /&gt;+&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; String value = this.wcmPort.get();&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (value == null)&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;SPAN class="line-numbers-rows"&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/CODE&gt;&lt;/PRE&gt;&lt;BR /&gt;&lt;SPAN&gt;Once the patch is in place, start alfresco with something like this:&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;PRE class="language-none line-numbers"&gt;&lt;CODE&gt;-Dwcm-preview-domain=preview.yourdomain.com -Dwcm-preview-port=9999&lt;SPAN class="line-numbers-rows"&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/CODE&gt;&lt;/PRE&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 23 Apr 2008 00:53:47 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/configuring-eyeball-icon-without-virtualization-server/m-p/165252#M118948</guid>
      <dc:creator>ftoth</dc:creator>
      <dc:date>2008-04-23T00:53:47Z</dc:date>
    </item>
    <item>
      <title>Re: Configuring 'eyeball' icon without virtualization server</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/configuring-eyeball-icon-without-virtualization-server/m-p/165253#M118949</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Great suggestion.&amp;nbsp; Add agreed on managing class-loading idiosyncracies.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;The overall goal is to enable in-context preview for any past, present, or future (potential) state of the site.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;At a minimum, we need to enable preview of Staging before deployment for any type of site.&amp;nbsp; This accomplishes&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;that nicely.&amp;nbsp; Next best is to enable preview of any store (each sandbox is its own repository) for any type of site&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;in as automated, non-conflicting way as possible for any type of site.&amp;nbsp; This is what we've done with 2.2.0E with&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;test servers, pooled sets of remote preview servers, and UI config of preview URLs for those servers (along with&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;auto-sync, check-out, and check-in).&amp;nbsp; This is particularly good for non-Java and/or non-virtualizable sites, or &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;specifically for developers who want to sync a specific test server for preview of their modifications.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;In the best case, we eliminate unnecessary banks of slave test servers and just enable preview via virtualization,&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;eliminating unnecessary class loading for things that have already been loaded and sit unmodified via a layer in&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;any user or workflow store.&amp;nbsp; This isn't possible with non-Java-based web apps, and not always readily support&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;for all Java web apps frameworks (JSF being a notable example; Struts/Struts2, however, is fixed as of 2.1.1).&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;If you can file this as an improvement in JIRA, we can see about adding this as an enhancement in our upcoming&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;June Community release.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Thanks!&amp;nbsp; Hopefully then, we'll have all bases covered from best case to worst case.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Kevin&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 23 Apr 2008 01:29:39 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/configuring-eyeball-icon-without-virtualization-server/m-p/165253#M118949</guid>
      <dc:creator>kvc</dc:creator>
      <dc:date>2008-04-23T01:29:39Z</dc:date>
    </item>
    <item>
      <title>Re: Configuring 'eyeball' icon without virtualization server</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/configuring-eyeball-icon-without-virtualization-server/m-p/165254#M118950</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;I've filed a feature improvement in JIRA for a more general solution for this overall problem:&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;A href="http://issues.alfresco.com/browse/WCM-1173" rel="nofollow noopener noreferrer"&gt;http://issues.alfresco.com/browse/WCM-1173&lt;/A&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Please comment as needed, and you can register as a watcher to see any update on status.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Kevin&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 23 Apr 2008 09:11:13 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/configuring-eyeball-icon-without-virtualization-server/m-p/165254#M118950</guid>
      <dc:creator>kvc</dc:creator>
      <dc:date>2008-04-23T09:11:13Z</dc:date>
    </item>
    <item>
      <title>Re: Configuring 'eyeball' icon without virtualization server</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/configuring-eyeball-icon-without-virtualization-server/m-p/165255#M118951</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Hi Kevin,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I read your JIRA issue and I have a question or two about one particular point.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;If I understand correctly, this is the point that most applies to my case:&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BLOCKQUOTE class="jive-quote"&gt;* If not using Virtualization Server and enable single server preview, specify URL of dedicated server and provide Preview icon for Staging Sandbox only&lt;/BLOCKQUOTE&gt;&lt;BR /&gt;&lt;SPAN&gt;My question is, why "Staging Sandbox only"?&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;One of the things I've been working hard on is the "too many clicks" problem of moving&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;content onto a site. To that end, it seems important to me that as soon as content&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;is in a user's sandbox, they should be able to see it. I thought that was the whole point&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;of the AVM and transparent overlays, etc. If the user has to promote content to the&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;staging sandbox before they can see it, it's more clicks.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Can you explain?&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Thanks,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Fred&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 24 Apr 2008 14:32:27 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/configuring-eyeball-icon-without-virtualization-server/m-p/165255#M118951</guid>
      <dc:creator>ftoth</dc:creator>
      <dc:date>2008-04-24T14:32:27Z</dc:date>
    </item>
    <item>
      <title>Re: Configuring 'eyeball' icon without virtualization server</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/configuring-eyeball-icon-without-virtualization-server/m-p/165256#M118952</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;It's trivial to pass through the sandbox id as part of the URL to the external web app, so support for previewing any sandbox (whether staging or not) in an external web app is certainly possible - in fact I implemented this approach just last week.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Of course the external web app has to be able to receive that sandbox id parameter and do something sensible with it ie. retrieve content from that specific sandbox only.&amp;nbsp; In last week's case, for example, the app holds on to the sandbox id and passes it to a web script, which then retrieves the content from that sandbox.&amp;nbsp; This effectively means that a single copy of the external web app is capable of surfacing content from any sandbox in the system, and provided the "eye of Sauron" button passes through the sandbox id to the external application correctly, it's as if that single copy of the external app is fully virtualised (even though the virtualisation server is nowhere in the picture).&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Cheers,&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Peter&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 24 Apr 2008 20:20:31 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/configuring-eyeball-icon-without-virtualization-server/m-p/165256#M118952</guid>
      <dc:creator>pmonks</dc:creator>
      <dc:date>2008-04-24T20:20:31Z</dc:date>
    </item>
    <item>
      <title>Re: Configuring 'eyeball' icon without virtualization server</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/configuring-eyeball-icon-without-virtualization-server/m-p/165257#M118953</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Peter,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;How did you do it without the virtualization server? Don't you&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;need it to configure the eyeball icon (hence my patch)?&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Thanks,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Fred&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 24 Apr 2008 23:19:01 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/configuring-eyeball-icon-without-virtualization-server/m-p/165257#M118953</guid>
      <dc:creator>ftoth</dc:creator>
      <dc:date>2008-04-24T23:19:01Z</dc:date>
    </item>
    <item>
      <title>Re: Configuring 'eyeball' icon without virtualization server</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/configuring-eyeball-icon-without-virtualization-server/m-p/165258#M118954</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;In this case we did use the virtualisation server but it did nothing more than redirect all requests to the external web app (performing URL translation in the process)&amp;nbsp; This was achieved using a servlet filter that was installed into the Web Project and that was configured for all requests.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;It would be preferable to patch the code that generates the URL for the Eye of Sauron to generate the external web app URL directly (since then the virtualisation server would not be needed for preview purposes at all), but in this case we didn't have the luxury of time.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Still, I'd like to investigate this approach further when I do have time, with the intent of adding it as a patch to WCM-1173.&amp;nbsp; I think this will be a reasonably small / easy change if the mapping between Web Projects and external web app URI templates is done outside the UI (eg. via Spring configuration).&amp;nbsp; A more "professional" solution would add the external URI template as metadata to the Web Project (and update the Web Project Wizard UI accordingly), but that's a bit more involved and I figure the primary value is in being able to configure the preview URI somehow, even if it has to be done via a Spring config file.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Cheers,&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Peter&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 25 Apr 2008 05:44:55 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/configuring-eyeball-icon-without-virtualization-server/m-p/165258#M118954</guid>
      <dc:creator>pmonks</dc:creator>
      <dc:date>2008-04-25T05:44:55Z</dc:date>
    </item>
    <item>
      <title>Re: Configuring 'eyeball' icon without virtualization server</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/configuring-eyeball-icon-without-virtualization-server/m-p/165259#M118955</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;If anyone's interested, I've just attached a patch to &lt;/SPAN&gt;&lt;A href="http://issues.alfresco.com/browse/ALFCOM-334" rel="nofollow noopener noreferrer"&gt;http://issues.alfresco.com/browse/ALFCOM-334&lt;/A&gt;&lt;SPAN&gt; (the renamed version of WCM-1173) that allows the URL for the "Eye of Sauron" to be configured via Spring configuration.&amp;nbsp; It would be great if it could get a bit more real world testing so that we can get some confidence about merging it into the 2.2.1 release.&amp;nbsp; If anyone does take it for a spin and hits issues, please let me know via a private forum message.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Note that the ideal end state is to allow the preview URI to be configured via the Web Project Settings Wizard rather than deep in the bowels of Spring, but in the interest of time I decided to skip the (excessively time consuming!) JSF UI work and simply use Spring - I figure that getting this functionality out there quickly took priority over optimising the usability for such a low volume / one-off type task.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Cheers,&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Peter&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 13 May 2008 05:50:36 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/configuring-eyeball-icon-without-virtualization-server/m-p/165259#M118955</guid>
      <dc:creator>pmonks</dc:creator>
      <dc:date>2008-05-13T05:50:36Z</dc:date>
    </item>
  </channel>
</rss>

