EOReporter using JavaModel_Full.template hangs with inheritance

Lenny Marks <[email protected]> Mon, 7 Apr 2003 16:07:47 -0400 (EDT)
Newsgroups gmane.comp.web.webobjects.eof
Message-ID <Pine.GSO.4.44.0304071547580.5556-100000@kirk>
FYI

I have a model that contains inheritance via single table mapping. I was
trying to generate documentation from my model using eoreporter-1.1.

This script run from ProjectBuilder (Mac OS X)

#!/bin/sh

if [ "${APS_GENERATE_EODOCS}" = "YES" ] ; then

${APS_SCRIPTS_DIR}/docmodel -model -java -templatedir
${APS_TEMPLATES_DIR}\
 -rsrcdir ${APS_TEMPLATES_DIR}/Resources\
 -debug -dest ${SRCROOT}/docs model
${APS_MODELS_DIR}/manuscripts.eomodeld\
 ${APS_MODELS_DIR}/individuals.eomodeld ${APS_MODELS_DIR}/umds.eomodeld

fi

The docmodel script was from EOReporter/scripts directory. It will call
eoreporter using JavaModel_Full.template and JavaModelGroup_Full.template.

Every time I tried to run this, it would hang when it got to one of the
subclasses in my inheritance relationship. I believe the problem was with
the following code from JavaModel_Full.template.

{procedure PrintClassList CurrEntity}
        {CurrEntity.className}
        {if CurrEntity.className ne 'EOGenericRecord'}
                {while CurrEntity.parentEntity}
                        {' : '}
                        {call PrintEntity CurrEntity.parentEntity}
                        {identify CurrEntity = CurrEntity.parentEntity}
                {endwhile}
        {endif}
{endprocedure}

I think this is supposed to print the class hierarchy separated by colens
as in OutManCorr : ManCorr.

I replaced this code with the following which seemed to work:

{procedure PrintClassList CurrEntity}
	{CurrEntity.className}
	{if CurrEntity.className ne 'EOGenericRecord'}
		{if CurrEntity.parentEntity}
			{' : '}
			{call PrintClassList CurrEntity.parentEntity}
		{endif}
	{endif}
{endprocedure}

Was I wrong in my assumptions or does this look correct?

-Lenny Marks