Bug 118438

Summary: APLAWS: OQL Error creating 'Content Directory'
Product: [Retired] Red Hat Web Application Framework Reporter: Jon Orris <jorris>
Component: persistenceAssignee: Archit Shah <archit.shah>
Status: CLOSED WONTFIX QA Contact: Jon Orris <jorris>
Severity: medium Docs Contact:
Priority: medium    
Version: nightlyCC: berrange
Target Milestone: ---   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2007-12-11 15:50:06 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Jon Orris 2004-03-16 18:41:21 UTC
Description of problem:
@41371/Postgres

Login as SWA
go to /ccm/portal
Select 'customize' on leftmost pane.
Select Content Directory and click Add.
Get Error.

Applications included:


Notice
An unexpected error has occurred	

An unexpected error has occurred. If this continues to be a problem
for you please contact the administrators of the site quoting the
following:

CCM issue report code: 172.16.64.111:15a6472:fb54f77e08

-*-*-*-*-*- Begin Error Report -*-*-*-*-*-
-*-*-*- ACS Error Report Code: 172.16.64.111:15a6472:fb54f77e08 -*-*-*-
-*-*-*- Message 1: com.caucho.jsp.JspLineException: null (root cause:
null (root cause: no ancestors in {parents_link_isDefault543=true}))
-*-*-*-
-*-*-*- Message 2: com.arsdigita.util.UncheckedWrapperException: null
(root cause: null (root cause: no ancestors in
{parents_link_isDefault543=true})) -*-*-*-
-*-*-*- Message 3: com.arsdigita.persistence.PersistenceException:
null (root cause: no ancestors in {parents_link_isDefault543=true})
-*-*-*-
-*-*-*- Message 4: com.redhat.persistence.oql.Static$1: no ancestors
in {parents_link_isDefault543=true} -*-*-*-

-*-*-*- Section: CCM User -*-*-*-
Party not logged in

-*-*-*- Section: System properties -*-*-*-
ccm.conf: /var/ccm-devel/web/jorris/aplaws/conf/registry
ccm.home: /var/ccm-devel/web/jorris/aplaws
com.arsdigita.london.navigation.DefaultContentSection: /content/
com.arsdigita.util.Assert.enabled: true
file.encoding: UTF-8
file.encoding.pkg: sun.io
file.separator: /
java.awt.graphicsenv: sun.awt.X11GraphicsEnvironment
java.awt.printerjob: sun.print.PSPrinterJob
java.class.path:
/home/boston/jorris/dev/lib/classes12.zip:/usr/share/java/junit.jar:/opt/oracle/product/9.2.0.1/jdbc/lib/classes12.jar:/usr/share/java/servletapi4.jar:/opt/resin/2.1.4/lib/jaxp.jar:/opt/resin/2.1.4/lib/dom.jar:/opt/resin/2.1.4/lib/jdbc2_0-stdext.jar:/opt/resin/2.1.4/lib/jdbc-mysql.jar:/opt/resin/2.1.4/lib/jndi.jar:/opt/resin/2.1.4/lib/jmx.jar:/opt/resin/2.1.4/lib/jta-spec1_0_1.jar:/opt/resin/2.1.4/lib/resin.jar:/opt/resin/2.1.4/lib/sax.jar:/opt/resin/2.1.4/lib/webutil.jar:/usr/java/j2sdk1.4.2_03/lib/tools.jar:/usr/java/j2sdk1.4.2_03/jre/lib/rt.jar:/opt/resin/2.1.4/lib/jsdk23.jar
java.class.version: 48.0
java.endorsed.dirs: /usr/java/j2sdk1.4.2_03/jre/lib/endorsed
java.ext.dirs:
/usr/java/j2sdk1.4.2_03/jre/lib/ext:/usr/java/j2sdk1.4.2_03/lib/ext:/var/ccm-devel/web/jorris/aplaws/webapps/WEB-INF/system:/usr/share/ccm-tools/lib/security
java.home: /usr/java/j2sdk1.4.2_03/jre
java.io.tmpdir: /tmp
java.library.path:
/usr/java/j2sdk1.4.2_03/jre/lib/i386/client:/usr/java/j2sdk1.4.2_03/jre/lib/i386:/usr/java/j2sdk1.4.2_03/jre/../lib/i386:/opt/oracle/product/9.2.0.1/lib:/lib:/usr/lib:/usr/local/lib:libexec
java.naming.factory.initial: com.caucho.naming.InitialContextFactoryImpl
java.naming.factory.url.pkgs: com.caucho.naming
java.protocol.handler.pkgs: org.apache.axis.transport|
java.runtime.name: Java(TM) 2 Runtime Environment, Standard Edition
java.runtime.version: 1.4.2_03-b02
java.specification.name: Java Platform API Specification
java.specification.vendor: Sun Microsystems Inc.
java.specification.version: 1.4
java.util.prefs.PreferencesFactory:
java.util.prefs.FileSystemPreferencesFactory
java.vendor: Sun Microsystems Inc.
java.vendor.url: http://java.sun.com/
java.vendor.url.bug: http://java.sun.com/cgi-bin/bugreport.cgi
java.version: 1.4.2_03
java.vm.info: mixed mode
java.vm.name: Java HotSpot(TM) Client VM
java.vm.specification.name: Java Virtual Machine Specification
java.vm.specification.vendor: Sun Microsystems Inc.
java.vm.specification.version: 1.0
java.vm.vendor: Sun Microsystems Inc.
java.vm.version: 1.4.2_03-b02
javax.xml.parsers.DocumentBuilderFactory:
org.apache.xerces.jaxp.DocumentBuilderFactoryImpl
javax.xml.parsers.SAXParserFactory:
org.apache.xerces.jaxp.SAXParserFactoryImpl
javax.xml.transform.TransformerFactory:
com.icl.saxon.TransformerFactoryImpl
line.separator: 

