One of the requests for enhancements in the PeopleTools Product Strategy group on Oracle Mix is for the ability to run Application Designer on Linux. This was actually discussed in the session that the PeopleTools Product Strategy group hosted at Oracle OpenWorld this year.
Although most people think it’s not possible, read on and see that you can have an Application Designer icon on your Linux desktop that works just like Windows. But first, a bit of relevant history.
If I ever want to freak out old-time PeopleTools developers I just need to say the words “Cross-compiler”. Back in the 1990’s, when all of PeopleSoft was a Win32 client/server application, there was a strong push from the higher education community for Mac support. The idea of maintaining a Mac specific port of the PeopleTools client was not viewed as something that we had the skills or resources to do (either to create it or maintain it if we paid someone else to do it).
I don’t know where the initial idea came from, but someone pointed out that the Microsoft C compiler that was in use at the time in PeopleSoft supported cross compiling and targetting the resultant binaries at the Mac platform as well as Windows. Keep in mind that this was long before Apple switched to using Intel for their chips, so it wasn’t just a different OS, but a different underlying CPU architecture as well.
To make a long and painful story short, it worked just well enough for a lot of internal PeopleTools development resources to be devoted to working on it, but never well enough for actual production use. It never actually saw the light of day.
It would probably be a little bit easier today, since the PeopleTools internals have been re-factored quite a bit (appserver re-factoring was a big part of this, but other things helped as well (64 bit platforms, Itanium, etc.)). In addition, there have been advances in cross-compiler technology as well. But we’re going to take a slightly different approach 🙂
The desktop environment that we’re working with is Ubuntu 9.04. The PeopleSoft environment is HCM 9.1, running on PeopleTools 8.50. Here’s a screenshot of (a portion of) the desktop.
We’ve even got a Query icon as a bonus! What happens when we click on the icon?
Yep, that’s App Designer. So, what’s the trick? Well, we cheated a little bit. We didn’t really get Application Designer running directly on Linux (sorry Nicolas!); we used the Linux Terminal Services Client, which ships as part of Ubuntu (it’s available for other Linux distributions as well) and setup a direct link to launch Application Designer.
We’re also using our Desktop Single Signon product to be able to launch Application Designer without being prompted for our PeopleSoft credentials. Here’s what it would look like without single signon.
After filling in your PeopleSoft credentials, then you’d be in App Designer.
Here’s what the configuration looks like to make this work. Launch the Terminal Server Client. In Ubuntu the menu path is Applications -> Internet -> Terminal Server Client.
The key things here are the Terminal Server host that I want to connect to and my Windows network credentials. If I didn’t fill those in in this configuration dialog, then I would be prompted for the credentials when I first tried to access the Terminal Server.
Not much interesting on the display tab, except that you can set the connection to go full screen instead of just being within a window on your desktop. If you do this, then you just need to press Ctrl-Alt-Enter to get out of fullscreen mode.
The interesting things here are whether you want sound or not (not much reason to for App Designer development so we turn it off) and whether we want a drive from our machine mapped in to the Terminal Server environment.
When you first setup a Terminal Server connection the Programs tab will be blank by default. This will give you the standard Windows desktop when you access the server. In our example above though, we configured it to launch Application Designer.
That’s actually not 100% accurate though. Setting it up to directly launch pside.exe will work to get in to Application Designer, but this will leave your Terminal Server session tied up when you quit.
Instead what we do is launch a batch file that will run Application Designer and then when it App Designer is closed will logout the session. That’s the little command prompt window that you see in the screenshots above. We use a little batch file trickery (found here) in order to start the Terminal Server session with the command prompt window minimized.
The Terminal Server client lets you save off the different parameters in a .rdp file (named after the Remote Desktop Protocol), which is how we setup the desktop icons to be able to launch the different PeopleTools.
Fun stuff even though we didn’t actually get Application Designer running natively on Linux.
Labels: 2009, ApplicationDesigner