I recently had a request from one of my content developers to use adobe edge within WebSphere Portal. At first I thought this was simple request and decided to oblige home.
How wrong I would be. There are several problems with this in that the way Edge produces files and the way that it looks to load the files.
At first I tried to load this all into WCM and serve the content from there as would be normal with any other CMS you want your content in there.
I was able to get it to load the edge js but it could not find the app js or the images so back to the drawing board.
First I decided to see if I could get it working in just a web app. This would let me remove many of the compexities of Portal but also see if I could get things working the way I thought they should work. This was fairly easy as I was going right to the html page and it was able to find the items because everything was relative.
Next step put it into a portlet. One of the things in the html for the app is that it states to put the edge runtime into the head. Well on portal it is not something we want to load on every page, and I did not want to create a theme profile for every edge app we might have. so I placed this into the portlet jsp.
I then changed this
I used http://unminify.com/
After that I changed this line
ba ? (window.edge_authoring_mode || (g ? (f.definePreloader(g), e()) : f.load(a + "_edgePreload.js", e)), a && (c && c.bootstrapLoading ? ka.push(a) : window.edge_authoring_mode && c.sym ? f.load(a + "_edge.js?symbol=" + c.sym) : f.load(a + "_edge.js"))) : window.edge_authoring_mode || (m ? (f.defineDownLevelStage(m), h()) : f.load(a + "_edgePreload.js", h))
To look like this
}), z ? (window.edge_authoring_mode || (i ? (l.definePreloader(i), s()) : l.load(t + "_edgePreload.js", s)), t && (n && n.bootstrapLoading ? Q.push(t) : window.edge_authoring_mode && n.sym ? l.load("/wps/PA_Mira/not-overlooked-day-resp_edge.js?symbol=" + n.sym) : l.load("/wps/PA_Mira/not-overlooked-day-resp_edge.js"))) : window.edge_authoring_mode || (r ? (l.defineDownLevelStage(r), a()) : l.load(t + "_edgePreload.js", a))
You can see how I had to hard code the location of the loading for the portlet context and the js, not great and I possibly could have done it so that it was more dynamic but at this point it seemed less than important.
With this change the js was loading but none of the images were. so the next change I had to do was modify the root where it looked for images.
In the file not-overlooked-day-resp_edge.js
I modified following to have the context root for the portlet
Now all the images were loading just fine but I had this huge gap above the image and the animations so after some more digging I found in the edge js this section
g.css("margin-top", "auto"), g.css("margin-bottom", "auto")
I removed these and then my animation displayed just fine
I had originally started down this path by reviewing https://forums.adobe.com/thread/1120897