log4j.configuration:
file:///var/ccm-devel/web/jorris/aplaws/conf/log4j.properties
os.arch: i386
os.name: Linux
os.version: 2.4.21-9.0.1.EL
path.separator: :
resin.home: /var/ccm-devel/web/jorris/aplaws
sun.arch.data.model: 32
sun.boot.class.path:
/usr/java/j2sdk1.4.2_03/jre/lib/rt.jar:/usr/java/j2sdk1.4.2_03/jre/lib/i18n.jar:/usr/java/j2sdk1.4.2_03/jre/lib/sunrsasign.jar:/usr/java/j2sdk1.4.2_03/jre/lib/jsse.jar:/usr/java/j2sdk1.4.2_03/jre/lib/jce.jar:/usr/java/j2sdk1.4.2_03/jre/lib/charsets.jar:/usr/java/j2sdk1.4.2_03/jre/classes
sun.boot.library.path: /usr/java/j2sdk1.4.2_03/jre/lib/i386
sun.cpu.endian: little
sun.cpu.isalist: 
sun.io.unicode.encoding: UnicodeLittle
sun.java2d.fontpath: 
sun.os.patch.level: unknown
user.country: US
user.dir: /var/ccm-devel/web/jorris/aplaws
user.home: /home/boston/jorris
user.language: en
user.name: jorris
user.timezone: America/New_York
waf.workflow.simple.alerts_enabled: true

-*-*-*- Section: Stack trace -*-*-*-
com.redhat.persistence.oql.Static$1: no ancestors in
{parents_link_isDefault543=true}
	at com.redhat.persistence.oql.Static.expression(Static.java:124)
	at com.redhat.persistence.oql.Static.bind(Static.java:107)
	at com.redhat.persistence.oql.Static.(Static.java:73)
	at com.redhat.persistence.oql.Static.(Static.java:57)
	at
com.arsdigita.persistence.DataQueryImpl.makeExpr(DataQueryImpl.java:601)
	at
