maxieduncan
Showing posts with label ATG. Show all posts
Showing posts with label ATG. Show all posts

Wednesday, 20 October 2010

ATG publishing workflows

To delete workflows:

delete epub_workflow_info;
delete epub_coll_workflow;
delete epub_ind_workflow;


To recreate the workflows you need to ensure that the process editor is set up for the server you're using in /atg/epub/workflow/process/workflowProcessManager.xml:

<?xml version="1.0" encoding="ISO-8859-1" ?>
<process-manager-configuration>
  <process-editor-server>
    <server-name>HOSTNAME:DRP_PORT</server-name>
  </process-editor-server>
  <global-server>
    <server-name>HOSTNAME:DRP_PORT</server-name>
  </global-server>
</process-manager-configuration>

When specifying HOSTNAME it should match the name of the machine (localhost won't do).

Monday, 4 October 2010

Error: There is no installed ATG platform or application package containing an AppModule which matches J2EEAPI

When using ATG and JBOSS on a mac you may well get this error. To resolve this create the dasEnv.sh file if it doesn't exist:
$ATG_HOME/home/localconfig/dasEnv.sh

and add this line to it:
JBOSS_HOME=<path to your jboss home dir>


[INFO] atg.applauncher.AppLauncherException: Error: There is no installed ATG platform or application package containing an AppModule which matches J2EEAPI
[INFO] at atg.applauncher.versioner.Versionator.createInitialRequirements(Versionator.java:277)
[INFO] at atg.applauncher.versioner.Versionator.(Versionator.java:87)
[INFO] at atg.applauncher.MultiInstallLocalAppModuleManager.expandSearchPath(MultiInstallLocalAppModuleManager.java:154)
[INFO] at atg.applauncher.MultiInstallLocalAppModuleManager.(MultiInstallLocalAppModuleManager.java:131)
[INFO] at atg.applauncher.dynamo.DynamoServerLauncher.main(DynamoServerLauncher.java:166)

ATG scenario tables

While ATG scenarios are read from the filesystem they can also be loaded from the database.

For reference the tables where you'll find the scenarios that have been loaded are:
  • dss_scenario_info
  • dss_col_scenario

The table that scenarios are stored in is: epub_file_asset

Saturday, 10 April 2010

Changing server names

Live:
truncate table dss_server_id;

CA:
truncate table dss_server_id;
truncate table dsi_server_id;
truncate table epub_wf_server_id;

Sunday, 25 October 2009

Installing ATG with JBoss on Mac OSX

Installing ATG on Mac OSX is very straight forward even if it isn't officially supported. This assumes that you are already comfortable with installing ATG on other platforms. A more detailed description can be found here if you are not. The below method has worked with ATG 2007.1, 9 and 9.1

  1. Unpack the jboss archive into the location where you want to use it.
  2. Run the unix version of the ATG installer using the following values:
    • For JBOSS_HOME, the path to where you installed jboss
    • For JAVA_HOME, /System/Library/Frameworks/JavaVM.framework/Versions/1.5/Home (or whatever version you are using)
  3. Update the $ATG_HOME/home/installconfig/config.xml so that other ATG applications such as Merch can be installed.

And that's it, ATG should be installed.

None of the solid scripts will work on Mac OSX so you'll need to set up a MySQL database if you want to run the demos.

Example config.xml


<?xml version="1.0" encoding="UTF-8"?>
<config xmlns="*">
    <<install xmlns="">
        <product name="ATG Adaptive Scenario Engine" version="9.1">
            <configure>false</configure>
        </product>
        <product name="ATG Consumer Commerce" version="9.1">
            <configure>false</configure>
        </product>
        <product name="ATG Content Administration" version="9.1">
            <configure>false</configure>
        </product>
        <product name="ATG Portal" version="9.1">
            <configure>false</configure>
        </product>
        <product name="ATG Business Commerce" version="9.1">
            <configure>false</configure>
        </product>
    </install>
    <systemEnv xmlns="">
        <locale>en</locale>
        <rootDir>/Applications/ATG/ATG9.1</rootDir>
        <jBossListenPort>8080</jBossListenPort>
        <docRoot>/Applications/ATG/ATG9.1/home/doc</docRoot>
        <platform>SunOS</platform>
        <rmiPort>8860</rmiPort>
        <programFolder>/Applications/ATG/ATG9.1</programFolder>
        <appServer>JBoss</appServer>
        <baseLevel>ATG9.1_249</baseLevel>
        <jBossHome>/Applications/jboss-4.2.1.GA</jBossHome>
        <jBossVersion>4.2.1</jBossVersion>
        <ATGJRE>/System/Library/Frameworks/JavaVM.framework/Versions/1.5/Home/bin/java</ATGJRE>
        <patchLevel>9.1</patchLevel>
    </systemEnv>
</config>

Weird characters showing up occasionally when using ATG DAS and UTF-8

I came across an interesting problem the other day when working on an ATG project that was using DAS (Dynamo Application Server).  They'd recently updated their site to use UTF-8 as the encoding and this had appeared to work fine until it was noticed that occasionally some characters had been replaced by two unkown characters.  The interesting thing here was that inserting a space or some other character earlier in the page so that a Latin1 character fell into the same spot resulted in the page rendering as expected.

Looking into the DAS code it became apparent that when DAS was creating the Java servlets it was defaulting the encoding to Latin1 (ISO-8859-1) as defined in the JPS specification, if it wasn't explicitly defined.  This in itself wasn't a problem as when the servlet was executed it used the encoding that was defined in the response to process the output stream.  However it also used this encoding to determine if it should use a ByteBuffer or a CharBuffer in the servlet.  If the encoding was Latin1, which is was as we weren't explicitly setting it, then it was using a ByteBuffer.  The result was that any UTF-8 characters that were larger than a Latin1 byte were getting split in two if they fell over the buffer and getting displayed as the two illegal UTF-8 characters.

The solution to this is to either set the encoding explicitly on each page using:

<%@page pageEncoding="UTF-8"%>

Or else to hack DAS to default to an encoding other than ISO-8859-1.