Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Migration of unmigrated content due to installation of a new plugin
  • Assets should be stored along with the page you are creating.
  • General resources (CSS, JS, and images should be put in (you could try other spots, but I had trouble finding them with Jetty)
    • src/main/webapp/css
    • src/main/webapp/js
    • src/main/webapp/images
  • In case of CSS/JS/images for components, have a look into the way the T5 Grid or Palette component is constructed, since they have their own js, css and images.

Wiki Markup
\[Thanks go to Daniel Jue, who answered my question on June 7, 2007\]

For example, if you have this file:

src/main/webapp/css/MyStyle.css

You can access it in your page or component Java class like this:

No Format
@Inject
@Path("context:css/MyStyle.css")
private Asset thestyle;

public Asset getTheStyle() { return thestyle; }

And then in your page or component template:

No Format
<html xmlns:t="http://tapestry.apache.org/schema/tapestry_5_0_0.xsd">
<head>
<title>My Title</title>
<link rel="stylesheet" type="text/css" href="${thestyle}"/>
</head>
...
</html>

Similarly, having src/main/webapp/images/MyLogo.gif Page or Component Class:

No Format
@Inject
@Path("context:images/MyLogo.gif")
private Asset thelogo;

public Asset getTheLogo() { return theLogo; }

Page or Component Template (the html):

No Format
<img src="${thelogo}" />