com.arsdigita.persistence.DataQueryImpl.checkCursor(DataQueryImpl.java:623)
	at com.arsdigita.persistence.DataQueryImpl.next(DataQueryImpl.java:635)
	at com.arsdigita.domain.DomainQuery.next(DomainQuery.java:94)
	at
com.arsdigita.london.util.Categorization.categorySubtreePath(Categorization.java:71)
	at
com.arsdigita.london.portal.ui.portlet.ContentDirectoryPortletEditor$CategoryPrintListener.prepare(ContentDirectoryPortletEditor.java:143)
	at com.arsdigita.bebop.form.Widget.firePrintEvent(Widget.java:487)
	at com.arsdigita.bebop.form.Widget.generateXML(Widget.java:473)
	at com.arsdigita.bebop.ColumnPanel.generateChildren(ColumnPanel.java:439)
	at com.arsdigita.bebop.ColumnPanel.generateXML(ColumnPanel.java:238)
	at com.arsdigita.bebop.FormSection.generateXML(FormSection.java:635)
	at com.arsdigita.bebop.GridPanel.generateChildren(GridPanel.java:260)
	at com.arsdigita.bebop.GridPanel.generateXML(GridPanel.java:210)
	at com.arsdigita.bebop.Form.generateXMLSansState(Form.java:234)
	at com.arsdigita.bebop.Form.generateXML(Form.java:194)
	at
com.arsdigita.bebop.SimpleContainer.generateChildrenXML(SimpleContainer.java:243)
	at
com.arsdigita.bebop.SimpleContainer.generateXML(SimpleContainer.java:260)
	at
com.arsdigita.london.portal.ui.SimplePortlet.generateBodyXML(SimplePortlet.java:47)
	at
com.arsdigita.bebop.portal.AbstractPortletRenderer.generateXMLBody(AbstractPortletRenderer.java:58)
	at com.arsdigita.bebop.portal.Portlet.generateXML(Portlet.java:111)
	at
com.arsdigita.bebop.portal.AbstractPortletRenderer.makeXML(AbstractPortletRenderer.java:78)
	at
com.arsdigita.bebop.portal.AbstractPortletRenderer.generateXML(AbstractPortletRenderer.java:87)
	at
com.arsdigita.london.portal.ui.PersistentPortal.generateXML(PersistentPortal.java:271)
	at
com.arsdigita.bebop.SimpleContainer.generateChildrenXML(SimpleContainer.java:243)
	at
com.arsdigita.bebop.SimpleContainer.generateXML(SimpleContainer.java:260)
	at
com.arsdigita.aplaws.ui.HomepageWorkspace.generateXML(HomepageWorkspace.java:151)
	at
com.arsdigita.bebop.SimpleContainer.generateChildrenXML(SimpleContainer.java:243)
	at
com.arsdigita.bebop.SimpleContainer.generateXML(SimpleContainer.java:260)
	at com.arsdigita.bebop.Page.generateXML(Page.java:642)
	at com.arsdigita.bebop.jsp.DefinePage.doEndTag(DefinePage.java:253)
	at
_templates._ccm_22dldn_22dportal._portal._index__jsp._jspService(_index__jsp.java:109)
	at com.caucho.jsp.JavaPage.service(JavaPage.java:75)
	at com.caucho.jsp.Page.subservice(Page.java:485)
	at
com.caucho.server.http.FilterChainPage.doFilter(FilterChainPage.java:182)
	at com.caucho.server.http.Invocation.service(Invocation.java:312)
	at
com.caucho.server.http.QRequestDispatcher.forward(QRequestDispatcher.java:213)
	at
com.caucho.server.http.QRequestDispatcher.forward(QRequestDispatcher.java:100)
	at
com.caucho.server.http.QRequestDispatcher.forward(QRequestDispatcher.java:77)
	at
com.arsdigita.web.ApplicationFileServlet.doService(ApplicationFileServlet.java:148)
	at
