You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@tapestry.apache.org by Bryan Lewis <jb...@gmail.com> on 2010/04/02 19:36:52 UTC

unknown prefix for asset path, only when testing with tapx-datefield

I have a simple page test based on Testify/TestNG.  It's only a smoke test,
merely renders the page to make sure I haven't broken anything.

    public void test1()
    {
        Document doc = tester.renderPage("contacteditor/200");
        String contents = doc.toString();
        assertTrue(!contents.contains("xception"));
        assertTrue(!contents.contains("rror"));
    }

It works fine when the page contains the original DateField:

  <t:datefield t:id="closeDate" value="item.closeDate" class="datefield"
style="margin-left:10px;"/>

If I switch to the new improved tapx-datefield (change "t:" to "x:"), with
the appropriate maven dependency:

       <dependency>
         <groupId>com.howardlewisship</groupId>
         <artifactId>tapx-datefield</artifactId>
         <version>${tapx-version}</version>
       </dependency>

the page works fine within the app, but the test encounters:

Render queue error in BeginRender[ContactEditor:birthday]: Unknown prefix
for asset path 'ContactEditor:birthday/calendar.js'.
org.apache.tapestry5.ioc.internal.util.TapestryException: Unknown prefix for
asset path 'ContactEditor:birthday/calendar.js'. [at classpath:
.../pages/ContactEditor.tml, line 108]
    at
org.apache.tapestry5.internal.structure.ComponentPageElementImpl.invoke(ComponentPageElementImpl.java:948)
    at
org.apache.tapestry5.internal.structure.ComponentPageElementImpl.access$400(ComponentPageElementImpl.java:49)
    at
org.apache.tapestry5.internal.structure.ComponentPageElementImpl$AbstractPhase.callback(ComponentPageElementImpl.java:159)
    at
org.apache.tapestry5.internal.structure.ComponentPageElementImpl$BeginRenderPhase.render(ComponentPageElementImpl.java:211)
    at
org.apache.tapestry5.internal.services.RenderQueueImpl.run(RenderQueueImpl.java:74)
    at
org.apache.tapestry5.internal.services.PageRenderQueueImpl.render(PageRenderQueueImpl.java:121)
    at
$PageRenderQueue_127bf92969d.render($PageRenderQueue_127bf92969d.java)
    at
$PageRenderQueue_127bf929694.render($PageRenderQueue_127bf929694.java)
    at
org.apache.tapestry5.internal.services.MarkupRendererTerminator.renderMarkup(MarkupRendererTerminator.java:37)
    ...

This is with Tapestry 5.1.0.5 and Tapx 1.0.0.  I've tried changing the
dependency scope with no luck.