Blog from an ATG Developer

April 19, 2009

Getting Started with ATG – jBoss and Oracle

Filed under: ATG,Learning,Work Related — madhulal @ 2:55 pm
Tags: ,

When I write this note, the present ATG version is 9. For couple of days, being in the comfort of home, I have been trying to create a new project in ATG9 on Windows Xp. I have just finished it successfully. So the steps are as follows.

  • Extract to one of your locale drives.
  • Install the j2dk you require. I installed jdk1.5.0_11.
  • Start the installation of ATG9.
    1. We need to specify the application server(jBoss) and jdk paths.
    2. Let the rest be the defaults.
    3. Finish the installation.
    4. Copy the license files to ATG/ATG9.0/home/localconfig
    5. ATG recommends using the following setting for jBoss

JAVA_OPTS=”-server -Xms2048m -Xmx3072m -XX:MaxPermSize=768m

-XX:MaxNewSize=768m -Dsun.rmi.dgc.server.gcInterval=3600000 –


  • Now the DB. I hate this part. It took most of my time.
      1. I chose Oracle10g as my DB.
      2. No adventures. Go with the Basic Installation.
      3. Finish the installation. It will create a sample db too.
      4. Now go to Start Menu -> All Programs -> Oracle – OraDb10g_home1 ->Configuration and Migration Tools . Click on the Database Configuration Assistant.
      5. This will help you to create a new db. No adventures again. Just give the db name(SID will be the same). Go till the last screen, which has a ‘Password Management ‘ button.
      6. Click on it. Give the desired passwords for the SYS and SYSTEM users and unlock the required users.
      7. Then finish and exit the Oracle installation.
      8. Start SQLPlus or some Oracle Client. I prefer sqldeveloper.(Freeware).
      9. Connect to the newly created DB with SYS/ with role selected as DBA.
      10. Our aim is to create a user for the project specific use. For this purpose we need to create a new tablespace. The following sql script will create the tablespace named ts_poc.
      11. Now we can create a user in this table space for our project. sql is as follows
      12. Grant DBA role to the newly created user
      13. Now we can disconnect the SYSTEM user and connect using the newly created user(learn1).
      14. Here we need to create tables required for our new project. Since our project is based on ATG, we need the tables that ATG uses. ATG uses mainly four modules – DAS, DPS, DSS and DCS. We need to put all the tables these modules use. The DDLs are provided with ATG. We can find them in sql\install\folder of each Module. For example, in the case of DCS and our Oracle, we have to execute the following script.ATG\ATG9.0\DCS\sql\install\oracle\dcs_ddl.sql.
      15. We need to execute them in exactly following order – DAS, DPS, DSS and DCS. Otherwise we will get some errors. Some of the tables in these modules are inter related.
      16. So at last we are done with DB part. Now we have most of the tables as empty.
      17. Optionally, you can change the port number of the oracle if needed as it collides with the default jboss http port.
      — Create the table space
      create tablespace ts_poc logging datafile ‘C:\oraclexe\oradata\tspoc.dbf’ size 32m autoextend                     on next 32m maxsize 2048m extent management local;

      –Create the user
      create user learn1 identified by learn1 default tablespace ts_poc;

      — Grand DBA permission
      grant dba to learn1;

    — change HTTP port from 8080 to 8083

    call dbms_xdb.cfg_update(updateXML(dbms_xdb.cfg_get(),                                                                                                          ‘/xdbconfig/sysconfig/protocolconfig/httpconfig/http-port/text()’, 8083));

    — change FTP port from 2100 to 2111

    call dbms_xdb.cfg_update(updateXML( dbms_xdb.cfg_get(),                                                                                                          ‘/xdbconfig/sysconfig/protocolconfig/ftpconfig/ftp-port/text()’ , 2111));

    — refresh settings

    exec dbms_xdb.cfg_refresh;

  • So the tough db part is over. Now we need to make the application up. ATG used to come with their own server called DAS(Dynamo Application Server). But nowadays they have stopped them and also support for it is also closed. Now they are promoting jBoss. Even though they support IBM websphere, they don’t want to promote it as they also have some product similar to ATG.
  • During the ATG installation, it creates a new server called “atg” in jboss server folder. This is nothing but a folder with name ‘atg’ with a number of files and folders. We are going to create a new server. It is very simple. Just create one more folder say ‘learning’. Copy all the contents from ‘atg’ folder to the newly created folder. We are going to deploy our project to this folder.
  • Now we need something to work on. Eclipse. Download it. There are so many plugins provided by ATG to make life easier.
  • For easy to use, I have created an eclipse project, you can download it and import it to Eclipse after extracting it. Download it here.
  • Check for the META_INF,, build.xml and for configuration things.
  • It involves a bit of configuration. Change the name by searching for it. Change the server name. Change the context root etc. (dynamoJ2EESpecifier.xml)
  • Set the required environment variables – DYNAMO_HOME, JBOSS_HOME and JAVA_HOME.
  • Build the application. The build creates a new module and then creates a .ear and .war files in the jboss server directory specified.
  • Copy the jboss\server\learning\atg-oracle-ds.xml to \server\deploy folder. This is used for the connection to the database. Edit this file to change the db details. This is referred in Also copy the jdbc jar file to lib folder.
  • Now we can start the new application. We need to start the jboss with the sew server we created. In our case that will be run -c . Check for the server successful start up(We can use ATGLogColorizer.exe to make the errors bloody ). Most common errors are regarding the db issues. If you find them modify the atg-oracle-ds.xml.
  • Done, access the web page using http://localhost:8080/. I have put an index file which will show up.http://localhost:8080/dyn/admin will take you to ATG admin pages (Credentials: admin/admin)

