Agility in Oracle

In May 2007 Oracle purchased Agile software, the industry leader in Product Lifecycle Management (PLM) software. Oracle’s Agile PLM solutions help engineers, manufacturing and supply chain professionals and business executives drive the product innovation and introduction process, share product specifications and configurations and collaborate effectively across the supply chain in a variety of industries such as technology, life sciences, manufacturing and consumer packaged goods. The Agile PLM solutions help customers make better product portfolio decisions, accelerate new product introduction, improve manufacturing quality and manage regulatory compliance.

One way to make the best use of the Agile suite is to share it over the internet, collaborating with suppliers. However, this presents some challenges in order to ensure that first of all the application works over the internet, and that it is secure.

This can be achieved by implementing a reverse-proxy in a DMZ. A reverse-proxy is a web server such as Microsoft IIS or the open source Apache, that is configured to translate internal to external web addresses. So for example, an Agile installation running on the internal network may have a URL of:

http://london1.local.com:7777/Agile/PLMServlet

But over the internet, may be:

http://agile.mycompany.com/Agile/PLMServlet

However, the process isn’t as simple as configuring the reverse proxy. The application itself needs to know about the external web addresses too. So here’s an example of how we do it.

  1. Configure Apache server as a reverse proxy, as per Oracle Support note 1265792.1. An example of a virtual host configuration within Apache would be:<VirtualHost *:80>
    ServerName agile.mycompany.com:80
    Include conf/security.conf
    ProxyRequests Off
    ProxyPreserveHost On
    ProxyPass /Agile http://london1.local.com:7777/Agile
    ProxyPassReverse /Agile http://london1.local.com:7777/Agile
    ProxyPass /CoreService http://london1.local.com:7777/CoreService
    ProxyPassReverse /CoreService http://london1.local.com:7777/CoreService
    ProxyPass /Filemgr http://london1.local.com:8080/Filemgr
    ProxyPassReverse /Filemgr http://london1.local.com:8080/Filemgr
    </VirtualHost>
  2. Configure the File Manager applications:
    1. Shutdown the internal Tomcat server
    2. Unpack: $AGILE_HOME/agileDomain/applications/webdav.war
    3. Locate: WEB-INF/classes/com/agile/webfs/configuration/server.confand change…file.server.url =http://london1.local.com:8080/Filemgr/services/FileServer…to…file.server.url =http://agile.mycompany.com/Filemgr/services/FileServer
    4. Re-pack and replace webdav.war.

This process needs to be repeated for: webfs.war and agile-sso.jar, taking care to backup the files as you go, just in case any errors are introduced.

Finally remove the deployed Filemgr directory: $CATALINA_HOME/webapps/Filemgr and restart the Tomcat server.

When it restarts, verify the catalina.out log file shows that Filemgr has been deployed successfully and that the $CATALINA_HOME/webapps/Filemgr directory is recreated.

The last step is to log into the PLM Java client, eg. http://london1.local.com:7777/JavaClient/start.html

And change any relevant URL’s to use the new proxy address:

Share This