com.arsdigita.web.BaseApplicationServlet$1.excurse(BaseApplicationServlet.java:111)
	at com.arsdigita.kernel.KernelExcursion.run(KernelExcursion.java:57)
	at
com.arsdigita.web.BaseApplicationServlet.doService(BaseApplicationServlet.java:105)
	at com.arsdigita.web.BaseServlet$1.excurse(BaseServlet.java:176)
	at com.arsdigita.kernel.KernelExcursion.run(KernelExcursion.java:57)
	at com.arsdigita.web.BaseServlet.internalService(BaseServlet.java:147)
	at com.arsdigita.web.BaseServlet.doGet(BaseServlet.java:272)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:740)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
	at
com.caucho.server.http.FilterChainServlet.doFilter(FilterChainServlet.java:96)
	at com.caucho.server.http.Invocation.service(Invocation.java:312)
	at
com.caucho.server.http.QRequestDispatcher.forward(QRequestDispatcher.java:213)
	at
com.caucho.server.http.QRequestDispatcher.forward(QRequestDispatcher.java:100)
	at
com.caucho.server.http.QRequestDispatcher.forward(QRequestDispatcher.java:77)
	at com.arsdigita.web.BaseDispatcher.forward(BaseDispatcher.java:206)
	at com.arsdigita.web.BaseDispatcher.forward(BaseDispatcher.java:190)
	at com.arsdigita.web.BaseDispatcher.dispatch(BaseDispatcher.java:130)
	at
com.arsdigita.web.DispatcherServlet.doService(DispatcherServlet.java:123)
	at com.arsdigita.web.BaseServlet$1.excurse(BaseServlet.java:176)
	at com.arsdigita.kernel.KernelExcursion.run(KernelExcursion.java:57)
	at com.arsdigita.web.BaseServlet.internalService(BaseServlet.java:147)
	at com.arsdigita.web.BaseServlet.doGet(BaseServlet.java:272)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:740)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
	at
com.caucho.server.http.FilterChainServlet.doFilter(FilterChainServlet.java:96)
	at
com.arsdigita.london.shortcuts.ShortcutFilter.doService(ShortcutFilter.java:79)
	at com.arsdigita.web.BaseFilter.doFilter(BaseFilter.java:96)
	at
com.caucho.server.http.FilterChainFilter.doFilter(FilterChainFilter.java:88)
	at
com.arsdigita.london.subsite.SubsiteFilter.doService(SubsiteFilter.java:69)
	at com.arsdigita.web.BaseFilter.doFilter(BaseFilter.java:96)
	at
com.caucho.server.http.FilterChainFilter.doFilter(FilterChainFilter.java:88)
	at com.caucho.server.http.Invocation.service(Invocation.java:312)
	at com.caucho.server.http.HttpRequest.handleRequest(HttpRequest.java:221)
	at
com.caucho.server.http.HttpRequest.handleConnection(HttpRequest.java:163)
	at com.caucho.server.TcpConnection.run(TcpConnection.java:137)
	at java.lang.Thread.run(Thread.java:534)


-*-*-*- Section: HTTP headers -*-*-*-
Accept:
text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,video/x-mng,image/png,image/jpeg,image/gif;q=0.2,*/*;q=0.1
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7
Accept-Encoding: gzip,deflate
Accept-Language: en-us,en;q=0.5
Connection: keep-alive
Cookie: ad_user_login=1017!1174066805608!T6SI/OtKmXBC9FQAUKS+fw==;
JSESSIONID=a9nANCkY2Kha
Host: goodeats.boston.redhat.com:9006
Keep-Alive: 300
Referer:
http://goodeats.boston.redhat.com:9006/ccm/portal/?g11n.enc=UTF-8&bbp.i=d0.1&bbp.s=7
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.6)
Gecko/20040206 Firefox/0.8

-*-*-*- Section: Servlet attributes -*-*-*-
com.arsdigita.bebop.PageState: com.arsdigita.bebop.PageState@f0a62 = {
m_page = com.arsdigita.aplaws.ui.SimplePage@1f59ae3,
m_request = com.caucho.server.http.DispatchRequest@172c9cf,
m_response = com.caucho.server.http.HttpResponse@11f6b1e,
m_pageState = com.arsdigita.bebop.FormData@1b1b790 = {
m_parameterDataValues = {g11n.enc={UTF-8, []}, bbp.897.create={null,
[]}, bbp.9.edit={null, []}, bbp.i={{5, 6, 7, 8, 9}, []}, bbp.e={null,
[]}, bbp.v={null, []}, bbp.897.edit={null, []}, bbp.s={null, []},
bbp.8.column={null, []}, bbp.9.column={1, []}, bbp.453.create={null,
[]}, bbp.1336.sel={null, []}, bbp.9.create={2101, []},
bbp.896.column={null, []}, bbp.452.column={null, []},
bbp.453.column={null, []}, bbp.897.column={null, []},
bbp.453.edit={null, []}},
m_formErrors = null,
m_model = com.arsdigita.bebop.FormModel@8a8c54,
m_locale = en_US,
m_isTransformed = true,
m_isValid = false,
m_isSubmission = true
},
m_attributes = null,
,
m_grabbingComponent = null,
m_invisible = {7, 8, 280, 295, 308, 323, 449, 450, 453, 724, 739, 752,
767, 893, 894, 897, 1168, 1183, 1196, 1211}
}
com.arsdigita.bebop.RequestLocal:
{com.arsdigita.bebop.RequestLocal@da5f4c=[com.arsdigita.london.portal.WorkspacePage:{id=9003}],
com.arsdigita.bebop.Page$1@1b2c2ef=com.arsdigita.bebop.Label@10d4698,
com.arsdigita.bebop.RequestLocal@1991f15=null,
com.arsdigita.bebop.RequestLocal@12a40ad=null,
com.arsdigita.bebop.RequestLocal@40f700=null,
com.arsdigita.bebop.RequestLocal@753b62=null,
com.arsdigita.bebop.RequestLocal@13e5341=null,
com.arsdigita.bebop.RequestLocal@14b5ad5=null,
com.arsdigita.bebop.RequestLocal@11bdace=null,
com.arsdigita.bebop.RequestLocal@1f5a21=true,
com.arsdigita.bebop.RequestLocal@565498=[com.arsdigita.london.portal.Workspace:{id=2090}],
com.arsdigita.bebop.Form$2@1319134=,
com.arsdigita.bebop.RequestLocal@a6a426=[com.arsdigita.london.portal.WorkspacePage:{id=9004}],
com.arsdigita.bebop.RequestLocal@62f077=[com.arsdigita.london.portal.WorkspacePage:{id=9005}],
com.arsdigita.bebop.RequestLocal@17922c7=null}
com.arsdigita.dispatcher.RequestContext:
com.arsdigita.sitenode.SiteNodeRequestContext@95c26b
com.arsdigita.dispatcher.RequestValue:
{com.arsdigita.dispatcher.RequestValue@1a34744=null}
com.arsdigita.web.BaseApplicationServlet.application_id: 2090
com.arsdigita.web.BaseDispatcher.dispatched: true
com.arsdigita.web.BaseServlet.request_url:
/ccm/portal/?g11n.enc=UTF-8&bbp.9.column=1&bbp.9.create=2101&bbp.i=d0.5.5

-*-*-*- Section: Request summary -*-*-*-
Context path: 
Request URI: /ccm/portal/
Query string: g11n.enc=UTF-8&bbp.i=d0.5.5&bbp.9.column=1&bbp.9.create=2101
Method: GET
Remote user: null

-*-*-*- Section: Cookies -*-*-*-
ad_user_login: 1017!1174066805608!T6SI/OtKmXBC9FQAUKS+fw== (expires: -1)
JSESSIONID: a9nANCkY2Kha (expires: -1)
-*-*-*-*-*- End Error Report -*-*-*-*-*-

Comment 1 Jon Orris 2004-03-16 18:42:35 UTC
P4 Client is jorris-goodeats-aplaws.
project.xml is:

  <ccm:build>
    <ccm:application name="core"/>
    <ccm:application name="cms"/>
    <ccm:application name="article"/>
    <ccm:application name="mparticle"/>
<ccm:application name="agenda" />
<ccm:application name="event" />
<ccm:application name="job"/>
<ccm:application name="legalnotice" />
<ccm:application name="minutes" />
<ccm:application name="newsitem" />
<ccm:application name="pressrelease" />
<ccm:application name="service" />
<ccm:application name="formitem" />
<ccm:application name="formsectionitem" />
    <ccm:application name="cms-populate" />
    <ccm:application name="cms-internal" />
    <ccm:application name="relatedlink" />
    <ccm:application name="fileattachment" />

    <ccm:application name="util" prettyName="util"/>
    <ccm:application name="simplesurvey" prettyName="simplesurvey"/>
    <ccm:application name="rss" prettyName="rss"/>
    <ccm:application name="portal" prettyName="portal"/>
    <ccm:application name="freeform" prettyName="freeform"/>
    <ccm:application name="dublin" prettyName="Content Asset Dublin
Core"/>
    <ccm:application name="search" prettyName="search"/>
    <ccm:application name="shortcuts" prettyName="shortcuts"/>
    <ccm:application name="navigation" prettyName="navigation"/>
    <ccm:application name="subsite" prettyName="subsite"/>
    <ccm:application name="xmlfeed" prettyName="xmlfeed"/>
    <ccm:application name="atoz" prettyName="A to Z"/>
    <ccm:application name="aplaws" prettyName="APLAWS Custom"/>
    <ccm:application name="terms" prettyName="Terms"/>
    <ccm:appliication name="forum" prettyName="Forum"/>
  </ccm:build>


Comment 2 Jon Orris 2004-03-16 19:54:29 UTC
Same error occurs when attempting to create a Content Item List.

Comment 3 Jon Orris 2004-03-16 19:55:28 UTC
Also 'Object List'.


Comment 4 Daniel Berrangé 2004-03-17 09:40:36 UTC
The code in question is thus:

        DomainCollection cats = new DomainCollection(
           
SessionManager.getSession().retrieve(Category.BASE_DATA_OBJECT_TYPE)
        );
        cats.addFilter("defaultAncestors like :ancestors");
        cats.setParameter("ancestors", 
                          ((String)DomainServiceInterfaceExposer
                           .get(root, "defaultAncestors")) + "%");

So it looks like a persistence problem, although I suspect it'll go
away if I call 'set' on the Filter object returned by addFilter.

Comment 5 Archit Shah 2004-03-17 16:07:55 UTC
that last comment is correct. The documentation suggests that
setParameter on Domain/DataQuery is limited to setting parameters used
in named queries and not in the filter. In the 6.0.x implementation,
the filter bindings would internally get converted to calls to
setParameter. In 5.2.x, I think the above code would not work because
filter parameters had a prefix so they were in a different namespace.
I think a reasonable plan is to fix the util.Categorization code as
suggested and make this bug into a non-blocking request for backwards
compatibility between 6.1.x and 6.0.x

Comment 6 Daniel Berrangé 2004-03-17 16:23:38 UTC
c.a.london.util.Categorization has been fixed, however, we may
encounter others instances of this bug, because, (I for one) remember
writing code like this in quite a few other places. There are 350 uses
of setParameter in APLAWS codetree, some of which may be broken.

dan@camden$ find */src -name '*.java' | xargs grep setParameter | wc -l
    349
dan@camden$ 

I can't think of an easy way to narrow down this list to something its
feasible to examine by hand....


Comment 7 Archit Shah 2004-04-06 14:22:33 UTC
fixed as part of oql/qgen work

Comment 8 David Lawrence 2006-07-18 03:49:39 UTC
QA_READY has been deprecated in favor of ON_QA. Please use ON_QA in the future.
Moving to ON_QA.