Should you have questions regarding any aspects of this, please feel free to contact me.



    1. Hi,

      Thanks for the Steps, It would be great, if you can add screenshots of the steps.
      What are the different modules in ATG and which sql scripts should I run for it?

      Thanks in Advance

      Comment by CK — June 17, 2009 @ 10:16 am | Reply

    2. I will add. Right now I am too busy with my work 😦
      Not even getting time to update my blog also.
      Please bear with me for some time.

      Comment by madhulal — June 18, 2009 @ 10:46 am | Reply

    3. […] further reading please see Getting Started with ATG – jBoss and Oracle and Create Additional JBoss Application Server […]

      Pingback by NameNotFoundExceptions during start up of ATG application on JBoss - betweenGo — July 21, 2009 @ 2:33 pm | Reply

    4. Hi,

      Do you have some step by step tutorial of running ATG 7.1 on JBoss (with Oracle), like the one you presented for ATG9?
      Right now I’m using DAS, and I wouldn’t like to reinstall the whole platform, just change the application server.

      Best regards,

      Comment by JS — July 28, 2009 @ 12:23 pm | Reply

      • “I am afraid I don’t have any tutorial on ATG7.1. But I guess you don’t need to do much configuration to change you app server.
        Create a new server instance in jboss and then put the ear(instead of accessing the module directly in DAS) in this new server. You can use the same FakeXADatasource for db connections.

        Comment by madhulal — July 29, 2009 @ 5:27 am | Reply

    5. hi,

      I’m new to ATG. Can you send me some docs that will help me to understand

      1) How to set up ATG and Jboss? and work on local machine. I mean I want to develop an ATG application then want to run on my local system using Jboss server since IBM server I need to pay.
      2) How to create a droplets?
      3) How to create a formhandlers?
      4) How to work with persionlization.
      5) what is senario in ATG? How to create a scenario?
      6) Most important is I want to learn how to work with repository. How to set up repository? How to access data from our database in ATG using repository concept.

      Please help me to understand this things.

      Kindly post some links or attach some PPT, PDF or documents that can help me to learn ATG properly.

      Please note my emailID:

      Comment by Vinod — April 22, 2010 @ 7:27 am | Reply

    6. Hi,
      I m new to ATG could you please with the installation and configuration with jboss,websphere and weblogic. Could you please share the screen shots

      Comment by sandhya — October 5, 2011 @ 2:44 pm | Reply

    7. Hi,

      I am newbie in ATG. I have followed all the above steps. But I am not able to launch learning app on my browser. It is showiing some error. database could not be connected. And I want to know one more thing about this example. Is it required to create table_spaces, because oracle has it’s own table space. And I don’t want to create new one. please let me know if you have any information about it. And please let me know do I need to run ATG9.3 before launching this application.


      Comment by Manveer — November 11, 2011 @ 10:57 am | Reply

    8. Hi

      I am fairly new with ATG.I followed all the steps mentioned above to complete the process,however as soon as i start the application (or start the Jboss) it gives me an error which is mentioned below:

      E:\ATG\ATG9.0\Learning\config\config.jar does not exist or is not readable

      I am not sure what it means or what it refers to.
      please help.
      Thanks In Advance

      Comment by priyanka — January 16, 2012 @ 6:33 am | Reply

    9. hi,
      kindly help me out.
      this is my email
      Thank you

      Comment by shivesh kumar — March 15, 2012 @ 4:42 pm | Reply

    10. Boss… To be frank, you really rock…. I am trying to do blogging on ATG as like you… 🙂 , is the link to my blog

      Comment by Deepakkumar — April 29, 2012 @ 6:11 am | Reply

    11. also refer how can we set up an atg server on jboss after installing atg here ->

      Comment by sebastian — May 15, 2012 @ 5:58 pm | Reply

    RSS feed for comments on this post. TrackBack URI

    Leave a Reply

    Fill in your details below or click an icon to log in: Logo

    You are commenting using your account. Log Out /  Change )

    Google+ photo

    You are commenting using your Google+ account. Log Out /  Change )

    Twitter picture

    You are commenting using your Twitter account. Log Out /  Change )

    Facebook photo

    You are commenting using your Facebook account. Log Out /  Change )


    Connecting to %s

    %d bloggers like this: