PM86705: Unable to preview site area that only contains draft content ite ms within a project scope using the public API

 

APAR status

  • Closed as program error.

Error description

  • Using the WCM API to render a site area within a project set
    that has no default content and only draft child content (which
    are part of the project) will fail with a file not found error.
    
    The WCM public API makes it possible to render Site Areas and to
    do so within the scope of an active Project. It is equally
    possible to render a draft of an existing published Site Areas.
    When a Site Area is rendered the first step is to identify the
    Content item that will be rendered. This is usually defined by
    the "Default Content" value set on the Site Area. If no explicit
    default content has been defined WCM can be set to look for the
    first available and valid child Content item of the target Site
    Area that will be used as the default.
    
    When rendering a site area within the scope of a project (by
    setting the project on the RenderingContext with the call to
    RenderingContext.setProject()), and the site area only contains
    draft content underneath it, and those content items are part of
    the set project, then the call to Workspace.render() will fail
    as the draft items that are part of the project are not picked
    up as valid default content.
    
    Additionally if the Site Area being rendered is a draft of a
    published site area then render requests will fail as no
    children are found directly under the draft Site Area.
    
    Analysis:
    The query to find the first available and valid child content
    item to be used as the default content of the site area being
    rendered should include drafts from the specified project in the
    query results.
    
    The published site area (of the target draft site area being
    rendered) should be used as the parent for the query to find the
    default content as all children of the site area will always
    reside under the original published item and not the draft
    instance.
    

Local fix

Problem summary

  • Using the WCM API to render a site area within a project set
    that has no default content and only draft content items (which
    are part of the project) will fail with a file not found error.
    
    The WCM public API makes it possible to render Site Areas and to
    do so within the scope of an active Project. It is equally
    possible to render a draft of an existing published Site Areas.
    When a Site Area is rendered the first step is to identify the
    Content item that will be rendered. This is usually defined by
    the "Default Content" value set on the Site Area. If no explicit
    default content has been defined WCM can be set to look for the
    first available and valid child Content item of the target Site
    Area that will be used as the default.
    
    When rendering a site area within the scope of a project (by
    setting the project on the RenderingContext with the call to
    RenderingContext.setProject()), and the site area only contains
    draft content underneath it, and those content items are part of
    the set project, then the call to Workspace.render() will fail
    as the draft items that are part of the project are not picked
    up as valid default content.
    
    Additionally if the Site Area being rendered is a draft of a
    published site area then render requests will fail as no
    children are found directly under the draft Site Area.
    
    Analysis:
    The query to find the first available and valid child content
    item to be used as the default content of the site area being
    rendered should include drafts from the specified project in the
    query results.
    
    The published site area (of the target draft site area being
    rendered) should be used as the parent for the query to find the
    default content as all children of the site area will always
    reside under the original published item and not the draft
    instance.
    

Problem conclusion

  • When a project is set on the render context that project will
    now be used to query for valid default content items.
    
    When querying for the first content item under a site area
    ensure that the correct parent is used. If a draft of a
    published item is being rendered that means the published site
    area is used in the query.
    

Temporary fix

Comments

APAR Information

  • APAR number

    PM86705

  • Reported component name

    LOTUS WEB CONT

  • Reported component ID

    5724I2900

  • Reported release

    700

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt

  • Submitted date

    2013-04-10

  • Closed date

    2013-04-10

  • Last modified date

    2013-04-10

  • APAR is sysrouted FROM one or more of the following:

  • APAR is sysrouted TO one or more of the following:

Fix information

  • Fixed component name

    LOTUS WEB CONT

  • Fixed component ID

    5724I2900

Applicable component levels

  • R700 PSY

       UP

Rate this page:

(0 users)Average rating

Document information


More support for:

IBM Web Content Manager

Software version:

7.0

Reference #:

PM86705

Modified date:

2013-04-10

Translate my page

Machine Translation

Content navigation